Welcome to mirror list, hosted at ThFree Co, Russian Federation.

github.com/FFmpeg/FFmpeg.git - Unnamed repository; edit this file 'description' to name the repository.
summaryrefslogtreecommitdiff
AgeCommit message (Collapse)Author
2022-10-08avformat/mpegtsenc: add omit_rai flagZhao Zhili
Add PCR at keyframe can be undesirable when -pcr_period is specified. Add an flag to disable this behavior. Signed-off-by: Zhao Zhili <zhilizhao@tencent.com>
2022-06-29avformat/hlsenc: Use HLS version 2 if rounded durations are enabledLucy
This allows for wider compatibility with older devices, such as those running iOS 3. The only difference between HLS version 2 and version 3 is that version 3 supports non-integer EXTINF values, and as such, we can default to version 2 if we're using whole-integer EXTINFs anyways, when `-hls_flags round_durations` is set. As this code seems to otherwise consistently use the lowest compatible version, this seems to fit in properly with existing behavior. Testing confirms with that this patch, HLS output can work all the way back to iOS 3. Reviewed-by: Steven Liu <liuqi05@kuaishou.com> Signed-off-by: Lucy <lucy@absolucy.moe>
2022-05-16doc/muxers: note write_btrt option for MOV/MP4Gyan Doshi
2022-02-24doc/muxers: note video_track_timecale in movGyan Doshi
2022-02-17doc/muxers: add entry for empty_hdlr_name in movGyan Doshi
2022-01-13avformat/matroskaenc: Add option to shift data to write cues at frontAndreas Rheinhardt
This is similar to the faststart option of the mov muxer, yet in contrast to it it works together with reserve_index_space (the equivalent to reserved_moov_size): If the reserved space does not suffice, the data is shifted; if not, the Cues are written at the front without shifting the data. Several tests that cover (not only) this have been added. Implements #7017. Signed-off-by: Andreas Rheinhardt <andreas.rheinhardt@outlook.com>
2021-12-13avformat/hlsenc: deprecate hls_ts_options optionSteven Liu
Because the hls_ts_options will be misunderstand by user, and then user can use hls_segment_options instead of hls_ts_options. Signed-off-by: Steven Liu <liuqi05@kuaishou.com>
2021-12-13avformat/hlsenc: add hls_segment_options correct the segment options nameSteven Liu
Because the hls_ts_options will be misunderstand by user that only can be used in mpegts segments option. So add this option for segments. Signed-off-by: Steven Liu <liuqi05@kuaishou.com>
2021-11-05doc/muxers: note on Apple's version LHLS for lhls optionZhao Zhili
2021-11-05avformat/dashenc: enabling streaming and hls_playlist for lhlsZhao Zhili
Try to make the feature easier to use, especially since the user have enabled -strict experimental manually. The user shouldn't be surprised that hls_playlist is enabled for lhls automatically, so change the log level from warning to info for that.
2021-09-05doc/muxers: add entry for OBU muxerGyan Doshi
2021-08-24avformat/matroskaenc: Pass dispositions through unchanged by defaultAndreas Rheinhardt
Up until now, the Matroska muxer did not use the dispositions it is given as-is; instead it by default overrode the disposition of the first track of a kind (audio, video, subtitles) if no track of this kind has the default disposition set. And up until recently, it also enforced by default that no more than one track of each kind be marked as default. The rationale for the former is that there are lots of containers which lack the concept of default streams, so that it is not uncommon for no stream to be marked as default at all; the rationale for the latter was that up until recently, it was dubious whether the Matroska specification allowed more than one default stream for track type (e.g. mkvmerge disallowed it). It was this point which led to the implementation of the above mentioned behaviour inspired by mkvmerge. Yet the Matroska specifications have changed and now explicitly allow to set more than one track of each type as default, so that the main reason of not using the dispositions as-is was rendered moot. Therefore this commit changes the default to pass the disposition through. The matroska-mpegts-remux FATE-test has been updated to still use the old "infer" mode so that it is still covered by FATE; the matroska-zero-length-block test has also been updated to cover the infer_no_subs mode. The references for lots of other FATE tests needed to be updated because of a newly added FlagDefault element with value zero (whereas a FlagDefault with value 1 needn't be coded at all, as it coincided with the default value of said element). Signed-off-by: Andreas Rheinhardt <andreas.rheinhardt@outlook.com>
2021-08-24avformat/matroskaenc: Allow to set multiple streams as defaultAndreas Rheinhardt
The Matroska specifications have evolved and now allow to mark multiple tracks of the same kind as default (whether this was legal or not before was dubious; e.g. mkvmerge disallowed it). Yet when the Matroska muxer is set to infer default dispositions if absent, it also enforced the now outdated restriction. So update this. Signed-off-by: Andreas Rheinhardt <andreas.rheinhardt@outlook.com>
2021-06-30doc/muxers: note atomic_writing in image2Gyan Doshi
Fixes #9308
2021-05-21avformat/mpegtsenc: add NIT supportUbaldo Porcheddu
With some minor changes by Marton Balint: - removed trailing whitespace - fixed network_descriptors_length - fixed reserved_future_use flag in the start of the section - removed unused program variable - emit first NIT after PAT - some other cosmetics Signed-off-by: Ubaldo Porcheddu <ubaldo@eja.it> Signed-off-by: Marton Balint <cus@passwd.hu>
2021-05-09doc/muxers: note movie_timescale option in movencGyan Doshi
2021-04-27avformat/dashenc: Remove deprecated min_seg_duration optionAndreas Rheinhardt
Deprecated in 01ba52852d2ada3c79fe02a7de5bc1fdc27d56e8. Signed-off-by: Andreas Rheinhardt <andreas.rheinhardt@gmail.com> Signed-off-by: James Almer <jamrial@gmail.com>
2021-04-27avformat/hlsenc: Remove deprecated localtime optionsAndreas Rheinhardt
Deprecated in fbd8746efabe441469eb410d2ffa6af64987ca80. Signed-off-by: Andreas Rheinhardt <andreas.rheinhardt@gmail.com> Signed-off-by: James Almer <jamrial@gmail.com>
2021-04-27avformat/hlsenc: Remove deprecated wrap optionAndreas Rheinhardt
Deprecated in d96ebc5ef88024869de06bcf92b2ad99b01d47e3. Signed-off-by: Andreas Rheinhardt <andreas.rheinhardt@gmail.com> Signed-off-by: James Almer <jamrial@gmail.com>
2021-04-26doc/muxers: add entry for ALP muxerGyan Doshi
2021-04-26doc/muxers: add entry for ADTS muxerGyan Doshi
2021-04-19doc/muxers.texi: fix build issue for unknown commandGuo, Yejun
The build log: ** Unknown command `@code' (left as is) (in src/doc/muxers.texi l. 2020) *** '{' without macro. Before: -map} option with the ffmpeg CLI tool. (in src/doc/muxers.texi l. 2020) *** '}' without opening '{' before: option with the ffmpeg CLI tool. (in src/doc/muxers.texi l. 2020)
2021-04-11doc/muxers: add entries for raw muxersGyan Doshi
2021-04-07doc/muxers: fix alphabetical sorting of entriesGyan Doshi
2021-04-02doc/muxers: add entry for A64 muxerGyan Doshi
2021-03-07doc/muxers.texi: Readd documentation removed accidentallyAndreas Rheinhardt
Happened in e7c04eaf50b4b50f2528ab2c69b76777a1862535. Reviewed-by: James Almer <jamrial@gmail.com> Signed-off-by: Andreas Rheinhardt <andreas.rheinhardt@gmail.com>
2021-02-02avformat/hlsenc: use AV_OPT_TYPE_DURATIONLimin Wang
Signed-off-by: Limin Wang <lance.lmwang@gmail.com>
2020-12-28doc/muxers: correct description of hls_enc_key and hls_enc_ivSteven Liu
because hls_enc_key and hls_enc_iv get 16byte char for example: -hls_enc_key 0123456789abcdef -hls_enc_iv abcdefghijklmnop Reviewed-by: Gyan Doshi <ffmpeg@gyani.pro> Signed-off-by: Steven Liu <liuqi05@kuaishou.com>
2020-12-08hlsenc: expand hls_fmp4_init_filename with strftime()Nikola Pajkovsky
the init.mp4 can be expanded with strftime the same way as hls_segment_filename. Signed-off-by: Nikola Pajkovsky <nikola@pajkovsky.cz> Signed-off-by: liuqi05 <liuqi05@kuaishou.com>
2020-07-15avformat/riffenc: indicate storage of flipped RGB bitmapsGyan Doshi
Some legacy applications such as AVI2MVE expect raw RGB bitmaps to be stored bottom-up, whereas our RIFF BITMAPINFOHEADER assumes they are always stored top-down and thus write a negative value for height. This can prevent reading of these files. Option flipped_raw_rgb added to AVI and Matroska muxers which will write positive value for height when enabled. Note that the user has to flip the bitmaps beforehand using other means such as the vflip filter.
2020-07-09libavformat/dashenc.c: Support mpd update periodSiyuan Huang
According ISO 23009-1, in live cases, mpd refresh period should be configurable Signed-off-by: Siyuan Huang <saber.huang@samsung.com>
2020-06-15avformat/dashenc: Add hls_master_name optionPrzemysław Sobala
2020-06-09avformat/fifo: add timeshift option to delay outputMarton Balint
Signed-off-by: Marton Balint <cus@passwd.hu>
2020-05-19doc/muxers: Document title tag for attachmentsAndreas Rheinhardt
The Matroska muxer has always mapped the title tag to the FileDescription element for attachments streams since support for writing attachments was added in commit c7a63a521b5c165405e3577751d649529d09f0c5. This commit merely documents this fact. Signed-off-by: Andreas Rheinhardt <andreas.rheinhardt@gmail.com>
2020-05-04doc/muxers: remove hls_fmp4_init_resend parameterSteven Liu
the parameter should boolean
2020-05-01avformat/hlsenc: add support for microseconds since epoch based sequence numberMarton Balint
Sequence numbers of segments should be unique, if an encoder is using shorter than 1 second segments and it is restarted, then future segments will be using already used sequence numbers if initial sequence number is based on the number of seconds since epoch and not microseconds. Signed-off-by: Marton Balint <cus@passwd.hu>
2020-04-21avformat/mpegtsenc: use standard pids for m2tsMarton Balint
Signed-off-by: Marton Balint <cus@passwd.hu>
2020-04-21avformat/matroskaenc: Redo handling of FlagDefaultAndreas Rheinhardt
Up until now, the Matroska muxer would mark a track as default if it had the disposition AV_DISPOSITION_DEFAULT or if there was no track with AV_DISPOSITION_DEFAULT set; in the latter case even more than one track of a kind (audio, video, subtitles) was marked as default which is not sensible. This commit changes the logic used to mark tracks as default. There are now three modes for this: a) In the "infer" mode the first track of every type (audio, video, subtitles) with default disposition set will be marked as default; if there is no such track (for a given type), then the first track of this type (if existing) will be marked as default. This behaviour is inspired by mkvmerge. It ensures that the default flags will be set in a sensible way even if the input comes from containers that lack the concept of default flags. This mode is the default mode. b) The "infer_no_subs" mode is similar to the "infer" mode; the difference is that if no subtitle track with default disposition exists, no subtitle track will be marked as default at all. c) The "passthrough" mode: Here the track will be marked as default if and only the corresponding input stream had disposition default. This fixes ticket #8173 (the passthrough mode is ideal for this) as well as ticket #8416 (the "infer_no_subs" mode leads to the desired output). Signed-off-by: Andreas Rheinhardt <andreas.rheinhardt@gmail.com>
2020-04-20avformat/dashenc: add a PlaybackRate elementJames Almer
Signed-off-by: James Almer <jamrial@gmail.com>
2020-04-20doc/muxers: fix some dashenc option namesJames Almer
Signed-off-by: James Almer <jamrial@gmail.com>
2020-04-15avformat/hlsenc: add hls_fmp4_init_resend optionSteven Liu
add option for resend init file after m3u8 refresh everytime. Signed-off-by: Steven Liu <lq@chinaffmpeg.org>
2020-04-08avformat: add subtitle support in master playlist m3u8Limin Wang
Test with the following command for the webvtt subtitle: $ ./ffmpeg -y -i input_with_subtitle.mkv \ -b:v:0 5250k -c:v h264 -pix_fmt yuv420p -profile:v main -level 4.1 \ -b:a:0 256k \ -c:s webvtt -c:a mp2 -ar 48000 -ac 2 -map 0:v -map 0:a:0 -map 0:s:0 \ -f hls -var_stream_map "v:0,a:0,s:0,sgroup:subtitle" \ -master_pl_name master.m3u8 -t 300 -hls_time 10 -hls_init_time 4 -hls_list_size \ 10 -master_pl_publish_rate 10 -hls_flags \ delete_segments+discont_start+split_by_time ./tmp/video.m3u8 Check the master m3u8: $ cat tmp/master.m3u8 #EXTM3U #EXT-X-VERSION:3 #EXT-X-MEDIA:TYPE=SUBTITLES,GROUP-ID="subtitle",NAME="subtitle_0",DEFAULT=YES,URI="video_vtt.m3u8" #EXT-X-STREAM-INF:BANDWIDTH=6056600,RESOLUTION=1280x720,CODECS="avc1.4d4829,mp4a.40.33",SUBTITLES="subtitle" video.m3u8 Check the result by convert to mkv: $ ./ffmpeg -strict experimental -i ./tmp/master.m3u8 -c:v copy -c:a mp2 -c:s srt ./test.mkv Signed-off-by: Limin Wang <lance.lmwang@gmail.com>
2020-04-02avformat/matroskaenc: Don't fail if reserved Cues space doesn't sufficeAndreas Rheinhardt
When the user opted to write the Cues at the beginning, the Cues were simply written without checking in advance whether enough space has been reserved for them. If it wasn't enough, the data following the space reserved for the Cues was simply overwritten, corrupting the file. This commit changes this by checking whether enough space has been reserved for the Cues before outputting anything. If it isn't enough, no Cues will be output at all and the file will be finalized normally, yet writing the trailer will nevertheless return an error to notify the user that his wish of having Cues at the front of the file hasn't been fulfilled. This change opens new usecases for this option: It is now safe to use this option to e.g. record live streams or to use it when muxing the output of an expensive encoding, because when the reserved space turns out to be insufficient, one ends up with a file that just lacks Cues but is otherwise fine. Signed-off-by: Andreas Rheinhardt <andreas.rheinhardt@gmail.com>
2020-03-06doc/demuxers: update mov sectionGyan Doshi
Add details and all options for mov.c demuxer.
2020-02-26doc/muxers: describe the default behavior of the write_prft dash muxer optionJames Almer
Signed-off-by: James Almer <jamrial@gmail.com>
2020-02-16avformat/dashenc: add Trick Mode support for AdaptationSetsJames Almer
Signed-off-by: James Almer <jamrial@gmail.com>
2020-02-03avformat/dashenc: use AV_OPT_TYPE_DICT for http_optsMarton Balint
This changes the separator character from comma to colon, but since this option was only added recently I think it should be done for consistency with other similar options. Signed-off-by: Marton Balint <cus@passwd.hu>
2020-01-19avformat/img2enc: add support for specifying protocol optionsMarton Balint
v2: simplified example Signed-off-by: Marton Balint <cus@passwd.hu>
2020-01-16avformat/dashenc: document the new optionsJames Almer
Signed-off-by: James Almer <jamrial@gmail.com>
2020-01-03doc/muxers: fix order of options and examples for image2 muxerMarton Balint
Signed-off-by: Marton Balint <cus@passwd.hu>