FFmpeg
Loading...
Searching...
No Matches
rtpdec_qt.c File Reference

Quicktime-style RTP support. More...

#include "libavutil/mem.h"
#include "avformat.h"
#include "internal.h"
#include "avio_internal.h"
#include "rtp.h"
#include "rtpdec.h"
#include "isom.h"
#include "libavcodec/get_bits.h"

Go to the source code of this file.

Data Structures

struct  PayloadContext
 RTP/AV1 specific private data. More...
 

Macros

#define MKTAG16(a, b)
 
#define RTP_QT_HANDLER(m, n, s, t)
 

Functions

static av_cold int qt_rtp_init (AVFormatContext *ctx, int st_index, PayloadContext *qt)
 
static int qt_rtp_parse_packet (AVFormatContext *s, PayloadContext *qt, AVStream *st, AVPacket *pkt, uint32_t *timestamp, const uint8_t *buf, int len, uint16_t seq, int flags)
 
static void qt_rtp_close (PayloadContext *qt)
 
 RTP_QT_HANDLER (qt, vid, "X-QT", AVMEDIA_TYPE_VIDEO)
 
 RTP_QT_HANDLER (qt, aud, "X-QT", AVMEDIA_TYPE_AUDIO)
 
 RTP_QT_HANDLER (quicktime, vid, "X-QUICKTIME", AVMEDIA_TYPE_VIDEO)
 
 RTP_QT_HANDLER (quicktime, aud, "X-QUICKTIME", AVMEDIA_TYPE_AUDIO)
 

Detailed Description

Quicktime-style RTP support.

Author
Ronald S. Bultje rbult.nosp@m.je@r.nosp@m.onald.nosp@m..bit.nosp@m.freak.nosp@m..net

Definition in file rtpdec_qt.c.

Macro Definition Documentation

◆ MKTAG16

#define MKTAG16 ( a,
b )
Value:
MKTAG(a,b,0,0)
int a
#define b
Definition input.c:43
#define MKTAG(a, b, c, d)
Definition macros.h:55

Referenced by qt_rtp_parse_packet().

◆ RTP_QT_HANDLER

#define RTP_QT_HANDLER ( m,
n,
s,
t )
Value:
const RTPDynamicProtocolHandler ff_ ## m ## _rtp_ ## n ## _handler = { \
.enc_name = s, \
.codec_type = t, \
.codec_id = AV_CODEC_ID_NONE, \
.priv_data_size = sizeof(PayloadContext), \
}
static av_cold void close(AVCodecParserContext *s)
Definition apv_parser.c:197
#define s(width, name)
Definition cbs_vp9.c:198
static int parse_packet(AVFormatContext *s, AVPacket *pkt, int stream_index, int flush)
Parse a packet, add all split parts to parse_queue.
Definition demux.c:1178
int(* init)(AVBSFContext *ctx)
Definition dts2pts.c:608
@ AV_CODEC_ID_NONE
Definition codec_id.h:48
static int qt_rtp_parse_packet(AVFormatContext *s, PayloadContext *qt, AVStream *st, AVPacket *pkt, uint32_t *timestamp, const uint8_t *buf, int len, uint16_t seq, int flags)
Definition rtpdec_qt.c:53
static av_cold int qt_rtp_init(AVFormatContext *ctx, int st_index, PayloadContext *qt)
Definition rtpdec_qt.c:43
static void qt_rtp_close(PayloadContext *qt)
Definition rtpdec_qt.c:252
RTP/AV1 specific private data.
Definition rdt.c:85

Definition at line 258 of file rtpdec_qt.c.

Function Documentation

◆ qt_rtp_init()

static av_cold int qt_rtp_init ( AVFormatContext * ctx,
int st_index,
PayloadContext * qt )
static

Definition at line 43 of file rtpdec_qt.c.

◆ qt_rtp_parse_packet()

static int qt_rtp_parse_packet ( AVFormatContext * s,
PayloadContext * qt,
AVStream * st,
AVPacket * pkt,
uint32_t * timestamp,
const uint8_t * buf,
int len,
uint16_t seq,
int flags )
static

The RTP payload is described in: http://developer.apple.com/quicktime/icefloe/dispatch026.html

Definition at line 53 of file rtpdec_qt.c.

◆ qt_rtp_close()

static void qt_rtp_close ( PayloadContext * qt)
static

Definition at line 252 of file rtpdec_qt.c.

◆ RTP_QT_HANDLER() [1/4]

RTP_QT_HANDLER ( qt ,
vid ,
"X-QT" ,
AVMEDIA_TYPE_VIDEO  )

◆ RTP_QT_HANDLER() [2/4]

RTP_QT_HANDLER ( qt ,
aud ,
"X-QT" ,
AVMEDIA_TYPE_AUDIO  )

◆ RTP_QT_HANDLER() [3/4]

RTP_QT_HANDLER ( quicktime ,
vid ,
"X-QUICKTIME" ,
AVMEDIA_TYPE_VIDEO  )

◆ RTP_QT_HANDLER() [4/4]

RTP_QT_HANDLER ( quicktime ,
aud ,
"X-QUICKTIME" ,
AVMEDIA_TYPE_AUDIO  )