summaryrefslogtreecommitdiff
path: root/libavformat
Commit message (Collapse)AuthorAge
* mov: Handle tfdt atomsMartin Storsjö2014-10-14
| | | | Signed-off-by: Martin Storsjö <martin@martin.st>
* movenc: Write tfdt atomsMartin Storsjö2014-10-14
| | | | | | | | | | | These allow getting the absolute start timestamp of a fragment without reading preceding timestamps. This fixes sync between tracks if starting from fragments in different streams that don't align exactly. This also is a prerequisite for producing DASH content. Signed-off-by: Martin Storsjö <martin@martin.st>
* lavf: use initial_padding instead of deprecated delayAnton Khirnov2014-10-13
|
* icecast: Do not use chunked postMark McGough2014-10-12
| | | | | | | | | | | | | Icecast uses HTTP 1.0 while Libav uses HTTP 1.1 and enables by default chunked post. Icecast actually forwards the HTTP chunk headers to the listener as part of the media stream (without the chunk encoding HTTP headers) causing the players to lose sync. Disabling the option is enough to feed icecast properly. Signed-off-by: Luca Barbato <lu_zero@gentoo.org>
* movenc: Simplify code by using an existing local pointerMartin Storsjö2014-10-12
| | | | Signed-off-by: Martin Storsjö <martin@martin.st>
* movenc: Print a warning for an unhandled case of nonzero start dts with ↵Martin Storsjö2014-10-12
| | | | | | empty_moov Signed-off-by: Martin Storsjö <martin@martin.st>
* movenc: Write edit lists for fragmented files as well, if necessaryMartin Storsjö2014-10-12
| | | | | | | | | | | This is necessary to get the right timestamp offset for content that starts with dts != 0. This currently only helps when writing fragmented files with a non-empty moov atom. When writing an empty moov atom, we don't have any packets yet, so we don't know the starting dts for the tracks. Signed-off-by: Martin Storsjö <martin@martin.st>
* movenc: Add some comments explaining subtle details in writing the edit listsMartin Storsjö2014-10-12
| | | | Signed-off-by: Martin Storsjö <martin@martin.st>
* movenc: Adjust edit lists to trim out parts of tracks with negative ptsMichael Niedermayer2014-10-12
| | | | | | | | | This makes sure that audio preroll for e.g. AAC is signaled correctly. Previously we only wrote the edit list correctly if we had negative dts but started with pts == 0 (e.g. for video with B-frames). Signed-off-by: Martin Storsjö <martin@martin.st>
* smoothstreamingenc: Simplify code by removing a redundant variableMartin Storsjö2014-10-12
| | | | Signed-off-by: Martin Storsjö <martin@martin.st>
* lavf: Don't drop both pts and dts if timestamps are invalidMichael Niedermayer2014-10-12
| | | | | | | | | In these cases, only drop dts. Because if we drop both we have no timestamps at all for some files. This improves playback of HLS streams from GoPro cameras. Signed-off-by: Martin Storsjö <martin@martin.st>
* tcp: Add AVOption supportLuca Barbato2014-10-10
|
* tls: Support passing old-style tcp optionsLuca Barbato2014-10-10
| | | | Make tcp and tls urls near-interchangeable.
* rtsp: Add rtsps to the probeLuca Barbato2014-10-10
|
* rtsp: Support tls when in listen modeLuca Barbato2014-10-10
|
* rtsp: Support tls-encapsulated RTSPLuca Barbato2014-10-10
|
* rtsp: Check for command strings without spacesLuca Barbato2014-10-10
| | | | | | Prevent a NULL-pointer dereference. CC: libav-stable@libav.org
* sctp: Use AVERROR_BUG instead of abort()Luca Barbato2014-10-10
| | | | | | | | Trying to write to a stream id larger the the maximum requested is a programming error, still there is no reason to leave a reachable abort() in the codebase. CC: libav-stable@libav.org
* lavf: More informative error messageLuca Barbato2014-10-10
| | | | Print the timestamp values and not just the stream index.
* mov: support the Color Parameter Atoms 'colr'Vittorio Giovara2014-10-08
|
* dump: Update streams and chapters printout formatSylvain Rabot2014-10-08
| | | | This matches the -map option which requires '%d:%d' format.
* dump: split audio and video probing on multiple linesVittorio Giovara2014-10-08
| | | | Also always report pixel format.
* avformat: bump version after mime_type changeVittorio Giovara2014-10-08
|
* avformat: use const char* instead of uint8_t* for AVProbeData.mime_typeAndreas Cadhalpun2014-10-08
| | | | | | | This makes the field consistent with AVInputFormat.mime_type and the argument type of av_match_name. Signed-off-by: Vittorio Giovara <vittorio.giovara@gmail.com>
* lavf: Set the stream time base hint properly for chained muxersMartin Storsjö2014-10-06
| | | | | | | This avoids warnings about using the codec time base as time base hint. Signed-off-by: Martin Storsjö <martin@martin.st>
* sdp: Simplify parsing/conversion of H264 extradataMartin Storsjö2014-10-06
| | | | | | | | | | | | By using ff_avc_write_annexb_extradata instead of the h264_mp4toannexb BSF, the code for doing the conversion itself is kept much shorter, there's less state to restore at the end, we don't risk leaving the AVCodecContext in an inconsistent state if returning early due to errors, etc. Also add a missing free if the base64 encoding fails. Signed-off-by: Martin Storsjö <martin@martin.st>
* hlsenc: Add parameter -hls_allow_cacheJoakim Roubert2014-10-03
| | | | | | | | | | | | | The -hls_allow_cache parameter enables explicitly setting the EXT-X-ALLOW-CACHE tag in the manifest file. That tag indicates whether the client MAY or MUST NOT cache downloaded media segments for later replay. Valid values are 1 (=YES) or 0 (=NO) and the EXT-X-ALLOW-CACHE will not show in the manifest for other values (or if -hls_allow_cache is not used. Signed-off-by: Martin Storsjö <martin@martin.st>
* lavf: fix memleaks in avformat_find_stream_info()Justin Ruggles2014-09-29
| | | | | | | | When AVFMT_FLAG_NOBUFFER is set, the packets are not added to the AVFormatContext packet list, so they need to be freed when they are no longer needed. Signed-off-by: Anton Khirnov <anton@khirnov.net>
* sdp: Make opus declaration conform to the specTimothy B. Terriberry2014-09-29
| | | | Signed-off-by: Martin Storsjö <martin@martin.st>
* probe: Bump the score for mime type matchingAndreas Cadhalpun2014-09-26
| | | | | | It should be more trustworthy than extension matching. Signed-off-by: Luca Barbato <lu_zero@gentoo.org>
* caf: Give context structure a consistent nameDiego Biurrun2014-09-26
|
* m4vdec: K&R formatting cosmeticsGabriel Dume2014-09-25
| | | | Signed-off-by: Diego Biurrun <diego@biurrun.de>
* lmlm4: K&R formatting cosmeticsGabriel Dume2014-09-25
| | | | Signed-off-by: Diego Biurrun <diego@biurrun.de>
* concat: K&R formatting cosmeticsGabriel Dume2014-09-25
| | | | Signed-off-by: Diego Biurrun <diego@biurrun.de>
* rtsp: Clear the session id on redirectsMartin Storsjö2014-09-24
| | | | | | | This fixes handling redirects in case the server provided a session id within the redirect reply. Signed-off-by: Martin Storsjö <martin@martin.st>
* rtpenc: HEVC/H.265 supportThomas Volkert2014-09-24
| | | | Signed-off-by: Martin Storsjö <martin@martin.st>
* libavformat: Move avc mp4 startcode parsing to a shared fileMartin Storsjö2014-09-24
| | | | Signed-off-by: Martin Storsjö <martin@martin.st>
* rtpdec_hevc: Drop a duplicated, nonstandard entryVittorio Giovara2014-09-24
| | | | | | | | | | | | | | | | | | The RFC spec draft only specifies the "H265" name - there is no specification saying how to interpret "HEVC" (if such a packet format is specified it could be an entirely different format). Since this is a very new standard (still a draft), there is little need for compatibility with existing, broken implementations. Therefore remove the extra alias, to avoid the risk of encouraging incorrect usage. Intentionally keeping the ff_hevc_dynamic_handler name for the handler, to use "hevc" consistently as name for the codec instead of "h265" within the library internals as long as there only is one single variant in actual use. Signed-off-by: Martin Storsjö <martin@martin.st>
* rtpenc_chain: Pass the initial time_base hint on to the chained muxerMartin Storsjö2014-09-17
| | | | | | | | | | | | In practice this hint is ignored - the rtp muxer always overwrites the stream time base without taking the hint into account. But as a general practice this is the correct way to pass a time base hint on to a chained muxer. This avoids warnings about using the codec time base as hint being deprecated. Signed-off-by: Martin Storsjö <martin@martin.st>
* apetag: Fix APE tag size checkKaterina Barone-Adesi2014-09-17
| | | | | | | | | | The size variable is (correctly) unsigned, but is passed to several functions which take signed parameters, such as avio_read, sometimes after having numbers added to it. So ensure that size remains within the bounds that these functions can handle. CC: libav-stable@libav.org Signed-off-by: Diego Biurrun <diego@biurrun.de>
* libavformat: Check mkdir return error codesMartin Storsjö2014-09-07
| | | | | | | | | | | | | Previously, the returned error codes were intentionally ignored (see fadd3a68213), to avoid aborting if the directory already existed. If the mkdir actually failed, this was caught when opening files within the directory fails anyway. By handling the error code here (but explicitly ignoring EEXIST), the error messages and return codes in these cases are more appropriate and less confusing. Signed-off-by: Martin Storsjö <martin@martin.st>
* vc1: Split bits used in libavformat into a separate headerDiego Biurrun2014-09-04
| | | | This reduces inter-library dependencies.
* rtpdec: HEVC/H.265 supportThomas Volkert2014-09-03
| | | | | | As specified in draft-ietf-payload-rtp-h265-06. Signed-off-by: Luca Barbato <lu_zero@gentoo.org>
* mpegts: Allow custom max resync sizeLuca Barbato2014-09-03
|
* matroskaenc: convert avstream stereo3d side data during encodingVittorio Giovara2014-08-28
| | | | Write the StereoMode Embl to bitstream.
* matroskadec: parse stereo mode on decodingVittorio Giovara2014-08-28
| | | | | | | | | Convert the Matroska stereo format to the Stereo3D format, and add a Stereo3D side data to the stream. Bump the doctype version supported. Bug-Id: 728 / https://bugs.debian.org/757185
* avcodec: add stream-level stereo3d side dataVittorio Giovara2014-08-28
|
* matroska: list supported extensionsVittorio Giovara2014-08-28
|
* mpegenc: limit the maximum muxrateAnton Khirnov2014-08-27
| | | | | | It is written to the file as a 22-bit value. CC: libav-stable@libav.org
* os_support: Adjust an outdated #endif commentDiego Biurrun2014-08-26
|