Martin Storsjö
5d8cae4573
rtpdec: Get rid of all trivial .alloc/.free functions
...
Signed-off-by: Martin Storsjö <martin@martin.st>
2015-02-24 16:24:19 +02:00
Martin Storsjö
e72605f80b
rtpdec: Allow allocating and freeing the private data without explicit functions
...
This can reduce the amount of boilerplate in simple depacketizers.
Signed-off-by: Martin Storsjö <martin@martin.st>
2015-02-24 16:23:37 +02:00
Martin Storsjö
2b982e92f4
rtpdec: Set need_parsing via a handler field
...
This avoids implementing a full function just to set this one
field.
Signed-off-by: Martin Storsjö <martin@martin.st>
2015-02-24 16:22:41 +02:00
Martin Storsjö
b7a4c319fd
rtpdec: Allow setting the need_parsing field in RTPDynamicProtocolHandler
...
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>
2015-02-24 16:22:21 +02:00
Martin Storsjö
b651c9139e
rtpdec_mpa_robust: Move .enc_name to the start of the struct
...
This makes it match the other depacketizers.
Signed-off-by: Martin Storsjö <martin@martin.st>
2015-02-24 16:22:04 +02:00
Martin Storsjö
db158f0dd2
rtpdec: Remove unnecessary _if_needed suffixes on functions
...
Signed-off-by: Martin Storsjö <martin@martin.st>
2015-02-24 16:21:54 +02:00
Martin Storsjö
353b492d0f
rtpdec: Change enc_name to a pointer instead of a fixed-size buffer
...
This avoids allocating space for a too large buffer for all the
name strings.
Signed-off-by: Martin Storsjö <martin@martin.st>
2015-02-24 16:21:18 +02:00
Martin Storsjö
0752f700d6
rtpdec_h264: Remove an unnecessary include
...
Nothing in this file use any network functions.
Signed-off-by: Martin Storsjö <martin@martin.st>
2015-02-24 16:20:54 +02:00
Martin Storsjö
247764a592
rtpdec_h264: Remove unnecessary struct padding
...
There's no point in adding padding in the allocation of a depacketizer
specific context struct.
Signed-off-by: Martin Storsjö <martin@martin.st>
2015-02-24 16:20:44 +02:00
Martin Storsjö
fe414059ec
rtpdec_amr: Use the common indentation style
...
Signed-off-by: Martin Storsjö <martin@martin.st>
2015-02-24 16:20:23 +02:00
Martin Storsjö
74d318f138
rtsp: Fix the indentation of a linewrapped statement
...
Signed-off-by: Martin Storsjö <martin@martin.st>
2015-02-24 16:20:10 +02:00
Martin Storsjö
3cd5828fc0
rtpdec: Add missing trailing commas
...
Signed-off-by: Martin Storsjö <martin@martin.st>
2015-02-24 16:20:02 +02:00
Gilles Chanteperdrix
04a1be8e28
libavformat: add T.140 RTP depacketization (RFC 4103)
...
Map this to AV_CODEC_ID_TEXT.
Signed-off-by: Martin Storsjö <martin@martin.st>
2015-02-24 16:19:44 +02:00
Martin Storsjö
26524e3581
rtsp: Interpret the text media type as AVMEDIA_TYPE_DATA
...
Signed-off-by: Martin Storsjö <martin@martin.st>
2015-02-24 16:19:37 +02:00
Gilles Chanteperdrix
cdcc370293
rtsp: punch holes again after pause
...
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>
2015-02-23 16:55:56 +02:00
Martin Storsjö
fe208ca54b
rtpdec_hevc: Skip 1 byte (DOND) instead of 2 (DONL) between aggregation units
...
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>
2015-02-23 15:33:20 +02:00
Vittorio Giovara
35c6ce76b1
Canopus HQX decoder
...
Based on work by Kostya Shishkov <kostya.shishkov@gmail.com>.
2015-02-22 22:42:27 +00:00
Martin Storsjö
a388e72d1a
rtpenc_hevc: Aggregate multiple NAL units into one RTP packet, if possible
...
Signed-off-by: Martin Storsjö <martin@martin.st>
2015-02-22 23:27:03 +02:00
Martin Storsjö
e2220e734f
rtpenc_h264: Aggregate multiple NAL units into one RTP packet, if possible
...
Signed-off-by: Martin Storsjö <martin@martin.st>
2015-02-22 23:26:57 +02:00
Thomas Volkert
c99915f7c7
rtpdec: DV depacketizer (RFC 6469)
...
(tested with live555 RTSP server)
Signed-off-by: Martin Storsjö <martin@martin.st>
2015-02-22 23:01:55 +02:00
Gilles Chanteperdrix
44dc138ed2
rtpdec_mpeg4: reassemble fragmented AAC frames
...
Signed-off-by: Martin Storsjö <martin@martin.st>
2015-02-21 23:38:07 +02:00
Gilles Chanteperdrix
dcf969e98d
rtpdec_mpeg4: add more verbose error logging
...
Signed-off-by: Martin Storsjö <martin@martin.st>
2015-02-21 23:37:58 +02:00
Gilles Chanteperdrix
96084251e5
libavformat: add robust MPEG audio depacketization (RFC 5219)
...
Signed-off-by: Martin Storsjö <martin@martin.st>
2015-02-21 23:37:50 +02:00
Gilles Chanteperdrix
5e5583efe4
libavformat: add AC3 RTP depacketization (RFC 4184)
...
Signed-off-by: Martin Storsjö <martin@martin.st>
2015-02-21 23:37:32 +02:00
Gilles Chanteperdrix
4438d1c6ed
rtsp: parse lang attribute in SDP
...
Signed-off-by: Martin Storsjö <martin@martin.st>
2015-02-21 23:37:24 +02:00
Gilles Chanteperdrix
1ec28a66f2
rtpdec: fix issue with conversion from unsigned to signed
...
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>
2015-02-21 23:37:15 +02:00
Martin Storsjö
ff394ca087
rtpdec_h264: Add a missing closing paren in a log message
...
Signed-off-by: Martin Storsjö <martin@martin.st>
2015-02-21 23:36:56 +02:00
Thomas Volkert
cbdd1806ea
rtpdec_hevc: Implement parsing of aggregated packets
...
With significant changes by Martin Storsjö, to use the shared
function instead of reimplementing it.
Signed-off-by: Martin Storsjö <martin@martin.st>
2015-02-21 11:32:50 +02:00
Martin Storsjö
b878ba03e7
rtpdec_hevc: Initialize variables to silence false positive compiler warnings
...
For some reason, clang didn't warn about this prior to using the
shared function.
Signed-off-by: Martin Storsjö <martin@martin.st>
2015-02-21 11:32:47 +02:00
Martin Storsjö
10e2d8b556
rtpdec_hevc: Use a shared function for parsing parameter sets
...
Signed-off-by: Martin Storsjö <martin@martin.st>
2015-02-21 11:32:44 +02:00
Martin Storsjö
0de0751084
rtpdec_h264: Make reusable functions non-static
...
Signed-off-by: Martin Storsjö <martin@martin.st>
2015-02-21 11:32:41 +02:00
Martin Storsjö
16163e6bf2
rtpdec_h264: Fix nal type counting after refactoring
...
This fixes builds with -DDEBUG after f0a874799
.
Signed-off-by: Martin Storsjö <martin@martin.st>
2015-02-21 11:32:38 +02:00
Martin Storsjö
a3cc519d1f
rtpdec_h264: Prepare h264_handle_packet_stap_a for sharing with hevc
...
Add a parameter for skipping a number of bytes at the start of each nal.
Signed-off-by: Martin Storsjö <martin@martin.st>
2015-02-21 11:32:36 +02:00
Martin Storsjö
48183b3ad4
rtpdec_h264: Generalize parse_sprop_parameter_sets
...
Don't write directly into an AVCodecContext, write into given
pointers.
Signed-off-by: Martin Storsjö <martin@martin.st>
2015-02-21 11:32:31 +02:00
Hendrik Leppkes
3fe26bb608
hlsenc: write playlist into a temp file and replace the original atomically
...
Signed-off-by: Martin Storsjö <martin@martin.st>
2015-02-20 23:55:28 +02:00
Hendrik Leppkes
ff48ae94f9
hlsenc: remove the AVIOContext for the playlist from the muxer context
...
Its only used in one function, having it in the context serves no purpose.
Signed-off-by: Martin Storsjö <martin@martin.st>
2015-02-20 23:55:27 +02:00
Martin Storsjö
46ad9ac964
rtpdec_h264: Move a leftover comment into h264_handle_packet_stap_a
...
Signed-off-by: Martin Storsjö <martin@martin.st>
2015-02-20 19:30:05 +02:00
Martin Storsjö
a335ed7671
rtpdec_h264: Remove an unnecessary check
...
If src_len is too small for nal_size, we already print a warning
above, and the next step is to check the while loop condition
anyway, so this one serves no purpose.
Signed-off-by: Martin Storsjö <martin@martin.st>
2015-02-20 19:29:58 +02:00
Martin Storsjö
176903ce83
rtpdec_h264: Return immediately on errors in h264_handle_packet_stap_a
...
Previously, errors were only logged but the code kept on trying,
and never actually returning the error as a return value.
Signed-off-by: Martin Storsjö <martin@martin.st>
2015-02-20 19:29:39 +02:00
Martin Storsjö
bb8c6ac840
rtpdec_h264: Make a parameter pointer const
...
Signed-off-by: Martin Storsjö <martin@martin.st>
2015-02-20 19:29:34 +02:00
Martin Storsjö
7650caf013
rtpdec_h264: Use av_realloc instead of av_malloc+mempcy
...
This is similar to what was done for rtpdec_hevc in ced7238cd0
.
Signed-off-by: Martin Storsjö <martin@martin.st>
2015-02-20 19:29:29 +02:00
Martin Storsjö
8bdbf49c6f
rtpdec_h264: Include the right header for AV_RB16
...
Including libavcodec/get_bits.h is superfluous for AV_RB16 - nothing
in this file uses any actual bitstream reader.
Signed-off-by: Martin Storsjö <martin@martin.st>
2015-02-20 19:28:44 +02:00
Martin Storsjö
ba2e07909b
rtpdec_vp8: Set the keyframe flag
...
This allows the output to be used with stream copy, which discards
packet from the start until the first keyframe.
Signed-off-by: Martin Storsjö <martin@martin.st>
2015-02-20 19:28:28 +02:00
Oleksij Rempel
062cd5a975
lavf: Add DSS demuxer
...
Signed-off-by: Oleksij Rempel <linux@rempel-privat.de>
Signed-off-by: Luca Barbato <lu_zero@gentoo.org>
Signed-off-by: Vittorio Giovara <vittorio.giovara@gmail.com>
2015-02-19 12:05:19 -05:00
Vittorio Giovara
195942ed9b
riff: Support QT RLE Animation in avi ('rle ' FourCC)
...
Signed-off-by: Vittorio Giovara <vittorio.giovara@gmail.com>
2015-02-17 12:18:20 -05:00
Vittorio Giovara
c78dc12118
riff: Support ProRes in avi (APCH fourcc)
...
Signed-off-by: Vittorio Giovara <vittorio.giovara@gmail.com>
2015-02-17 12:18:20 -05:00
Hugo Beauzée-Luyssen
3035d21b5a
nutdec: Check memory allocations
...
Signed-off-by: Vittorio Giovara <vittorio.giovara@gmail.com>
2015-02-17 12:16:43 -05:00
Hugo Beauzée-Luyssen
a876585215
movenc: Check memory allocations
...
Signed-off-by: Vittorio Giovara <vittorio.giovara@gmail.com>
2015-02-17 12:16:43 -05:00
Hugo Beauzée-Luyssen
da7e31a240
rmdec: Check memory allocations from ff_rm_alloc_rmstream()
...
Bug-Id: CID 1257835
2015-02-17 12:16:43 -05:00
Vittorio Giovara
bb7701684c
lavf: Document the codec context initialization
...
During remuxing avcodec_copy_context() is discouraged as certain fields
(such as codec_tag) could reflect invalid values between input and
output contextes.
2015-02-17 11:27:42 -05:00