Commit 8d43b8b8 authored by Martin Storsjö's avatar Martin Storsjö

rtpdec_h264: Remove outdated/useless/incorrect comments

RTCP is handled elsewhere, not in the depacketizer for an
individual format.
Signed-off-by: 's avatarMartin Storsjö <martin@martin.st>
parent 5a571d32
...@@ -30,10 +30,6 @@ ...@@ -30,10 +30,6 @@
* Single Nal Unit Mode (0), or * Single Nal Unit Mode (0), or
* Non-Interleaved Mode (1). It currently does not support * Non-Interleaved Mode (1). It currently does not support
* Interleaved Mode (2). (This requires implementing STAP-B, MTAP16, MTAP24, FU-B packet types) * Interleaved Mode (2). (This requires implementing STAP-B, MTAP16, MTAP24, FU-B packet types)
*
* @note TODO:
* 1) RTCP sender reports for udp streams are required..
*
*/ */
#include "libavutil/base64.h" #include "libavutil/base64.h"
...@@ -49,21 +45,17 @@ ...@@ -49,21 +45,17 @@
#include "rtpdec.h" #include "rtpdec.h"
#include "rtpdec_formats.h" #include "rtpdec_formats.h"
/**
RTP/H264 specific private data.
*/
struct PayloadContext { struct PayloadContext {
//sdp setup parameters //sdp setup parameters
uint8_t profile_idc; ///< from the sdp setup parameters. uint8_t profile_idc;
uint8_t profile_iop; ///< from the sdp setup parameters. uint8_t profile_iop;
uint8_t level_idc; ///< from the sdp setup parameters. uint8_t level_idc;
int packetization_mode; ///< from the sdp setup parameters. int packetization_mode;
#ifdef DEBUG #ifdef DEBUG
int packet_types_received[32]; int packet_types_received[32];
#endif #endif
}; };
/* ---------------- private code */
static int sdp_parse_fmtp_config_h264(AVStream * stream, static int sdp_parse_fmtp_config_h264(AVStream * stream,
PayloadContext * h264_data, PayloadContext * h264_data,
char *attr, char *value) char *attr, char *value)
...@@ -99,7 +91,6 @@ static int sdp_parse_fmtp_config_h264(AVStream * stream, ...@@ -99,7 +91,6 @@ static int sdp_parse_fmtp_config_h264(AVStream * stream,
buffer[0] = value[4]; buffer[1] = value[5]; buffer[0] = value[4]; buffer[1] = value[5];
level_idc = strtol(buffer, NULL, 16); level_idc = strtol(buffer, NULL, 16);
// set the parameters...
av_log(codec, AV_LOG_DEBUG, av_log(codec, AV_LOG_DEBUG,
"RTP Profile IDC: %x Profile IOP: %x Level: %x\n", "RTP Profile IDC: %x Profile IOP: %x Level: %x\n",
profile_idc, profile_iop, level_idc); profile_idc, profile_iop, level_idc);
...@@ -136,7 +127,6 @@ static int sdp_parse_fmtp_config_h264(AVStream * stream, ...@@ -136,7 +127,6 @@ static int sdp_parse_fmtp_config_h264(AVStream * stream,
{ {
if(codec->extradata_size) if(codec->extradata_size)
{ {
// av_realloc?
memcpy(dest, codec->extradata, codec->extradata_size); memcpy(dest, codec->extradata, codec->extradata_size);
av_free(codec->extradata); av_free(codec->extradata);
} }
...@@ -213,7 +203,7 @@ static int h264_handle_packet(AVFormatContext *ctx, ...@@ -213,7 +203,7 @@ static int h264_handle_packet(AVFormatContext *ctx,
int src_len= len; int src_len= len;
while (src_len > 2) { while (src_len > 2) {
uint16_t nal_size = AV_RB16(src); // this going to be a problem if unaligned (can it be?) uint16_t nal_size = AV_RB16(src);
// consume the length of the aggregate... // consume the length of the aggregate...
src += 2; src += 2;
...@@ -275,7 +265,7 @@ static int h264_handle_packet(AVFormatContext *ctx, ...@@ -275,7 +265,7 @@ static int h264_handle_packet(AVFormatContext *ctx,
if (len > 1) { if (len > 1) {
// these are the same as above, we just redo them here for clarity... // these are the same as above, we just redo them here for clarity...
uint8_t fu_indicator = nal; uint8_t fu_indicator = nal;
uint8_t fu_header = *buf; // read the fu_header. uint8_t fu_header = *buf;
uint8_t start_bit = fu_header >> 7; uint8_t start_bit = fu_header >> 7;
// uint8_t end_bit = (fu_header & 0x40) >> 6; // uint8_t end_bit = (fu_header & 0x40) >> 6;
uint8_t nal_type = (fu_header & 0x1f); uint8_t nal_type = (fu_header & 0x1f);
...@@ -322,7 +312,6 @@ static int h264_handle_packet(AVFormatContext *ctx, ...@@ -322,7 +312,6 @@ static int h264_handle_packet(AVFormatContext *ctx,
return result; return result;
} }
/* ---------------- public code */
static PayloadContext *h264_new_context(void) static PayloadContext *h264_new_context(void)
{ {
return av_mallocz(sizeof(PayloadContext) + FF_INPUT_BUFFER_PADDING_SIZE); return av_mallocz(sizeof(PayloadContext) + FF_INPUT_BUFFER_PADDING_SIZE);
...@@ -380,12 +369,9 @@ static int parse_h264_sdp_line(AVFormatContext *s, int st_index, ...@@ -380,12 +369,9 @@ static int parse_h264_sdp_line(AVFormatContext *s, int st_index,
// could use this if we wanted. // could use this if we wanted.
} }
return 0; // keep processing it the normal way... return 0;
} }
/**
This is the structure for expanding on the dynamic rtp protocols (makes everything static. yay!)
*/
RTPDynamicProtocolHandler ff_h264_dynamic_handler = { RTPDynamicProtocolHandler ff_h264_dynamic_handler = {
.enc_name = "H264", .enc_name = "H264",
.codec_type = AVMEDIA_TYPE_VIDEO, .codec_type = AVMEDIA_TYPE_VIDEO,
......
Markdown is supported
0% or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment