summaryrefslogtreecommitdiff
path: root/libavformat
Commit message (Collapse)AuthorAge
* avformat/matroskadec: add WebVTT supportMatthew Heaney2013-08-19
| | | | | | | | | | | | | WebM files now support inband text tracks, as described in the following specification: http://wiki.webmproject.org/webm-metadata/temporal-metadata/webvtt-in-webm The Matroska demuxer now detects the presence of WebVTT tracks, synthesizing WebVTT packets (having codec id AV_CODEC_ID_WEBVTT) and pushing them downstream in the normal way. Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
* matroskaenc: remove unneeded wavpack tagPaul B Mahol2013-08-19
| | | | Signed-off-by: Paul B Mahol <onemda@gmail.com>
* Fix frame width and height for some targa_y216 samples.Carl Eugen Hoyos2013-08-18
| | | | Fixes ticket #2864.
* avformat/mpegts: resync from the smallest packet size onMichael Niedermayer2013-08-18
| | | | | | | This avoids the loss of a packet in many cases if the packet size was wrong. It also improves detection of packet size changes Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
* mpegts_get_pcr: dont loose a packet when resyncingMichael Niedermayer2013-08-18
| | | | | | This matches how read_packet() works Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
* mpegts: fix pos47_fullMichael Niedermayer2013-08-18
| | | | | | The value was off by a packet Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
* avformat/mpegts: print packet size warning only if new size differs from oldMichael Niedermayer2013-08-18
| | | | | | | No case is known to have triggered this, but its more correct to check that the new size differs. Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
* mpegts: reanalyze packet size on mismatchesMichael Niedermayer2013-08-18
| | | | | | | Fixes Ticket1812 Fixes Ticket2838 Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
* Merge remote-tracking branch 'qatar/master'Michael Niedermayer2013-08-18
|\ | | | | | | | | | | | | * qatar/master: movenc: Indicate that negative timestamps are supported Merged-by: Michael Niedermayer <michaelni@gmx.at>
| * movenc: Indicate that negative timestamps are supportedMartin Storsjö2013-08-17
| | | | | | | | | | | | | | | | | | | | | | | | | | The mov/mp4 muxer has support for handling negative timestamps via edit lists (which customarily is used for handling the 1-frame delay due to B-frames as well). Using the muxer's native way of handling it is better than using the generic offsetting. The generic offsetting is a bit too crude when e.g. the timebase of one track is 1/fps, where the edit lists can handle it accurately. Signed-off-by: Martin Storsjö <martin@martin.st>
| * hlsenc: Don't reset the number variable when wrappingCarl Eugen Hoyos2013-08-15
| | | | | | | | | | | | | | | | The counter itself shouldn't be wrapped, since it is used for determining end_pts for the next segment - only wrap the number used for the segment file name. Signed-off-by: Martin Storsjö <martin@martin.st>
* | avformat/matroskadec: check out_samplerate before using it in av_rescale()Michael Niedermayer2013-08-18
| | | | | | | | | | | | Prevent assertion failure with damaged input Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
* | matroskadec: Improve TTA duration calculationJames Almer2013-08-18
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Calculate the duration as accurately as possible to improve decoding of samples where the last frame is smaller than the rest. Example: Take lossless-audio/luckynight-partial.tak from the FATE suit and convert it to TTA muxed into matroska: ffmpeg -i $(SAMPLES)/lossless-audio/luckynight-partial.tak -c:a tta lucky.mka The framemd5 output for lucky.mka without this patch: 0, 0, 0, 46080, 184320, 7c3751ddd571d2903c3cf0ab4b3e3d0a 0, 46080, 46080, 46080, 184320, 6b70c782ba1da3f933fde2daa4f96b73 0, 92160, 92160, 46080, 184320, dcf70d89c54b9a4f0b302d4ec4fb302d 0, 138240, 138240, 46080, 184320, 48713ca38b388d2ea4abf5b86ed1226f 0, 184320, 184320, 46080, 184320, 12188a23648e7ebfb07cd6fe9197b2ea 0, 230400, 230400, 46080, 184320, 49653ab8186a5d4a044ed284671a26e0 0, 276480, 276480, 46080, 184320, 5e82c6a7fe58c7ea612c03a0a2927dd4 0, 322560, 322560, 46080, 184320, 83dc449dbd9eab5f2e8ad2b4403d6a21 0, 368640, 368640, 46080, 184320, bdd6b92c23d30978d4e802d305b0fc49 With this patch: 0, 0, 0, 46080, 184320, 7c3751ddd571d2903c3cf0ab4b3e3d0a 0, 46080, 46080, 46080, 184320, 6b70c782ba1da3f933fde2daa4f96b73 0, 92160, 92160, 46080, 184320, dcf70d89c54b9a4f0b302d4ec4fb302d 0, 138240, 138240, 46080, 184320, 48713ca38b388d2ea4abf5b86ed1226f 0, 184320, 184320, 46080, 184320, 12188a23648e7ebfb07cd6fe9197b2ea 0, 230400, 230400, 46080, 184320, 49653ab8186a5d4a044ed284671a26e0 0, 276480, 276480, 46080, 184320, 5e82c6a7fe58c7ea612c03a0a2927dd4 0, 322560, 322560, 46080, 184320, 83dc449dbd9eab5f2e8ad2b4403d6a21 0, 368640, 368640, 46080, 184320, bdd6b92c23d30978d4e802d305b0fc49 0, 414720, 414720, 4230, 16920, b50b440c5bbcecb8e9fbece643447593 The duration without this patch was calculated as 418950000000, which is bigger than uint32_t and as such stored as 2338172288. With this patch the duration is correctly calculated as 418950. Signed-off-by: James Almer <jamrial@gmail.com> Approved-by: Paul B Mahol <onemda@gmail.com> Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
* | lavf/matroska: Adding the new SeekPreRoll elementVignesh Venkatasubramanian2013-08-18
| | | | | | | | | | | | | | | | | | | | | | | | | | In order to encapsuate Opus in Matroska, there is a new element that has been added to the Matroska Spec, SeekPreRoll. It has the duration in nanoseconds that has to be decoded before every seek. Spec: http://matroska.org/technical/specs/index.html#SeekPreRoll Proposal for encapsulateing Opus in Matroska: http://wiki.xiph.org/MatroskaOpus Signed-off-by: Vignesh Venkatasubramanian <vigneshv@google.com> Reviewed-by: Paul B Mahol <onemda@gmail.com> Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
* | avisynth: Support video input from AviSynth 2.5 properly.Stephen Hutchinson2013-08-17
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Uses the 2.5 compatibility header included with the variant of FFMS2 that uses AviSynth's C-interface. A copy of this header is now provided in compat/avisynth. avs_get_row_size_p and avs_get_height_p changed between versions 2.5 and 2.6. Since the avisynth_c.h header that avformat uses assumes AviSynth 2.6, it would cause 2.5 to crash if given any kind of real video (the Version() function was known to work, though). AvxSynth was unaffected by this issue because, despite being based on AviSynth 2.5.8 and using 2.5.8's interface version number of 3, it actually uses 2.6's versions of these functions. Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
* | lavf/tee: add support for bitstream filteringStefano Sabatini2013-08-16
| | | | | | | | | | This allows to apply different bitstream filters to different outputs, with no need to transcode.
* | Merge commit '09c93b1b957f2049ea5fd8fb0e6f4d82680172f2'Michael Niedermayer2013-08-16
|\| | | | | | | | | | | | | | | | | | | | | * commit '09c93b1b957f2049ea5fd8fb0e6f4d82680172f2': hlsenc: Append the last incomplete segment when closing the output Conflicts: libavformat/hlsenc.c See: 4630dfd1ebb6550f352ea69ce7150aaaba96d413 Merged-by: Michael Niedermayer <michaelni@gmx.at>
| * hlsenc: Append the last incomplete segment when closing the outputStefano Sabatini2013-08-15
| | | | | | | | | | | | | | Also avoid comparing NOPTS values. Bug-id: 551 Signed-off-by: Martin Storsjö <martin@martin.st>
* | Merge commit 'c9031c7c1446a1a63eff7c0bf50d1ee559adf3fb'Michael Niedermayer2013-08-16
|\| | | | | | | | | | | | | | | | | | | * commit 'c9031c7c1446a1a63eff7c0bf50d1ee559adf3fb': hlsenc: Add a proper dependency on the mpegts muxer Conflicts: libavformat/Makefile Merged-by: Michael Niedermayer <michaelni@gmx.at>
| * hlsenc: Add a proper dependency on the mpegts muxerMartin Storsjö2013-08-15
| | | | | | | | | | | | | | | | | | The hls muxer itself doesn't have any direct (object file level) dependencies on mpegtsenc.o, and including that object file directly doesn't ensure that it is registered so that the muxer actually is accessible. Signed-off-by: Martin Storsjö <martin@martin.st>
* | Merge commit '4b054a3400f728c54470ee6a1eefe1d82420f6a2'Michael Niedermayer2013-08-16
|\| | | | | | | | | | | | | * commit '4b054a3400f728c54470ee6a1eefe1d82420f6a2': rtpproto: Check the right feature detection macro Merged-by: Michael Niedermayer <michaelni@gmx.at>
| * rtpproto: Check the right feature detection macroMartin Storsjö2013-08-15
| | | | | | | | | | | | | | | | IPPROTO_IPV6 is unrelated here (it's only used in udp.c for multicast sockopts), check for support for the sockaddr_in6 struct itself. Signed-off-by: Martin Storsjö <martin@martin.st>
* | Merge commit '163a729725c6eb0081b0af41a7279f7d19aee86e'Michael Niedermayer2013-08-16
|\| | | | | | | | | | | | | * commit '163a729725c6eb0081b0af41a7279f7d19aee86e': electronicarts: Let functions always returning the same value return void Merged-by: Michael Niedermayer <michaelni@gmx.at>
| * electronicarts: Let functions always returning the same value return voidDiego Biurrun2013-08-15
| |
* | Merge commit '4908c8ef2706d98022bf27a5c5bca1fe109e7529'Michael Niedermayer2013-08-16
|\| | | | | | | | | | | | | | | | | | | * commit '4908c8ef2706d98022bf27a5c5bca1fe109e7529': electronicarts: Improve some function/variable names Conflicts: libavformat/electronicarts.c Merged-by: Michael Niedermayer <michaelni@gmx.at>
| * electronicarts: Improve some function/variable namesDiego Biurrun2013-08-15
| |
* | Merge commit 'a90cff137b2aca89380b0acad41cd7bb05619ece'Michael Niedermayer2013-08-16
|\| | | | | | | | | | | | | * commit 'a90cff137b2aca89380b0acad41cd7bb05619ece': electronicarts: comment wording fixes Merged-by: Michael Niedermayer <michaelni@gmx.at>
| * electronicarts: comment wording fixesDiego Biurrun2013-08-15
| |
* | Merge commit '288f2ffb57ae9e9eee2748aca26da3aeb3ca6f6c'Michael Niedermayer2013-08-16
|\| | | | | | | | | | | | | * commit '288f2ffb57ae9e9eee2748aca26da3aeb3ca6f6c': electronicarts: Remove bogus function documentation Merged-by: Michael Niedermayer <michaelni@gmx.at>
| * electronicarts: Remove bogus function documentationDiego Biurrun2013-08-15
| |
* | Merge commit '8747fce91fca6bb8e9936497f2de05c905cf43b5'Michael Niedermayer2013-08-16
|\| | | | | | | | | | | | | | | | | | | * commit '8747fce91fca6bb8e9936497f2de05c905cf43b5': electronicarts: K&R formatting cosmetics Conflicts: libavformat/electronicarts.c Merged-by: Michael Niedermayer <michaelni@gmx.at>
| * electronicarts: K&R formatting cosmeticsDiego Biurrun2013-08-15
| |
* | avformat/riff: add DM4V FourCCPiotr Bandurski2013-08-15
| | | | | | | | Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
* | Merge remote-tracking branch 'qatar/master'Michael Niedermayer2013-08-15
|\| | | | | | | | | | | | | * qatar/master: rtpproto: Check for the right feature when reading a sockaddr_in6 Merged-by: Michael Niedermayer <michaelni@gmx.at>
| * rtpproto: Check for the right feature when reading a sockaddr_in6Dave Yeo2013-08-15
| | | | | | | | | | | | | | Some systems, such as OS/2, define AF_INET6 without a full implementation. Signed-off-by: Martin Storsjö <martin@martin.st>
* | lavf/wavdec: Fix seeking in files with unaligned offsetsAlexander Strasser2013-08-14
| | | | | | | | | | | | | | | | | | | | | | | | | | A file with a prepended ID3 tag of an uneven length was found in the wild. Check if the wav data starts at an uneven offset and use that information to correct the seeking calculation in wav_seek_tag, which used to only seek to even byte positions. Regression since ac87eaf856e0fb51917266b899bb15d19b907baf Signed-off-by: Alexander Strasser <eclipse7@gmx.net>
* | Merge remote-tracking branch 'qatar/master'Michael Niedermayer2013-08-14
|\| | | | | | | | | | | | | * qatar/master: sdp: Add an option for sending RTCP packets to the source of the last packets Merged-by: Michael Niedermayer <michaelni@gmx.at>
| * sdp: Add an option for sending RTCP packets to the source of the last packetsMartin Storsjö2013-08-14
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | An SDP description normally only contains the target IP address and port for the packets. This means that we don't really have any clue where to send the RTCP RR packets - previously they're sent to the destination IP written in the SDP (at the same port), which rarely is the actual peer. And if the source for the packets is on a different port than the destination, it's never correct. With a new option, we can choose to send the packets to the address that the latest packet on each socket arrived from. --- Some may even argue that this should be the default - perhaps, but I'd rather keep it optional at first. Additionally, I'm not sure if sending RTCP RR directly back to the source is desireable for e.g. multicast. Signed-off-by: Martin Storsjö <martin@martin.st>
* | Merge commit '6b58e11a8331690ec32e9869db89ae10c54614e9'Michael Niedermayer2013-08-14
|\| | | | | | | | | | | | | * commit '6b58e11a8331690ec32e9869db89ae10c54614e9': rtpproto: Add an option for writing return packets to the address of the last received packets Merged-by: Michael Niedermayer <michaelni@gmx.at>
| * rtpproto: Add an option for writing return packets to the address of the ↵Martin Storsjö2013-08-14
| | | | | | | | | | | | | | | | | | | | | | last received packets If we've received packets on the same socket before, the return packets are sent to that address. If we've only received packets on the other socket, try to guess the source port for the other one assuming the basic +1/-1 logic. Signed-off-by: Martin Storsjö <martin@martin.st>
* | Merge commit '2427ac6ccd868811d1fe9df7c64c50ca58abe6f6'Michael Niedermayer2013-08-14
|\| | | | | | | | | | | | | * commit '2427ac6ccd868811d1fe9df7c64c50ca58abe6f6': rtpproto: Update the parameter documentation Merged-by: Michael Niedermayer <michaelni@gmx.at>
| * rtpproto: Update the parameter documentationMartin Storsjö2013-08-13
| | | | | | | | | | | | | | | | Move the sources documentation up below the marker for deprecated otpions. Also mention the new block parameter, that was added in 749722209. Signed-off-by: Martin Storsjö <martin@martin.st>
* | Merge commit '5268bd2900effa59b51e0fede61aacde5e2f0b95'Michael Niedermayer2013-08-14
|\| | | | | | | | | | | | | * commit '5268bd2900effa59b51e0fede61aacde5e2f0b95': segafilm: Error out on impossible packet size Merged-by: Michael Niedermayer <michaelni@gmx.at>
| * segafilm: Error out on impossible packet sizeLuca Barbato2013-08-13
| | | | | | | | | | Reported-by: Mateusz "j00ru" Jurczyk and Gynvael Coldwind CC: libav-stable@libav.org
* | Merge commit '3562684db716d11de0b0dcc52748e9cd90d68132'Michael Niedermayer2013-08-14
|\| | | | | | | | | | | | | | | | | | | | | * commit '3562684db716d11de0b0dcc52748e9cd90d68132': ogg: Always alloc the private context in vorbis_header Conflicts: libavformat/oggparsevorbis.c See: 18b46a494ef3592d69f4638dac1ebb613c0f548d Merged-by: Michael Niedermayer <michaelni@gmx.at>
| * ogg: Always alloc the private context in vorbis_headerLuca Barbato2013-08-13
| | | | | | | | | | | | | | It is possible to have an initial broken header and then valid packets. Reported-by: Mateusz "j00ru" Jurczyk and Gynvael Coldwind CC: libav-stable@libav.org
* | riff: add msn audio commentCompn2013-08-13
| |
* | avformat/riff: treat msn audio like gsm_msPiotr Bandurski2013-08-13
| | | | | | | | | | | | Fixes decoding of 4 files from Ticket2854 Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
* | Remove FF_API_PKT_DUMP cruft. Not compiled since libavformat 54.Alexis Ballier2013-08-13
| | | | | | | | Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
* | libavformat/version.h: Drop FF_API_OLD_AVIO (unused and undefined since ↵Alexis Ballier2013-08-13
| | | | | | | | | | | | libavformat 55) Signed-off-by: Michael Niedermayer <michaelni@gmx.at>