- 08 Dec, 2018 1 commit
-
-
Gyan Doshi authored
Add entry in external library list and demuxers.
-
- 05 Dec, 2018 1 commit
-
-
Gyan Doshi authored
Add entry in external library list and demuxers.
-
- 04 Dec, 2018 1 commit
-
-
Gyan Doshi authored
Add entry in external library list and add details to demuxer entry.
-
- 07 Aug, 2018 2 commits
-
-
Steven Liu authored
output all the metadata context when use this option. Signed-off-by: Steven Liu <lq@chinaffmpeg.org>
-
Steven Liu authored
Signed-off-by: Steven Liu <lq@chinaffmpeg.org>
-
- 19 May, 2018 1 commit
-
-
Aman Gupta authored
This new optional flag makes it easier to deal with mpegts samples where the PMT is updated and elementary streams move to different PIDs in the middle of playback. Previously, new AVStreams were created per PID, and it was up to the user to figure out which streams had migrated to a new PID (by iterating over the list of AVProgram and making guesses), and switch seamlessly to the new AVStream during playback. Transcoding or remuxing these streams with ffmpeg on the CLI was also quite painful, and the user would need to extract each set of PIDs into a separate file and then stitch them back together. With this new option, the mpegts demuxer will automatically detect PMT changes and feed data from the new PID to the original AVStream that was created for the orignal PID. For mpegts samples with stream_identifier_descriptor available, the unique ID is used to merge PIDs together. If the stream id is not available, the demuxer attempts to map PIDs based on their position within the PMT. With this change, I am able to playback and transcode/remux these two samples which previously caused issues: https://tmm1.s3.amazonaws.com/pmt-version-change.ts https://kuroko.fushizen.eu/videos/pid_switch_sample.ts I also have another longer sample in which the PMT changes repeatedly and ES streams move to different pids three times during playback: https://tmm1.s3.amazonaws.com/multiple-pmt-change.ts Demuxing this sample with the new option shows several new log messages as the PMT changes are handled: [mpegts] detected PMT change (program=1, version=3/6, pcr_pid=0xf98/0xfb7) [mpegts] re-using existing video stream 0 (pid=0xf98) for new pid=0xfb7 [mpegts] re-using existing audio stream 1 (pid=0xf99) for new pid=0xfb8 [mpegts] re-using existing audio stream 2 (pid=0xf9a) for new pid=0xfb9 [mpegts] detected PMT change (program=1, version=6/3, pcr_pid=0xfb7/0xf98) [mpegts] detected PMT change (program=1, version=3/4, pcr_pid=0xf98/0xf9b) [mpegts] re-using existing video stream 0 (pid=0xf98) for new pid=0xf9b [mpegts] re-using existing audio stream 1 (pid=0xf99) for new pid=0xf9c [mpegts] re-using existing audio stream 2 (pid=0xf9a) for new pid=0xf9d [mpegts] detected PMT change (program=1, version=4/5, pcr_pid=0xf9b/0xfa9) [mpegts] re-using existing video stream 0 (pid=0xf98) for new pid=0xfa9 [mpegts] re-using existing audio stream 1 (pid=0xf99) for new pid=0xfaa [mpegts] re-using existing audio stream 2 (pid=0xf9a) for new pid=0xfab [mpegts] detected PMT change (program=1, version=5/6, pcr_pid=0xfa9/0xfb7) Signed-off-by: Aman Gupta <aman@tmm1.net>
-
- 18 May, 2018 1 commit
-
-
Aman Gupta authored
Some filtered mpegts streams may erroneously include PMTs for programs that are not advertised in the PAT. This confuses ffmpeg and most players because multiple audio/video streams are created and it is unclear which ones actually contain data. See for example https://tmm1.s3.amazonaws.com/unknown-pmts.ts In this sample, the PAT advertises exactly one program. But the pid it points to for the program's PMT contains PMTs for other programs as well. This is because the broadcaster decided to re-use the same pid for multiple program PMTs. The hardware that filtered the original multi-program stream into a single-program stream did so by rewriting the PAT to contain only the program that was requested. But since it just passed through the PMT pid referenced in the PAT, multiple PMTs are still present for the other programs. Before: Input #0, mpegts, from 'unknown-pmts.ts': Duration: 00:00:10.11, start: 80741.189700, bitrate: 9655 kb/s Program 4 Stream #0:2[0x41]: Video: mpeg2video (Main) ([2][0][0][0] / 0x0002), yuv420p(tv, bt709, progressive), 1280x720 [SAR 1:1 DAR 16:9], Closed Captions, 11063 kb/s, 59.94 fps, 59.94 tbr, 90k tbn, 119.88 tbc Stream #0:3[0x44](eng): Audio: ac3 (AC-3 / 0x332D4341), 48000 Hz, 5.1(side), fltp, 384 kb/s Stream #0:4[0x45](spa): Audio: ac3 (AC-3 / 0x332D4341), 48000 Hz, stereo, fltp, 128 kb/s No Program Stream #0:0[0x31]: Video: mpeg2video ([2][0][0][0] / 0x0002), none(tv), 90k tbr, 90k tbn, 90k tbc Stream #0:1[0x34](eng): Audio: ac3 (AC-3 / 0x332D4341), 0 channels, fltp Stream #0:5[0x51]: Video: mpeg2video ([2][0][0][0] / 0x0002), none, 90k tbr, 90k tbn Stream #0:6[0x54](eng): Audio: ac3 (AC-3 / 0x332D4341), 0 channels With skip_unknown_pmt=1: Input #0, mpegts, from 'unknown-pmts.ts': Duration: 00:00:10.11, start: 80741.189700, bitrate: 9655 kb/s Program 4 Stream #0:0[0x41]: Video: mpeg2video (Main) ([2][0][0][0] / 0x0002), yuv420p(tv, bt709, progressive), 1280x720 [SAR 1:1 DAR 16:9], Closed Captions, 11063 kb/s, 59.94 fps, 59.94 tbr, 90k tbn, 119.88 tbc Stream #0:1[0x44](eng): Audio: ac3 (AC-3 / 0x332D4341), 48000 Hz, 5.1(side), fltp, 384 kb/s Stream #0:2[0x45](spa): Audio: ac3 (AC-3 / 0x332D4341), 48000 Hz, stereo, fltp, 128 kb/s Signed-off-by: Aman Gupta <aman@tmm1.net>
-
- 14 Jan, 2018 1 commit
-
-
sfan5 authored
Signed-off-by: Steven Liu <lq@chinaffmpeg.org>
-
- 26 Dec, 2017 1 commit
-
-
Aman Gupta authored
Some http/1.0 implementations, like python's SimpleHTTPServer, can only support one client connection at a time. Making a second request while the first is still connected leads to a deadlock. This change enables multiple connections for http/1.1 servers only, which need to support keepalive by default and should have no problem with concurrent requests. Signed-off-by: Aman Gupta <aman@tmm1.net>
-
- 22 Dec, 2017 2 commits
-
-
Aman Gupta authored
This improves network throughput of the hls demuxer by avoiding the latency introduced by downloading segments one at a time. The problem is particularly noticable over high-latency network connections: for instance, if RTT is 250ms, there will a 250ms idle period between when one segment response is read and the next one starts. The obvious solution to this is to use HTTP pipelining, where a second request can be sent (on the persistent http/1.1 connection) before the first response is fully read. Unfortunately the way the http protocol is implemented in avformat makes implementing pipleining very complex. Instead, this commit simulates pipelining using two separate persistent http connections. This has the advantage of working independently of the http_persistent option, and can be used with http/1.0 servers as well. The pair of connections is swapped every time a new segment starts downloading, and a request for the next segment is sent on the secondary connection right away. This means the second response will be ready and waiting by the time the current response is fully read. Signed-off-by: Aman Gupta <aman@tmm1.net> Signed-off-by: Anssi Hannula <anssi.hannula@iki.fi>
-
Aman Gupta authored
This teaches the HLS demuxer to use the HTTP protocols multiple_requests=1 option, to take advantage of "Connection: Keep-Alive" when downloading playlists and segments from the HLS server. With the new option, you can avoid TCP connection and TLS negotiation overhead, which is particularly beneficial when streaming via a high-latency internet connection. Similar to the http_persistent option recently implemented in hlsenc.c Signed-off-by: Aman Gupta <aman@tmm1.net> Signed-off-by: Anssi Hannula <anssi.hannula@iki.fi>
-
- 27 Aug, 2017 1 commit
-
-
Michael Niedermayer authored
Fixes: loop.m3u The default max iteration count of 1000 is arbitrary and ideas for a better solution are welcome Found-by: Xiaohei and Wangchu from Alibaba Security Team Previous version reviewed-by: Steven Liu <lingjiujianke@gmail.com> Signed-off-by: Michael Niedermayer <michael@niedermayer.cc>
-
- 11 Feb, 2017 1 commit
-
-
Mulvya authored
Signed-off-by: Mulvya <mulvya@gmail.com> Signed-off-by: Michael Niedermayer <michael@niedermayer.cc>
-
- 26 Dec, 2016 1 commit
-
-
Bela Bodecs authored
Signed-off-by: Bela Bodecs <bodecsb@vivanet.hu> Signed-off-by: Michael Niedermayer <michael@niedermayer.cc>
-
- 13 Oct, 2016 1 commit
-
-
Stefano Sabatini authored
-
- 11 Oct, 2016 1 commit
-
-
Moritz Barsnick authored
Signed-off-by: Moritz Barsnick <barsnick@gmx.net> Signed-off-by: Michael Niedermayer <michael@niedermayer.cc>
-
- 21 Jul, 2016 1 commit
-
-
Josh de Kock authored
Signed-off-by: Josh de Kock <josh@itanimul.li>
-
- 13 Apr, 2016 1 commit
-
-
Lou Logan authored
Signed-off-by: Lou Logan <lou@lrcd.com> Found-by: furq
-
- 10 Mar, 2016 1 commit
-
-
Michael Niedermayer authored
This is safer, as a selected demuxer could still mean that it was auto-detected by a user application Reviewed-previously-by: Nicolas George <george@nsup.org> Reviewed-previously-by: Andreas Cadhalpun <andreas.cadhalpun@googlemail.com> Signed-off-by: Michael Niedermayer <michael@niedermayer.cc>
-
- 03 Feb, 2016 1 commit
-
-
Tobias Rapp authored
Signed-off-by: Tobias Rapp <t.rapp@noa-archive.com>
-
- 24 Jan, 2016 1 commit
-
-
Kieran Kunhya authored
libquvi has not been updated since 2013. It also has a number of security issues.
-
- 22 Jan, 2016 1 commit
-
-
Michael Niedermayer authored
Reviewed-by: Andreas Cadhalpun <andreas.cadhalpun@googlemail.com> Signed-off-by: Michael Niedermayer <michael@niedermayer.cc>
-
- 02 Dec, 2015 1 commit
-
-
Alex Agranovsky authored
This code is disabled by default so not to regress endpoints sending invalid MIME, but can be enabled via AVOption 'strict_mime_boundary' Signed-off-by: Alex Agranovsky <alex@sighthound.com>
-
- 24 Nov, 2015 1 commit
-
-
Marton Balint authored
Reviewed-by: Nicolas George <george@nsup.org> Signed-off-by: Marton Balint <cus@passwd.hu>
-
- 21 Aug, 2015 1 commit
-
-
- 14 Aug, 2015 2 commits
-
-
Stefano Sabatini authored
Consistently use impersonal form.
-
Stefano Sabatini authored
The description is yet crappy, it merely copies the description of the added and undocumented options and their value range. More descriptive documentation is welcome.
-
- 16 Jul, 2015 3 commits
-
-
Marton Balint authored
Reviewed-by: Nicolas George <george@nsup.org> Signed-off-by: Marton Balint <cus@passwd.hu>
-
Marton Balint authored
Reviewed-by: Nicolas George <george@nsup.org> Signed-off-by: Marton Balint <cus@passwd.hu>
-
Marton Balint authored
Reviewed-by: Nicolas George <george@nsup.org> Signed-off-by: Marton Balint <cus@passwd.hu>
-
- 29 May, 2015 1 commit
-
-
Michael Niedermayer authored
Users have no means to find out from a failure how to make it work or is it preferred to check and print a warning for h264 concat without auto_convert ? Reviewed-by: Nicolas George <george@nsup.org> Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
-
- 12 May, 2015 1 commit
-
-
Marton Balint authored
Signed-off-by: Marton Balint <cus@passwd.hu> Reviewed-by: Stefano Sabatini <stefasab@gmail.com> Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
-
- 29 Mar, 2015 1 commit
-
-
Carl Eugen Hoyos authored
Allows playback for the sample from ticket #4369 in less than 18 hours.
-
- 25 Nov, 2014 1 commit
-
-
Benoit Fouet authored
Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
-
- 03 Sep, 2014 1 commit
-
-
Lou Logan authored
Signed-off-by: Lou Logan <lou@lrcd.com>
-
- 29 Apr, 2014 1 commit
-
-
Nicolas George authored
-
- 22 Apr, 2014 1 commit
-
-
Reimar Döffinger authored
Signed-off-by: Reimar Döffinger <Reimar.Doeffinger@gmx.de>
-
- 12 Apr, 2014 1 commit
-
-
Michael Niedermayer authored
Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
-
- 23 Mar, 2014 1 commit
-
-
Nicolas George authored
That makes the concat demuxer usable with MPEG-PS streams, even when the streams in the different parts are detected in different order.
-
- 06 Mar, 2014 1 commit
-
-
Andreas Cadhalpun authored
Fix spelling errors in texi files: accomodate -> accommodate allows to -> allows one to choosen -> chosen compability -> compatibility explictly -> explicitly overriden -> overridden specifed -> specified Trasmission -> Transmission Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
-