Subversion Repositories Kolibri OS

Rev

Details | Last modification | View Log | RSS feed

Rev Author Line No. Line
4349 Serge 1
=head1 NAME
2
 
3
ffmpeg-codecs - FFmpeg codecs
4
 
5
=head1 DESCRIPTION
6
 
7
 
8
This document describes the codecs (decoders and encoders) provided by
9
the libavcodec library.
10
 
11
 
12
 
13
 
14
=head1 CODEC OPTIONS
15
 
16
 
17
libavcodec provides some generic global options, which can be set on
18
all the encoders and decoders. In addition each codec may support
19
so-called private options, which are specific for a given codec.
20
 
21
Sometimes, a global option may only affect a specific kind of codec,
22
and may be unsensical or ignored by another, so you need to be aware
23
of the meaning of the specified options. Also some options are
24
meant only for decoding or encoding.
25
 
26
Options may be set by specifying -I
27
FFmpeg tools, or by setting the value explicitly in the
28
C options or using the F API
29
for programmatic use.
30
 
31
The list of supported options follow:
32
 
33
 
34
=over 4
35
 
36
 
37
=item B I B<(>IB<)>
38
 
39
Set bitrate in bits/s. Default value is 200K.
40
 
41
 
42
=item B I B<(>IB<)>
43
 
44
Set audio bitrate (in bits/s). Default value is 128K.
45
 
46
 
47
=item B I B<(>IB<)>
48
 
49
Set video bitrate tolerance (in bits/s). In 1-pass mode, bitrate
50
tolerance specifies how far ratecontrol is willing to deviate from the
51
target average bitrate value. This is not related to min/max
52
bitrate. Lowering tolerance too much has an adverse effect on quality.
53
 
54
 
55
=item B I B<(>IB<)>
56
 
57
Set generic flags.
58
 
59
Possible values:
60
 
61
=over 4
62
 
63
 
64
=item B
65
 
66
Use four motion vector by macroblock (mpeg4).
67
 
68
=item B
69
 
70
Use 1/4 pel motion compensation.
71
 
72
=item B
73
 
74
Use loop filter.
75
 
76
=item B
77
 
78
Use fixed qscale.
79
 
80
=item B
81
 
82
Use gmc.
83
 
84
=item B
85
 
86
Always try a mb with mv=E0,0E.
87
 
88
=item B
89
 
90
 
91
 
92
=item B
93
 
94
Use internal 2pass ratecontrol in first pass mode.
95
 
96
=item B
97
 
98
Use internal 2pass ratecontrol in second pass mode.
99
 
100
=item B
101
 
102
Only decode/encode grayscale.
103
 
104
=item B
105
 
106
Do not draw edges.
107
 
108
=item B
109
 
110
Set error[?] variables during encoding.
111
 
112
=item B
113
 
114
 
115
 
116
=item B
117
 
118
Normalize adaptive quantization.
119
 
120
=item B
121
 
122
Use interlaced DCT.
123
 
124
=item B
125
 
126
Force low delay.
127
 
128
=item B
129
 
130
Place global headers in extradata instead of every keyframe.
131
 
132
=item B
133
 
134
Use only bitexact stuff (except (I)DCT).
135
 
136
=item B
137
 
138
Apply H263 advanced intra coding / mpeg4 ac prediction.
139
 
140
=item B
141
 
142
Deprecated, use mpegvideo private options instead.
143
 
144
=item B
145
 
146
Deprecated, use mpegvideo private options instead.
147
 
148
=item B
149
 
150
Apply interlaced motion estimation.
151
 
152
=item B
153
 
154
Use closed gop.
155
 
156
=back
157
 
158
 
159
 
160
=item B I B<(>IB<)>
161
 
162
Set motion estimation method.
163
 
164
Possible values:
165
 
166
=over 4
167
 
168
 
169
=item B
170
 
171
zero motion estimation (fastest)
172
 
173
=item B
174
 
175
full motion estimation (slowest)
176
 
177
=item B
178
 
179
EPZS motion estimation (default)
180
 
181
=item B
182
 
183
esa motion estimation (alias for full)
184
 
185
=item B
186
 
187
tesa motion estimation
188
 
189
=item B
190
 
191
dia motion estimation (alias for epzs)
192
 
193
=item B
194
 
195
log motion estimation
196
 
197
=item B
198
 
199
phods motion estimation
200
 
201
=item B
202
 
203
X1 motion estimation
204
 
205
=item B
206
 
207
hex motion estimation
208
 
209
=item B
210
 
211
umh motion estimation
212
 
213
=item B
214
 
215
iter motion estimation
216
 
217
=back
218
 
219
 
220
 
221
=item B I
222
 
223
Set extradata size.
224
 
225
 
226
=item B I
227
 
228
Set codec time base.
229
 
230
It is the fundamental unit of time (in seconds) in terms of which
231
frame timestamps are represented. For fixed-fps content, timebase
232
should be C<1 / frame_rate> and timestamp increments should be
233
identically 1.
234
 
235
 
236
=item B I B<(>IB<)>
237
 
238
Set the group of picture size. Default value is 12.
239
 
240
 
241
=item B I B<(>IB<)>
242
 
243
Set audio sampling rate (in Hz).
244
 
245
 
246
=item B I B<(>IB<)>
247
 
248
Set number of audio channels.
249
 
250
 
251
=item B I B<(>IB<)>
252
 
253
Set cutoff bandwidth.
254
 
255
 
256
=item B I B<(>IB<)>
257
 
258
Set audio frame size.
259
 
260
Each submitted frame except the last must contain exactly frame_size
261
samples per channel. May be 0 when the codec has
262
CODEC_CAP_VARIABLE_FRAME_SIZE set, in that case the frame size is not
263
restricted. It is set by some decoders to indicate constant frame
264
size.
265
 
266
 
267
=item B I
268
 
269
Set the frame number.
270
 
271
 
272
=item B I
273
 
274
 
275
 
276
=item B I B<(>IB<)>
277
 
278
Set video quantizer scale compression (VBR). It is used as a constant
279
in the ratecontrol equation. Recommended range for default rc_eq:
280
0.0-1.0.
281
 
282
 
283
=item B I B<(>IB<)>
284
 
285
Set video quantizer scale blur (VBR).
286
 
287
 
288
=item B I B<(>IB<)>
289
 
290
Set min video quantizer scale (VBR). Must be included between -1 and
291
69, default value is 2.
292
 
293
 
294
=item B I B<(>IB<)>
295
 
296
Set max video quantizer scale (VBR). Must be included between -1 and
297
1024, default value is 31.
298
 
299
 
300
=item B I B<(>IB<)>
301
 
302
Set max difference between the quantizer scale (VBR).
303
 
304
 
305
=item B I B<(>IB<)>
306
 
307
Set max number of B frames.
308
 
309
 
310
=item B I B<(>IB<)>
311
 
312
Set qp factor between P and B frames.
313
 
314
 
315
=item B I B<(>IB<)>
316
 
317
Set ratecontrol method.
318
 
319
 
320
=item B I B<(>IB<)>
321
 
322
Set strategy to choose between I/P/B-frames.
323
 
324
 
325
=item B I B<(>IB<)>
326
 
327
Set RTP payload size in bytes.
328
 
329
 
330
=item B I
331
 
332
 
333
=item B I
334
 
335
 
336
=item B I
337
 
338
 
339
=item B I
340
 
341
 
342
=item B I
343
 
344
 
345
=item B I
346
 
347
 
348
=item B I
349
 
350
 
351
=item B I
352
 
353
 
354
=item B I
355
 
356
 
357
=item B I
358
 
359
 
360
=item B I B<(>IB<)>
361
 
362
Workaround not auto detected encoder bugs.
363
 
364
Possible values:
365
 
366
=over 4
367
 
368
 
369
=item B
370
 
371
 
372
 
373
=item B
374
 
375
some old lavc generated msmpeg4v3 files (no autodetection)
376
 
377
=item B
378
 
379
Xvid interlacing bug (autodetected if fourcc==XVIX)
380
 
381
=item B
382
 
383
(autodetected if fourcc==UMP4)
384
 
385
=item B
386
 
387
padding bug (autodetected)
388
 
389
=item B
390
 
391
 
392
 
393
=item B
394
 
395
illegal vlc bug (autodetected per fourcc)
396
 
397
=item B
398
 
399
 
400
 
401
=item B
402
 
403
old standard qpel (autodetected per fourcc/version)
404
 
405
=item B
406
 
407
 
408
 
409
=item B
410
 
411
direct-qpel-blocksize bug (autodetected per fourcc/version)
412
 
413
=item B
414
 
415
edge padding bug (autodetected per fourcc/version)
416
 
417
=item B
418
 
419
 
420
 
421
=item B
422
 
423
 
424
 
425
=item B
426
 
427
Workaround various bugs in microsoft broken decoders.
428
 
429
=item B
430
 
431
trancated frames
432
 
433
=back
434
 
435
 
436
 
437
=item B I B<(>IB<)>
438
 
439
Set single coefficient elimination threshold for luminance (negative
440
values also consider DC coefficient).
441
 
442
 
443
=item B I B<(>IB<)>
444
 
445
Set single coefficient elimination threshold for chrominance (negative
446
values also consider dc coefficient)
447
 
448
 
449
=item B I B<(>IB<)>
450
 
451
Specify how strictly to follow the standards.
452
 
453
Possible values:
454
 
455
=over 4
456
 
457
 
458
=item B
459
 
460
strictly conform to a older more strict version of the spec or reference software
461
 
462
=item B
463
 
464
strictly conform to all the things in the spec no matter what consequences
465
 
466
=item B
467
 
468
 
469
 
470
=item B
471
 
472
allow unofficial extensions
473
 
474
=item B
475
 
476
allow non standardized experimental things, experimental
477
(unfinished/work in progress/not well tested) decoders and encoders.
478
Note: experimental decoders can pose a security risk, do not use this for
479
decoding untrusted input.
480
 
481
=back
482
 
483
 
484
 
485
=item B I B<(>IB<)>
486
 
487
Set QP offset between P and B frames.
488
 
489
 
490
=item B I B<(>IB<)>
491
 
492
Set error detection flags.
493
 
494
Possible values:
495
 
496
=over 4
497
 
498
 
499
=item B
500
 
501
verify embedded CRCs
502
 
503
=item B
504
 
505
detect bitstream specification deviations
506
 
507
=item B
508
 
509
detect improper bitstream length
510
 
511
=item B
512
 
513
abort decoding on minor error detection
514
 
515
=item B
516
 
517
consider things that violate the spec and have not been seen in the wild as errors
518
 
519
=item B
520
 
521
consider all spec non compliancies as errors
522
 
523
=item B
524
 
525
consider things that a sane encoder should not do as an error
526
 
527
=back
528
 
529
 
530
 
531
=item B I
532
 
533
 
534
 
535
=item B I
536
 
537
 
538
 
539
=item B I B<(>IB<)>
540
 
541
Use MPEG quantizers instead of H.263.
542
 
543
 
544
=item B I B<(>IB<)>
545
 
546
How to keep quantizer between qmin and qmax (0 = clip, 1 = use
547
differentiable function).
548
 
549
 
550
=item B I B<(>IB<)>
551
 
552
Set experimental quantizer modulation.
553
 
554
 
555
=item B I B<(>IB<)>
556
 
557
Set experimental quantizer modulation.
558
 
559
 
560
=item B I
561
 
562
 
563
 
564
=item B I B<(>IB<)>
565
 
566
Set rate control equation. When computing the expression, besides the
567
standard functions defined in the section 'Expression Evaluation', the
568
following functions are available: bits2qp(bits), qp2bits(qp). Also
569
the following constants are available: iTex pTex tex mv fCode iCount
570
mcVar var isI isP isB avgQP qComp avgIITex avgPITex avgPPTex avgBPTex
571
avgTex.
572
 
573
 
574
=item B I B<(>IB<)>
575
 
576
Set max bitrate tolerance (in bits/s). Requires bufsize to be set.
577
 
578
 
579
=item B I B<(>IB<)>
580
 
581
Set min bitrate tolerance (in bits/s). Most useful in setting up a CBR
582
encode. It is of little use elsewise.
583
 
584
 
585
=item B I B<(>IB<)>
586
 
587
Set ratecontrol buffer size (in bits).
588
 
589
 
590
=item B I B<(>IB<)>
591
 
592
Currently useless.
593
 
594
 
595
=item B I B<(>IB<)>
596
 
597
Set QP factor between P and I frames.
598
 
599
 
600
=item B I B<(>IB<)>
601
 
602
Set QP offset between P and I frames.
603
 
604
 
605
=item B I B<(>IB<)>
606
 
607
Set initial complexity for 1-pass encoding.
608
 
609
 
610
=item B I B<(>IB<)>
611
 
612
Set DCT algorithm.
613
 
614
Possible values:
615
 
616
=over 4
617
 
618
 
619
=item B
620
 
621
autoselect a good one (default)
622
 
623
=item B
624
 
625
fast integer
626
 
627
=item B
628
 
629
accurate integer
630
 
631
=item B
632
 
633
 
634
 
635
=item B
636
 
637
 
638
 
639
=item B
640
 
641
floating point AAN DCT
642
 
643
=back
644
 
645
 
646
 
647
=item B I B<(>IB<)>
648
 
649
Compress bright areas stronger than medium ones.
650
 
651
 
652
=item B I B<(>IB<)>
653
 
654
Set temporal complexity masking.
655
 
656
 
657
=item B I B<(>IB<)>
658
 
659
Set spatial complexity masking.
660
 
661
 
662
=item B I B<(>IB<)>
663
 
664
Set inter masking.
665
 
666
 
667
=item B I B<(>IB<)>
668
 
669
Compress dark areas stronger than medium ones.
670
 
671
 
672
=item B I B<(>IB<)>
673
 
674
Select IDCT implementation.
675
 
676
Possible values:
677
 
678
=over 4
679
 
680
 
681
=item B
682
 
683
 
684
 
685
=item B
686
 
687
 
688
 
689
=item B
690
 
691
 
692
 
693
=item B
694
 
695
 
696
 
697
=item B
698
 
699
 
700
 
701
=item B
702
 
703
 
704
 
705
=item B
706
 
707
 
708
 
709
=item B
710
 
711
 
712
 
713
=item B
714
 
715
 
716
 
717
=item B
718
 
719
 
720
 
721
=item B
722
 
723
 
724
 
725
=item B
726
 
727
 
728
 
729
=item B
730
 
731
 
732
 
733
=item B
734
 
735
 
736
 
737
=item B
738
 
739
floating point AAN IDCT
740
 
741
=back
742
 
743
 
744
 
745
=item B I
746
 
747
 
748
 
749
=item B I B<(>IB<)>
750
 
751
Set error concealment strategy.
752
 
753
Possible values:
754
 
755
=over 4
756
 
757
 
758
=item B
759
 
760
iterative motion vector (MV) search (slow)
761
 
762
=item B
763
 
764
use strong deblock filter for damaged MBs
765
 
766
=back
767
 
768
 
769
 
770
=item B I
771
 
772
 
773
 
774
=item B I B<(>IB<)>
775
 
776
Set prediction method.
777
 
778
Possible values:
779
 
780
=over 4
781
 
782
 
783
=item B
784
 
785
 
786
 
787
=item B
788
 
789
 
790
 
791
=item B
792
 
793
 
794
 
795
=back
796
 
797
 
798
 
799
=item B I B<(>IB<)>
800
 
801
Set sample aspect ratio.
802
 
803
 
804
=item B I B<(>IB<)>
805
 
806
Print specific debug info.
807
 
808
Possible values:
809
 
810
=over 4
811
 
812
 
813
=item B
814
 
815
picture info
816
 
817
=item B
818
 
819
rate control
820
 
821
=item B
822
 
823
 
824
 
825
=item B
826
 
827
macroblock (MB) type
828
 
829
=item B
830
 
831
per-block quantization parameter (QP)
832
 
833
=item B
834
 
835
motion vector
836
 
837
=item B
838
 
839
 
840
 
841
=item B
842
 
843
 
844
 
845
=item B
846
 
847
 
848
 
849
=item B
850
 
851
 
852
 
853
=item B
854
 
855
error recognition
856
 
857
=item B
858
 
859
memory management control operations (H.264)
860
 
861
=item B
862
 
863
 
864
 
865
=item B
866
 
867
visualize quantization parameter (QP), lower QP are tinted greener
868
 
869
=item B
870
 
871
visualize block types
872
 
873
=item B
874
 
875
picture buffer allocations
876
 
877
=item B
878
 
879
threading operations
880
 
881
=back
882
 
883
 
884
 
885
=item B I B<(>IB<)>
886
 
887
Visualize motion vectors (MVs).
888
 
889
Possible values:
890
 
891
=over 4
892
 
893
 
894
=item B
895
 
896
forward predicted MVs of P-frames
897
 
898
=item B
899
 
900
forward predicted MVs of B-frames
901
 
902
=item B
903
 
904
backward predicted MVs of B-frames
905
 
906
=back
907
 
908
 
909
 
910
=item B I B<(>IB<)>
911
 
912
Set full pel me compare function.
913
 
914
Possible values:
915
 
916
=over 4
917
 
918
 
919
=item B
920
 
921
sum of absolute differences, fast (default)
922
 
923
=item B
924
 
925
sum of squared errors
926
 
927
=item B
928
 
929
sum of absolute Hadamard transformed differences
930
 
931
=item B
932
 
933
sum of absolute DCT transformed differences
934
 
935
=item B
936
 
937
sum of squared quantization errors (avoid, low quality)
938
 
939
=item B
940
 
941
number of bits needed for the block
942
 
943
=item B
944
 
945
rate distortion optimal, slow
946
 
947
=item B
948
 
949
 
950
 
951
=item B
952
 
953
sum of absolute vertical differences
954
 
955
=item B
956
 
957
sum of squared vertical differences
958
 
959
=item B
960
 
961
noise preserving sum of squared differences
962
 
963
=item B
964
 
965
5/3 wavelet, only used in snow
966
 
967
=item B
968
 
969
9/7 wavelet, only used in snow
970
 
971
=item B
972
 
973
 
974
 
975
=item B
976
 
977
 
978
 
979
=back
980
 
981
 
982
 
983
=item B I B<(>IB<)>
984
 
985
Set sub pel me compare function.
986
 
987
Possible values:
988
 
989
=over 4
990
 
991
 
992
=item B
993
 
994
sum of absolute differences, fast (default)
995
 
996
=item B
997
 
998
sum of squared errors
999
 
1000
=item B
1001
 
1002
sum of absolute Hadamard transformed differences
1003
 
1004
=item B
1005
 
1006
sum of absolute DCT transformed differences
1007
 
1008
=item B
1009
 
1010
sum of squared quantization errors (avoid, low quality)
1011
 
1012
=item B
1013
 
1014
number of bits needed for the block
1015
 
1016
=item B
1017
 
1018
rate distortion optimal, slow
1019
 
1020
=item B
1021
 
1022
 
1023
 
1024
=item B
1025
 
1026
sum of absolute vertical differences
1027
 
1028
=item B
1029
 
1030
sum of squared vertical differences
1031
 
1032
=item B
1033
 
1034
noise preserving sum of squared differences
1035
 
1036
=item B
1037
 
1038
5/3 wavelet, only used in snow
1039
 
1040
=item B
1041
 
1042
9/7 wavelet, only used in snow
1043
 
1044
=item B
1045
 
1046
 
1047
 
1048
=item B
1049
 
1050
 
1051
 
1052
=back
1053
 
1054
 
1055
 
1056
=item B I B<(>IB<)>
1057
 
1058
Set macroblock compare function.
1059
 
1060
Possible values:
1061
 
1062
=over 4
1063
 
1064
 
1065
=item B
1066
 
1067
sum of absolute differences, fast (default)
1068
 
1069
=item B
1070
 
1071
sum of squared errors
1072
 
1073
=item B
1074
 
1075
sum of absolute Hadamard transformed differences
1076
 
1077
=item B
1078
 
1079
sum of absolute DCT transformed differences
1080
 
1081
=item B
1082
 
1083
sum of squared quantization errors (avoid, low quality)
1084
 
1085
=item B
1086
 
1087
number of bits needed for the block
1088
 
1089
=item B
1090
 
1091
rate distortion optimal, slow
1092
 
1093
=item B
1094
 
1095
 
1096
 
1097
=item B
1098
 
1099
sum of absolute vertical differences
1100
 
1101
=item B
1102
 
1103
sum of squared vertical differences
1104
 
1105
=item B
1106
 
1107
noise preserving sum of squared differences
1108
 
1109
=item B
1110
 
1111
5/3 wavelet, only used in snow
1112
 
1113
=item B
1114
 
1115
9/7 wavelet, only used in snow
1116
 
1117
=item B
1118
 
1119
 
1120
 
1121
=item B
1122
 
1123
 
1124
 
1125
=back
1126
 
1127
 
1128
 
1129
=item B I B<(>IB<)>
1130
 
1131
Set interlaced dct compare function.
1132
 
1133
Possible values:
1134
 
1135
=over 4
1136
 
1137
 
1138
=item B
1139
 
1140
sum of absolute differences, fast (default)
1141
 
1142
=item B
1143
 
1144
sum of squared errors
1145
 
1146
=item B
1147
 
1148
sum of absolute Hadamard transformed differences
1149
 
1150
=item B
1151
 
1152
sum of absolute DCT transformed differences
1153
 
1154
=item B
1155
 
1156
sum of squared quantization errors (avoid, low quality)
1157
 
1158
=item B
1159
 
1160
number of bits needed for the block
1161
 
1162
=item B
1163
 
1164
rate distortion optimal, slow
1165
 
1166
=item B
1167
 
1168
 
1169
 
1170
=item B
1171
 
1172
sum of absolute vertical differences
1173
 
1174
=item B
1175
 
1176
sum of squared vertical differences
1177
 
1178
=item B
1179
 
1180
noise preserving sum of squared differences
1181
 
1182
=item B
1183
 
1184
5/3 wavelet, only used in snow
1185
 
1186
=item B
1187
 
1188
9/7 wavelet, only used in snow
1189
 
1190
=item B
1191
 
1192
 
1193
 
1194
=item B
1195
 
1196
 
1197
 
1198
=back
1199
 
1200
 
1201
 
1202
=item B I B<(>IB<)>
1203
 
1204
Set diamond type & size for motion estimation.
1205
 
1206
 
1207
=item B I B<(>IB<)>
1208
 
1209
Set amount of motion predictors from the previous frame.
1210
 
1211
 
1212
=item B I B<(>IB<)>
1213
 
1214
Set pre motion estimation.
1215
 
1216
 
1217
=item B I B<(>IB<)>
1218
 
1219
Set pre motion estimation compare function.
1220
 
1221
Possible values:
1222
 
1223
=over 4
1224
 
1225
 
1226
=item B
1227
 
1228
sum of absolute differences, fast (default)
1229
 
1230
=item B
1231
 
1232
sum of squared errors
1233
 
1234
=item B
1235
 
1236
sum of absolute Hadamard transformed differences
1237
 
1238
=item B
1239
 
1240
sum of absolute DCT transformed differences
1241
 
1242
=item B
1243
 
1244
sum of squared quantization errors (avoid, low quality)
1245
 
1246
=item B
1247
 
1248
number of bits needed for the block
1249
 
1250
=item B
1251
 
1252
rate distortion optimal, slow
1253
 
1254
=item B
1255
 
1256
 
1257
 
1258
=item B
1259
 
1260
sum of absolute vertical differences
1261
 
1262
=item B
1263
 
1264
sum of squared vertical differences
1265
 
1266
=item B
1267
 
1268
noise preserving sum of squared differences
1269
 
1270
=item B
1271
 
1272
5/3 wavelet, only used in snow
1273
 
1274
=item B
1275
 
1276
9/7 wavelet, only used in snow
1277
 
1278
=item B
1279
 
1280
 
1281
 
1282
=item B
1283
 
1284
 
1285
 
1286
=back
1287
 
1288
 
1289
 
1290
=item B I B<(>IB<)>
1291
 
1292
Set diamond type & size for motion estimation pre-pass.
1293
 
1294
 
1295
=item B I B<(>IB<)>
1296
 
1297
Set sub pel motion estimation quality.
1298
 
1299
 
1300
=item B I
1301
 
1302
 
1303
 
1304
=item B I B<(>IB<)>
1305
 
1306
Set limit motion vectors range (1023 for DivX player).
1307
 
1308
 
1309
=item B I B<(>IB<)>
1310
 
1311
Set intra quant bias.
1312
 
1313
 
1314
=item B I B<(>IB<)>
1315
 
1316
Set inter quant bias.
1317
 
1318
 
1319
=item B I
1320
 
1321
 
1322
 
1323
=item B I B<(>IB<)>
1324
 
1325
 
1326
 
1327
=item B I B<(>IB<)>
1328
 
1329
 
1330
Possible values:
1331
 
1332
=over 4
1333
 
1334
 
1335
=item B
1336
 
1337
variable length coder / huffman coder
1338
 
1339
=item B
1340
 
1341
arithmetic coder
1342
 
1343
=item B
1344
 
1345
raw (no encoding)
1346
 
1347
=item B
1348
 
1349
run-length coder
1350
 
1351
=item B
1352
 
1353
deflate-based coder
1354
 
1355
=back
1356
 
1357
 
1358
 
1359
=item B I B<(>IB<)>
1360
 
1361
Set context model.
1362
 
1363
 
1364
=item B I
1365
 
1366
 
1367
 
1368
=item B I
1369
 
1370
 
1371
 
1372
=item B I B<(>IB<)>
1373
 
1374
Set macroblock decision algorithm (high quality mode).
1375
 
1376
Possible values:
1377
 
1378
=over 4
1379
 
1380
 
1381
=item B
1382
 
1383
use mbcmp (default)
1384
 
1385
=item B
1386
 
1387
use fewest bits
1388
 
1389
=item B
1390
 
1391
use best rate distortion
1392
 
1393
=back
1394
 
1395
 
1396
 
1397
=item B I
1398
 
1399
 
1400
 
1401
=item B I B<(>IB<)>
1402
 
1403
Set scene change threshold.
1404
 
1405
 
1406
=item B I B<(>IB<)>
1407
 
1408
Set min lagrange factor (VBR).
1409
 
1410
 
1411
=item B I B<(>IB<)>
1412
 
1413
Set max lagrange factor (VBR).
1414
 
1415
 
1416
=item B I B<(>IB<)>
1417
 
1418
Set noise reduction.
1419
 
1420
 
1421
=item B I B<(>IB<)>
1422
 
1423
Set number of bits which should be loaded into the rc buffer before
1424
decoding starts.
1425
 
1426
 
1427
=item B I B<(>IB<)>
1428
 
1429
 
1430
Possible values:
1431
 
1432
=over 4
1433
 
1434
 
1435
=item B
1436
 
1437
Allow non spec compliant speedup tricks.
1438
 
1439
=item B
1440
 
1441
Deprecated, use mpegvideo private options instead.
1442
 
1443
=item B
1444
 
1445
Skip bitstream encoding.
1446
 
1447
=item B
1448
 
1449
Ignore cropping information from sps.
1450
 
1451
=item B
1452
 
1453
Place global headers at every keyframe instead of in extradata.
1454
 
1455
=item B
1456
 
1457
Frame data might be split into multiple chunks.
1458
 
1459
=item B
1460
 
1461
Show all frames before the first keyframe.
1462
 
1463
=item B
1464
 
1465
Deprecated, use mpegvideo private options instead.
1466
 
1467
=back
1468
 
1469
 
1470
 
1471
=item B I B<(>IB<)>
1472
 
1473
 
1474
 
1475
=item B I B<(>IB<)>
1476
 
1477
Deprecated, use mpegvideo private options instead.
1478
 
1479
 
1480
=item B I B<(>IB<)>
1481
 
1482
 
1483
Possible values:
1484
 
1485
=over 4
1486
 
1487
 
1488
=item B
1489
 
1490
detect a good number of threads
1491
 
1492
=back
1493
 
1494
 
1495
 
1496
=item B I B<(>IB<)>
1497
 
1498
Set motion estimation threshold.
1499
 
1500
 
1501
=item B I B<(>IB<)>
1502
 
1503
Set macroblock threshold.
1504
 
1505
 
1506
=item B I B<(>IB<)>
1507
 
1508
Set intra_dc_precision.
1509
 
1510
 
1511
=item B I B<(>IB<)>
1512
 
1513
Set nsse weight.
1514
 
1515
 
1516
=item B I B<(>IB<)>
1517
 
1518
Set number of macroblock rows at the top which are skipped.
1519
 
1520
 
1521
=item B I B<(>IB<)>
1522
 
1523
Set number of macroblock rows at the bottom which are skipped.
1524
 
1525
 
1526
=item B I B<(>IB<)>
1527
 
1528
 
1529
Possible values:
1530
 
1531
=over 4
1532
 
1533
 
1534
=item B
1535
 
1536
 
1537
 
1538
=item B
1539
 
1540
 
1541
 
1542
=item B
1543
 
1544
 
1545
 
1546
=item B
1547
 
1548
 
1549
 
1550
=item B
1551
 
1552
 
1553
 
1554
=item B
1555
 
1556
 
1557
 
1558
=item B
1559
 
1560
 
1561
 
1562
=item B
1563
 
1564
 
1565
 
1566
=item B
1567
 
1568
 
1569
 
1570
=item B
1571
 
1572
 
1573
 
1574
=item B
1575
 
1576
 
1577
 
1578
=item B
1579
 
1580
 
1581
 
1582
=item B
1583
 
1584
 
1585
 
1586
=item B
1587
 
1588
 
1589
 
1590
=item B
1591
 
1592
 
1593
 
1594
=item B
1595
 
1596
 
1597
 
1598
=back
1599
 
1600
 
1601
 
1602
=item B I B<(>IB<)>
1603
 
1604
 
1605
Possible values:
1606
 
1607
=over 4
1608
 
1609
 
1610
=item B
1611
 
1612
 
1613
 
1614
=back
1615
 
1616
 
1617
 
1618
=item B I B<(>IB<)>
1619
 
1620
Decode at 1= 1/2, 2=1/4, 3=1/8 resolutions.
1621
 
1622
 
1623
=item B I B<(>IB<)>
1624
 
1625
Set frame skip threshold.
1626
 
1627
 
1628
=item B I B<(>IB<)>
1629
 
1630
Set frame skip factor.
1631
 
1632
 
1633
=item B I B<(>IB<)>
1634
 
1635
Set frame skip exponent.
1636
 
1637
 
1638
=item B I B<(>IB<)>
1639
 
1640
Set frame skip compare function.
1641
 
1642
Possible values:
1643
 
1644
=over 4
1645
 
1646
 
1647
=item B
1648
 
1649
sum of absolute differences, fast (default)
1650
 
1651
=item B
1652
 
1653
sum of squared errors
1654
 
1655
=item B
1656
 
1657
sum of absolute Hadamard transformed differences
1658
 
1659
=item B
1660
 
1661
sum of absolute DCT transformed differences
1662
 
1663
=item B
1664
 
1665
sum of squared quantization errors (avoid, low quality)
1666
 
1667
=item B
1668
 
1669
number of bits needed for the block
1670
 
1671
=item B
1672
 
1673
rate distortion optimal, slow
1674
 
1675
=item B
1676
 
1677
 
1678
 
1679
=item B
1680
 
1681
sum of absolute vertical differences
1682
 
1683
=item B
1684
 
1685
sum of squared vertical differences
1686
 
1687
=item B
1688
 
1689
noise preserving sum of squared differences
1690
 
1691
=item B
1692
 
1693
5/3 wavelet, only used in snow
1694
 
1695
=item B
1696
 
1697
9/7 wavelet, only used in snow
1698
 
1699
=item B
1700
 
1701
 
1702
 
1703
=item B
1704
 
1705
 
1706
 
1707
=back
1708
 
1709
 
1710
 
1711
=item B I B<(>IB<)>
1712
 
1713
Increase the quantizer for macroblocks close to borders.
1714
 
1715
 
1716
=item B I B<(>IB<)>
1717
 
1718
Set min macroblock lagrange factor (VBR).
1719
 
1720
 
1721
=item B I B<(>IB<)>
1722
 
1723
Set max macroblock lagrange factor (VBR).
1724
 
1725
 
1726
=item B I B<(>IB<)>
1727
 
1728
Set motion estimation bitrate penalty compensation (1.0 = 256).
1729
 
1730
 
1731
=item B I B<(>IB<)>
1732
 
1733
 
1734
=item B        I B<(>IB<)>
1735
 
1736
 
1737
=item B       I B<(>IB<)>
1738
 
1739
 
1740
Make decoder discard processing depending on the frame type selected
1741
by the option value.
1742
 
1743
B skips frame loop filtering, B
1744
skips frame IDCT/dequantization, B skips decoding.
1745
 
1746
Possible values:
1747
 
1748
=over 4
1749
 
1750
 
1751
=item B
1752
 
1753
Discard no frame.
1754
 
1755
 
1756
=item B
1757
 
1758
Discard useless frames like 0-sized frames.
1759
 
1760
 
1761
=item B
1762
 
1763
Discard all non-reference frames.
1764
 
1765
 
1766
=item B
1767
 
1768
Discard all bidirectional frames.
1769
 
1770
 
1771
=item B
1772
 
1773
Discard all frames excepts keyframes.
1774
 
1775
 
1776
=item B
1777
 
1778
Discard all frames.
1779
 
1780
=back
1781
 
1782
 
1783
Default value is B.
1784
 
1785
 
1786
=item B I B<(>IB<)>
1787
 
1788
Refine the two motion vectors used in bidirectional macroblocks.
1789
 
1790
 
1791
=item B I B<(>IB<)>
1792
 
1793
Downscale frames for dynamic B-frame decision.
1794
 
1795
 
1796
=item B I B<(>IB<)>
1797
 
1798
Set minimum interval between IDR-frames.
1799
 
1800
 
1801
=item B I B<(>IB<)>
1802
 
1803
Set reference frames to consider for motion compensation.
1804
 
1805
 
1806
=item B I B<(>IB<)>
1807
 
1808
Set chroma qp offset from luma.
1809
 
1810
 
1811
=item B I B<(>IB<)>
1812
 
1813
Set rate-distortion optimal quantization.
1814
 
1815
 
1816
=item B I B<(>IB<)>
1817
 
1818
Set value multiplied by qscale for each frame and added to
1819
scene_change_score.
1820
 
1821
 
1822
=item B I B<(>IB<)>
1823
 
1824
 
1825
=item B I B<(>IB<)>
1826
 
1827
Adjust sensitivity of b_frame_strategy 1.
1828
 
1829
 
1830
=item B I B<(>IB<)>
1831
 
1832
 
1833
=item B I B<(>IB<)>
1834
 
1835
 
1836
=item B I B<(>IB<)>
1837
 
1838
 
1839
=item B I B<(>IB<)>
1840
 
1841
Set GOP timecode frame start number, in non drop frame format.
1842
 
1843
 
1844
=item B I B<(>IB<)>
1845
 
1846
Set desired number of audio channels.
1847
 
1848
 
1849
=item B I
1850
 
1851
 
1852
=item B I B<(>IB<)>
1853
 
1854
 
1855
Possible values:
1856
 
1857
=over 4
1858
 
1859
 
1860
=back
1861
 
1862
 
1863
=item B I B<(>IB<)>
1864
 
1865
 
1866
Possible values:
1867
 
1868
=over 4
1869
 
1870
 
1871
=back
1872
 
1873
 
1874
=item B I B<(>IB<)>
1875
 
1876
 
1877
=item B I B<(>IB<)>
1878
 
1879
 
1880
=item B I B<(>IB<)>
1881
 
1882
 
1883
=item B I B<(>IB<)>
1884
 
1885
 
1886
=item B I B<(>IB<)>
1887
 
1888
 
1889
=item B I B<(>IB<)>
1890
 
1891
 
1892
=item B I B<(>IB<)>
1893
 
1894
 
1895
=item B I B<(>IB<)>
1896
 
1897
 
1898
 
1899
=item B I
1900
 
1901
Set the log level offset.
1902
 
1903
 
1904
=item B I B<(>IB<)>
1905
 
1906
Number of slices, used in parallelized encoding.
1907
 
1908
 
1909
=item B I B<(>IB<)>
1910
 
1911
Select multithreading type.
1912
 
1913
Possible values:
1914
 
1915
=over 4
1916
 
1917
 
1918
=item B
1919
 
1920
 
1921
 
1922
=item B
1923
 
1924
 
1925
 
1926
=back
1927
 
1928
 
1929
=item B I B<(>IB<)>
1930
 
1931
Set audio service type.
1932
 
1933
Possible values:
1934
 
1935
=over 4
1936
 
1937
 
1938
=item B
1939
 
1940
Main Audio Service
1941
 
1942
=item B
1943
 
1944
Effects
1945
 
1946
=item B
1947
 
1948
Visually Impaired
1949
 
1950
=item B
1951
 
1952
Hearing Impaired
1953
 
1954
=item B
1955
 
1956
Dialogue
1957
 
1958
=item B
1959
 
1960
Commentary
1961
 
1962
=item B
1963
 
1964
Emergency
1965
 
1966
=item B
1967
 
1968
Voice Over
1969
 
1970
=item B
1971
 
1972
Karaoke
1973
 
1974
=back
1975
 
1976
 
1977
 
1978
=item B I B<(>IB<)>
1979
 
1980
Set sample format audio decoders should prefer. Default value is
1981
C.
1982
 
1983
 
1984
=item B I
1985
 
1986
 
1987
 
1988
=item B I B<(>IB<)>
1989
 
1990
Set the input subtitles character encoding.
1991
 
1992
 
1993
=item B  I B<(>I
1994
 
1995
Set/override the field order of the video.
1996
Possible values:
1997
 
1998
=over 4
1999
 
2000
 
2001
=item B
2002
 
2003
Progressive video
2004
 
2005
=item B
2006
 
2007
Interlaced video, top field coded and displayed first
2008
 
2009
=item B
2010
 
2011
Interlaced video, bottom field coded and displayed first
2012
 
2013
=item B
2014
 
2015
Interlaced video, top coded first, bottom displayed first
2016
 
2017
=item B
2018
 
2019
Interlaced video, bottom coded first, top displayed first
2020
 
2021
=back
2022
 
2023
 
2024
 
2025
=item B I B<(>IB<)>
2026
 
2027
Set to 1 to disable processing alpha (transparency). This works like the
2028
B flag in the B option which skips chroma information
2029
instead of alpha. Default is 0.
2030
 
2031
=back
2032
 
2033
 
2034
 
2035
 
2036
=head1 DECODERS
2037
 
2038
 
2039
Decoders are configured elements in FFmpeg which allow the decoding of
2040
multimedia streams.
2041
 
2042
When you configure your FFmpeg build, all the supported native decoders
2043
are enabled by default. Decoders requiring an external library must be enabled
2044
manually via the corresponding C<--enable-lib> option. You can list all
2045
available decoders using the configure option C<--list-decoders>.
2046
 
2047
You can disable all the decoders with the configure option
2048
C<--disable-decoders> and selectively enable / disable single decoders
2049
with the options C<--enable-decoder=I> /
2050
C<--disable-decoder=I>.
2051
 
2052
The option C<-codecs> of the ff* tools will display the list of
2053
enabled decoders.
2054
 
2055
 
2056
 
2057
=head1 VIDEO DECODERS
2058
 
2059
 
2060
A description of some of the currently available video decoders
2061
follows.
2062
 
2063
 
2064
=head2 rawvideo
2065
 
2066
 
2067
Raw video decoder.
2068
 
2069
This decoder decodes rawvideo streams.
2070
 
2071
 
2072
=head3 Options
2073
 
2074
 
2075
 
2076
=over 4
2077
 
2078
 
2079
=item B I
2080
 
2081
Specify the assumed field type of the input video.
2082
 
2083
=over 4
2084
 
2085
 
2086
=item B<-1>
2087
 
2088
the video is assumed to be progressive (default)
2089
 
2090
=item B<0>
2091
 
2092
bottom-field-first is assumed
2093
 
2094
=item B<1>
2095
 
2096
top-field-first is assumed
2097
 
2098
=back
2099
 
2100
 
2101
 
2102
=back
2103
 
2104
 
2105
 
2106
 
2107
=head1 AUDIO DECODERS
2108
 
2109
 
2110
 
2111
=head2 ffwavesynth
2112
 
2113
 
2114
Internal wave synthetizer.
2115
 
2116
This decoder generates wave patterns according to predefined sequences. Its
2117
use is purely internal and the format of the data it accepts is not publicly
2118
documented.
2119
 
2120
 
2121
=head2 libcelt
2122
 
2123
 
2124
libcelt decoder wrapper.
2125
 
2126
libcelt allows libavcodec to decode the Xiph CELT ultra-low delay audio codec.
2127
Requires the presence of the libcelt headers and library during configuration.
2128
You need to explicitly configure the build with C<--enable-libcelt>.
2129
 
2130
 
2131
=head2 libgsm
2132
 
2133
 
2134
libgsm decoder wrapper.
2135
 
2136
libgsm allows libavcodec to decode the GSM full rate audio codec. Requires
2137
the presence of the libgsm headers and library during configuration. You need
2138
to explicitly configure the build with C<--enable-libgsm>.
2139
 
2140
This decoder supports both the ordinary GSM and the Microsoft variant.
2141
 
2142
 
2143
=head2 libilbc
2144
 
2145
 
2146
libilbc decoder wrapper.
2147
 
2148
libilbc allows libavcodec to decode the Internet Low Bitrate Codec (iLBC)
2149
audio codec. Requires the presence of the libilbc headers and library during
2150
configuration. You need to explicitly configure the build with
2151
C<--enable-libilbc>.
2152
 
2153
 
2154
=head3 Options
2155
 
2156
 
2157
The following option is supported by the libilbc wrapper.
2158
 
2159
 
2160
=over 4
2161
 
2162
 
2163
=item B
2164
 
2165
 
2166
Enable the enhancement of the decoded audio when set to 1. The default
2167
value is 0 (disabled).
2168
 
2169
 
2170
=back
2171
 
2172
 
2173
 
2174
=head2 libopencore-amrnb
2175
 
2176
 
2177
libopencore-amrnb decoder wrapper.
2178
 
2179
libopencore-amrnb allows libavcodec to decode the Adaptive Multi-Rate
2180
Narrowband audio codec. Using it requires the presence of the
2181
libopencore-amrnb headers and library during configuration. You need to
2182
explicitly configure the build with C<--enable-libopencore-amrnb>.
2183
 
2184
An FFmpeg native decoder for AMR-NB exists, so users can decode AMR-NB
2185
without this library.
2186
 
2187
 
2188
=head2 libopencore-amrwb
2189
 
2190
 
2191
libopencore-amrwb decoder wrapper.
2192
 
2193
libopencore-amrwb allows libavcodec to decode the Adaptive Multi-Rate
2194
Wideband audio codec. Using it requires the presence of the
2195
libopencore-amrwb headers and library during configuration. You need to
2196
explicitly configure the build with C<--enable-libopencore-amrwb>.
2197
 
2198
An FFmpeg native decoder for AMR-WB exists, so users can decode AMR-WB
2199
without this library.
2200
 
2201
 
2202
=head2 libopus
2203
 
2204
 
2205
libopus decoder wrapper.
2206
 
2207
libopus allows libavcodec to decode the Opus Interactive Audio Codec.
2208
Requires the presence of the libopus headers and library during
2209
configuration. You need to explicitly configure the build with
2210
C<--enable-libopus>.
2211
 
2212
 
2213
 
2214
=head1 SUBTITLES DECODERS
2215
 
2216
 
2217
 
2218
=head2 dvdsub
2219
 
2220
 
2221
This codec decodes the bitmap subtitles used in DVDs; the same subtitles can
2222
also be found in VobSub file pairs and in some Matroska files.
2223
 
2224
 
2225
=head3 Options
2226
 
2227
 
2228
 
2229
=over 4
2230
 
2231
 
2232
=item B
2233
 
2234
Specify the global palette used by the bitmaps. When stored in VobSub, the
2235
palette is normally specified in the index file; in Matroska, the palette is
2236
stored in the codec extra-data in the same format as in VobSub. In DVDs, the
2237
palette is stored in the IFO file, and therefore not available when reading
2238
from dumped VOB files.
2239
 
2240
The format for this option is a string containing 16 24-bits hexadecimal
2241
numbers (without 0x prefix) separated by comas, for example C<0d00ee,
2242
ee450d, 101010, eaeaea, 0ce60b, ec14ed, ebff0b, 0d617a, 7b7b7b, d1d1d1,
2243
7b2a0e, 0d950c, 0f007b, cf0dec, cfa80c, 7c127b>.
2244
 
2245
=back
2246
 
2247
 
2248
 
2249
=head2 libzvbi-teletext
2250
 
2251
 
2252
Libzvbi allows libavcodec to decode DVB teletext pages and DVB teletext
2253
subtitles. Requires the presence of the libzvbi headers and library during
2254
configuration. You need to explicitly configure the build with
2255
C<--enable-libzvbi>.
2256
 
2257
 
2258
=head3 Options
2259
 
2260
 
2261
 
2262
=over 4
2263
 
2264
 
2265
=item B
2266
 
2267
List of teletext page numbers to decode. You may use the special * string to
2268
match all pages. Pages that do not match the specified list are dropped.
2269
Default value is *.
2270
 
2271
=item B
2272
 
2273
Discards the top teletext line. Default value is 1.
2274
 
2275
=item B
2276
 
2277
Specifies the format of the decoded subtitles. The teletext decoder is capable
2278
of decoding the teletext pages to bitmaps or to simple text, you should use
2279
"bitmap" for teletext pages, because certain graphics and colors cannot be
2280
expressed in simple text. You might use "text" for teletext based subtitles if
2281
your application can handle simple text based subtitles. Default value is
2282
bitmap.
2283
 
2284
=item B
2285
 
2286
X offset of generated bitmaps, default is 0.
2287
 
2288
=item B
2289
 
2290
Y offset of generated bitmaps, default is 0.
2291
 
2292
=item B
2293
 
2294
Chops leading and trailing spaces and removes empty lines from the generated
2295
text. This option is useful for teletext based subtitles where empty spaces may
2296
be present at the start or at the end of the lines or empty lines may be
2297
present between the subtitle lines because of double-sized teletext charactes.
2298
Default value is 1.
2299
 
2300
=item B
2301
 
2302
Sets the display duration of the decoded teletext pages or subtitles in
2303
miliseconds. Default value is 30000 which is 30 seconds.
2304
 
2305
=item B
2306
 
2307
Force transparent background of the generated teletext bitmaps. Default value
2308
is 0 which means an opaque (black) background.
2309
 
2310
=back
2311
 
2312
 
2313
 
2314
=head1 ENCODERS
2315
 
2316
 
2317
Encoders are configured elements in FFmpeg which allow the encoding of
2318
multimedia streams.
2319
 
2320
When you configure your FFmpeg build, all the supported native encoders
2321
are enabled by default. Encoders requiring an external library must be enabled
2322
manually via the corresponding C<--enable-lib> option. You can list all
2323
available encoders using the configure option C<--list-encoders>.
2324
 
2325
You can disable all the encoders with the configure option
2326
C<--disable-encoders> and selectively enable / disable single encoders
2327
with the options C<--enable-encoder=I> /
2328
C<--disable-encoder=I>.
2329
 
2330
The option C<-codecs> of the ff* tools will display the list of
2331
enabled encoders.
2332
 
2333
 
2334
 
2335
=head1 AUDIO ENCODERS
2336
 
2337
 
2338
A description of some of the currently available audio encoders
2339
follows.
2340
 
2341
 
2342
 
2343
=head2 aac
2344
 
2345
 
2346
Advanced Audio Coding (AAC) encoder.
2347
 
2348
This encoder is an experimental FFmpeg-native AAC encoder. Currently only the
2349
low complexity (AAC-LC) profile is supported. To use this encoder, you must set
2350
B option to B or lower.
2351
 
2352
As this encoder is experimental, unexpected behavior may exist from time to
2353
time. For a more stable AAC encoder, see libvo-aacenc. However, be warned
2354
that it has a worse quality reported by some users.
2355
 
2356
 
2357
 
2358
=head3 Options
2359
 
2360
 
2361
 
2362
=over 4
2363
 
2364
 
2365
=item B
2366
 
2367
Set bit rate in bits/s. Setting this automatically activates constant bit rate
2368
(CBR) mode.
2369
 
2370
 
2371
=item B
2372
 
2373
Set quality for variable bit rate (VBR) mode. This option is valid only using
2374
the B command-line tool. For library interface users, use
2375
B.
2376
 
2377
 
2378
=item B
2379
 
2380
Set stereo encoding mode. Possible values:
2381
 
2382
 
2383
=over 4
2384
 
2385
 
2386
=item B
2387
 
2388
Automatically selected by the encoder.
2389
 
2390
 
2391
=item B
2392
 
2393
Disable middle/side encoding. This is the default.
2394
 
2395
 
2396
=item B
2397
 
2398
Force middle/side encoding.
2399
 
2400
=back
2401
 
2402
 
2403
 
2404
=item B
2405
 
2406
Set AAC encoder coding method. Possible values:
2407
 
2408
 
2409
=over 4
2410
 
2411
 
2412
=item B
2413
 
2414
FAAC-inspired method.
2415
 
2416
This method is a simplified reimplementation of the method used in FAAC, which
2417
sets thresholds proportional to the band energies, and then decreases all the
2418
thresholds with quantizer steps to find the appropriate quantization with
2419
distortion below threshold band by band.
2420
 
2421
The quality of this method is comparable to the two loop searching method
2422
descibed below, but somewhat a little better and slower.
2423
 
2424
 
2425
=item B
2426
 
2427
Average noise to mask ratio (ANMR) trellis-based solution.
2428
 
2429
This has a theoretic best quality out of all the coding methods, but at the
2430
cost of the slowest speed.
2431
 
2432
 
2433
=item B
2434
 
2435
Two loop searching (TLS) method.
2436
 
2437
This method first sets quantizers depending on band thresholds and then tries
2438
to find an optimal combination by adding or subtracting a specific value from
2439
all quantizers and adjusting some individual quantizer a little.
2440
 
2441
This method produces similar quality with the FAAC method and is the default.
2442
 
2443
 
2444
=item B
2445
 
2446
Constant quantizer method.
2447
 
2448
This method sets a constant quantizer for all bands. This is the fastest of all
2449
the methods, yet produces the worst quality.
2450
 
2451
 
2452
=back
2453
 
2454
 
2455
 
2456
=back
2457
 
2458
 
2459
 
2460
=head2 ac3 and ac3_fixed
2461
 
2462
 
2463
AC-3 audio encoders.
2464
 
2465
These encoders implement part of ATSC A/52:2010 and ETSI TS 102 366, as well as
2466
the undocumented RealAudio 3 (a.k.a. dnet).
2467
 
2468
The I encoder uses floating-point math, while the I
2469
encoder only uses fixed-point integer math. This does not mean that one is
2470
always faster, just that one or the other may be better suited to a
2471
particular system. The floating-point encoder will generally produce better
2472
quality audio for a given bitrate. The I encoder is not the
2473
default codec for any of the output formats, so it must be specified explicitly
2474
using the option C<-acodec ac3_fixed> in order to use it.
2475
 
2476
 
2477
=head3 AC-3 Metadata
2478
 
2479
 
2480
The AC-3 metadata options are used to set parameters that describe the audio,
2481
but in most cases do not affect the audio encoding itself. Some of the options
2482
do directly affect or influence the decoding and playback of the resulting
2483
bitstream, while others are just for informational purposes. A few of the
2484
options will add bits to the output stream that could otherwise be used for
2485
audio data, and will thus affect the quality of the output. Those will be
2486
indicated accordingly with a note in the option list below.
2487
 
2488
These parameters are described in detail in several publicly-available
2489
documents.
2490
 
2491
=over 4
2492
 
2493
 
2494
=item *BE>
2495
 
2496
 
2497
=item *BE>
2498
 
2499
 
2500
=item *BE>
2501
 
2502
 
2503
=item *BE>
2504
 
2505
 
2506
=back
2507
 
2508
 
2509
 
2510
=head4 Metadata Control Options
2511
 
2512
 
2513
 
2514
=over 4
2515
 
2516
 
2517
 
2518
=item B<-per_frame_metadata> I
2519
 
2520
Allow Per-Frame Metadata. Specifies if the encoder should check for changing
2521
metadata for each frame.
2522
 
2523
=over 4
2524
 
2525
 
2526
=item B<0>
2527
 
2528
The metadata values set at initialization will be used for every frame in the
2529
stream. (default)
2530
 
2531
=item B<1>
2532
 
2533
Metadata values can be changed before encoding each frame.
2534
 
2535
=back
2536
 
2537
 
2538
 
2539
=back
2540
 
2541
 
2542
 
2543
=head4 Downmix Levels
2544
 
2545
 
2546
 
2547
=over 4
2548
 
2549
 
2550
 
2551
=item B<-center_mixlev> I
2552
 
2553
Center Mix Level. The amount of gain the decoder should apply to the center
2554
channel when downmixing to stereo. This field will only be written to the
2555
bitstream if a center channel is present. The value is specified as a scale
2556
factor. There are 3 valid values:
2557
 
2558
=over 4
2559
 
2560
 
2561
=item B<0.707>
2562
 
2563
Apply -3dB gain
2564
 
2565
=item B<0.595>
2566
 
2567
Apply -4.5dB gain (default)
2568
 
2569
=item B<0.500>
2570
 
2571
Apply -6dB gain
2572
 
2573
=back
2574
 
2575
 
2576
 
2577
=item B<-surround_mixlev> I
2578
 
2579
Surround Mix Level. The amount of gain the decoder should apply to the surround
2580
channel(s) when downmixing to stereo. This field will only be written to the
2581
bitstream if one or more surround channels are present. The value is specified
2582
as a scale factor.  There are 3 valid values:
2583
 
2584
=over 4
2585
 
2586
 
2587
=item B<0.707>
2588
 
2589
Apply -3dB gain
2590
 
2591
=item B<0.500>
2592
 
2593
Apply -6dB gain (default)
2594
 
2595
=item B<0.000>
2596
 
2597
Silence Surround Channel(s)
2598
 
2599
=back
2600
 
2601
 
2602
 
2603
=back
2604
 
2605
 
2606
 
2607
=head4 Audio Production Information
2608
 
2609
Audio Production Information is optional information describing the mixing
2610
environment.  Either none or both of the fields are written to the bitstream.
2611
 
2612
 
2613
=over 4
2614
 
2615
 
2616
 
2617
=item B<-mixing_level> I
2618
 
2619
Mixing Level. Specifies peak sound pressure level (SPL) in the production
2620
environment when the mix was mastered. Valid values are 80 to 111, or -1 for
2621
unknown or not indicated. The default value is -1, but that value cannot be
2622
used if the Audio Production Information is written to the bitstream. Therefore,
2623
if the C option is not the default value, the C
2624
option must not be -1.
2625
 
2626
 
2627
=item B<-room_type> I
2628
 
2629
Room Type. Describes the equalization used during the final mixing session at
2630
the studio or on the dubbing stage. A large room is a dubbing stage with the
2631
industry standard X-curve equalization; a small room has flat equalization.
2632
This field will not be written to the bitstream if both the C
2633
option and the C option have the default values.
2634
 
2635
=over 4
2636
 
2637
 
2638
=item B<0>
2639
 
2640
 
2641
=item B
2642
 
2643
Not Indicated (default)
2644
 
2645
=item B<1>
2646
 
2647
 
2648
=item B
2649
 
2650
Large Room
2651
 
2652
=item B<2>
2653
 
2654
 
2655
=item B
2656
 
2657
Small Room
2658
 
2659
=back
2660
 
2661
 
2662
 
2663
=back
2664
 
2665
 
2666
 
2667
=head4 Other Metadata Options
2668
 
2669
 
2670
 
2671
=over 4
2672
 
2673
 
2674
 
2675
=item B<-copyright> I
2676
 
2677
Copyright Indicator. Specifies whether a copyright exists for this audio.
2678
 
2679
=over 4
2680
 
2681
 
2682
=item B<0>
2683
 
2684
 
2685
=item B
2686
 
2687
No Copyright Exists (default)
2688
 
2689
=item B<1>
2690
 
2691
 
2692
=item B
2693
 
2694
Copyright Exists
2695
 
2696
=back
2697
 
2698
 
2699
 
2700
=item B<-dialnorm> I
2701
 
2702
Dialogue Normalization. Indicates how far the average dialogue level of the
2703
program is below digital 100% full scale (0 dBFS). This parameter determines a
2704
level shift during audio reproduction that sets the average volume of the
2705
dialogue to a preset level. The goal is to match volume level between program
2706
sources. A value of -31dB will result in no volume level change, relative to
2707
the source volume, during audio reproduction. Valid values are whole numbers in
2708
the range -31 to -1, with -31 being the default.
2709
 
2710
 
2711
=item B<-dsur_mode> I
2712
 
2713
Dolby Surround Mode. Specifies whether the stereo signal uses Dolby Surround
2714
(Pro Logic). This field will only be written to the bitstream if the audio
2715
stream is stereo. Using this option does B mean the encoder will actually
2716
apply Dolby Surround processing.
2717
 
2718
=over 4
2719
 
2720
 
2721
=item B<0>
2722
 
2723
 
2724
=item B
2725
 
2726
Not Indicated (default)
2727
 
2728
=item B<1>
2729
 
2730
 
2731
=item B
2732
 
2733
Not Dolby Surround Encoded
2734
 
2735
=item B<2>
2736
 
2737
 
2738
=item B
2739
 
2740
Dolby Surround Encoded
2741
 
2742
=back
2743
 
2744
 
2745
 
2746
=item B<-original> I
2747
 
2748
Original Bit Stream Indicator. Specifies whether this audio is from the
2749
original source and not a copy.
2750
 
2751
=over 4
2752
 
2753
 
2754
=item B<0>
2755
 
2756
 
2757
=item B
2758
 
2759
Not Original Source
2760
 
2761
=item B<1>
2762
 
2763
 
2764
=item B
2765
 
2766
Original Source (default)
2767
 
2768
=back
2769
 
2770
 
2771
 
2772
=back
2773
 
2774
 
2775
 
2776
=head3 Extended Bitstream Information
2777
 
2778
The extended bitstream options are part of the Alternate Bit Stream Syntax as
2779
specified in Annex D of the A/52:2010 standard. It is grouped into 2 parts.
2780
If any one parameter in a group is specified, all values in that group will be
2781
written to the bitstream.  Default values are used for those that are written
2782
but have not been specified.  If the mixing levels are written, the decoder
2783
will use these values instead of the ones specified in the C
2784
and C options if it supports the Alternate Bit Stream
2785
Syntax.
2786
 
2787
 
2788
=head4 Extended Bitstream Information - Part 1
2789
 
2790
 
2791
 
2792
=over 4
2793
 
2794
 
2795
 
2796
=item B<-dmix_mode> I
2797
 
2798
Preferred Stereo Downmix Mode. Allows the user to select either Lt/Rt
2799
(Dolby Surround) or Lo/Ro (normal stereo) as the preferred stereo downmix mode.
2800
 
2801
=over 4
2802
 
2803
 
2804
=item B<0>
2805
 
2806
 
2807
=item B
2808
 
2809
Not Indicated (default)
2810
 
2811
=item B<1>
2812
 
2813
 
2814
=item B
2815
 
2816
Lt/Rt Downmix Preferred
2817
 
2818
=item B<2>
2819
 
2820
 
2821
=item B
2822
 
2823
Lo/Ro Downmix Preferred
2824
 
2825
=back
2826
 
2827
 
2828
 
2829
=item B<-ltrt_cmixlev> I
2830
 
2831
Lt/Rt Center Mix Level. The amount of gain the decoder should apply to the
2832
center channel when downmixing to stereo in Lt/Rt mode.
2833
 
2834
=over 4
2835
 
2836
 
2837
=item B<1.414>
2838
 
2839
Apply +3dB gain
2840
 
2841
=item B<1.189>
2842
 
2843
Apply +1.5dB gain
2844
 
2845
=item B<1.000>
2846
 
2847
Apply 0dB gain
2848
 
2849
=item B<0.841>
2850
 
2851
Apply -1.5dB gain
2852
 
2853
=item B<0.707>
2854
 
2855
Apply -3.0dB gain
2856
 
2857
=item B<0.595>
2858
 
2859
Apply -4.5dB gain (default)
2860
 
2861
=item B<0.500>
2862
 
2863
Apply -6.0dB gain
2864
 
2865
=item B<0.000>
2866
 
2867
Silence Center Channel
2868
 
2869
=back
2870
 
2871
 
2872
 
2873
=item B<-ltrt_surmixlev> I
2874
 
2875
Lt/Rt Surround Mix Level. The amount of gain the decoder should apply to the
2876
surround channel(s) when downmixing to stereo in Lt/Rt mode.
2877
 
2878
=over 4
2879
 
2880
 
2881
=item B<0.841>
2882
 
2883
Apply -1.5dB gain
2884
 
2885
=item B<0.707>
2886
 
2887
Apply -3.0dB gain
2888
 
2889
=item B<0.595>
2890
 
2891
Apply -4.5dB gain
2892
 
2893
=item B<0.500>
2894
 
2895
Apply -6.0dB gain (default)
2896
 
2897
=item B<0.000>
2898
 
2899
Silence Surround Channel(s)
2900
 
2901
=back
2902
 
2903
 
2904
 
2905
=item B<-loro_cmixlev> I
2906
 
2907
Lo/Ro Center Mix Level. The amount of gain the decoder should apply to the
2908
center channel when downmixing to stereo in Lo/Ro mode.
2909
 
2910
=over 4
2911
 
2912
 
2913
=item B<1.414>
2914
 
2915
Apply +3dB gain
2916
 
2917
=item B<1.189>
2918
 
2919
Apply +1.5dB gain
2920
 
2921
=item B<1.000>
2922
 
2923
Apply 0dB gain
2924
 
2925
=item B<0.841>
2926
 
2927
Apply -1.5dB gain
2928
 
2929
=item B<0.707>
2930
 
2931
Apply -3.0dB gain
2932
 
2933
=item B<0.595>
2934
 
2935
Apply -4.5dB gain (default)
2936
 
2937
=item B<0.500>
2938
 
2939
Apply -6.0dB gain
2940
 
2941
=item B<0.000>
2942
 
2943
Silence Center Channel
2944
 
2945
=back
2946
 
2947
 
2948
 
2949
=item B<-loro_surmixlev> I
2950
 
2951
Lo/Ro Surround Mix Level. The amount of gain the decoder should apply to the
2952
surround channel(s) when downmixing to stereo in Lo/Ro mode.
2953
 
2954
=over 4
2955
 
2956
 
2957
=item B<0.841>
2958
 
2959
Apply -1.5dB gain
2960
 
2961
=item B<0.707>
2962
 
2963
Apply -3.0dB gain
2964
 
2965
=item B<0.595>
2966
 
2967
Apply -4.5dB gain
2968
 
2969
=item B<0.500>
2970
 
2971
Apply -6.0dB gain (default)
2972
 
2973
=item B<0.000>
2974
 
2975
Silence Surround Channel(s)
2976
 
2977
=back
2978
 
2979
 
2980
 
2981
=back
2982
 
2983
 
2984
 
2985
=head4 Extended Bitstream Information - Part 2
2986
 
2987
 
2988
 
2989
=over 4
2990
 
2991
 
2992
 
2993
=item B<-dsurex_mode> I
2994
 
2995
Dolby Surround EX Mode. Indicates whether the stream uses Dolby Surround EX
2996
(7.1 matrixed to 5.1). Using this option does B mean the encoder will actually
2997
apply Dolby Surround EX processing.
2998
 
2999
=over 4
3000
 
3001
 
3002
=item B<0>
3003
 
3004
 
3005
=item B
3006
 
3007
Not Indicated (default)
3008
 
3009
=item B<1>
3010
 
3011
 
3012
=item B
3013
 
3014
Dolby Surround EX Off
3015
 
3016
=item B<2>
3017
 
3018
 
3019
=item B
3020
 
3021
Dolby Surround EX On
3022
 
3023
=back
3024
 
3025
 
3026
 
3027
=item B<-dheadphone_mode> I
3028
 
3029
Dolby Headphone Mode. Indicates whether the stream uses Dolby Headphone
3030
encoding (multi-channel matrixed to 2.0 for use with headphones). Using this
3031
option does B mean the encoder will actually apply Dolby Headphone
3032
processing.
3033
 
3034
=over 4
3035
 
3036
 
3037
=item B<0>
3038
 
3039
 
3040
=item B
3041
 
3042
Not Indicated (default)
3043
 
3044
=item B<1>
3045
 
3046
 
3047
=item B
3048
 
3049
Dolby Headphone Off
3050
 
3051
=item B<2>
3052
 
3053
 
3054
=item B
3055
 
3056
Dolby Headphone On
3057
 
3058
=back
3059
 
3060
 
3061
 
3062
=item B<-ad_conv_type> I
3063
 
3064
A/D Converter Type. Indicates whether the audio has passed through HDCD A/D
3065
conversion.
3066
 
3067
=over 4
3068
 
3069
 
3070
=item B<0>
3071
 
3072
 
3073
=item B
3074
 
3075
Standard A/D Converter (default)
3076
 
3077
=item B<1>
3078
 
3079
 
3080
=item B
3081
 
3082
HDCD A/D Converter
3083
 
3084
=back
3085
 
3086
 
3087
 
3088
=back
3089
 
3090
 
3091
 
3092
=head3 Other AC-3 Encoding Options
3093
 
3094
 
3095
 
3096
=over 4
3097
 
3098
 
3099
 
3100
=item B<-stereo_rematrixing> I
3101
 
3102
Stereo Rematrixing. Enables/Disables use of rematrixing for stereo input. This
3103
is an optional AC-3 feature that increases quality by selectively encoding
3104
the left/right channels as mid/side. This option is enabled by default, and it
3105
is highly recommended that it be left as enabled except for testing purposes.
3106
 
3107
 
3108
=back
3109
 
3110
 
3111
 
3112
=head3 Floating-Point-Only AC-3 Encoding Options
3113
 
3114
 
3115
These options are only valid for the floating-point encoder and do not exist
3116
for the fixed-point encoder due to the corresponding features not being
3117
implemented in fixed-point.
3118
 
3119
 
3120
=over 4
3121
 
3122
 
3123
 
3124
=item B<-channel_coupling> I
3125
 
3126
Enables/Disables use of channel coupling, which is an optional AC-3 feature
3127
that increases quality by combining high frequency information from multiple
3128
channels into a single channel. The per-channel high frequency information is
3129
sent with less accuracy in both the frequency and time domains. This allows
3130
more bits to be used for lower frequencies while preserving enough information
3131
to reconstruct the high frequencies. This option is enabled by default for the
3132
floating-point encoder and should generally be left as enabled except for
3133
testing purposes or to increase encoding speed.
3134
 
3135
=over 4
3136
 
3137
 
3138
=item B<-1>
3139
 
3140
 
3141
=item B
3142
 
3143
Selected by Encoder (default)
3144
 
3145
=item B<0>
3146
 
3147
 
3148
=item B
3149
 
3150
Disable Channel Coupling
3151
 
3152
=item B<1>
3153
 
3154
 
3155
=item B
3156
 
3157
Enable Channel Coupling
3158
 
3159
=back
3160
 
3161
 
3162
 
3163
=item B<-cpl_start_band> I
3164
 
3165
Coupling Start Band. Sets the channel coupling start band, from 1 to 15. If a
3166
value higher than the bandwidth is used, it will be reduced to 1 less than the
3167
coupling end band. If I is used, the start band will be determined by
3168
the encoder based on the bit rate, sample rate, and channel layout. This option
3169
has no effect if channel coupling is disabled.
3170
 
3171
=over 4
3172
 
3173
 
3174
=item B<-1>
3175
 
3176
 
3177
=item B
3178
 
3179
Selected by Encoder (default)
3180
 
3181
=back
3182
 
3183
 
3184
 
3185
=back
3186
 
3187
 
3188
 
3189
 
3190
=head2 libmp3lame
3191
 
3192
 
3193
LAME (Lame Ain't an MP3 Encoder) MP3 encoder wrapper.
3194
 
3195
Requires the presence of the libmp3lame headers and library during
3196
configuration. You need to explicitly configure the build with
3197
C<--enable-libmp3lame>.
3198
 
3199
See libshine for a fixed-point MP3 encoder, although with a
3200
lower quality.
3201
 
3202
 
3203
=head3 Options
3204
 
3205
 
3206
The following options are supported by the libmp3lame wrapper. The
3207
B-equivalent of the options are listed in parentheses.
3208
 
3209
 
3210
=over 4
3211
 
3212
 
3213
=item BI<-b>B<)>
3214
 
3215
Set bitrate expressed in bits/s for CBR. LAME C is
3216
expressed in kilobits/s.
3217
 
3218
 
3219
=item BI<-V>B<)>
3220
 
3221
Set constant quality setting for VBR. This option is valid only
3222
using the B command-line tool. For library interface
3223
users, use B.
3224
 
3225
 
3226
=item BI<-q>B<)>
3227
 
3228
Set algorithm quality. Valid arguments are integers in the 0-9 range,
3229
with 0 meaning highest quality but slowest, and 9 meaning fastest
3230
while producing the worst quality.
3231
 
3232
 
3233
=item B
3234
 
3235
Enable use of bit reservoir when set to 1. Default value is 1. LAME
3236
has this enabled by default, but can be overriden by use
3237
B<--nores> option.
3238
 
3239
 
3240
=item BI<-m j>B<)>
3241
 
3242
Enable the encoder to use (on a frame by frame basis) either L/R
3243
stereo or mid/side stereo. Default value is 1.
3244
 
3245
 
3246
=back
3247
 
3248
 
3249
 
3250
=head2 libopencore-amrnb
3251
 
3252
 
3253
OpenCORE Adaptive Multi-Rate Narrowband encoder.
3254
 
3255
Requires the presence of the libopencore-amrnb headers and library during
3256
configuration. You need to explicitly configure the build with
3257
C<--enable-libopencore-amrnb --enable-version3>.
3258
 
3259
This is a mono-only encoder. Officially it only supports 8000Hz sample rate,
3260
but you can override it by setting B to B or
3261
lower.
3262
 
3263
 
3264
=head3 Options
3265
 
3266
 
3267
 
3268
=over 4
3269
 
3270
 
3271
 
3272
=item B
3273
 
3274
Set bitrate in bits per second. Only the following bitrates are supported,
3275
otherwise libavcodec will round to the nearest valid bitrate.
3276
 
3277
 
3278
=over 4
3279
 
3280
 
3281
=item B<4750>
3282
 
3283
 
3284
=item B<5150>
3285
 
3286
 
3287
=item B<5900>
3288
 
3289
 
3290
=item B<6700>
3291
 
3292
 
3293
=item B<7400>
3294
 
3295
 
3296
=item B<7950>
3297
 
3298
 
3299
=item B<10200>
3300
 
3301
 
3302
=item B<12200>
3303
 
3304
 
3305
=back
3306
 
3307
 
3308
 
3309
=item B
3310
 
3311
Allow discontinuous transmission (generate comfort noise) when set to 1. The
3312
default value is 0 (disabled).
3313
 
3314
 
3315
=back
3316
 
3317
 
3318
 
3319
 
3320
=head2 libshine
3321
 
3322
 
3323
Shine Fixed-Point MP3 encoder wrapper.
3324
 
3325
Shine is a fixed-point MP3 encoder. It has a far better performance on
3326
platforms without an FPU, e.g. armel CPUs, and some phones and tablets.
3327
However, as it is more targeted on performance than quality, it is not on par
3328
with LAME and other production-grade encoders quality-wise. Also, according to
3329
the project's homepage, this encoder may not be free of bugs as the code was
3330
written a long time ago and the project was dead for at least 5 years.
3331
 
3332
This encoder only supports stereo and mono input. This is also CBR-only.
3333
 
3334
The original project (last updated in early 2007) is at
3335
EBE. We only support the
3336
updated fork by the Savonet/Liquidsoap project at EBE.
3337
 
3338
Requires the presence of the libshine headers and library during
3339
configuration. You need to explicitly configure the build with
3340
C<--enable-libshine>.
3341
 
3342
See also libmp3lame.
3343
 
3344
 
3345
=head3 Options
3346
 
3347
 
3348
The following options are supported by the libshine wrapper. The
3349
B-equivalent of the options are listed in parentheses.
3350
 
3351
 
3352
=over 4
3353
 
3354
 
3355
=item BI<-b>B<)>
3356
 
3357
Set bitrate expressed in bits/s for CBR. B B<-b> option
3358
is expressed in kilobits/s.
3359
 
3360
 
3361
=back
3362
 
3363
 
3364
 
3365
=head2 libtwolame
3366
 
3367
 
3368
TwoLAME MP2 encoder wrapper.
3369
 
3370
Requires the presence of the libtwolame headers and library during
3371
configuration. You need to explicitly configure the build with
3372
C<--enable-libtwolame>.
3373
 
3374
 
3375
=head3 Options
3376
 
3377
 
3378
The following options are supported by the libtwolame wrapper. The
3379
B-equivalent options follow the FFmpeg ones and are in
3380
parentheses.
3381
 
3382
 
3383
=over 4
3384
 
3385
 
3386
=item BI<-b>B<)>
3387
 
3388
Set bitrate expressed in bits/s for CBR. B B
3389
option is expressed in kilobits/s. Default value is 128k.
3390
 
3391
 
3392
=item BI<-V>B<)>
3393
 
3394
Set quality for experimental VBR support. Maximum value range is
3395
from -50 to 50, useful range is from -10 to 10. The higher the
3396
value, the better the quality. This option is valid only using the
3397
B command-line tool. For library interface users,
3398
use B.
3399
 
3400
 
3401
=item BI<--mode>B<)>
3402
 
3403
Set the mode of the resulting audio. Possible values:
3404
 
3405
 
3406
=over 4
3407
 
3408
 
3409
=item B
3410
 
3411
Choose mode automatically based on the input. This is the default.
3412
 
3413
=item B
3414
 
3415
Stereo
3416
 
3417
=item B
3418
 
3419
Joint stereo
3420
 
3421
=item B
3422
 
3423
Dual channel
3424
 
3425
=item B
3426
 
3427
Mono
3428
 
3429
=back
3430
 
3431
 
3432
 
3433
=item BI<--psyc-mode>B<)>
3434
 
3435
Set psychoacoustic model to use in encoding. The argument must be
3436
an integer between -1 and 4, inclusive. The higher the value, the
3437
better the quality. The default value is 3.
3438
 
3439
 
3440
=item BI<--energy>B<)>
3441
 
3442
Enable energy levels extensions when set to 1. The default value is
3443
 
3444
 
3445
 
3446
=item BI<--protect>B<)>
3447
 
3448
Enable CRC error protection when set to 1. The default value is 0
3449
(disabled).
3450
 
3451
 
3452
=item BI<--copyright>B<)>
3453
 
3454
Set MPEG audio copyright flag when set to 1. The default value is 0
3455
(disabled).
3456
 
3457
 
3458
=item BI<--original>B<)>
3459
 
3460
Set MPEG audio original flag when set to 1. The default value is 0
3461
(disabled).
3462
 
3463
 
3464
=back
3465
 
3466
 
3467
 
3468
 
3469
=head2 libvo-aacenc
3470
 
3471
 
3472
VisualOn AAC encoder.
3473
 
3474
Requires the presence of the libvo-aacenc headers and library during
3475
configuration. You need to explicitly configure the build with
3476
C<--enable-libvo-aacenc --enable-version3>.
3477
 
3478
This encoder is considered to be worse than the
3479
native experimental FFmpeg AAC encoder, according to
3480
multiple sources.
3481
 
3482
 
3483
=head3 Options
3484
 
3485
 
3486
The VisualOn AAC encoder only support encoding AAC-LC and up to 2
3487
channels. It is also CBR-only.
3488
 
3489
 
3490
=over 4
3491
 
3492
 
3493
 
3494
=item B
3495
 
3496
Set bit rate in bits/s.
3497
 
3498
 
3499
=back
3500
 
3501
 
3502
 
3503
=head2 libvo-amrwbenc
3504
 
3505
 
3506
VisualOn Adaptive Multi-Rate Wideband encoder.
3507
 
3508
Requires the presence of the libvo-amrwbenc headers and library during
3509
configuration. You need to explicitly configure the build with
3510
C<--enable-libvo-amrwbenc --enable-version3>.
3511
 
3512
This is a mono-only encoder. Officially it only supports 16000Hz sample
3513
rate, but you can override it by setting B to
3514
B or lower.
3515
 
3516
 
3517
=head3 Options
3518
 
3519
 
3520
 
3521
=over 4
3522
 
3523
 
3524
 
3525
=item B
3526
 
3527
Set bitrate in bits/s. Only the following bitrates are supported, otherwise
3528
libavcodec will round to the nearest valid bitrate.
3529
 
3530
 
3531
=over 4
3532
 
3533
 
3534
=item B<6600>
3535
 
3536
 
3537
=item B<8850>
3538
 
3539
 
3540
=item B<12650>
3541
 
3542
 
3543
=item B<14250>
3544
 
3545
 
3546
=item B<15850>
3547
 
3548
 
3549
=item B<18250>
3550
 
3551
 
3552
=item B<19850>
3553
 
3554
 
3555
=item B<23050>
3556
 
3557
 
3558
=item B<23850>
3559
 
3560
 
3561
=back
3562
 
3563
 
3564
 
3565
=item B
3566
 
3567
Allow discontinuous transmission (generate comfort noise) when set to 1. The
3568
default value is 0 (disabled).
3569
 
3570
 
3571
=back
3572
 
3573
 
3574
 
3575
=head2 libopus
3576
 
3577
 
3578
libopus Opus Interactive Audio Codec encoder wrapper.
3579
 
3580
Requires the presence of the libopus headers and library during
3581
configuration. You need to explicitly configure the build with
3582
C<--enable-libopus>.
3583
 
3584
 
3585
=head3 Option Mapping
3586
 
3587
 
3588
Most libopus options are modeled after the B utility from
3589
opus-tools. The following is an option mapping chart describing options
3590
supported by the libopus wrapper, and their B-equivalent
3591
in parentheses.
3592
 
3593
 
3594
=over 4
3595
 
3596
 
3597
 
3598
=item BIB<)>
3599
 
3600
Set the bit rate in bits/s.  FFmpeg's B option is
3601
expressed in bits/s, while B's B in
3602
kilobits/s.
3603
 
3604
 
3605
=item BIB<,> IB<, and> IB<)>
3606
 
3607
Set VBR mode. The FFmpeg B option has the following
3608
valid arguments, with the their B equivalent options
3609
in parentheses:
3610
 
3611
 
3612
=over 4
3613
 
3614
 
3615
=item BIB<)>
3616
 
3617
Use constant bit rate encoding.
3618
 
3619
 
3620
=item BIB<)>
3621
 
3622
Use variable bit rate encoding (the default).
3623
 
3624
 
3625
=item BIB<)>
3626
 
3627
Use constrained variable bit rate encoding.
3628
 
3629
=back
3630
 
3631
 
3632
 
3633
=item BIB<)>
3634
 
3635
Set encoding algorithm complexity. Valid options are integers in
3636
the 0-10 range. 0 gives the fastest encodes but lower quality, while 10
3637
gives the highest quality but slowest encoding. The default is 10.
3638
 
3639
 
3640
=item BIB<)>
3641
 
3642
Set maximum frame size, or duration of a frame in milliseconds. The
3643
argument must be exactly the following: 2.5, 5, 10, 20, 40, 60. Smaller
3644
frame sizes achieve lower latency but less quality at a given bitrate.
3645
Sizes greater than 20ms are only interesting at fairly low bitrates.
3646
The default of FFmpeg is 10ms, but is 20ms in B.
3647
 
3648
 
3649
=item BIB<)>
3650
 
3651
Set expected packet loss percentage. The default is 0.
3652
 
3653
 
3654
=item B
3655
 
3656
Set intended application type. Valid options are listed below:
3657
 
3658
 
3659
=over 4
3660
 
3661
 
3662
=item B
3663
 
3664
Favor improved speech intelligibility.
3665
 
3666
=item B
3667
 
3668
Favor faithfulness to the input (the default).
3669
 
3670
=item B
3671
 
3672
Restrict to only the lowest delay modes.
3673
 
3674
=back
3675
 
3676
 
3677
 
3678
=item B
3679
 
3680
Set cutoff bandwidth in Hz. The argument must be exactly one of the
3681
following: 4000, 6000, 8000, 12000, or 20000, corresponding to
3682
narrowband, mediumband, wideband, super wideband, and fullband
3683
respectively. The default is 0 (cutoff disabled).
3684
 
3685
 
3686
=back
3687
 
3688
 
3689
 
3690
=head2 libvorbis
3691
 
3692
 
3693
libvorbis encoder wrapper.
3694
 
3695
Requires the presence of the libvorbisenc headers and library during
3696
configuration. You need to explicitly configure the build with
3697
C<--enable-libvorbis>.
3698
 
3699
 
3700
=head3 Options
3701
 
3702
 
3703
The following options are supported by the libvorbis wrapper. The
3704
B-equivalent of the options are listed in parentheses.
3705
 
3706
To get a more accurate and extensive documentation of the libvorbis
3707
options, consult the libvorbisenc's and B's documentations.
3708
See EBE,
3709
EBE, and oggenc(1).
3710
 
3711
 
3712
=over 4
3713
 
3714
 
3715
=item BI<-b>B<)>
3716
 
3717
Set bitrate expressed in bits/s for ABR. B B<-b> is
3718
expressed in kilobits/s.
3719
 
3720
 
3721
=item BI<-q>B<)>
3722
 
3723
Set constant quality setting for VBR. The value should be a float
3724
number in the range of -1.0 to 10.0. The higher the value, the better
3725
the quality. The default value is B<3.0>.
3726
 
3727
This option is valid only using the B command-line tool.
3728
For library interface users, use B.
3729
 
3730
 
3731
=item BI<--advanced-encode-option lowpass_frequency=N>B<)>
3732
 
3733
Set cutoff bandwidth in Hz, a value of 0 disables cutoff. B's
3734
related option is expressed in kHz. The default value is B<0> (cutoff
3735
disabled).
3736
 
3737
 
3738
=item BI<-m>B<)>
3739
 
3740
Set minimum bitrate expressed in bits/s. B B<-m> is
3741
expressed in kilobits/s.
3742
 
3743
 
3744
=item BI<-M>B<)>
3745
 
3746
Set maximum bitrate expressed in bits/s. B B<-M> is
3747
expressed in kilobits/s. This only has effect on ABR mode.
3748
 
3749
 
3750
=item BI<--advanced-encode-option impulse_noisetune=N>B<)>
3751
 
3752
Set noise floor bias for impulse blocks. The value is a float number from
3753
-15.0 to 0.0. A negative bias instructs the encoder to pay special attention
3754
to the crispness of transients in the encoded audio. The tradeoff for better
3755
transient response is a higher bitrate.
3756
 
3757
 
3758
=back
3759
 
3760
 
3761
 
3762
=head2 libwavpack
3763
 
3764
 
3765
A wrapper providing WavPack encoding through libwavpack.
3766
 
3767
Only lossless mode using 32-bit integer samples is supported currently.
3768
The B option can be used to control speed vs.
3769
compression tradeoff, with the values mapped to libwavpack as follows:
3770
 
3771
 
3772
=over 4
3773
 
3774
 
3775
 
3776
=item B<0>
3777
 
3778
Fast mode - corresponding to the wavpack B<-f> option.
3779
 
3780
 
3781
=item B<1>
3782
 
3783
Normal (default) settings.
3784
 
3785
 
3786
=item B<2>
3787
 
3788
High quality - corresponding to the wavpack B<-h> option.
3789
 
3790
 
3791
=item B<3>
3792
 
3793
Very high quality - corresponding to the wavpack B<-hh> option.
3794
 
3795
 
3796
=item B<4-8>
3797
 
3798
Same as 3, but with extra processing enabled - corresponding to the wavpack
3799
B<-x> option. I.e. 4 is the same as B<-x2> and 8 is the same as
3800
B<-x6>.
3801
 
3802
 
3803
=back
3804
 
3805
 
3806
 
3807
 
3808
=head1 VIDEO ENCODERS
3809
 
3810
 
3811
A description of some of the currently available video encoders
3812
follows.
3813
 
3814
 
3815
=head2 libtheora
3816
 
3817
 
3818
Theora format supported through libtheora.
3819
 
3820
Requires the presence of the libtheora headers and library during
3821
configuration. You need to explicitly configure the build with
3822
C<--enable-libtheora>.
3823
 
3824
 
3825
=head3 Options
3826
 
3827
 
3828
The following global options are mapped to internal libtheora options
3829
which affect the quality and the bitrate of the encoded stream.
3830
 
3831
 
3832
=over 4
3833
 
3834
 
3835
=item B
3836
 
3837
Set the video bitrate, only works if the C flag in
3838
B is not enabled.
3839
 
3840
 
3841
=item B
3842
 
3843
Used to enable constant quality mode encoding through the
3844
B flag, and to enable the C and C
3845
modes.
3846
 
3847
 
3848
=item B
3849
 
3850
Set the GOP size.
3851
 
3852
 
3853
=item B
3854
 
3855
Set the global quality in lambda units, only works if the
3856
C flag in B is enabled. The value is clipped
3857
in the [0 - 10*C] range, and then multiplied for 6.3
3858
to get a value in the native libtheora range [0-63]. A higher value
3859
corresponds to a higher quality.
3860
 
3861
For example, to set maximum constant quality encoding with
3862
B:
3863
 
3864
	ffmpeg -i INPUT -flags:v qscale -global_quality:v "10*QP2LAMBDA" -codec:v libtheora OUTPUT.ogg
3865
 
3866
 
3867
=back
3868
 
3869
 
3870
 
3871
=head2 libvpx
3872
 
3873
 
3874
VP8 format supported through libvpx.
3875
 
3876
Requires the presence of the libvpx headers and library during configuration.
3877
You need to explicitly configure the build with C<--enable-libvpx>.
3878
 
3879
 
3880
=head3 Options
3881
 
3882
 
3883
Mapping from FFmpeg to libvpx options with conversion notes in parentheses.
3884
 
3885
 
3886
=over 4
3887
 
3888
 
3889
 
3890
=item B
3891
 
3892
g_threads
3893
 
3894
 
3895
=item B
3896
 
3897
g_profile
3898
 
3899
 
3900
=item B
3901
 
3902
rc_target_bitrate
3903
 
3904
 
3905
=item B
3906
 
3907
kf_max_dist
3908
 
3909
 
3910
=item B
3911
 
3912
kf_min_dist
3913
 
3914
 
3915
=item B
3916
 
3917
rc_min_quantizer
3918
 
3919
 
3920
=item B
3921
 
3922
rc_max_quantizer
3923
 
3924
 
3925
=item B
3926
 
3927
rc_buf_sz
3928
C<(bufsize * 1000 / vb)>
3929
 
3930
rc_buf_optimal_sz
3931
C<(bufsize * 1000 / vb * 5 / 6)>
3932
 
3933
 
3934
=item B
3935
 
3936
rc_buf_initial_sz
3937
C<(rc_init_occupancy * 1000 / vb)>
3938
 
3939
 
3940
=item B
3941
 
3942
rc_undershoot_pct
3943
 
3944
 
3945
=item B
3946
 
3947
rc_dropframe_thresh
3948
 
3949
 
3950
=item B
3951
 
3952
rc_2pass_vbr_bias_pct
3953
 
3954
 
3955
=item B
3956
 
3957
rc_2pass_vbr_maxsection_pct
3958
C<(maxrate * 100 / vb)>
3959
 
3960
 
3961
=item B
3962
 
3963
rc_2pass_vbr_minsection_pct
3964
C<(minrate * 100 / vb)>
3965
 
3966
 
3967
=item B
3968
 
3969
C
3970
C<(minrate == maxrate == vb)>
3971
 
3972
 
3973
=item B
3974
 
3975
C, C
3976
 
3977
 
3978
=item B
3979
 
3980
 
3981
=over 4
3982
 
3983
 
3984
=item I
3985
 
3986
C
3987
 
3988
=item I
3989
 
3990
C
3991
 
3992
=item I
3993
 
3994
C
3995
 
3996
=back
3997
 
3998
 
3999
 
4000
=item B
4001
 
4002
C
4003
 
4004
 
4005
=item B
4006
 
4007
C
4008
 
4009
 
4010
=item B
4011
 
4012
C
4013
 
4014
 
4015
=item B
4016
 
4017
C
4018
 
4019
 
4020
=item B
4021
 
4022
C
4023
 
4024
 
4025
=item B
4026
 
4027
C
4028
 
4029
 
4030
=item B
4031
 
4032
 
4033
=over 4
4034
 
4035
 
4036
=item B
4037
 
4038
C
4039
 
4040
=item I
4041
 
4042
C
4043
 
4044
=item I
4045
 
4046
C
4047
 
4048
=item I
4049
 
4050
C
4051
 
4052
=item I
4053
 
4054
g_lag_in_frames
4055
 
4056
=back
4057
 
4058
 
4059
 
4060
=item B
4061
 
4062
g_error_resilient
4063
 
4064
 
4065
=back
4066
 
4067
 
4068
For more information about libvpx see:
4069
EBE
4070
 
4071
 
4072
=head2 libx264
4073
 
4074
 
4075
x264 H.264/MPEG-4 AVC encoder wrapper.
4076
 
4077
This encoder requires the presence of the libx264 headers and library
4078
during configuration. You need to explicitly configure the build with
4079
C<--enable-libx264>.
4080
 
4081
libx264 supports an impressive number of features, including 8x8 and
4082
4x4 adaptive spatial transform, adaptive B-frame placement, CAVLC/CABAC
4083
entropy coding, interlacing (MBAFF), lossless mode, psy optimizations
4084
for detail retention (adaptive quantization, psy-RD, psy-trellis).
4085
 
4086
Many libx264 encoder options are mapped to FFmpeg global codec
4087
options, while unique encoder options are provided through private
4088
options. Additionally the B and B
4089
private options allows to pass a list of key=value tuples as accepted
4090
by the libx264 C function.
4091
 
4092
The x264 project website is at
4093
EBE.
4094
 
4095
 
4096
=head3 Options
4097
 
4098
 
4099
The following options are supported by the libx264 wrapper. The
4100
B-equivalent options or values are listed in parentheses
4101
for easy migration.
4102
 
4103
To reduce the duplication of documentation, only the private options
4104
and some others requiring special attention are documented here. For
4105
the documentation of the undocumented generic options, see
4106
the Codec Options chapter.
4107
 
4108
To get a more accurate and extensive documentation of the libx264
4109
options, invoke the command B or consult
4110
the libx264 documentation.
4111
 
4112
 
4113
=over 4
4114
 
4115
 
4116
=item BIB<)>
4117
 
4118
Set bitrate in bits/s. Note that FFmpeg's B option is
4119
expressed in bits/s, while B's B is in
4120
kilobits/s.
4121
 
4122
 
4123
=item BIB<)>
4124
 
4125
 
4126
 
4127
=item BIB<)>
4128
 
4129
 
4130
 
4131
=item BIB<)>
4132
 
4133
 
4134
 
4135
=item BIB<)>
4136
 
4137
 
4138
 
4139
=item BIB<)>
4140
 
4141
 
4142
 
4143
=item BIB<)>
4144
 
4145
 
4146
 
4147
=item BIB<)>
4148
 
4149
 
4150
 
4151
=item BIB<)>
4152
 
4153
 
4154
 
4155
=item BIB<)>
4156
 
4157
 
4158
 
4159
=item BIB<)>
4160
 
4161
 
4162
 
4163
=item BIB<)>
4164
 
4165
 
4166
 
4167
=item BIB<)>
4168
 
4169
 
4170
 
4171
=item BIB<)>
4172
 
4173
Set motion estimation method. Possible values in the decreasing order
4174
of speed:
4175
 
4176
 
4177
=over 4
4178
 
4179
 
4180
=item BIB<)>
4181
 
4182
 
4183
=item BIB<)>
4184
 
4185
Diamond search with radius 1 (fastest). B is an alias for
4186
B.
4187
 
4188
=item BIB<)>
4189
 
4190
Hexagonal search with radius 2.
4191
 
4192
=item BIB<)>
4193
 
4194
Uneven multi-hexagon search.
4195
 
4196
=item BIB<)>
4197
 
4198
Exhaustive search.
4199
 
4200
=item BIB<)>
4201
 
4202
Hadamard exhaustive search (slowest).
4203
 
4204
=back
4205
 
4206
 
4207
 
4208
=item BIB<)>
4209
 
4210
 
4211
 
4212
=item BIB<)>
4213
 
4214
 
4215
 
4216
=item BIB<)>
4217
 
4218
 
4219
 
4220
=item B
4221
 
4222
Set entropy encoder. Possible values:
4223
 
4224
 
4225
=over 4
4226
 
4227
 
4228
=item B
4229
 
4230
Enable CABAC.
4231
 
4232
 
4233
=item B
4234
 
4235
Enable CAVLC and disable CABAC. It generates the same effect as
4236
B's B<--no-cabac> option.
4237
 
4238
=back
4239
 
4240
 
4241
 
4242
=item B
4243
 
4244
Set full pixel motion estimation comparation algorithm. Possible values:
4245
 
4246
 
4247
=over 4
4248
 
4249
 
4250
=item B
4251
 
4252
Enable chroma in motion estimation.
4253
 
4254
 
4255
=item B
4256
 
4257
Ignore chroma in motion estimation. It generates the same effect as
4258
B's B<--no-chroma-me> option.
4259
 
4260
=back
4261
 
4262
 
4263
 
4264
=item BIB<)>
4265
 
4266
 
4267
 
4268
=item B
4269
 
4270
Set multithreading technique. Possible values:
4271
 
4272
 
4273
=over 4
4274
 
4275
 
4276
=item B
4277
 
4278
Slice-based multithreading. It generates the same effect as
4279
B's B<--sliced-threads> option.
4280
 
4281
=item B
4282
 
4283
Frame-based multithreading.
4284
 
4285
=back
4286
 
4287
 
4288
 
4289
=item B
4290
 
4291
Set encoding flags. It can be used to disable closed GOP and enable
4292
open GOP by setting it to C<-cgop>. The result is similar to
4293
the behavior of B's B<--open-gop> option.
4294
 
4295
 
4296
=item BIB<)>
4297
 
4298
 
4299
 
4300
=item BIB<)>
4301
 
4302
Set the encoding preset.
4303
 
4304
 
4305
=item BIB<)>
4306
 
4307
Set tuning of the encoding params.
4308
 
4309
 
4310
=item BIB<)>
4311
 
4312
Set profile restrictions.
4313
 
4314
 
4315
=item B
4316
 
4317
Enable fast settings when encoding first pass, when set to 1. When set
4318
to 0, it has the same effect of B's
4319
B<--slow-firstpass> option.
4320
 
4321
 
4322
=item BIB<)>
4323
 
4324
Set the quality for constant quality mode.
4325
 
4326
 
4327
=item BIB<)>
4328
 
4329
In CRF mode, prevents VBV from lowering quality beyond this point.
4330
 
4331
 
4332
=item BIB<)>
4333
 
4334
Set constant quantization rate control method parameter.
4335
 
4336
 
4337
=item BIB<)>
4338
 
4339
Set AQ method. Possible values:
4340
 
4341
 
4342
=over 4
4343
 
4344
 
4345
=item BI<0>B<)>
4346
 
4347
Disabled.
4348
 
4349
 
4350
=item BI<1>B<)>
4351
 
4352
Variance AQ (complexity mask).
4353
 
4354
 
4355
=item BI<2>B<)>
4356
 
4357
Auto-variance AQ (experimental).
4358
 
4359
=back
4360
 
4361
 
4362
 
4363
=item BIB<)>
4364
 
4365
Set AQ strength, reduce blocking and blurring in flat and textured areas.
4366
 
4367
 
4368
=item B
4369
 
4370
Use psychovisual optimizations when set to 1. When set to 0, it has the
4371
same effect as B's B<--no-psy> option.
4372
 
4373
 
4374
=item BIB<)>
4375
 
4376
Set strength of psychovisual optimization, in
4377
I:I format.
4378
 
4379
 
4380
=item BIB<)>
4381
 
4382
Set number of frames to look ahead for frametype and ratecontrol.
4383
 
4384
 
4385
=item B
4386
 
4387
Enable weighted prediction for B-frames when set to 1. When set to 0,
4388
it has the same effect as B's B<--no-weightb> option.
4389
 
4390
 
4391
=item BIB<)>
4392
 
4393
Set weighted prediction method for P-frames. Possible values:
4394
 
4395
 
4396
=over 4
4397
 
4398
 
4399
=item BI<0>B<)>
4400
 
4401
Disabled
4402
 
4403
=item BI<1>B<)>
4404
 
4405
Enable only weighted refs
4406
 
4407
=item BI<2>B<)>
4408
 
4409
Enable both weighted refs and duplicates
4410
 
4411
=back
4412
 
4413
 
4414
 
4415
=item BIB<)>
4416
 
4417
Enable calculation and printing SSIM stats after the encoding.
4418
 
4419
 
4420
=item BIB<)>
4421
 
4422
Enable the use of Periodic Intra Refresh instead of IDR frames when set
4423
to 1.
4424
 
4425
 
4426
=item BIB<)>
4427
 
4428
Configure the encoder to be compatible with the bluray standard.
4429
It is a shorthand for setting "bluray-compat=1 force-cfr=1".
4430
 
4431
 
4432
=item BIB<)>
4433
 
4434
Set the influence on how often B-frames are used.
4435
 
4436
 
4437
=item BIB<)>
4438
 
4439
Set method for keeping of some B-frames as references. Possible values:
4440
 
4441
 
4442
=over 4
4443
 
4444
 
4445
=item BIB<)>
4446
 
4447
Disabled.
4448
 
4449
=item BIB<)>
4450
 
4451
Strictly hierarchical pyramid.
4452
 
4453
=item BIB<)>
4454
 
4455
Non-strict (not Blu-ray compatible).
4456
 
4457
=back
4458
 
4459
 
4460
 
4461
=item B
4462
 
4463
Enable the use of one reference per partition, as opposed to one
4464
reference per macroblock when set to 1. When set to 0, it has the
4465
same effect as B's B<--no-mixed-refs> option.
4466
 
4467
 
4468
=item B<8x8dct>
4469
 
4470
Enable adaptive spatial transform (high profile 8x8 transform)
4471
when set to 1. When set to 0, it has the same effect as
4472
B's B<--no-8x8dct> option.
4473
 
4474
 
4475
=item B
4476
 
4477
Enable early SKIP detection on P-frames when set to 1. When set
4478
to 0, it has the same effect as B's
4479
B<--no-fast-pskip> option.
4480
 
4481
 
4482
=item BIB<)>
4483
 
4484
Enable use of access unit delimiters when set to 1.
4485
 
4486
 
4487
=item B
4488
 
4489
Enable use macroblock tree ratecontrol when set to 1. When set
4490
to 0, it has the same effect as B's
4491
B<--no-mbtree> option.
4492
 
4493
 
4494
=item BIB<)>
4495
 
4496
Set loop filter parameters, in I:I form.
4497
 
4498
 
4499
=item BIB<)>
4500
 
4501
Set fluctuations reduction in QP (before curve compression).
4502
 
4503
 
4504
=item BIB<)>
4505
 
4506
Set partitions to consider as a comma-separated list of. Possible
4507
values in the list:
4508
 
4509
 
4510
=over 4
4511
 
4512
 
4513
=item B
4514
 
4515
8x8 P-frame partition.
4516
 
4517
=item B
4518
 
4519
4x4 P-frame partition.
4520
 
4521
=item B
4522
 
4523
4x4 B-frame partition.
4524
 
4525
=item B
4526
 
4527
8x8 I-frame partition.
4528
 
4529
=item B
4530
 
4531
4x4 I-frame partition.
4532
(Enabling B requires B to be enabled. Enabling
4533
B requires adaptive spatial transform (B<8x8dct>
4534
option) to be enabled.)
4535
 
4536
=item BIB<)>
4537
 
4538
Do not consider any partitions.
4539
 
4540
=item BIB<)>
4541
 
4542
Consider every partition.
4543
 
4544
=back
4545
 
4546
 
4547
 
4548
=item BIB<)>
4549
 
4550
Set direct MV prediction mode. Possible values:
4551
 
4552
 
4553
=over 4
4554
 
4555
 
4556
=item BIB<)>
4557
 
4558
Disable MV prediction.
4559
 
4560
=item BIB<)>
4561
 
4562
Enable spatial predicting.
4563
 
4564
=item BIB<)>
4565
 
4566
Enable temporal predicting.
4567
 
4568
=item BIB<)>
4569
 
4570
Automatically decided.
4571
 
4572
=back
4573
 
4574
 
4575
 
4576
=item BIB<)>
4577
 
4578
Set the limit of the size of each slice in bytes. If not specified
4579
but RTP payload size (B) is specified, that is used.
4580
 
4581
 
4582
=item BIB<)>
4583
 
4584
Set the file name for multi-pass stats.
4585
 
4586
 
4587
=item BIB<)>
4588
 
4589
Set signal HRD information (requires B to be set).
4590
Possible values:
4591
 
4592
 
4593
=over 4
4594
 
4595
 
4596
=item BIB<)>
4597
 
4598
Disable HRD information signaling.
4599
 
4600
=item BIB<)>
4601
 
4602
Variable bit rate.
4603
 
4604
=item BIB<)>
4605
 
4606
Constant bit rate (not allowed in MP4 container).
4607
 
4608
=back
4609
 
4610
 
4611
 
4612
=item B
4613
 
4614
Set any x264 option, see B for a list.
4615
 
4616
Argument is a list of I=I couples separated by
4617
":". In I and I options that use ":" as a separator
4618
themselves, use "," instead. They accept it as well since long ago but this
4619
is kept undocumented for some reason.
4620
 
4621
For example to specify libx264 encoding options with B:
4622
 
4623
	ffmpeg -i foo.mpg -vcodec libx264 -x264opts keyint=123:min-keyint=20 -an out.mkv
4624
 
4625
 
4626
 
4627
=item B
4628
 
4629
Override the x264 configuration using a :-separated list of key=value
4630
parameters.
4631
 
4632
This option is functionally the same as the B, but is
4633
duplicated for compability with the Libav fork.
4634
 
4635
For example to specify libx264 encoding options with B:
4636
 
4637
	ffmpeg -i INPUT -c:v libx264 -x264-params level=30:bframes=0:weightp=0:\
4638
	cabac=0:ref=1:vbv-maxrate=768:vbv-bufsize=2000:analyse=all:me=umh:\
4639
	no-fast-pskip=1:subq=6:8x8dct=0:trellis=0 OUTPUT
4640
 
4641
 
4642
=back
4643
 
4644
 
4645
Encoding ffpresets for common usages are provided so they can be used with the
4646
general presets system (e.g. passing the B
 option).
4647
 
4648
 
4649
=head2 libxvid
4650
 
4651
 
4652
Xvid MPEG-4 Part 2 encoder wrapper.
4653
 
4654
This encoder requires the presence of the libxvidcore headers and library
4655
during configuration. You need to explicitly configure the build with
4656
C<--enable-libxvid --enable-gpl>.
4657
 
4658
The native C encoder supports the MPEG-4 Part 2 format, so
4659
users can encode to this format without this library.
4660
 
4661
 
4662
=head3 Options
4663
 
4664
 
4665
The following options are supported by the libxvid wrapper. Some of
4666
the following options are listed but are not documented, and
4667
correspond to shared codec options. See the Codec
4668
Options chapter for their documentation. The other shared options
4669
which are not listed have no effect for the libxvid encoder.
4670
 
4671
 
4672
=over 4
4673
 
4674
 
4675
=item B
4676
 
4677
 
4678
 
4679
=item B
4680
 
4681
 
4682
 
4683
=item B
4684
 
4685
 
4686
 
4687
=item B
4688
 
4689
 
4690
 
4691
=item B
4692
 
4693
 
4694
 
4695
=item B
4696
 
4697
 
4698
 
4699
=item B
4700
 
4701
 
4702
 
4703
=item B
4704
 
4705
 
4706
 
4707
=item B
4708
 
4709
 
4710
 
4711
=item B
4712
 
4713
Set specific encoding flags. Possible values:
4714
 
4715
 
4716
=over 4
4717
 
4718
 
4719
 
4720
=item B
4721
 
4722
Use four motion vector by macroblock.
4723
 
4724
 
4725
=item B
4726
 
4727
Enable high quality AC prediction.
4728
 
4729
 
4730
=item B
4731
 
4732
Only encode grayscale.
4733
 
4734
 
4735
=item B
4736
 
4737
Enable the use of global motion compensation (GMC).
4738
 
4739
 
4740
=item B
4741
 
4742
Enable quarter-pixel motion compensation.
4743
 
4744
 
4745
=item B
4746
 
4747
Enable closed GOP.
4748
 
4749
 
4750
=item B
4751
 
4752
Place global headers in extradata instead of every keyframe.
4753
 
4754
 
4755
=back
4756
 
4757
 
4758
 
4759
=item B
4760
 
4761
 
4762
 
4763
=item B
4764
 
4765
Set motion estimation method. Possible values in decreasing order of
4766
speed and increasing order of quality:
4767
 
4768
 
4769
=over 4
4770
 
4771
 
4772
=item B
4773
 
4774
Use no motion estimation (default).
4775
 
4776
 
4777
=item B
4778
 
4779
 
4780
=item B
4781
 
4782
 
4783
=item B
4784
 
4785
Enable advanced diamond zonal search for 16x16 blocks and half-pixel
4786
refinement for 16x16 blocks. B and B are aliases for
4787
B.
4788
 
4789
 
4790
=item B
4791
 
4792
Enable all of the things described above, plus advanced diamond zonal
4793
search for 8x8 blocks, half-pixel refinement for 8x8 blocks, and motion
4794
estimation on chroma planes.
4795
 
4796
 
4797
=item B
4798
 
4799
Enable all of the things described above, plus extended 16x16 and 8x8
4800
blocks search.
4801
 
4802
=back
4803
 
4804
 
4805
 
4806
=item B
4807
 
4808
Set macroblock decision algorithm. Possible values in the increasing
4809
order of quality:
4810
 
4811
 
4812
=over 4
4813
 
4814
 
4815
=item B
4816
 
4817
Use macroblock comparing function algorithm (default).
4818
 
4819
 
4820
=item B
4821
 
4822
Enable rate distortion-based half pixel and quarter pixel refinement for
4823
16x16 blocks.
4824
 
4825
 
4826
=item B
4827
 
4828
Enable all of the things described above, plus rate distortion-based
4829
half pixel and quarter pixel refinement for 8x8 blocks, and rate
4830
distortion-based search using square pattern.
4831
 
4832
=back
4833
 
4834
 
4835
 
4836
=item B
4837
 
4838
Enable lumi masking adaptive quantization when set to 1. Default is 0
4839
(disabled).
4840
 
4841
 
4842
=item B
4843
 
4844
Enable variance adaptive quantization when set to 1. Default is 0
4845
(disabled).
4846
 
4847
When combined with B, the resulting quality will not
4848
be better than any of the two specified individually. In other
4849
words, the resulting quality will be the worse one of the two
4850
effects.
4851
 
4852
 
4853
=item B
4854
 
4855
Set structural similarity (SSIM) displaying method. Possible values:
4856
 
4857
 
4858
=over 4
4859
 
4860
 
4861
=item B
4862
 
4863
Disable displaying of SSIM information.
4864
 
4865
 
4866
=item B
4867
 
4868
Output average SSIM at the end of encoding to stdout. The format of
4869
showing the average SSIM is:
4870
 
4871
 
4872
	Average SSIM: %f
4873
 
4874
 
4875
For users who are not familiar with C, %f means a float number, or
4876
a decimal (e.g. 0.939232).
4877
 
4878
 
4879
=item B
4880
 
4881
Output both per-frame SSIM data during encoding and average SSIM at
4882
the end of encoding to stdout. The format of per-frame information
4883
is:
4884
 
4885
 
4886
	       SSIM: avg: %1.3f min: %1.3f max: %1.3f
4887
 
4888
 
4889
For users who are not familiar with C, %1.3f means a float number
4890
rounded to 3 digits after the dot (e.g. 0.932).
4891
 
4892
 
4893
=back
4894
 
4895
 
4896
 
4897
=item B
4898
 
4899
Set SSIM accuracy. Valid options are integers within the range of
4900
0-4, while 0 gives the most accurate result and 4 computes the
4901
fastest.
4902
 
4903
 
4904
=back
4905
 
4906
 
4907
 
4908
=head2 png
4909
 
4910
 
4911
PNG image encoder.
4912
 
4913
 
4914
=head3 Private options
4915
 
4916
 
4917
 
4918
=over 4
4919
 
4920
 
4921
=item B I
4922
 
4923
Set physical density of pixels, in dots per inch, unset by default
4924
 
4925
=item B I
4926
 
4927
Set physical density of pixels, in dots per meter, unset by default
4928
 
4929
=back
4930
 
4931
 
4932
 
4933
=head2 ProRes
4934
 
4935
 
4936
Apple ProRes encoder.
4937
 
4938
FFmpeg contains 2 ProRes encoders, the prores-aw and prores-ks encoder.
4939
The used encoder can be choosen with the C<-vcodec> option.
4940
 
4941
 
4942
=head3 Private Options for prores-ks
4943
 
4944
 
4945
 
4946
=over 4
4947
 
4948
 
4949
=item B I
4950
 
4951
Select the ProRes profile to encode
4952
 
4953
=over 4
4954
 
4955
 
4956
=item B
4957
 
4958
 
4959
=item B
4960
 
4961
 
4962
=item B
4963
 
4964
 
4965
=item B
4966
 
4967
 
4968
=item B<4444>
4969
 
4970
 
4971
=back
4972
 
4973
 
4974
 
4975
=item B I
4976
 
4977
Select quantization matrix.
4978
 
4979
=over 4
4980
 
4981
 
4982
=item B
4983
 
4984
 
4985
=item B
4986
 
4987
 
4988
=item B
4989
 
4990
 
4991
=item B
4992
 
4993
 
4994
=item B
4995
 
4996
 
4997
=item B
4998
 
4999
 
5000
=back
5001
 
5002
If set to I, the matrix matching the profile will be picked.
5003
If not set, the matrix providing the highest quality, I, will be
5004
picked.
5005
 
5006
 
5007
=item B I
5008
 
5009
How many bits to allot for coding one macroblock. Different profiles use
5010
between 200 and 2400 bits per macroblock, the maximum is 8000.
5011
 
5012
 
5013
=item B I
5014
 
5015
Number of macroblocks in each slice (1-8); the default value (8)
5016
should be good in almost all situations.
5017
 
5018
 
5019
=item B I
5020
 
5021
Override the 4-byte vendor ID.
5022
A custom vendor ID like I would claim the stream was produced by
5023
the Apple encoder.
5024
 
5025
 
5026
=item B I
5027
 
5028
Specify number of bits for alpha component.
5029
Possible values are I<0>, I<8> and I<16>.
5030
Use I<0> to disable alpha plane coding.
5031
 
5032
 
5033
=back
5034
 
5035
 
5036
 
5037
=head3 Speed considerations
5038
 
5039
 
5040
In the default mode of operation the encoder has to honor frame constraints
5041
(i.e. not produc frames with size bigger than requested) while still making
5042
output picture as good as possible.
5043
A frame containing a lot of small details is harder to compress and the encoder
5044
would spend more time searching for appropriate quantizers for each slice.
5045
 
5046
Setting a higher B limit will improve the speed.
5047
 
5048
For the fastest encoding speed set the B parameter (4 is the
5049
recommended value) and do not set a size constraint.
5050
 
5051
 
5052
 
5053
=head1 SEE ALSO
5054
 
5055
 
5056
 
5057
ffmpeg(1), ffplay(1), ffprobe(1), ffserver(1), libavcodec(3)
5058
 
5059
 
5060
=head1 AUTHORS
5061
 
5062
 
5063
The FFmpeg developers.
5064
 
5065
For details about the authorship, see the Git history of the project
5066
(git://source.ffmpeg.org/ffmpeg), e.g. by typing the command
5067
B in the FFmpeg source directory, or browsing the
5068
online repository at EBE.
5069
 
5070
Maintainers for the specific components are listed in the file
5071
F in the source code tree.
5072
 
5073