summaryrefslogtreecommitdiff
path: root/doc/muxers.texi
Commit message (Collapse)AuthorAge
* avformat/dashenc: Added configuration to override HTTP User-AgentKarthick J2017-11-21
| | | | | Reviewed-by: Steven Liu <lingjiujianke@gmail.com> Signed-off-by: Michael Niedermayer <michael@niedermayer.cc>
* avformat/hlsenc: creation of hls master playlist fileVishwanath Dixit2017-11-20
| | | | Reviewed-by: Steven Liu <lingjiujianke@gmail.com>
* avformat/hlsenc: creation of hls variant streams in a single hlsenc instanceVishwanath Dixit2017-11-20
| | | | Reviewed-by: Steven Liu <lingjiujianke@gmail.com>
* avformat/img2enc: add frame_pts option for make output filenameSteven Liu2017-11-13
| | | | | | | | fix ticket id: #1452 when use frame_pts option, the output image name can be set with PTS of current frame. Signed-off-by: Steven Liu <lq@onvideo.cn>
* Merge commit '0e702124ee149593168cbbb7b30376249a64ae66'James Almer2017-11-11
|\ | | | | | | | | | | | | * commit '0e702124ee149593168cbbb7b30376249a64ae66': doc: Provide better examples for hls and segment muxing Merged-by: James Almer <jamrial@gmail.com>
| * doc: Provide better examples for hls and segment muxingLuca Barbato2017-10-27
| | | | | | | | Some encoders do not output further IDRs if not requested to.
* | movenc: Add an option for enabling negative CTS offsetsMartin Storsjö2017-09-28
| | | | | | | | | | | | | | | | | | | | | | | | | | This reduces the need for an edit list; streams that start with e.g. dts=-1, pts=0 can be encoded as dts=0, pts=0 (which is valid in mov/mp4) by shifting the dts values of all packets forward. This avoids the need for edit lists for such streams (while they still are needed for audio streams with encoder delay). This eases conformance with the DASH-IF interoperability guidelines. Signed-off-by: Martin Storsjö <martin@martin.st> Signed-off-by: Michael Niedermayer <michael@niedermayer.cc>
* | Merge commit 'c5c663541739cb813a2a5668ee8339b535b35d7d'Rodger Combs2017-09-26
|\| | | | | | | | | | | | | * commit 'c5c663541739cb813a2a5668ee8339b535b35d7d': doc: add dash muxer Merged-by: Rodger Combs <rodger.combs@gmail.com>
| * doc: add dash muxerPeter Große2017-01-31
| | | | | | | | | | Signed-off-by: Peter Große <pegro@friiks.de> Signed-off-by: Martin Storsjö <martin@martin.st>
| * hlsenc: Add encryption supportLuca Barbato2016-11-17
| | | | | | | | Partially based on Christian Suloway <csuloway@globaleagleent.com> work.
| * hlsenc: Support outputting specific versionsLuca Barbato2015-08-25
| | | | | | | | | | | | Right now only version 2 and version 3 are supported. Signed-off-by: Luca Barbato <lu_zero@gentoo.org>
* | Fix several typosLou Logan2017-09-21
| | | | | | | | | | | | | | "apix_fmts" found by Marc Péchaud. "speedloss" found by Mikhail V. Signed-off-by: Lou Logan <lou@lrcd.com>
* | avformat/hlsenc: Added configuration to override HTTP User-AgentKarthick J2017-09-05
| | | | | | | | | | Signed-off-by: Karthick J <kjeyapal@akamai.com> Signed-off-by: Steven Liu <lq@onvideo.cn>
* | avformat/hlsenc: allow dynamic encryption key rotationDeHackEd2017-08-06
| | | | | | | | | | | | | | | | Makes behaviour of 805ce25b1d2f optional, re-enables HLS key rotation feature Reviewed-by: Steven Liu <lq@onvideo.cn> Signed-off-by: DHE <git@dehacked.net>
* | avfomat/hlsenc: support fmp4 format in hlsSteven Liu2017-07-03
| | | | | | | | | | | | | | | | | | | | | | add the fmp4 format into hlsenc because the fmp4 format add into hls from version 7. the spec link is: https://tools.ietf.org/html/draft-pantos-http-live-streaming-20 and the describe on WWDC https://developer.apple.com/videos/play/wwdc2017/515/ Signed-off-by: Steven Liu <lq@onvideo.cn>
* | avformat/hlsenc: add hls encrypt optionsSteven Liu2017-04-14
| | | | | | | | | | | | | | | | | | refer to: https://git.libav.org/?p=libav.git;a=commitdiff;h=0a4b9d0ccd10b3c39105f99bd320f696f69a75a2 add hls encrypt options looks like libav's libavformat/hlsenc.c Reviewed-by: Moritz Barsnick <barsnick@gmx.net> Signed-off-by: Steven Liu <lq@chinaffmpeg.org>
* | doc/muxers: fix default value for image2 option start_number.Nicolas George2017-04-04
| |
* | doc/muxers: cleanup mpegts sectionLou Logan2017-03-16
| | | | | | | | | | | | | | | | | | Add missing options. List correct variable types. Re-order options and markup flag options properly. Add more texinfo markup. Signed-off-by: Lou Logan <lou@lrcd.com>
* | doc/muxers: move hls_flags temp_file to after SECOND LEVEL hls exampleSteven Liu2017-03-11
| | | | | | | | | | | | the temp_file hls_flags describe text offset is wrong, now move it after example Signed-off-by: Steven Liu <lq@chinaffmpeg.org>
* | doc/muxers: Fix typo, causing warnings during buildMichael Niedermayer2017-02-12
| | | | | | | | Signed-off-by: Michael Niedermayer <michael@niedermayer.cc>
* | avformat/hlsenc: deprecate hls_wrap optionSteven Liu2017-02-11
| | | | | | | | | | | | | | | | | | | | | | | | | | | | When user use the hls_wrap, there have many problem: 1. some platform refersh the old but usefull segment 2. CDN(Content Delivery Network) Deliver HLS not friendly The hls_wrap is used to wrap segments for use little space, now user can use hls_list_size and hls_flags delete_segments instead it. Reviewed-by: Michael Niedermayer <michael@niedermayer.cc> Reviewed-by: Carl Eugen Hoyos <ceffmpeg@gmail.com> Signed-off-by: Steven Liu <lq@chinaffmpeg.org>
* | doc: Add muxers/demuxers list optionMulvya2017-02-11
| | | | | | | | | | Signed-off-by: Mulvya <mulvya@gmail.com> Signed-off-by: Michael Niedermayer <michael@niedermayer.cc>
* | avformat/hlsenc: add hls_flag option to write segments to temporary file ↵Aman Gupta2017-02-07
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | until complete Adds a `-hls_flags +temp_file` which will write segment data to filename.tmp, and then rename to filename when the segment is complete. This patch is similar in spirit to one used in Plex's ffmpeg fork, and allows a transcoding webserver to ensure incomplete segment files are never served up accidentally. Reviewed-by: Hendrik Leppkes <h.leppkes@gmail.com> Reviewed-by: Bodecs Bela <bodecsb@vivanet.hu> Signed-off-by: Aman Gupta <aman@tmm1.net> Signed-off-by: Steven Liu <lq@chinaffmpeg.org>
* | doc/muxers: remove confusing example for segment muxer option ↵Marton Balint2017-02-04
| | | | | | | | | | | | | | | | | | | | clocktime_wrap_duration Detecting a leap second depends on a lot of things, segment time, segment offset, system leap second implementation, the removed part is a huge simplification which can be misleading, so it is best to remove it. Signed-off-by: Marton Balint <cus@passwd.hu>
* | doc/muxers: add AVI muxer documentationTobias Rapp2017-01-31
| | | | | | | | | | Reviewed-by: Michael Niedermayer <michael@niedermayer.cc> Signed-off-by: Tobias Rapp <t.rapp@noa-archive.com>
* | avformat/hlsenc: hls_start_number_source and start_numberBodecs Bela2017-01-12
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | start_number option starts the playlist sequence number (#EXT-X-MEDIA-SEQUENCE) from the specified number. Unless hls_flags single_file is set, it also specifies starting sequence numbers of segment and subtitle filenames. Sometimes it is usefull to have unique starting numbers at each run, but currently it is only achiveable by setting this parameter manually. This patch enables to specify start_number source parameter by introducing hls_start_number_source with 3 possible values: generic/epoch/datetime. This ensures to set start sequence number automatically for practically unique numbers. Generic option is the default and this is the curent behaviour: start_number option value specifies the start sequence number. (start_number default value is 0) If hls_start_number_source is set to epoch, then the start number will be the seconds since epoch (1970-01-01 00:00:00). If set to datetime, then the start sequence number will be based on the current date/time value as YYYYmmddHHMMSS. e.g. 20161231235659. Hls speficication allows 64 bit integers as sequence numbers. This patch also changes some code where only 32 bit integer values were handled correctly. Reviewed-by: Moritz Barsnick <barsnick@gmx.net> Signed-off-by: Bela Bodecs <bodecsb@vivanet.hu> Signed-off-by: Steven Liu <lq@chinaffmpeg.org>
* | doc/muxers/hlsenc: typo hls_flag: discont_starts => discont_startBela Bodecs2017-01-05
| | | | | | | | | | Signed-off-by: Bela Bodecs <bodecsb@vivanet.hu> Signed-off-by: Michael Niedermayer <michael@niedermayer.cc>
* | avformat/hlsenc: size and duration in segment filenamesBela Bodecs2017-01-03
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | 1st: This patch makes it possible to put actual segment file size (measured in bytes) and/or duration (calculated in microseconds) into segment filenames. This feature is useful when post-processing live streaming access log files. New behaviour works only when -use_localtime option is set and second_level_segment_size or/and second_level_segment_duration new hls_flags are specified. %%s is the placeholder for size and %%t for duration in hls_segment_filename option. Fix sized trailing zeropadding also works eg. %%09s or %%023t. A command to test new features: ./ffmpeg -loglevel info -y -f lavfi -i color=c=red:size=640x480:r=25 -f lavfi -i sine=f=440:b=4:r=44100 -c:v mpeg2video -g 25 -acodec aac -cutoff 20000 -ac 2 -ar 44100 -ab 192k -f hls -hls_time 3 -hls_list_size 5 -hls_flags second_level_segment_index+second_level_segment_size+second_level_segment_duration -use_localtime 1 -use_localtime_mkdir 1 -hls_segment_filename "segment_%Y%m%d%H%M%S_%%04d_%%08s_%%013t.ts" stream.m3u8 2nd: doc/muxers: beside second_level_segment_duration and second_level_segment_size, added some more details and example to hls_segment_filename, use_localtime, use_localtime_mkdir, hls_flags. hls_flags option list reformatted to table Signed-off-by: Bela Bodecs <bodecsb@vivanet.hu> Signed-off-by: Steven Liu <lq@chinaffmpeg.org>
* | libavformat/tee: Add fifo support for teeJan Sebechlebsky2016-12-28
| | | | | | | | Signed-off-by: Jan Sebechlebsky <sebechlebskyjan@gmail.com>
* | avformat/hlsenc: strftime identifiers and segment indexBodecs Bela2016-12-27
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | in filenames Putting date/time values into segment filenames is very usefull. But to produce non-conflicting segment filenames with -use_localtime option with date/time values in hls_segment_filename option, sometimes is not enough. Like in cases when multiple segments produced in the same second. But hlsenc currently does not make possible to use segment index (%d) at the same time whe use_localtime is in effect, due to identifier conflict. This patch makes possible to use strftime identifiers and still put segment index (%d) at same time in segment filenames by introducing second_level_segment_index flag. When -use_localtime is active, identifier %d is for month day index, so %%d is the segment index placeholder. This enhanced behaviour only exists when new second_level_segment_index flag is specified. For instance putting 'segment_%Y%m%d%H%M%S_%%05d.ts' value into -hls_segment_filename option and specifing -hls_flags second_level_segment_index and -use_localtime 1, may produce segment filename as 'segment_20161230235758_00002.ts' An example: ffmpeg -loglevel info -y -f lavfi -i color=c=red:size=640x480:r=25 -f lavfi -i anullsrc=r=44100:cl=stereo -c:v mpeg2video -g 25 -acodec aac -cutoff 20000 -ac 2 -ar 44100 -ab 192k -f hls -hls_time 3 -hls_list_size 5 -hls_flags delete_segments+second_level_segment_index -use_localtime 1 -hls_segment_filename "segment_%Y%m%d%H%M%S_%%05d.ts" stream.m3u8 will produce segments filenames: .... segment_20161227005902_00013.ts segment_20161227005902_00014.ts segment_20161227005902_00015.ts segment_20161227005903_00016.ts segment_20161227005903_00017.ts segment_20161227005903_00018.ts segment_20161227005903_00019.ts segment_20161227005903_00020.ts .... Signed-off-by: Bela Bodecs <bodecsb@vivanet.hu>
* | doc/muxers: remove "-strict experimental" from tee muxer examplesLou Logan2016-12-08
| | | | | | | | | | | | | | Examples use the native FFmpeg AAC encoder but it is no longer considered experimental and therefore not required. Signed-off-by: Lou Logan <lou@lrcd.com>
* | avformat/flvenc: fix ticket 5976 and use old commitSteven Liu2016-11-26
| | | | | | | | | | | | | | | | | | mythtv have problem with non-seekable dont write duration and filesize and there have problem with some other server and player with 0 value duation and filesize. So add a flv flags to fix the ticket and make a choose for users. Signed-off-by: Steven Liu <lq@chinaffmpeg.org>
* | avformat/flvenc: add no_metadata to flvflagsSteven Liu2016-11-22
| | | | | | | | | | | | | | some flv have no metadata, ffmpeg will same with the source flv stream. Signed-off-by: Steven Liu <lingjiujianke@gmail.com>
* | avformat/flvenc: add add_keyframe_index optionSteven Liu2016-11-10
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Add keyframe index metadata Used to facilitate seeking; particularly for HTTP pseudo streaming. 1. read live streaming or file by sequence 2. if use add_keyframe_index option, add a mark flag at the position, use to insert new context at the last step. 3. add the keyframes *offset* and *timestamp* into a list 4. if use add_keyframe_index option, shift the metadata data from mark flag offset 5. insert the keyframes *offset* and *timestamp* from the list by sequence 6. free the list 7. end. Add FATE test case; Reviewed-by: Lou Logan <lou@lrcd.com> Signed-off-by: Steven Liu <liuqi@gosun.com> Signed-off-by: Michael Niedermayer <michael@niedermayer.cc>
* | avformat/mpegtsenc: Add option to mark stream begin as discontinuousMichael Niedermayer2016-11-02
| | | | | | | | | | | | | | This avoids continuity check failures in concatenated streams Reviewed-by: Steven Liu <lingjiujianke@gmail.com> Signed-off-by: Michael Niedermayer <michael@niedermayer.cc>
* | Revert "img2 encoder: allow %t in filename, based on patch from Yuval Adam"Michael Niedermayer2016-11-01
| | | | | | | | | | | | | | breaks API Found-by: jamrial This reverts commit 1a956c64c8eff5edecb004fc7aafd21207e6485c.
* | img2 encoder: use more descriptive vsync namesrogerdpack2016-11-01
| | | | | | | | | | Signed-off-by: rogerdpack <rogerpack2005@gmail.com> Signed-off-by: Michael Niedermayer <michael@niedermayer.cc>
* | img2 encoder: allow %t in filename, based on patch from Yuval Adamrogerdpack2016-11-01
| | | | | | | | | | Signed-off-by: rogerdpack <rogerpack2005@gmail.com> Signed-off-by: Michael Niedermayer <michael@niedermayer.cc>
* | doc: fix spelling errorsAndreas Cadhalpun2016-10-21
| | | | | | | | | | | | | | | | Thanks to Mathieu Malaterre <malat@debian.org> for reporting the Que/Queue typo. (https://bugs.debian.org/839542) Reviewed-by: Lou Logan <lou@lrcd.com> Signed-off-by: Andreas Cadhalpun <Andreas.Cadhalpun@googlemail.com>
* | doc: fix various typos and grammar errorsMoritz Barsnick2016-10-11
| | | | | | | | | | Signed-off-by: Moritz Barsnick <barsnick@gmx.net> Signed-off-by: Michael Niedermayer <michael@niedermayer.cc>
* | lavc: remove libfaac wrapperJosh de Kock2016-10-01
| | | | | | | | | | | | | | | | | | | | | | There is really no need for two aac wrappers, we already have libfdk-aac which is better. Not to mention that faac doesn't even support HEv1, or HEv2. It's also under a license which is unusable for distribution, so it would only be useful to people who will compile their own ffmpeg, only use it themselves (which at that point should just use fdk-aac). Signed-off-by: Josh de Kock <josh@itanimul.li>
* | doc/muxers: fix hlsenc options examples errorSteven Liu2016-09-28
| | | | | | | | | | | | | | Reviewed-by: Michael Niedermayer <michael@niedermayer.cc> Reviewed-by: Moritz Barsnick <barsnick@gmx.net> Signed-off-by: Steven Liu <lingjiujianke@gmail.com> Signed-off-by: Lou Logan <lou@lrcd.com>
* | lavf/movenc: Allow to disable writing the timecode track.Carl Eugen Hoyos2016-09-26
| | | | | | | | Fixes ticket #5492.
* | doc/muxers: add flv muxer document into doc/muxersSteven Liu2016-09-16
| | | | | | | | | | | | | | add flvflags aac_seq_header_detect and flvflags no_sequence_end document into doc/muxers Reviewed-by: Lou Logan <lou@lrcd.com>
* | avformat/hlsenc: implement program_date_timeMichael Niedermayer2016-09-08
| | | | | | | | | | Reviewed-by: Steven Liu <lingjiujianke@gmail.com> Signed-off-by: Michael Niedermayer <michael@niedermayer.cc>
* | doc/muxers: add option hls_init_time documentSteven Liu2016-08-29
| | | | | | | | | | Reviewed-by: Ibrahim Tachijian <barhom@netsat.se> Signed-off-by: Michael Niedermayer <michael@niedermayer.cc>
* | avformat: Add fifo pseudo-muxerJan Sebechlebsky2016-08-22
| | | | | | | | | | Signed-off-by: Jan Sebechlebsky <sebechlebskyjan@gmail.com> Signed-off-by: Marton Balint <cus@passwd.hu>
* | lavf/hlsenc: add append_list flag into hlsencSteven Liu2016-08-21
| | | | | | | | | | | | | | | | | | When ffmpeg exit by exception, start a new ffmpeg will cover the old segment list, add this flag can continue append the new segments into old hls segment list Signed-off-by: LiuQi <liuqi@gosun.com> Signed-off-by: Michael Niedermayer <michael@niedermayer.cc>
* | doc/muxers: improve hlsenc descriptionSteven Liu2016-07-22
| | | | | | | | | | Signed-off-by: Moritz Barsnick <barsnick@gmx.net> Signed-off-by: Michael Niedermayer <michael@niedermayer.cc>
* | doc/muxers: add hls_flags option descriptionSteven Liu2016-07-22
| | | | | | | | | | | | Signed-off-by: Steven Liu <liuqi@gosun.com> Reviewed-by: Moritz Barsnick <barsnick@gmx.net> Signed-off-by: Michael Niedermayer <michael@niedermayer.cc>