summaryrefslogtreecommitdiffstats
path: root/libavformat
Commit message (Collapse)AuthorAgeFilesLines
* rtmpproto: Extend a comment to explain the prev_pkt arrays rolesMartin Storsjö2013-09-171-1/+1
| | | | Signed-off-by: Martin Storsjö <martin@martin.st>
* rtmpproto: Consistently use the right prev_pkt arrayMartin Storsjö2013-09-171-1/+1
| | | | | | | prev_pkt[0] is used for input packets, while prev_pkt[1] is used for output. Signed-off-by: Martin Storsjö <martin@martin.st>
* rtmpproto: Check for the right return codeMartin Storsjö2013-09-171-1/+1
| | | | Signed-off-by: Martin Storsjö <martin@martin.st>
* mov: Don't use a negative duration for setting other fieldsMartin Storsjö2013-09-171-2/+2
| | | | | | | | | | Some files have the duration set to -1 in the mdhd atom, more or less legitimately. (We produce such files ourselves, for the initial duration in fragmented mp4 files.) Reported-by: Mateusz "j00ru" Jurczyk and Gynvael Coldwind CC: libav-stable@libav.org Signed-off-by: Martin Storsjö <martin@martin.st>
* oggparseogm: Convert to use bytestream2Martin Storsjö2013-09-171-25/+27
| | | | | | Reported-by: Mateusz "j00ru" Jurczyk and Gynvael Coldwind CC: libav-stable@libav.org Signed-off-by: Martin Storsjö <martin@martin.st>
* matroskadec: Verify realaudio codec parametersMartin Storsjö2013-09-171-0/+4
| | | | | | Reported-by: Mateusz "j00ru" Jurczyk and Gynvael Coldwind CC: libav-stable@libav.org Signed-off-by: Martin Storsjö <martin@martin.st>
* rtmp: rename main_channel_id to stream_id.Josh Allmann2013-09-171-8/+8
| | | | | | | This more closely corresponds to the usage of the field. Its usage here is unrelated to the channel ID. Signed-off-by: Martin Storsjö <martin@martin.st>
* rtmp: Follow Flash player numbering for channels.Josh Allmann2013-09-172-4/+4
| | | | | | | | | | | Channel 4 is typically used by the Flash player to transmit audio, channel 6 for video, and various stream-specific invokes get sent over channel 8, which is designated the source channel. This more closely matches the behavior of the Flash player, including the transmission of play requests over channel 8. Signed-off-by: Martin Storsjö <martin@martin.st>
* rtmp: Send video on a separate channel.Josh Allmann2013-09-171-2/+6
| | | | | | | | | | | Sending non-monotonic packets (e.g. when the audio and video streams are monotonic within themselves but not muxed monotonically) will lead to negative values the RTMP timestamp field (where timestamps are transmitted only as deltas for each channel), and this delta can end up being incorrectly written as a large unsigned number. Signed-off-by: Martin Storsjö <martin@martin.st>
* lavf: Make probe_codec return an error codeAlexandra Khirnova2013-09-161-7/+14
| | | | | | This allows handling errors from av_realloc properly. Signed-off-by: Martin Storsjö <martin@martin.st>
* lavf: Don't explicitly flush after each written packet in muxersClément Bœsch2013-09-1622-27/+0
| | | | | | | | Since 596e5d4783, this is not necessary anymore. It also allows to actually disable the flushing, improving write performance (but possibly giving worse latency in real-time streaming). Signed-off-by: Martin Storsjö <martin@martin.st>
* lavf: Add a flag to enable/disable per-packet flushingLuca Barbato2013-09-164-3/+11
| | | | | | | | | This is enabled by default and can be disabled with "-fflags -flush_packets". Inspired by a patch from Nicolas George <nicolas.george@normalesup.org>. Signed-off-by: Martin Storsjö <martin@martin.st>
* flv: Do not export datastream as metadataLuca Barbato2013-09-161-1/+2
| | | | It is used internally.
* rtmp: Store all the notify messagesLuca Barbato2013-09-161-30/+29
| | | | The onTextData is used to implement text data streams in flv.
* rtmp: Do not send the first field twice within the handshakeLuca Barbato2013-09-161-1/+1
|
* rtmp: Drop an unneeded warningLuca Barbato2013-09-161-2/+0
| | | | | Apparently a widely used streaming server requires that the second field always presents a version during C1 phase.
* rtmp: Support play method in listen modeLuca Barbato2013-09-161-1/+10
|
* rtmp: Factor out publish specific codeLuca Barbato2013-09-161-43/+75
| | | | Will be reused for supporting play.
* vocdec: Don't update codec parameters mid-streamMartin Storsjö2013-09-161-5/+5
| | | | | | | | | | | | | | | | | | If we really want to support parameter changes, they need to be signalled along with the AVPackets as parameter change side data, not just changing the AVCodecContext parameters when a packet is demuxed (since there may be other earlier packets yet undecoded). Something similar was already done for the sample rate in 0883109b2, but some parameters were left changeable. This avoids having to recheck the channel count for validity for each decoded frame in (ad)pcm decoders, unless the decoders explicitly say that they accept parameter changes. Reported-by: Mateusz "j00ru" Jurczyk and Gynvael Coldwind CC: libav-stable@libav.org Signed-off-by: Martin Storsjö <martin@martin.st>
* sierravmd: Do sanity checking of frame sizesMartin Storsjö2013-09-161-7/+15
| | | | | | | | | | | Limit the size to INT_MAX/2 (for simplicity) to be sure that size + BYTES_PER_FRAME_RECORD won't overflow. Also factorize other existing error return paths. Reported-by: Mateusz "j00ru" Jurczyk and Gynvael Coldwind CC: libav-stable@libav.org Signed-off-by: Martin Storsjö <martin@martin.st>
* omadec: Properly check lengths before incrementing the positionMartin Storsjö2013-09-161-1/+5
| | | | | | Reported-by: Mateusz "j00ru" Jurczyk and Gynvael Coldwind CC: libav-stable@libav.org Signed-off-by: Martin Storsjö <martin@martin.st>
* matroskaenc: Fix stray pointers left over from av_reallocp_array refactoringAlexandra Khirnova2013-09-121-13/+9
| | | | Signed-off-by: Diego Biurrun <diego@biurrun.de>
* mp3: add .mpa extensionVittorio Giovara2013-09-122-2/+2
| | | | Signed-off-by: Diego Biurrun <diego@biurrun.de>
* mpc8: Make sure the first stream exists before parsing the seek tableMartin Storsjö2013-09-121-0/+5
| | | | | | Reported-by: Mateusz "j00ru" Jurczyk and Gynvael Coldwind CC: libav-stable@libav.org Signed-off-by: Martin Storsjö <martin@martin.st>
* mpc8: Check the seek table size parsed from the bitstreamMartin Storsjö2013-09-121-0/+4
| | | | | | | | | Limit the size to INT_MAX/2 (for simplicity) to be sure that size + FF_INPUT_BUFFER_PADDING_SIZE won't overflow. Reported-by: Mateusz "j00ru" Jurczyk and Gynvael Coldwind CC: libav-stable@libav.org Signed-off-by: Martin Storsjö <martin@martin.st>
* ape: Don't allow the seektable to be omittedMartin Storsjö2013-09-121-1/+1
| | | | | | | | | The seektable is required for filling in ape->frames[i].pos further down. Reported-by: Mateusz "j00ru" Jurczyk and Gynvael Coldwind CC: libav-stable@libav.org Signed-off-by: Martin Storsjö <martin@martin.st>
* smacker: Avoid integer overflow when allocating packetsMartin Storsjö2013-09-111-1/+1
| | | | | | Reported-by: Mateusz "j00ru" Jurczyk and Gynvael Coldwind CC: libav-stable@libav.org Signed-off-by: Martin Storsjö <martin@martin.st>
* smacker: Don't return packets in unallocated streamsMartin Storsjö2013-09-111-0/+2
| | | | | | Reported-by: Mateusz "j00ru" Jurczyk and Gynvael Coldwind CC: libav-stable@libav.org Signed-off-by: Martin Storsjö <martin@martin.st>
* dsicin: Add some basic sanity checks for fields read from the fileMartin Storsjö2013-09-111-0/+2
| | | | | | Reported-by: Mateusz "j00ru" Jurczyk and Gynvael Coldwind CC: libav-stable@libav.org Signed-off-by: Martin Storsjö <martin@martin.st>
* avformat: Use av_reallocp_array() where suitableAlexandra Khirnova2013-09-109-73/+90
| | | | Signed-off-by: Diego Biurrun <diego@biurrun.de>
* movenc: Simplify setting the fragmentation flagMartin Storsjö2013-09-091-5/+3
| | | | | | | This makes sure the faststart vs fragmentation check works as intended when fragmentation is enabled due to using the ismv mode. Signed-off-by: Martin Storsjö <martin@martin.st>
* movenc: Add a warning message if conflicting options have been specifiedMartin Storsjö2013-09-091-1/+4
| | | | Signed-off-by: Martin Storsjö <martin@martin.st>
* tcp: Explicitly convert a pointer to a boolean integerMartin Storsjö2013-09-091-1/+1
| | | | | | | | | This fixes warnings about making integers from pointers without a cast, and avoids the theoretical case where the lower 32 bits of the pointer would all be zero where the implicit cast wouldn't give the right result. Signed-off-by: Martin Storsjö <martin@martin.st>
* lavf: fix the comparison in an overflow checkAnton Khirnov2013-09-071-1/+1
| | | | | | CC: libav-stable@libav.org Signed-off-by: Luca Barbato <lu_zero@gentoo.org>
* dv: Add a guard to not overread the ppcm arrayLuca Barbato2013-09-071-2/+2
| | | | | Reported-by: Mateusz "j00ru" Jurczyk and Gynvael Coldwind CC: libav-stable@libav.org
* avisynth: K&R formatting cosmeticsDiego Biurrun2013-09-061-145/+150
|
* avisynth: Add missing #include for NULL_IF_CONFIG_SMALLDiego Biurrun2013-09-061-0/+1
|
* matroskaenc: Allow chapters to be written in trailerJohn Stebbins2013-09-042-1/+20
| | | | | | | | This allows creation of frame accurate chapter marks from sources like DVD and BD where the precise chapter location is not known until the chapter mark has been reached during reading. Signed-off-by: Anton Khirnov <anton@khirnov.net>
* 4xm: Check that the read track value is non-negativeMartin Storsjö2013-09-031-0/+2
| | | | | | Reported-by: Mateusz "j00ru" Jurczyk and Gynvael Coldwind CC: libav-stable@libav.org Signed-off-by: Martin Storsjö <martin@martin.st>
* matroskadec: Check that .lang was allocated and set before reading itMartin Storsjö2013-09-031-1/+2
| | | | | | Reported-by: Mateusz "j00ru" Jurczyk and Gynvael Coldwind CC: libav-stable@libav.org Signed-off-by: Martin Storsjö <martin@martin.st>
* movenc: Don't flush after each written packetMartin Storsjö2013-09-031-2/+0
| | | | | | | | | | This should improve write performance quite significantly. --- Tested with both writing a normal mp4, by using the faststart feature and writing a fragmented mp4 file; all turn out with the same md5sum as before. Signed-off-by: Martin Storsjö <martin@martin.st>
* cosmetics: Fix ATRAC codec name spellingDiego Biurrun2013-09-023-5/+5
|
* ape demuxer: check for EOF in potentially long loopsAnton Khirnov2013-09-021-2/+2
| | | | | Reported-by: Mateusz "j00ru" Jurczyk and Gynvael Coldwind CC: libav-stable@libav.org
* 4xm: check that bits per sample is strictly positiveAnton Khirnov2013-09-021-1/+1
| | | | | | | Avoids a divide by zero. Reported-by: Mateusz "j00ru" Jurczyk and Gynvael Coldwind CC: libav-stable@libav.org
* lavf: avoid integer overflow when estimating bitrateAnton Khirnov2013-09-021-2/+7
| | | | | Reported-by: Mateusz "j00ru" Jurczyk and Gynvael Coldwind CC: libav-stable@libav.org
* lavf: move a variable declaration to the block where it's usedAnton Khirnov2013-09-021-2/+2
|
* pcm_dvd: consolidate pieces from pcm.c and mpeg.cChristian Schmidt2013-08-311-27/+1
| | | | | | | | | | | | | | | | | | | | Remove the header decoding for PCM audio from mpeg.c and the 20/24bit parts from pcm.c and merge them into a new decoder in pcm-dvd.c. The decoder has added support for samples that span multiple packets and modified 20/24bit group decoding. Both is needed to decode samples that have been generated with DVD-Lab Pro 2. The decoding of 16bit PCM and two channel 24bit is identical to before. No other samples are known to verify the correctness of the encoding this software does. The complete list of tested formats is 48kHz/16bit/2-8 channels 48kHz/24bit/2-5 channels 96kHz/16bit/2-4 channels 96kHz/24bit/2 channels Signed-off-by: Luca Barbato <lu_zero@gentoo.org>
* rtmpproto: Fix limelight authentication with abbreviated app namesMartin Storsjö2013-08-281-0/+2
| | | | | | | | | When streaming to limelight, the app name is either a full "appname/subaccount" or "appname/_definst_". In the latter case, the app name can be simplified into simply "appname", but the authentication hashing assumes the /_definst_ still to be present. Signed-off-by: Martin Storsjö <martin@martin.st>
* smoothstreamingenc: Write to a temp file while updating the manifestMartin Storsjö2013-08-271-3/+5
| | | | | | | | If a client tries to read the file while it's being updated, the client would get an incomplete manifest. Instead write to a separate temp file and atomically rename it to replace the previous one. Signed-off-by: Martin Storsjö <martin@martin.st>
* flv: Fix the help stringLuca Barbato2013-08-271-1/+1
|
OpenPOWER on IntegriCloud