1FFMPEG-BITSTREAM-FILTERS(1)                        FFMPEG-BITSTREAM-FILTERS(1)
2
3
4

NAME

6       ffmpeg-bitstream-filters - FFmpeg bitstream filters
7

DESCRIPTION

9       This document describes the bitstream filters provided by the
10       libavcodec library.
11
12       A bitstream filter operates on the encoded stream data, and performs
13       bitstream level modifications without performing decoding.
14

BITSTREAM FILTERS

16       When you configure your FFmpeg build, all the supported bitstream
17       filters are enabled by default. You can list all available ones using
18       the configure option "--list-bsfs".
19
20       You can disable all the bitstream filters using the configure option
21       "--disable-bsfs", and selectively enable any bitstream filter using the
22       option "--enable-bsf=BSF", or you can disable a particular bitstream
23       filter using the option "--disable-bsf=BSF".
24
25       The option "-bsfs" of the ff* tools will display the list of all the
26       supported bitstream filters included in your build.
27
28       The ff* tools have a -bsf option applied per stream, taking a comma-
29       separated list of filters, whose parameters follow the filter name
30       after a '='.
31
32               ffmpeg -i INPUT -c:v copy -bsf:v filter1[=opt1=str1:opt2=str2][,filter2] OUTPUT
33
34       Below is a description of the currently available bitstream filters,
35       with their parameters, if any.
36
37   aac_adtstoasc
38       Convert MPEG-2/4 AAC ADTS to an MPEG-4 Audio Specific Configuration
39       bitstream.
40
41       This filter creates an MPEG-4 AudioSpecificConfig from an MPEG-2/4 ADTS
42       header and removes the ADTS header.
43
44       This filter is required for example when copying an AAC stream from a
45       raw ADTS AAC or an MPEG-TS container to MP4A-LATM, to an FLV file, or
46       to MOV/MP4 files and related formats such as 3GP or M4A. Please note
47       that it is auto-inserted for MP4A-LATM and MOV/MP4 and related formats.
48
49   av1_metadata
50       Modify metadata embedded in an AV1 stream.
51
52       td  Insert or remove temporal delimiter OBUs in all temporal units of
53           the stream.
54
55           insert
56               Insert a TD at the beginning of every TU which does not already
57               have one.
58
59           remove
60               Remove the TD from the beginning of every TU which has one.
61
62       color_primaries
63       transfer_characteristics
64       matrix_coefficients
65           Set the color description fields in the stream (see AV1 section
66           6.4.2).
67
68       color_range
69           Set the color range in the stream (see AV1 section 6.4.2; note that
70           this cannot be set for streams using BT.709 primaries, sRGB
71           transfer characteristic and identity (RGB) matrix coefficients).
72
73           tv  Limited range.
74
75           pc  Full range.
76
77       chroma_sample_position
78           Set the chroma sample location in the stream (see AV1 section
79           6.4.2).  This can only be set for 4:2:0 streams.
80
81           vertical
82               Left position (matching the default in MPEG-2 and H.264).
83
84           colocated
85               Top-left position.
86
87       tick_rate
88           Set the tick rate (time_scale / num_units_in_display_tick) in the
89           timing info in the sequence header.
90
91       num_ticks_per_picture
92           Set the number of ticks in each picture, to indicate that the
93           stream has a fixed framerate.  Ignored if tick_rate is not also
94           set.
95
96       delete_padding
97           Deletes Padding OBUs.
98
99   chomp
100       Remove zero padding at the end of a packet.
101
102   dca_core
103       Extract the core from a DCA/DTS stream, dropping extensions such as
104       DTS-HD.
105
106   dump_extra
107       Add extradata to the beginning of the filtered packets except when said
108       packets already exactly begin with the extradata that is intended to be
109       added.
110
111       freq
112           The additional argument specifies which packets should be filtered.
113           It accepts the values:
114
115           k
116           keyframe
117               add extradata to all key packets
118
119           e
120           all add extradata to all packets
121
122       If not specified it is assumed k.
123
124       For example the following ffmpeg command forces a global header (thus
125       disabling individual packet headers) in the H.264 packets generated by
126       the "libx264" encoder, but corrects them by adding the header stored in
127       extradata to the key packets:
128
129               ffmpeg -i INPUT -map 0 -flags:v +global_header -c:v libx264 -bsf:v dump_extra out.ts
130
131   dv_error_marker
132       Blocks in DV which are marked as damaged are replaced by blocks of the
133       specified color.
134
135       color
136           The color to replace damaged blocks by
137
138       sta A 16 bit mask which specifies which of the 16 possible error status
139           values are to be replaced by colored blocks. 0xFFFE is the default
140           which replaces all non 0 error status values.
141
142           ok  No error, no concealment
143
144           err Error, No concealment
145
146           res Reserved
147
148           notok
149               Error or concealment
150
151           notres
152               Not reserved
153
154           Aa, Ba, Ca, Ab, Bb, Cb, A, B, C, a, b, erri, erru
155               The specific error status code
156
157           see page 44-46 or section 5.5 of
158           <http://web.archive.org/web/20060927044735/http://www.smpte.org/smpte_store/standards/pdf/s314m.pdf>
159
160   eac3_core
161       Extract the core from a E-AC-3 stream, dropping extra channels.
162
163   extract_extradata
164       Extract the in-band extradata.
165
166       Certain codecs allow the long-term headers (e.g. MPEG-2 sequence
167       headers, or H.264/HEVC (VPS/)SPS/PPS) to be transmitted either "in-
168       band" (i.e. as a part of the bitstream containing the coded frames) or
169       "out of band" (e.g. on the container level). This latter form is called
170       "extradata" in FFmpeg terminology.
171
172       This bitstream filter detects the in-band headers and makes them
173       available as extradata.
174
175       remove
176           When this option is enabled, the long-term headers are removed from
177           the bitstream after extraction.
178
179   filter_units
180       Remove units with types in or not in a given set from the stream.
181
182       pass_types
183           List of unit types or ranges of unit types to pass through while
184           removing all others.  This is specified as a '|'-separated list of
185           unit type values or ranges of values with '-'.
186
187       remove_types
188           Identical to pass_types, except the units in the given set removed
189           and all others passed through.
190
191       Extradata is unchanged by this transformation, but note that if the
192       stream contains inline parameter sets then the output may be unusable
193       if they are removed.
194
195       For example, to remove all non-VCL NAL units from an H.264 stream:
196
197               ffmpeg -i INPUT -c:v copy -bsf:v 'filter_units=pass_types=1-5' OUTPUT
198
199       To remove all AUDs, SEI and filler from an H.265 stream:
200
201               ffmpeg -i INPUT -c:v copy -bsf:v 'filter_units=remove_types=35|38-40' OUTPUT
202
203   hapqa_extract
204       Extract Rgb or Alpha part of an HAPQA file, without recompression, in
205       order to create an HAPQ or an HAPAlphaOnly file.
206
207       texture
208           Specifies the texture to keep.
209
210           color
211           alpha
212
213       Convert HAPQA to HAPQ
214
215               ffmpeg -i hapqa_inputfile.mov -c copy -bsf:v hapqa_extract=texture=color -tag:v HapY -metadata:s:v:0 encoder="HAPQ" hapq_file.mov
216
217       Convert HAPQA to HAPAlphaOnly
218
219               ffmpeg -i hapqa_inputfile.mov -c copy -bsf:v hapqa_extract=texture=alpha -tag:v HapA -metadata:s:v:0 encoder="HAPAlpha Only" hapalphaonly_file.mov
220
221   h264_metadata
222       Modify metadata embedded in an H.264 stream.
223
224       aud Insert or remove AUD NAL units in all access units of the stream.
225
226           pass
227           insert
228           remove
229
230           Default is pass.
231
232       sample_aspect_ratio
233           Set the sample aspect ratio of the stream in the VUI parameters.
234           See H.264 table E-1.
235
236       overscan_appropriate_flag
237           Set whether the stream is suitable for display using overscan or
238           not (see H.264 section E.2.1).
239
240       video_format
241       video_full_range_flag
242           Set the video format in the stream (see H.264 section E.2.1 and
243           table E-2).
244
245       colour_primaries
246       transfer_characteristics
247       matrix_coefficients
248           Set the colour description in the stream (see H.264 section E.2.1
249           and tables E-3, E-4 and E-5).
250
251       chroma_sample_loc_type
252           Set the chroma sample location in the stream (see H.264 section
253           E.2.1 and figure E-1).
254
255       tick_rate
256           Set the tick rate (time_scale / num_units_in_tick) in the VUI
257           parameters.  This is the smallest time unit representable in the
258           stream, and in many cases represents the field rate of the stream
259           (double the frame rate).
260
261       fixed_frame_rate_flag
262           Set whether the stream has fixed framerate - typically this
263           indicates that the framerate is exactly half the tick rate, but the
264           exact meaning is dependent on interlacing and the picture structure
265           (see H.264 section E.2.1 and table E-6).
266
267       zero_new_constraint_set_flags
268           Zero constraint_set4_flag and constraint_set5_flag in the SPS.
269           These bits were reserved in a previous version of the H.264 spec,
270           and thus some hardware decoders require these to be zero. The
271           result of zeroing this is still a valid bitstream.
272
273       crop_left
274       crop_right
275       crop_top
276       crop_bottom
277           Set the frame cropping offsets in the SPS.  These values will
278           replace the current ones if the stream is already cropped.
279
280           These fields are set in pixels.  Note that some sizes may not be
281           representable if the chroma is subsampled or the stream is
282           interlaced (see H.264 section 7.4.2.1.1).
283
284       sei_user_data
285           Insert a string as SEI unregistered user data.  The argument must
286           be of the form UUID+string, where the UUID is as hex digits
287           possibly separated by hyphens, and the string can be anything.
288
289           For example, 086f3693-b7b3-4f2c-9653-21492feee5b8+hello will insert
290           the string ``hello'' associated with the given UUID.
291
292       delete_filler
293           Deletes both filler NAL units and filler SEI messages.
294
295       display_orientation
296           Insert, extract or remove Display orientation SEI messages.  See
297           H.264 section D.1.27 and D.2.27 for syntax and semantics.
298
299           pass
300           insert
301           remove
302           extract
303
304           Default is pass.
305
306           Insert mode works in conjunction with "rotate" and "flip" options.
307           Any pre-existing Display orientation messages will be removed in
308           insert or remove mode.  Extract mode attaches the display matrix to
309           the packet as side data.
310
311       rotate
312           Set rotation in display orientation SEI (anticlockwise angle in
313           degrees).  Range is -360 to +360. Default is NaN.
314
315       flip
316           Set flip in display orientation SEI.
317
318           horizontal
319           vertical
320
321           Default is unset.
322
323       level
324           Set the level in the SPS.  Refer to H.264 section A.3 and tables
325           A-1 to A-5.
326
327           The argument must be the name of a level (for example, 4.2), a
328           level_idc value (for example, 42), or the special name auto
329           indicating that the filter should attempt to guess the level from
330           the input stream properties.
331
332   h264_mp4toannexb
333       Convert an H.264 bitstream from length prefixed mode to start code
334       prefixed mode (as defined in the Annex B of the ITU-T H.264
335       specification).
336
337       This is required by some streaming formats, typically the MPEG-2
338       transport stream format (muxer "mpegts").
339
340       For example to remux an MP4 file containing an H.264 stream to mpegts
341       format with ffmpeg, you can use the command:
342
343               ffmpeg -i INPUT.mp4 -codec copy -bsf:v h264_mp4toannexb OUTPUT.ts
344
345       Please note that this filter is auto-inserted for MPEG-TS (muxer
346       "mpegts") and raw H.264 (muxer "h264") output formats.
347
348   h264_redundant_pps
349       This applies a specific fixup to some Blu-ray streams which contain
350       redundant PPSs modifying irrelevant parameters of the stream which
351       confuse other transformations which require correct extradata.
352
353   hevc_metadata
354       Modify metadata embedded in an HEVC stream.
355
356       aud Insert or remove AUD NAL units in all access units of the stream.
357
358           insert
359           remove
360       sample_aspect_ratio
361           Set the sample aspect ratio in the stream in the VUI parameters.
362
363       video_format
364       video_full_range_flag
365           Set the video format in the stream (see H.265 section E.3.1 and
366           table E.2).
367
368       colour_primaries
369       transfer_characteristics
370       matrix_coefficients
371           Set the colour description in the stream (see H.265 section E.3.1
372           and tables E.3, E.4 and E.5).
373
374       chroma_sample_loc_type
375           Set the chroma sample location in the stream (see H.265 section
376           E.3.1 and figure E.1).
377
378       tick_rate
379           Set the tick rate in the VPS and VUI parameters (time_scale /
380           num_units_in_tick). Combined with num_ticks_poc_diff_one, this can
381           set a constant framerate in the stream.  Note that it is likely to
382           be overridden by container parameters when the stream is in a
383           container.
384
385       num_ticks_poc_diff_one
386           Set poc_proportional_to_timing_flag in VPS and VUI and use this
387           value to set num_ticks_poc_diff_one_minus1 (see H.265 sections
388           7.4.3.1 and E.3.1).  Ignored if tick_rate is not also set.
389
390       crop_left
391       crop_right
392       crop_top
393       crop_bottom
394           Set the conformance window cropping offsets in the SPS.  These
395           values will replace the current ones if the stream is already
396           cropped.
397
398           These fields are set in pixels.  Note that some sizes may not be
399           representable if the chroma is subsampled (H.265 section
400           7.4.3.2.1).
401
402       level
403           Set the level in the VPS and SPS.  See H.265 section A.4 and tables
404           A.6 and A.7.
405
406           The argument must be the name of a level (for example, 5.1), a
407           general_level_idc value (for example, 153 for level 5.1), or the
408           special name auto indicating that the filter should attempt to
409           guess the level from the input stream properties.
410
411   hevc_mp4toannexb
412       Convert an HEVC/H.265 bitstream from length prefixed mode to start code
413       prefixed mode (as defined in the Annex B of the ITU-T H.265
414       specification).
415
416       This is required by some streaming formats, typically the MPEG-2
417       transport stream format (muxer "mpegts").
418
419       For example to remux an MP4 file containing an HEVC stream to mpegts
420       format with ffmpeg, you can use the command:
421
422               ffmpeg -i INPUT.mp4 -codec copy -bsf:v hevc_mp4toannexb OUTPUT.ts
423
424       Please note that this filter is auto-inserted for MPEG-TS (muxer
425       "mpegts") and raw HEVC/H.265 (muxer "h265" or "hevc") output formats.
426
427   imxdump
428       Modifies the bitstream to fit in MOV and to be usable by the Final Cut
429       Pro decoder. This filter only applies to the mpeg2video codec, and is
430       likely not needed for Final Cut Pro 7 and newer with the appropriate
431       -tag:v.
432
433       For example, to remux 30 MB/sec NTSC IMX to MOV:
434
435               ffmpeg -i input.mxf -c copy -bsf:v imxdump -tag:v mx3n output.mov
436
437   mjpeg2jpeg
438       Convert MJPEG/AVI1 packets to full JPEG/JFIF packets.
439
440       MJPEG is a video codec wherein each video frame is essentially a JPEG
441       image. The individual frames can be extracted without loss, e.g. by
442
443               ffmpeg -i ../some_mjpeg.avi -c:v copy frames_%d.jpg
444
445       Unfortunately, these chunks are incomplete JPEG images, because they
446       lack the DHT segment required for decoding. Quoting from
447       <http://www.digitalpreservation.gov/formats/fdd/fdd000063.shtml>:
448
449       Avery Lee, writing in the rec.video.desktop newsgroup in 2001,
450       commented that "MJPEG, or at least the MJPEG in AVIs having the MJPG
451       fourcc, is restricted JPEG with a fixed -- and *omitted* -- Huffman
452       table. The JPEG must be YCbCr colorspace, it must be 4:2:2, and it must
453       use basic Huffman encoding, not arithmetic or progressive. . . . You
454       can indeed extract the MJPEG frames and decode them with a regular JPEG
455       decoder, but you have to prepend the DHT segment to them, or else the
456       decoder won't have any idea how to decompress the data. The exact table
457       necessary is given in the OpenDML spec."
458
459       This bitstream filter patches the header of frames extracted from an
460       MJPEG stream (carrying the AVI1 header ID and lacking a DHT segment) to
461       produce fully qualified JPEG images.
462
463               ffmpeg -i mjpeg-movie.avi -c:v copy -bsf:v mjpeg2jpeg frame_%d.jpg
464               exiftran -i -9 frame*.jpg
465               ffmpeg -i frame_%d.jpg -c:v copy rotated.avi
466
467   mjpegadump
468       Add an MJPEG A header to the bitstream, to enable decoding by
469       Quicktime.
470
471   mov2textsub
472       Extract a representable text file from MOV subtitles, stripping the
473       metadata header from each subtitle packet.
474
475       See also the text2movsub filter.
476
477   mp3decomp
478       Decompress non-standard compressed MP3 audio headers.
479
480   mpeg2_metadata
481       Modify metadata embedded in an MPEG-2 stream.
482
483       display_aspect_ratio
484           Set the display aspect ratio in the stream.
485
486           The following fixed values are supported:
487
488           4/3
489           16/9
490           221/100
491
492           Any other value will result in square pixels being signalled
493           instead (see H.262 section 6.3.3 and table 6-3).
494
495       frame_rate
496           Set the frame rate in the stream.  This is constructed from a table
497           of known values combined with a small multiplier and divisor - if
498           the supplied value is not exactly representable, the nearest
499           representable value will be used instead (see H.262 section 6.3.3
500           and table 6-4).
501
502       video_format
503           Set the video format in the stream (see H.262 section 6.3.6 and
504           table 6-6).
505
506       colour_primaries
507       transfer_characteristics
508       matrix_coefficients
509           Set the colour description in the stream (see H.262 section 6.3.6
510           and tables 6-7, 6-8 and 6-9).
511
512   mpeg4_unpack_bframes
513       Unpack DivX-style packed B-frames.
514
515       DivX-style packed B-frames are not valid MPEG-4 and were only a
516       workaround for the broken Video for Windows subsystem.  They use more
517       space, can cause minor AV sync issues, require more CPU power to decode
518       (unless the player has some decoded picture queue to compensate the
519       2,0,2,0 frame per packet style) and cause trouble if copied into a
520       standard container like mp4 or mpeg-ps/ts, because MPEG-4 decoders may
521       not be able to decode them, since they are not valid MPEG-4.
522
523       For example to fix an AVI file containing an MPEG-4 stream with DivX-
524       style packed B-frames using ffmpeg, you can use the command:
525
526               ffmpeg -i INPUT.avi -codec copy -bsf:v mpeg4_unpack_bframes OUTPUT.avi
527
528   noise
529       Damages the contents of packets or simply drops them without damaging
530       the container. Can be used for fuzzing or testing error
531       resilience/concealment.
532
533       Parameters:
534
535       amount
536           Accepts an expression whose evaluation per-packet determines how
537           often bytes in that packet will be modified. A value below 0 will
538           result in a variable frequency.  Default is 0 which results in no
539           modification. However, if neither amount nor drop is specified,
540           amount will be set to -1. See below for accepted variables.
541
542       drop
543           Accepts an expression evaluated per-packet whose value determines
544           whether that packet is dropped.  Evaluation to a positive value
545           results in the packet being dropped. Evaluation to a negative value
546           results in a variable chance of it being dropped, roughly inverse
547           in proportion to the magnitude of the value. Default is 0 which
548           results in no drops. See below for accepted variables.
549
550       dropamount
551           Accepts a non-negative integer, which assigns a variable chance of
552           it being dropped, roughly inverse in proportion to the value.
553           Default is 0 which results in no drops. This option is kept for
554           backwards compatibility and is equivalent to setting drop to a
555           negative value with the same magnitude i.e. "dropamount=4" is the
556           same as "drop=-4". Ignored if drop is also specified.
557
558       Both "amount" and "drop" accept expressions containing the following
559       variables:
560
561       n   The index of the packet, starting from zero.
562
563       tb  The timebase for packet timestamps.
564
565       pts Packet presentation timestamp.
566
567       dts Packet decoding timestamp.
568
569       nopts
570           Constant representing AV_NOPTS_VALUE.
571
572       startpts
573           First non-AV_NOPTS_VALUE PTS seen in the stream.
574
575       startdts
576           First non-AV_NOPTS_VALUE DTS seen in the stream.
577
578       duration
579       d   Packet duration, in timebase units.
580
581       pos Packet position in input; may be -1 when unknown or not set.
582
583       size
584           Packet size, in bytes.
585
586       key Whether packet is marked as a keyframe.
587
588       state
589           A pseudo random integer, primarily derived from the content of
590           packet payload.
591
592       Examples
593
594       Apply modification to every byte but don't drop any packets.
595
596               ffmpeg -i INPUT -c copy -bsf noise=1 output.mkv
597
598       Drop every video packet not marked as a keyframe after timestamp 30s
599       but do not modify any of the remaining packets.
600
601               ffmpeg -i INPUT -c copy -bsf:v noise=drop='gt(t\,30)*not(key)' output.mkv
602
603       Drop one second of audio every 10 seconds and add some random noise to
604       the rest.
605
606               ffmpeg -i INPUT -c copy -bsf:a noise=amount=-1:drop='between(mod(t\,10)\,9\,10)' output.mkv
607
608   null
609       This bitstream filter passes the packets through unchanged.
610
611   pcm_rechunk
612       Repacketize PCM audio to a fixed number of samples per packet or a
613       fixed packet rate per second. This is similar to the asetnsamples audio
614       filter but works on audio packets instead of audio frames.
615
616       nb_out_samples, n
617           Set the number of samples per each output audio packet. The number
618           is intended as the number of samples per each channel. Default
619           value is 1024.
620
621       pad, p
622           If set to 1, the filter will pad the last audio packet with
623           silence, so that it will contain the same number of samples (or
624           roughly the same number of samples, see frame_rate) as the previous
625           ones. Default value is 1.
626
627       frame_rate, r
628           This option makes the filter output a fixed number of packets per
629           second instead of a fixed number of samples per packet. If the
630           audio sample rate is not divisible by the frame rate then the
631           number of samples will not be constant but will vary slightly so
632           that each packet will start as close to the frame boundary as
633           possible. Using this option has precedence over nb_out_samples.
634
635       You can generate the well known 1602-1601-1602-1601-1602 pattern of
636       48kHz audio for NTSC frame rate using the frame_rate option.
637
638               ffmpeg -f lavfi -i sine=r=48000:d=1 -c pcm_s16le -bsf pcm_rechunk=r=30000/1001 -f framecrc -
639
640   pgs_frame_merge
641       Merge a sequence of PGS Subtitle segments ending with an "end of
642       display set" segment into a single packet.
643
644       This is required by some containers that support PGS subtitles (muxer
645       "matroska").
646
647   prores_metadata
648       Modify color property metadata embedded in prores stream.
649
650       color_primaries
651           Set the color primaries.  Available values are:
652
653           auto
654               Keep the same color primaries property (default).
655
656           unknown
657           bt709
658           bt470bg
659               BT601 625
660
661           smpte170m
662               BT601 525
663
664           bt2020
665           smpte431
666               DCI P3
667
668           smpte432
669               P3 D65
670
671       transfer_characteristics
672           Set the color transfer.  Available values are:
673
674           auto
675               Keep the same transfer characteristics property (default).
676
677           unknown
678           bt709
679               BT 601, BT 709, BT 2020
680
681           smpte2084
682               SMPTE ST 2084
683
684           arib-std-b67
685               ARIB STD-B67
686
687       matrix_coefficients
688           Set the matrix coefficient.  Available values are:
689
690           auto
691               Keep the same colorspace property (default).
692
693           unknown
694           bt709
695           smpte170m
696               BT 601
697
698           bt2020nc
699
700       Set Rec709 colorspace for each frame of the file
701
702               ffmpeg -i INPUT -c copy -bsf:v prores_metadata=color_primaries=bt709:color_trc=bt709:colorspace=bt709 output.mov
703
704       Set Hybrid Log-Gamma parameters for each frame of the file
705
706               ffmpeg -i INPUT -c copy -bsf:v prores_metadata=color_primaries=bt2020:color_trc=arib-std-b67:colorspace=bt2020nc output.mov
707
708   remove_extra
709       Remove extradata from packets.
710
711       It accepts the following parameter:
712
713       freq
714           Set which frame types to remove extradata from.
715
716           k   Remove extradata from non-keyframes only.
717
718           keyframe
719               Remove extradata from keyframes only.
720
721           e, all
722               Remove extradata from all frames.
723
724   setts
725       Set PTS and DTS in packets.
726
727       It accepts the following parameters:
728
729       ts
730       pts
731       dts Set expressions for PTS, DTS or both.
732
733       duration
734           Set expression for duration.
735
736       time_base
737           Set output time base.
738
739       The expressions are evaluated through the eval API and can contain the
740       following constants:
741
742       N   The count of the input packet. Starting from 0.
743
744       TS  The demux timestamp in input in case of "ts" or "dts" option or
745           presentation timestamp in case of "pts" option.
746
747       POS The original position in the file of the packet, or undefined if
748           undefined for the current packet
749
750       DTS The demux timestamp in input.
751
752       PTS The presentation timestamp in input.
753
754       DURATION
755           The duration in input.
756
757       STARTDTS
758           The DTS of the first packet.
759
760       STARTPTS
761           The PTS of the first packet.
762
763       PREV_INDTS
764           The previous input DTS.
765
766       PREV_INPTS
767           The previous input PTS.
768
769       PREV_INDURATION
770           The previous input duration.
771
772       PREV_OUTDTS
773           The previous output DTS.
774
775       PREV_OUTPTS
776           The previous output PTS.
777
778       PREV_OUTDURATION
779           The previous output duration.
780
781       NEXT_DTS
782           The next input DTS.
783
784       NEXT_PTS
785           The next input PTS.
786
787       NEXT_DURATION
788           The next input duration.
789
790       TB  The timebase of stream packet belongs.
791
792       TB_OUT
793           The output timebase.
794
795       SR  The sample rate of stream packet belongs.
796
797       NOPTS
798           The AV_NOPTS_VALUE constant.
799
800   text2movsub
801       Convert text subtitles to MOV subtitles (as used by the "mov_text"
802       codec) with metadata headers.
803
804       See also the mov2textsub filter.
805
806   trace_headers
807       Log trace output containing all syntax elements in the coded stream
808       headers (everything above the level of individual coded blocks).  This
809       can be useful for debugging low-level stream issues.
810
811       Supports AV1, H.264, H.265, (M)JPEG, MPEG-2 and VP9, but depending on
812       the build only a subset of these may be available.
813
814   truehd_core
815       Extract the core from a TrueHD stream, dropping ATMOS data.
816
817   vp9_metadata
818       Modify metadata embedded in a VP9 stream.
819
820       color_space
821           Set the color space value in the frame header.  Note that any frame
822           set to RGB will be implicitly set to PC range and that RGB is
823           incompatible with profiles 0 and 2.
824
825           unknown
826           bt601
827           bt709
828           smpte170
829           smpte240
830           bt2020
831           rgb
832       color_range
833           Set the color range value in the frame header.  Note that any value
834           imposed by the color space will take precedence over this value.
835
836           tv
837           pc
838
839   vp9_superframe
840       Merge VP9 invisible (alt-ref) frames back into VP9 superframes. This
841       fixes merging of split/segmented VP9 streams where the alt-ref frame
842       was split from its visible counterpart.
843
844   vp9_superframe_split
845       Split VP9 superframes into single frames.
846
847   vp9_raw_reorder
848       Given a VP9 stream with correct timestamps but possibly out of order,
849       insert additional show-existing-frame packets to correct the ordering.
850

SEE ALSO

852       ffmpeg(1), ffplay(1), ffprobe(1), libavcodec(3)
853

AUTHORS

855       The FFmpeg developers.
856
857       For details about the authorship, see the Git history of the project
858       (https://git.ffmpeg.org/ffmpeg), e.g. by typing the command git log in
859       the FFmpeg source directory, or browsing the online repository at
860       <https://git.ffmpeg.org/ffmpeg>.
861
862       Maintainers for the specific components are listed in the file
863       MAINTAINERS in the source code tree.
864
865
866
867                                                   FFMPEG-BITSTREAM-FILTERS(1)
Impressum