-
Notifications
You must be signed in to change notification settings - Fork 0
Expand file tree
/
Copy pathnff-help.txt
More file actions
529 lines (375 loc) · 17.1 KB
/
nff-help.txt
File metadata and controls
529 lines (375 loc) · 17.1 KB
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
135
136
137
138
139
140
141
142
143
144
145
146
147
148
149
150
151
152
153
154
155
156
157
158
159
160
161
162
163
164
165
166
167
168
169
170
171
172
173
174
175
176
177
178
179
180
181
182
183
184
185
186
187
188
189
190
191
192
193
194
195
196
197
198
199
200
201
202
203
204
205
206
207
208
209
210
211
212
213
214
215
216
217
218
219
220
221
222
223
224
225
226
227
228
229
230
231
232
233
234
235
236
237
238
239
240
241
242
243
244
245
246
247
248
249
250
251
252
253
254
255
256
257
258
259
260
261
262
263
264
265
266
267
268
269
270
271
272
273
274
275
276
277
278
279
280
281
282
283
284
285
286
287
288
289
290
291
292
293
294
295
296
297
298
299
300
301
302
303
304
305
306
307
308
309
310
311
312
313
314
315
316
317
318
319
320
321
322
323
324
325
326
327
328
329
330
331
332
333
334
335
336
337
338
339
340
341
342
343
344
345
346
347
348
349
350
351
352
353
354
355
356
357
358
359
360
361
362
363
364
365
366
367
368
369
370
371
372
373
374
375
376
377
378
379
380
381
382
383
384
385
386
387
388
389
390
391
392
393
394
395
396
397
398
399
400
401
402
403
404
405
406
407
408
409
410
411
412
413
414
415
416
417
418
419
420
421
422
423
424
425
426
427
428
429
430
431
432
433
434
435
436
437
438
439
440
441
442
443
444
445
446
447
448
449
450
451
452
453
454
455
456
457
458
459
460
461
462
463
464
465
466
467
468
469
470
471
472
473
474
475
476
477
478
479
480
481
482
483
484
485
486
487
488
489
490
491
492
493
494
495
496
497
498
499
500
501
502
503
504
505
506
507
508
509
510
511
512
513
514
515
516
517
518
519
520
521
522
523
524
525
526
527
528
529
#ADVANCED ENCODER SETTINGS
#Auto Button
The Auto button automatically sets all encoder options to their "auto" values and disables all encoder flags.
This lets FFmpeg use its default settings and intelligent algorithms to determine the optimal encoding parameters for your specific content.
Useful when you want to leverage FFmpeg's built-in optimizations without manual configuration.
#Default Button
The Default button resets all encoder settings to their original default values (the same as when the application first starts).
This provides a clean slate with balanced settings that work well for most common encoding scenarios, ensuring reliable performance and good quality output.
#FF Threads
auto, 1-16
Sets the number of threads used by FFmpeg for processing:
auto = Automatic thread detection
1-16 = Specific number of threads
Higher values can improve performance on multi-core systems.
#Preset
p1-p7
Set the encoding preset:
p1 - fastest (lowest quality)
p7 - slowest (best quality)
nvencFFX default: p7 (max quality).
#Tune
hq, uhq, ll, ull, lossless
Optimizes encoding for specific content types:
hq = High Quality (general content)
uhq = Ultra High Quality (high detail preservation)
ll = Low Latency (streaming)
ull = Ultra Low Latency (real-time streaming)
lossless = Lossless encoding (mathematically lossless)
#Profile
main, main10, rext (HEVC)
baseline, main, high, high10, high422, high444p (H.264)
Sets the encoding profile which determines supported features and compatibility:
main = Standard profile (good compatibility)
main10 = 10-bit color depth (HDR support)
rext = Range Extensions (professional formats)
Higher profiles offer more features but may have reduced device compatibility.
#Level
auto, 1.0-6.2
Specifies the maximum capabilities of the decoder.
Higher levels support higher resolutions, bitrates, and processing requirements.
"auto" lets FFmpeg automatically determine the appropriate level.
#Tier
0 (Main), 1 (High) - HEVC/AV1 only
Controls the tier within a given level:
Main Tier (0) = for most consumer applications
High Tier (1) = for professional broadcasting (higher bitrates)
#Coder
default, auto, cabac, cavlc, ac, vlc - H.264 only
Selects entropy encoding method:
cabac = Context-Adaptive Binary Arithmetic Coding (better compression)
cavlc = Context-Adaptive Variable-Length Coding (faster decoding)
Default: cabac for best compression efficiency.
#HW Accel
auto, cuda, d3d11va
Selects hardware acceleration method:
auto = Automatic detection
cuda = NVIDIA CUDA acceleration
d3d11va = DirectX 11 Video Acceleration
Recommended: cuda for NVIDIA GPUs
#Multipass
disabled, qres, fullres
Enables multi-pass encoding for improved quality:
disabled = Single-pass encoding
qres = Quarter-resolution first pass
fullres = Full-resolution first pass
Multi-pass provides better rate control but increases encoding time.
#Rate-Control
constqp, vbr, cbr
Selects rate control method:
constqp = Constant QP mode
vbr = Variable Bitrate (better quality, variable file size)
cbr = Constant Bitrate (consistent bandwidth usage)
#Quality level
qp
Constant quantization parameter rate control method (from -1 to 51)
CQP provides consistent quality but variable file size
-cq - not presented at nFF
Set target quality level (0 to 51, 0 means automatic)
for constant quality mode in VBR rate control (from 0 to 51) (default 0)
#Split Encode
disabled, auto, forced, 2, 3 - HEVC/AV1 only
Controls frame-level parallel encoding:
disabled = No parallel encoding
auto = Automatic detection
forced = Force parallel encoding
2/3 = Specific number of parallel encodes
Useful for high-bitrate, high-resolution encoding on GPUs like the 3080/3090,
which can have 2 NVENC engines active simultaneously. For most consumer cards with only one engine, this setting does nothing.
#Lookahead Level
auto, 0-15
Controls how many future frames are analyzed for rate control.
Higher values improve quality but increase encoding time and memory usage.
0 = Disabled, auto = Automatic selection
#CUDA Output Format
Enabled/Disabled
Adds the -hwaccel_output_format cuda parameter.
It is required when using CUDA-based filters.
#Spatial AQ
Enabled/Disabled
Enables spatial adaptive quantization.
Improves quality in areas with complex textures and details.
Recommended: Enabled for most content
#Temporal AQ
Enabled/Disabled
Enables temporal adaptive quantization.
Improves quality for moving objects and scene changes.
Recommended: Enabled for most content
#Strict GOP
Enabled/Disabled
Forces regular GOP (Group of Pictures) structure.
Improves seeking accuracy but may reduce compression efficiency.
Recommended: Disabled unless specific seeking requirements
#No-Scenecut
Enabled/Disabled
Disables automatic scene cut detection.
May improve encoding speed but reduces quality at scene changes.
Recommended: Disabled for most content
#Weighted Prediction
Enabled/Disabled
Enables weighted prediction for B-frames.
Improves compression efficiency for fading scenes.
Note: Automatically sets -bf 0 when enabled.
#FPS AND SCALING SETTINGS
#FPS Options
source, 60, 50, 30, 23.976, custom
Controls the output frame rate:
source = Maintain original frame rate
60 = 60 frames per second (smooth motion)
50 = 50 frames per second (PAL regions)
30 = 30 frames per second (standard video)
23.976 = 24p cinematic look (24/1.001)
custom = Manually specify any frame rate value
#FPS Mode
Auto, CFR, VFR, Passthrough
Set video sync method / framerate mode. vsync is applied to all output video streams but can be overridden for a stream by setting fps_mode.
vsync is deprecated and will be removed in the future.
passthrough (0) - Each frame is passed with its timestamp from the demuxer to the muxer.
cfr (1) - Frames will be duplicated and dropped to achieve exactly the requested constant frame rate.
vfr (2) - Frames are passed through with their timestamp or dropped so as to prevent 2 frames from having the same timestamp.
auto (-1) - Chooses between cfr and vfr depending on muxer capabilities. This is the default method.
Note that the timestamps may be further modified by the muxer, after this. For example, in the case that the format option avoid_negative_ts is enabled.
#Video Format
source, HD, FHD, QHD, 4K, custom
Controls output resolution scaling:
source = Maintain original resolution
HD = 1280x720 (720p)
FHD = 1920x1080 (1080p)
QHD = 2560x1440 (1440p)
4K = 3840x2160 (2160p)
custom = Manually specify output width (height scales proportionally)
#Interpolation Algorithm
bilinear, bicubic, neighbor, area, lanczos, spline
Selects the scaling algorithm for resolution changes:
bilinear = Fast, low-quality scaling
bicubic = Smooth and balanced quality (default)
neighbor = Blocky, pixelated output (fastest)
area = Soft result ideal for downscaling
lanczos = Sharp and high-quality scaling
spline = Visually best in theory (slowest)
#AUDIO SETTINGS
#Audio Options
disable, source, AAC 96k, AAC 160k, AAC 256k, custom
Controls audio processing and encoding:
disable = Remove audio track completely
source = Copy original audio without re-encoding (fastest)
AAC 96k = Encode to AAC at 96 kbps (small file size)
AAC 160k = Encode to AAC at 160 kbps (good balance)
AAC 256k = Encode to AAC at 256 kbps (high quality)
custom = Manually specify bitrate in kbps
#Audio Bitrate Quality Guide
96k = Acceptable quality for speech podcasts
160k = Good quality for music and general content
256k = High quality, transparent for most listeners
320k = Maximum AAC quality (near transparent)
#ADDITIONAL OPTIONS BUTTONS
#Speed up X2
setpts=0.5*PTS
Doubles video playback speed (2x faster) by modifying presentation timestamps.
Values <1.0 speed up, >1.0 slow down.
atempo=2.0
Doubles audio playback speed (2x faster) without changing pitch.
#Slow down X2
setpts=2.0*PTS
Halves video playback speed (2x slower).
atempo=0.5
Halves audio playback speed (2x slower).
#Sharpness
unsharp=5:5:1.15:3:3:0.0
Enhances image sharpness using unsharp mask.
Format: luma_msize_x:luma_msize_y:luma_amount:chroma_msize_x:chroma_msize_y:chroma_amount.
Higher values increase sharpness but may produce halos.
#Saturation
eq=saturation=1.15
Adjusts saturation.
1.0 = original, >1.0 = more saturated, <1.0 = desaturated.
Range: 0.0–3.0.
#Denoise
hqdn3d=2:1.5:3:2.25
High-quality temporal + spatial denoise filter.
Format: luma_spatial:chroma_spatial:luma_tmp:chroma_tmp.
Optional: increase temporal params for very noisy video.
luma_spatial
A non-negative floating point number which specifies spatial luma strength. It defaults to 4.0.
chroma_spatial
A non-negative floating point number which specifies spatial chroma strength. It defaults to 3.0*luma_spatial/4.0.
luma_tmp
A floating point number which specifies luma temporal strength. It defaults to 6.0*luma_spatial/4.0.
chroma_tmp
A floating point number which specifies chroma temporal strength. It defaults to luma_tmp*chroma_spatial/luma_spatial.
#FPS Pass
fps_mode passthrough
Preserve original frame timestamps and pacing.
Useful when you want to maintain the original variable frame rate characteristics.
#Stereo out
ac 2
Mixes an audio track down to two channels.
#Gamma RGB
eq=gamma_r=1.0:gamma_g=1.0:gamma_b=1.0:gamma_weight=1.0
Adjust gamma correction for each color channel separately.
Values >1.0 make image brighter, <1.0 make image darker.
#Brightness
eq=brightness=-0.15
Adjust brightness of the video.
Values range from -1.0 to 1.0. Negative values darken, positive values brighten.
#Audio fix
loudnorm=I=-16:TP=-1.5:LRA=11
Normalize audio loudness using EBU R128 standards.
I: Integrated loudness target (-16 to -24 LUFS)
TP: True peak maximum (-1.5 to -9.0 dBTP)
LRA: Loudness range (1.0 to 20.0 LU)
#Force 8 bit
pix_fmt:v nv12
Force 8-bit color depth with NV12 pixel format.
#Force 10 bit
pix_fmt:v p010le
Force 10-bit color depth with P010LE pixel format.
Better for HDR content and reduces banding, but less compatible.
#HDR to SDR
zscale=transfer=linear:npl=100,tonemap=tonemap=hable:desat=0,zscale=transfer=bt709:matrix=bt709:primaries=bt709
Convert HDR content to SDR using tonemapping.
The three-stage process:
1. Convert to linear light with specified peak luminance (npl)
2. Apply Hable tonemapping algorithm with zero desaturation (desat=0)
3. Convert to BT.709 color space for proper SDR compatibility
This maintains color accuracy and prevents the muted/muddy colors typical of poor HDR conversions.
#Crop to 16:9
crop=iw:min(ih\,iw*9/16):0:(ih-min(ih\,iw*9/16))/2
Crops video to 16:9 by trimming vertical edges only, keeping full original width.
#Rotate
transpose=1
Rotate video 90 degrees clockwise.
The transpose filter accepts the values from 0-3:
0 = 90° counter-clockwise and vertical flip
1 = 90° clockwise
2 = 90° counter-clockwise
3 = 90° clockwise and vertical flip
#H-Flip
hflip
Flip the input video horizontally.
#V-Flip
vflip
Flip the input video vertically.
#Trim Slider
Visual timeline for setting trim points with thumbnail preview.
Drag handles to set start and end times accurately.
#Copy Checkbox
The Copy checkbox enables stream copy mode for trimming operations.
When enabled, the video and audio streams are copied directly without re-encoding,
making the trimming process extremely fast and completely lossless.
This is ideal for simple cutting operations where you don't need to change the video quality or format.
#Precise Checkbox
The Precise checkbox enables accurate frame-by-frame trimming.
When enabled, FFmpeg uses more precise seeking methods to ensure the trim points land exactly on the specified frames.
This is slightly slower but guarantees frame-accurate cutting, which is essential for professional editing work or when precise timing is critical.
Usable for stream copy mode (eliminates freezing at the beginning of the video).
#Custom Command Editor
Enables direct editing of the FFmpeg command line.
Useful for advanced users who need specific parameters.
#Playback Controls
Play Input File = Opens original file in system default player
Play 10s Preview = Opens encoded preview in system player
Play Output File = Opens converted file in system player
#Right-Click Actions
Browse / Save As / FFmpeg buttons = Right-click to open containing folder in Explorer
Output button = Right-click to copy FFmpeg command to clipboard
Play Output File = Right-click to run VMAF quality analysis
#VMAF Quality Analysis
VMAF (Video Multimethod Assessment Fusion) measures the perceptual quality difference between the input and output files.
Right-click the "Play Output File" button to start the analysis.
The VMAF score (0-100) will be displayed in the status bar upon completion.
Higher scores indicate better quality preservation:
95-100 = Virtually indistinguishable from the original
90-95 = Excellent quality
80-90 = Good quality
70-80 = Acceptable quality
<70 = Noticeable quality loss
Requires both input and output files to be set. Uses libvmaf via FFmpeg with automatic thread detection.
#BATCH CONVERSION
The Batch Convert feature allows you to process multiple video files in sequence using the same encoding settings.
#Batch Convert Button
Opens the Batch Converter window where you can manage a list of files for conversion.
#Adding Files
- Click "Add Files" to select multiple video files
- Drag and drop video files directly into the Batch Converter window
- Supported formats: MP4, MKV, AVI, MOV, FLV, WMV, WEBM
#File List Management
- The list shows all queued files with their status (Ready, Converting, Done, Failed)
- Remove individual files with the "×" button
- Clear entire list with "Remove All" button
- Files are processed in the order they appear in the list
#Conversion Process
- Click "Batch Convert" in the main window to start processing all files
- Files are converted sequentially using current main window settings
- Progress is shown in the main window with real-time updates
- Each file's status updates during conversion (Ready → Converting → Done/Failed)
#Output Files
Output files are automatically named using the pattern:
[original_name]_[codec]_custom.[extension]
- Codec suffix: _hevc, _h264, or _av1 based on selected video codec
- Saved in the same directory as input files or last used output directory
- Preserves your chosen file extension (.mp4, .mkv, .mov)
#Batch Converter Window Features
- Real-time status updates for each file
- Visual progress indication
- Ability to cancel conversion at any time
- Window can be kept open while using main application
#Cancelling Batch Conversion
- Click "Cancel" during conversion to stop the process
- Partial files are automatically cleaned up
#Status Indicators
Ready = File queued for conversion
Converting = Currently being processed
Done = Successfully converted
Failed = Error during conversion (check main window for details)
Cancelled = Conversion stopped by user
Note: All files in a batch conversion use the same settings from the main window.
Make sure to configure your desired quality, codec, and other options before starting batch conversion.
#SCREEN RECORDING
The Screen Record feature allows you to capture Windows Desktop
#Screen Record Button
-Starts screen recording when clicked
-Stops recording when clicked again
-Automatically minimizes the main window during recording to avoid capturing itself
-Uses red color when active to indicate recording state
#Recording Process
- Recording starts after a 2-second delay to allow window minimization
- Captures entire desktop screen using FFmpeg's ddagrab filter
- Real-time monitoring shows recording status in the output window
- Recording continues in background while window is minimized
#System Tray Integration
- During recording, an icon appears in the system tray
- Right-click the tray icon to access a context menu with "Stop Recording" option
- Allows stopping recording without restoring the main window
- Tray icon disappears automatically when recording stops
#Global Hotkey
- Press Alt+F9 to instantly stop screen recording from anywhere
- Works even when the application window is minimized or in the background
#Output Files
- Default location: Desktop folder
- Automatic filename: screen_record-DD_MM_YY-HH_MM.[extension]
- Uses current output file extension settings (.mp4, .mkv, .mov)
- Preserves current encoding settings (codec, quality, FPS)
#Settings Used
- FPS: Uses selected FPS (defaults to 60 if "source" selected)
- Video Codec: HEVC, H.264, or AV1 based on current selection
- Quality: Constant QP mode or Bitrate mode as configured
- Hardware Acceleration: NVIDIA NVENC
- Audio capture: Not implemented for screen recording
#FAQ
#Why my RTX5060 shows only 20% usage of Video Encode engine?
Advanced Encoder Settings / Set "Preset" to "p7".
#Why my RTX5070Ti shows only 50% usage of Video Encode engine?
Advanced Encoder Settings / Set "Preset" to "p7".
or
Advanced Encoder Settings / Set "Split Encode" to "forced".