Commit Graph

26 Commits

Author SHA1 Message Date
Ronald S. Bultje eafb17d140 Don't let finalize_packet() touch pkt->stream_index. Instead, let individual
payload handlers take care of that themselves at their own option. What this
patch really does is "fix" a bug in MS-RTSP protocol where incoming packets
are always coming in over the connection (UDP) or interleave-id (TCP) of
the stream-id of the first ASF packet in the RTP packet. However, RTP packets
may contain multiple ASF packets (and usually do, from what I can see), and
therefore this leads to playback bugs. The intended stream-id per ASF packet
is given in the respective ASF packet header. The ASF demuxer will correctly
read this and set pkt->stream_index, but since the "stream" parameter can
not be known to rtpdec.c or any of the RTP/RTSP code, the "st" parameter
in all these functions is basically invalid. Therefore, using st->id as
pkt->stream_index leads to various playback bugs. The result of this patch
is that pkt->stream_index is left untouched for RTP/ASF (and possibly for
other payloads that have similar behaviour).

The patch was discussed in the "[PATCH] rtpdec.c: don't overwrite
pkt->stream_index in finalize_packet()" thread on the mailinglist.

Originally committed as revision 17767 to svn://svn.ffmpeg.org/ffmpeg/trunk
2009-03-03 13:51:34 +00:00
Benoit Fouet 2fddbb68b6 Add context to some av_log() calls.
Originally committed as revision 17729 to svn://svn.ffmpeg.org/ffmpeg/trunk
2009-03-02 09:28:37 +00:00
Luca Abeni 302879cb36 Split rtp.h in rtp.h, rtpdec.h, and rtpenc.h
Originally committed as revision 17016 to svn://svn.ffmpeg.org/ffmpeg/trunk
2009-02-06 10:35:52 +00:00
Ronald S. Bultje 1a45a9f4c0 Add "AVFormatContext *ctx" (that being the RTSP demuxer's) as first argument
to the parse_packet() function pointer in RTPDynamicProtocolHandlers. This
allows these functions to peek back and retrieve values from the demuxer's
context (or RTSPState). The ASF/RTP payload parser will use this to be able
to parse SDP values (which occur even before the payload ID is given), store
them in the RTSPState and then retrieve them while parsing payload data. See
"[PATCH] RTSP-MS 13/15: add RTSP demuxer AVFormatContext to parse_packet()
function pointer (was: transport context)" mailinglist thread.

Originally committed as revision 17015 to svn://svn.ffmpeg.org/ffmpeg/trunk
2009-02-06 01:37:19 +00:00
Diego Biurrun bad5537e2c Use full internal pathname in doxygen @file directives.
Otherwise doxygen complains about ambiguous filenames when files exist
under the same name in different subdirectories.

Originally committed as revision 16912 to svn://svn.ffmpeg.org/ffmpeg/trunk
2009-02-01 02:00:19 +00:00
Luca Abeni 20631a9c15 Merge rtp_internal.h in rtp.h, and remove rtp_internal.h
Originally committed as revision 16817 to svn://svn.ffmpeg.org/ffmpeg/trunk
2009-01-27 12:23:16 +00:00
Diego Biurrun 406792e7b0 cosmetics: Remove pointless period after copyright statement non-sentences.
Originally committed as revision 16684 to svn://svn.ffmpeg.org/ffmpeg/trunk
2009-01-19 15:46:40 +00:00
Ronald S. Bultje 7b2a070800 Change function prototype of the sdp_parse_a_line in DynamicProtocolHandler.
This function is called in rtsp.c for each a= line in the SDP of the Describe
response after m= RTSP stream descriptors. The function prototype used to
take an AVStream argument. For RDT, however, every RTSPStream represents
a set of streams of identical content, and can thus represent multiple
AVStreams. Therefore, it should not take an AVStream as argument. This
patch modifies it to accept a AVFormatContext (of the RTSP/SDP demuxer)
instead. See discussion in "[PATCH/RFC] change function prototype of
parse_sdp_a_line" thread on ML.

Originally committed as revision 16024 to svn://svn.ffmpeg.org/ffmpeg/trunk
2008-12-06 18:41:17 +00:00
Ronald S. Bultje 9b932b8ac0 Change function prototype of RTPDynamicPayloadHandler.parse_packet() to
not use RTPDemuxContext, but rather take a pointer to the payload context
directly. This allows using payload handlers regardless over the transport
over which they were sent, and prepares for the introduction of a future
RDTDemuxContext. See discussion in "RDT/Realmedia patches #2" thread on ML.

Originally committed as revision 15541 to svn://svn.ffmpeg.org/ffmpeg/trunk
2008-10-04 04:15:06 +00:00
Ronald S. Bultje ed0aacc76e Rename RTP payload contexts to PayloadContext, suggested by Luca in
"RDT/Realmedia patches #2" thread on ML.

Originally committed as revision 15540 to svn://svn.ffmpeg.org/ffmpeg/trunk
2008-10-04 04:11:12 +00:00
François Revol 7cf6af27c9 Fix non-debug build.
Originally committed as revision 13149 to svn://svn.ffmpeg.org/ffmpeg/trunk
2008-05-13 17:43:18 +00:00
Diego Biurrun 245976da2a Use full path for #includes from another directory.
Originally committed as revision 13098 to svn://svn.ffmpeg.org/ffmpeg/trunk
2008-05-09 11:56:36 +00:00
Ronald S. Bultje f841a0fca1 Add a flags field to the RTPDynamicPayloadPacketHandlerProc (PKT_FLAG_*).
This can be used later by RDT to get the flags from the RTP packet and
use that for the RealMedia packet (such as whether this RTP packet
represents a keyframe or not). For discussion, see "[PATCH] Realmedia
/ RTSP (RDT)".

Originally committed as revision 11557 to svn://svn.ffmpeg.org/ffmpeg/trunk
2008-01-18 20:48:32 +00:00
Diego Biurrun b7a42d14bf Enable debug variable only when debug code is enabled, fixes the warning:
rtp_h264.c: In function ‘h264_handle_packet’:
rtp_h264.c:168: warning: unused variable ‘data’

Originally committed as revision 10923 to svn://svn.ffmpeg.org/ffmpeg/trunk
2007-11-04 12:46:16 +00:00
Luca Barbato 272872e44b fix the packetization mode parsing
Originally committed as revision 10055 to svn://svn.ffmpeg.org/ffmpeg/trunk
2007-08-10 13:34:56 +00:00
Alex Beregszaszi ef466de0a8 h264_rtp_extra_data is not only used for debug purposes, asserts are using it also
Originally committed as revision 9623 to svn://svn.ffmpeg.org/ffmpeg/trunk
2007-07-13 12:12:38 +00:00
Måns Rullgård f7d78f3654 replace the uses of old string functions that Reimar missed
Originally committed as revision 9406 to svn://svn.ffmpeg.org/ffmpeg/trunk
2007-06-24 11:27:12 +00:00
Panagiotis Issaris 716f6b47f2 Remove the unnecessary masking when counting received packet types in the H.264
RTP parsing code.

Originally committed as revision 9241 to svn://svn.ffmpeg.org/ffmpeg/trunk
2007-06-07 14:51:26 +00:00
Panagiotis Issaris 7699645e7d Remove the unnecessary masking when reconstructing the NAL unit header in the
H.264 RTP parsing code.

Originally committed as revision 9240 to svn://svn.ffmpeg.org/ffmpeg/trunk
2007-06-07 14:48:29 +00:00
Panagiotis Issaris 6ab6525e11 Remove the unnecessary masking when extracting the start bit in the H.264 RTP
parsing code.

Originally committed as revision 9239 to svn://svn.ffmpeg.org/ffmpeg/trunk
2007-06-07 14:47:40 +00:00
Stefan Huehner 2b100ab2bf changes some function declarations from () to (void) as per ansi c.
Patch by Stefan Huehner % stefan A huehner P org %

Originally committed as revision 8625 to svn://svn.ffmpeg.org/ffmpeg/trunk
2007-04-04 11:51:08 +00:00
Michel Bardiaux bdb4b698d8 Corrections so that builds with DEBUG work
Originally committed as revision 8295 to svn://svn.ffmpeg.org/ffmpeg/trunk
2007-03-08 14:49:43 +00:00
Ramiro Polla 42572ef53f move networking #includes into separate file
patch by Ramiro Polla angustia =a= arrozcru =d= no-ip =d= org

Originally committed as revision 7817 to svn://svn.ffmpeg.org/ffmpeg/trunk
2007-02-04 17:05:44 +00:00
Alex Beregszaszi fead30d444 rename BE/LE_8/16/32 to AV_RL/B_8/16/32
Originally committed as revision 7587 to svn://svn.ffmpeg.org/ffmpeg/trunk
2007-01-19 22:12:59 +00:00
François Revol e9d511dc7e The long awaited BeOS cleanup, phase 1
Originally committed as revision 7581 to svn://svn.ffmpeg.org/ffmpeg/trunk
2007-01-18 17:22:30 +00:00
Ryan Martell 1d1be919ce add support for rtp/h264 streaming
Patch by Ryan Martell % rdm4 A martellventures P com %
Original thread:
Date: Nov 6, 2006 8:56 PM
Subject: [Ffmpeg-devel] [PATCH] H.264 via RTP

Originally committed as revision 6936 to svn://svn.ffmpeg.org/ffmpeg/trunk
2006-11-07 22:10:07 +00:00