summaryrefslogtreecommitdiff
path: root/libavformat
Commit message (Collapse)AuthorAge
* lavf: remove unreliable timestamp guessing heuristicAnton Khirnov2013-10-28
|
* avio: K&R formatting cosmeticsLuca Barbato2013-10-28
|
* movenc: Add an F4V muxerClément Bœsch2013-10-23
| | | | | | | | F4V is Adobe's mp4/iso media variant, with the most significant addition/change being supporting other flash codecs than just aac/h264. Signed-off-by: Martin Storsjö <martin@martin.st>
* nut: Fix unchecked allocationsDerek Buitenhuis2013-10-22
| | | | | CC: libav-stable@libav.org Signed-off-by: Derek Buitenhuis <derek.buitenhuis@gmail.com>
* avio: Use AVERROR_PROTOCOL_NOT_FOUNDLuca Barbato2013-10-21
| | | | | | | | When the protocol is missing ffurl_alloc() should return AVERROR_PROTOCOL_NOT_FOUND instead of AVERROR(ENOENT). Bug-Id: 577 CC: libav-stable@libav.org
* wtv: Seek by sector properlyLuca Barbato2013-10-18
| | | | | | | | | Use an helper function to seek by sector to avoid possible mistakes due shifting by WTV_SECTOR_BITS a 32bit integer. Contrary to common intuition, a 32 bit integer left shifted by a 64 bit integer does not promote the 32 bit integer to 64 bit before shifting.
* http: Check the auth string contents and not only the pointerMichael Niedermayer2013-10-14
| | | | | | | This makes sure we don't send the Except: 100-continue header if no authentication credentials have been provided. Signed-off-by: Martin Storsjö <martin@martin.st>
* rtmp: Allocate the prev_pkt arrays dynamicallyMartin Storsjö2013-10-14
| | | | | | | | | | Normally, all channel ids are between 0 and 10, while they in uncommon cases can have values up to 64k. This avoids allocating two arrays for up to 64k entries (at a total of over 6 MB in size) each when most of them aren't used at all. Signed-off-by: Martin Storsjö <martin@martin.st>
* http: Support auth method detection for POSTMartin Storsjö2013-10-13
| | | | | | | | | | | | | | | | | | | | | | | | Inspired by a patch by Jakob van Bethlehem. But instead of doing an empty POST first to trigger the WWW-Authenticate header (which would succeed if no auth actually was required), add an Expect: 100-continue header, which is meant to be used exactly for cases like this. The header is added if doing a post, and the user has specified authentication but we don't know the auth method yet. Not all common HTTP servers support the Expect: 100-continue header, though, so we only try to use it when it really is needed. The user can request it to be added for other POST requests as well via an option - which would allow the caller to know immediately that the POST has failed (e.g. if no auth was provided but the server required it, or if the target URL simply doesn't exist). This is only done for write mode posts (e.g. posts without pre-set post_data) - for posts with pre-set data, we can just redo the post if it failed due to 401. Signed-off-by: Martin Storsjö <martin@martin.st>
* http: Add an option for forcing basic authenticationMartin Storsjö2013-10-13
| | | | | | | | | | | | | The default is to autodetect the auth method. This does require one extra request (and also closing and reopening the http connection). For some cases such as HTTP POST, the autodetection is not handled properly (yet). No option is added for digest, since this method requires getting nonce parameters from the server first and can't be used straight away like Basic. Signed-off-by: Martin Storsjö <martin@martin.st>
* oggparsevorbis: fail on memory allocation errorVittorio Giovara2013-10-12
|
* oggvorbisdec: add support for embedded cover artJames Almer2013-10-12
| | | | Signed-off-by: James Almer <jamrial@gmail.com>
* flac: move picture parsing code in a separate fileJames Almer2013-10-12
| | | | | Signed-off-by: James Almer <jamrial@gmail.com> Signed-off-by: Anton Khirnov <anton@khirnov.net>
* oggdec: add support for Opus in Ogg demuxingNicolas George2013-10-12
|
* oggparsevorbis: check allocationsVittorio Giovara2013-10-12
| | | | Signed-off-by: Anton Khirnov <anton@khirnov.net>
* oggparsevorbis: support official chapter extensionJames Almer2013-10-12
| | | | | Signed-off-by: James Almer <jamrial@gmail.com> Signed-off-by: Anton Khirnov <anton@khirnov.net>
* riff: Add a mapping for VP6AMartin Storsjö2013-10-12
| | | | | | This allows demuxing VP6A from F4V files. Signed-off-by: Martin Storsjö <martin@martin.st>
* mxf: Add jpeg2000 codec to intra only codecsMatthieu Bouron2013-10-10
| | | | | | Conform with SMPTE RP 224 and SMPTE s422. Signed-off-by: Luca Barbato <lu_zero@gentoo.org>
* flvenc: Write proper cropping for VP6 even if there's no extradataMartin Storsjö2013-10-10
| | | | | | This keeps cropping when remuxing from F4V to FLV. Signed-off-by: Martin Storsjö <martin@martin.st>
* flvenc: Support muxing VP6A as wellMartin Storsjö2013-10-10
| | | | | | Handle it in the same way as VP6F, except for the codec tag. Signed-off-by: Martin Storsjö <martin@martin.st>
* flvenc: Don't pretend to support muxing "plain" VP6Martin Storsjö2013-10-10
| | | | | | | | The plain VP6 format is vertically flipped compared to VP6F/VP6A. Support for the plain VP6 format was added in 09d8c0ae831 (which also introduced support for muxing VP6F properly in general). Signed-off-by: Martin Storsjö <martin@martin.st>
* avi: directly resync on DV in AVI read failureLuca Barbato2013-10-10
| | | | | Reported-by: Mateusz "j00ru" Jurczyk and Gynvael Coldwind CC: libav-stable@libav.org
* avi: DV in AVI must be considered single streamLuca Barbato2013-10-10
| | | | | Reported-by: Mateusz "j00ru" Jurczyk and Gynvael Coldwind CC: libav-stable@libav.org
* avi: properly fail if the dv demuxer is missingLuca Barbato2013-10-10
| | | | CC: libav-stable@libav.org
* bmv: Remove unused variableDiego Biurrun2013-10-06
|
* oggparsevorbis: return meaningful errorsVittorio Giovara2013-10-05
| | | | Signed-off-by: Diego Biurrun <diego@biurrun.de>
* mov: Don't allocate arrays with av_malloc that will be reallocedMartin Storsjö2013-10-05
| | | | | CC: libav-stable@libav.org Signed-off-by: Martin Storsjö <martin@martin.st>
* rtmpproto: Validate the embedded flv packet size before copyingMartin Storsjö2013-10-04
| | | | | | | | | | This wasn't an issue prior to 58404738, when the whole RTMP packet was copied at once and the length of the individual embedded flv packets only were validated by the flv demuxer. Prior to this patch, this could lead to reads and writes out of bound. Signed-off-by: Martin Storsjö <martin@martin.st>
* rtmpproto: Readjust the end of the flv buffer if handle_metadata exited earlyMartin Storsjö2013-10-04
| | | | | | | | If the embedded flv packets were incomplete and we aborted the copying loop early, make sure the flv buffer is trimmed to only contain full packets. Signed-off-by: Martin Storsjö <martin@martin.st>
* rtmpproto: Move the flv header/trailer addition to append_flv_dataMartin Storsjö2013-10-04
| | | | | | | | | | | | | | | | | update_offset is also called from handle_metadata, where the packet header sizes is already included in the size. Previously this lead to flv_data/flv_size including 15 uninitialized bytes at the end after each call to handle_metadata, making the flv demuxer lose sync with the stream. Also remove leftover copying in handle_metadata. This is a leftover from the refactoring in 5840473. (Previously this final mempcy was the one that copied all the packets at once, while this is done within the loop right now.) After making sure flv_size is set to the right size, this write was out of bounds. Signed-off-by: Martin Storsjö <martin@martin.st>
* rtmpproto: Clear the flv allocation size on reallocp failuresMartin Storsjö2013-10-04
| | | | | | | This was overlooked in d872fb0f7 since I assumed all the realloc issues in the rtmp code was fixed already. Signed-off-by: Martin Storsjö <martin@martin.st>
* rtmpproto: Pass the 'live' parameter in the right unitMartin Storsjö2013-10-04
| | | | | | | | | | | The current magic numbers passed are values in seconds, while the parameter itself should be passed over the wire in milliseconds. This makes (some/all?) live streams from Red5 work correctly, that previously returned StreamNotFound even with "-rtmp_live live". After this commit, the default 'any' also works on these streams. Signed-off-by: Martin Storsjö <martin@martin.st>
* rtmpproto: Print the error code string if there's no descriptionMartin Storsjö2013-10-04
| | | | | | | | | | On (certain streams/setups at least on) Red5, the description string actually is present, but empty. Therefore, first try loading the description, but if not found or empty, load the code string instead. The code string is quite understandable in most cases anyway (like "NetStream.Play.StreamNotFound"). Signed-off-by: Martin Storsjö <martin@martin.st>
* oggparsevorbis: K&R formatting cosmeticsVittorio Giovara2013-10-03
| | | | Signed-off-by: Diego Biurrun <diego@biurrun.de>
* avformat/output-example: Declare link dependency on libswscale in the MakefileDiego Biurrun2013-10-03
|
* rtmp: alias rtmp_listen to listenLuca Barbato2013-10-01
| | | | Make it uniform with the other protocols.
* mxf: Remove a typoLuca Barbato2013-10-01
| | | | Introduced in 93370d1216
* asfdec: Check the return value of asf_read_stream_propertiesMartin Storsjö2013-09-30
| | | | | | | | | | This makes sure errors in setting stream parameters are passed on to the caller. This avoids successfully opening files while some parameters aren't filled in properly. Reported-by: Mateusz "j00ru" Jurczyk and Gynvael Coldwind CC: libav-stable@libav.org Signed-off-by: Martin Storsjö <martin@martin.st>
* omadec: fix bitrate for ATRAC3+ streamsMaxim Poliakovski2013-09-29
| | | | Signed-off-by: Anton Khirnov <anton@khirnov.net>
* Add support for multichannel ATRAC3+ streams.Maxim Poliakovski2013-09-29
| | | | Signed-off-by: Anton Khirnov <anton@khirnov.net>
* mxfdec: set audio timebase to 1/samplerateAnton Khirnov2013-09-29
| | | | | | | | Fixes sync in some samples (e.g. bugs 7581 and 8374 in VLC). Based on a commit by Matthieu Bouron <matthieu.bouron@gmail.com> Reported-by: Jean-Baptiste Kempf <jb@videolan.org> CC: libav-stable@libav.org
* mov: Make sure the read sample count is nonnegativeMartin Storsjö2013-09-29
| | | | | | | | | This avoids setting a negative number of frames, ending up with a negative average frame rate. Reported-by: Mateusz "j00ru" Jurczyk and Gynvael Coldwind CC: libav-stable@libav.org Signed-off-by: Martin Storsjö <martin@martin.st>
* bfi: Add some very basic sanity checks for input packet sizesMartin Storsjö2013-09-29
| | | | | CC: libav-stable@libav.org Signed-off-by: Martin Storsjö <martin@martin.st>
* bfi: Avoid divisions by zeroMartin Storsjö2013-09-29
| | | | | | | | | If a zero-length video packet is to be returned, just return AVERROR(EAGAIN) and switch back to the audio stream. Reported-by: Mateusz "j00ru" Jurczyk and Gynvael Coldwind CC: libav-stable@libav.org Signed-off-by: Martin Storsjö <martin@martin.st>
* electronicarts: Add more sanity checking for the number of channelsMartin Storsjö2013-09-29
| | | | | | Reported-by: Mateusz "j00ru" Jurczyk and Gynvael Coldwind CC: libav-stable@libav.org Signed-off-by: Martin Storsjö <martin@martin.st>
* riffdec: Add sanity checks for the sample rateMartin Storsjö2013-09-29
| | | | | | | | This avoids a division by zero for G726. Reported-by: Mateusz "j00ru" Jurczyk and Gynvael Coldwind CC: libav-stable@libav.org Signed-off-by: Martin Storsjö <martin@martin.st>
* mvi: Add sanity checking for the audio frame sizeMartin Storsjö2013-09-29
| | | | | | | | This avoids a division by zero. Reported-by: Mateusz "j00ru" Jurczyk and Gynvael Coldwind CC: libav-stable@libav.org Signed-off-by: Martin Storsjö <martin@martin.st>
* xwma: Avoid division by zeroMartin Storsjö2013-09-29
| | | | | | Reported-by: Mateusz "j00ru" Jurczyk and Gynvael Coldwind CC: libav-stable@libav.org Signed-off-by: Martin Storsjö <martin@martin.st>
* avidec: Make sure a packet is large enough before reading its dataMartin Storsjö2013-09-29
| | | | | | Reported-by: Mateusz "j00ru" Jurczyk and Gynvael Coldwind CC: libav-stable@libav.org Signed-off-by: Martin Storsjö <martin@martin.st>
* vqf: Make sure the bitrate is in the valid rangeMartin Storsjö2013-09-29
| | | | | | | | Even if the sample rate is valid, an invalid bitrate could pass the mode combination test below. CC: libav-stable@libav.org Signed-off-by: Martin Storsjö <martin@martin.st>