summaryrefslogtreecommitdiff
Commit message (Collapse)AuthorAge
* rtpdec: Use ffio_free_dyn_bufMartin Storsjö2015-02-24
| | | | Signed-off-by: Martin Storsjö <martin@martin.st>
* avio: Add an internal utility function for freeing dynamic buffersMartin Storsjö2015-02-24
| | | | Signed-off-by: Martin Storsjö <martin@martin.st>
* rtpdec: Free depacketizers if the init function failedMartin Storsjö2015-02-24
| | | | | | | | | | | | | | This is different from how it is handled in codecs/demuxers/muxers though (where the close function isn't called if the open function failed), but since the number of depacketizers that have an .init function is quite limited, this is easy to change. The main point is that if the init function failed, we shouldn't try to use that depacketizer at all - this makes sure that the parse function doesn't need to check for the things that were initialized in the init function. Signed-off-by: Martin Storsjö <martin@martin.st>
* rtpdec: Don't free the payload context in the .free functionMartin Storsjö2015-02-24
| | | | | | | | | | | | | | This makes it more consistent with depacketizers that don't have any .free function at all, where the payload context is freed by the surrounding framework. Always free the context in the surrounding framework, having the individual depacketizers only free any data they've specifically allocated themselves. This is similar to how this works for demuxer/muxers/codecs - a component shouldn't free the priv_data that the framework has allocated for it. Signed-off-by: Martin Storsjö <martin@martin.st>
* rtpdec: Remove the now unused .alloc fieldMartin Storsjö2015-02-24
| | | | | | Always use the .priv_data_size field instead. Signed-off-by: Martin Storsjö <martin@martin.st>
* rtpdec: Use .init instead of .alloc to set default valuesMartin Storsjö2015-02-24
| | | | | | The ugly error handling in rdt gets improved in a later commit. Signed-off-by: Martin Storsjö <martin@martin.st>
* rtpdec: Remove unnecessary inline attributesMartin Storsjö2015-02-24
| | | | | | | These functions are far from performance critical, so there's no point in marking them as inline. Signed-off-by: Martin Storsjö <martin@martin.st>
* rtpdec: Don't pass non-const pointers to fmtp attribute parsing functionsMartin Storsjö2015-02-24
| | | | | | | This makes it clear that the individual parsing functions can't touch the parsed out value. Signed-off-by: Martin Storsjö <martin@martin.st>
* rtpdec: Add const to string parameters in internal fmtp parsing functionsMartin Storsjö2015-02-24
| | | | Signed-off-by: Martin Storsjö <martin@martin.st>
* rtpdec: Remove unnecessary checksMartin Storsjö2015-02-24
| | | | | | The free function of a depacketizer won't be called if data is NULL. Signed-off-by: Martin Storsjö <martin@martin.st>
* rtpenc: Merge the h264 and hevc packetizersMartin Storsjö2015-02-24
| | | | | | | | | | | They share a great deal of common structure; only a few minor bits in the headers differ. This also fixes an off-by-one in sending of the last fragment of large HEVC nals (where it previously sent len+2 bytes, even if it should have been len+RTP_HEVC_HEADERS_SIZE aka len+3). Signed-off-by: Martin Storsjö <martin@martin.st>
* rtpdec_hevc: Share the implementation of fragmented packets with h264Martin Storsjö2015-02-24
| | | | Signed-off-by: Martin Storsjö <martin@martin.st>
* rtpdec_hevc: Reduce indentation level by returning early on errorsMartin Storsjö2015-02-24
| | | | Signed-off-by: Martin Storsjö <martin@martin.st>
* rtpdec_hevc: Share the implementation of parsing a=framesize with h264Martin Storsjö2015-02-24
| | | | Signed-off-by: Martin Storsjö <martin@martin.st>
* rtpdec_hevc: Add asterisks at the start of each long comment lineMartin Storsjö2015-02-24
| | | | | | This is the common style for such comments. Signed-off-by: Martin Storsjö <martin@martin.st>
* rtpdec: Get rid of all trivial .alloc/.free functionsMartin Storsjö2015-02-24
| | | | Signed-off-by: Martin Storsjö <martin@martin.st>
* rtpdec: Allow allocating and freeing the private data without explicit functionsMartin Storsjö2015-02-24
| | | | | | This can reduce the amount of boilerplate in simple depacketizers. Signed-off-by: Martin Storsjö <martin@martin.st>
* rtpdec: Set need_parsing via a handler fieldMartin Storsjö2015-02-24
| | | | | | | This avoids implementing a full function just to set this one field. Signed-off-by: Martin Storsjö <martin@martin.st>
* rtpdec: Allow setting the need_parsing field in RTPDynamicProtocolHandlerMartin Storsjö2015-02-24
| | | | | | | | | | This allows getting rid of quite a bit of boilerplate in depacketizers. The default value (initializing need_parsing to 0, aka AVSTREAM_PARSE_NONE) is the same as it is initialized to by default in AVStream. Signed-off-by: Martin Storsjö <martin@martin.st>
* rtpdec_mpa_robust: Move .enc_name to the start of the structMartin Storsjö2015-02-24
| | | | | | This makes it match the other depacketizers. Signed-off-by: Martin Storsjö <martin@martin.st>
* rtpdec: Remove unnecessary _if_needed suffixes on functionsMartin Storsjö2015-02-24
| | | | Signed-off-by: Martin Storsjö <martin@martin.st>
* rtpdec: Change enc_name to a pointer instead of a fixed-size bufferMartin Storsjö2015-02-24
| | | | | | | This avoids allocating space for a too large buffer for all the name strings. Signed-off-by: Martin Storsjö <martin@martin.st>
* rtpdec_h264: Remove an unnecessary includeMartin Storsjö2015-02-24
| | | | | | Nothing in this file use any network functions. Signed-off-by: Martin Storsjö <martin@martin.st>
* rtpdec_h264: Remove unnecessary struct paddingMartin Storsjö2015-02-24
| | | | | | | There's no point in adding padding in the allocation of a depacketizer specific context struct. Signed-off-by: Martin Storsjö <martin@martin.st>
* rtpdec_amr: Use the common indentation styleMartin Storsjö2015-02-24
| | | | Signed-off-by: Martin Storsjö <martin@martin.st>
* rtsp: Fix the indentation of a linewrapped statementMartin Storsjö2015-02-24
| | | | Signed-off-by: Martin Storsjö <martin@martin.st>
* rtpdec: Add missing trailing commasMartin Storsjö2015-02-24
| | | | Signed-off-by: Martin Storsjö <martin@martin.st>
* libavformat: add T.140 RTP depacketization (RFC 4103)Gilles Chanteperdrix2015-02-24
| | | | | | Map this to AV_CODEC_ID_TEXT. Signed-off-by: Martin Storsjö <martin@martin.st>
* rtsp: Interpret the text media type as AVMEDIA_TYPE_DATAMartin Storsjö2015-02-24
| | | | Signed-off-by: Martin Storsjö <martin@martin.st>
* fate: Rename fate-dts test to fate-dca-coreDiego Biurrun2015-02-23
| | | | The codec is referred to as DCA in other parts of libav.
* qsv: Skip qsv.h compilation if qsv is not enabledDiego Biurrun2015-02-23
|
* rtsp: punch holes again after pauseGilles Chanteperdrix2015-02-23
| | | | | | | | | | | | When a client behind a NAT issues a pause command, and stay paused for a long time, the router may stop the RTP/RTCP port redirection. Resend the hole punching packets before each PLAY command to cause the router to restart the port redirection in that case. Move the existing code for sending the packets from the SETUP phase to the PLAY phase. Signed-off-by: Martin Storsjö <martin@martin.st>
* eamad: check for out of bounds readFederico Tomassetti2015-02-23
| | | | | | | Bug-Id: CID 1257500 CC: libav-stable@libav.org Signed-off-by: Luca Barbato <lu_zero@gentoo.org>
* mdec: check for out of bounds readFederico Tomassetti2015-02-23
| | | | | | | Bug-Id: CID 1257501 CC: libav-stable@libav.org Signed-off-by: Luca Barbato <lu_zero@gentoo.org>
* rtpdec_hevc: Skip 1 byte (DOND) instead of 2 (DONL) between aggregation unitsMartin Storsjö2015-02-23
| | | | | | | Only the first aggregation unit has 2 bytes (DONL) prepended, if such a field is in use. Signed-off-by: Martin Storsjö <martin@martin.st>
* Canopus HQX decoderVittorio Giovara2015-02-22
| | | | Based on work by Kostya Shishkov <kostya.shishkov@gmail.com>.
* hevc_deblock: Fix compilation with nasmCarl Eugen Hoyos2015-02-22
| | | | | | CC: libav-stable@libav.org Bug-Id: 795 Signed-off-by: Vittorio Giovara <vittorio.giovara@gmail.com>
* libschroedinger: Check memory allocationsVittorio Giovara2015-02-22
|
* configure: Properly fail when libcdio/cdparanoia is not foundVittorio Giovara2015-02-22
|
* configure: Use pkg-config for libdc1394 discoveryVittorio Giovara2015-02-22
| | | | | | | | Since not all systems need the libraw1394 dependency, let pkg-config provide the list of libraries actually needed. The libdc1394-2.pc file has been included since version 2 (2008-01-05), so it should be safe to use.
* rtpenc_hevc: Aggregate multiple NAL units into one RTP packet, if possibleMartin Storsjö2015-02-22
| | | | Signed-off-by: Martin Storsjö <martin@martin.st>
* rtpenc_h264: Aggregate multiple NAL units into one RTP packet, if possibleMartin Storsjö2015-02-22
| | | | Signed-off-by: Martin Storsjö <martin@martin.st>
* rtpdec: DV depacketizer (RFC 6469)Thomas Volkert2015-02-22
| | | | | | (tested with live555 RTSP server) Signed-off-by: Martin Storsjö <martin@martin.st>
* rtpdec_mpeg4: reassemble fragmented AAC framesGilles Chanteperdrix2015-02-21
| | | | Signed-off-by: Martin Storsjö <martin@martin.st>
* rtpdec_mpeg4: add more verbose error loggingGilles Chanteperdrix2015-02-21
| | | | Signed-off-by: Martin Storsjö <martin@martin.st>
* libavformat: add robust MPEG audio depacketization (RFC 5219)Gilles Chanteperdrix2015-02-21
| | | | Signed-off-by: Martin Storsjö <martin@martin.st>
* mpegaudio_parser: add MP3 ADU headers parserGilles Chanteperdrix2015-02-21
| | | | Signed-off-by: Martin Storsjö <martin@martin.st>
* libavformat: add AC3 RTP depacketization (RFC 4184)Gilles Chanteperdrix2015-02-21
| | | | Signed-off-by: Martin Storsjö <martin@martin.st>
* rtsp: parse lang attribute in SDPGilles Chanteperdrix2015-02-21
| | | | Signed-off-by: Martin Storsjö <martin@martin.st>
* rtpdec: fix issue with conversion from unsigned to signedGilles Chanteperdrix2015-02-21
| | | | | | | | | | | | | When receiving an RTCP packet, the difference between the last RTCP timestamp and the base timestamp may be negative. As these timestamps are of the uint32_t type, the result becomes a large integer. Cast the difference to int32_t to avoid this issue. The result of this issue is very large start times for RTSP streams, and difficulty to restart correctly after a pause. Signed-off-by: Gilles Chanteperdrix <gilles.chanteperdrix@xenomai.org> Signed-off-by: Martin Storsjö <martin@martin.st>