41 const char *attr,
const char *
value)
44 if (!strcmp(attr,
"audio") && !strcmp(
value,
"bundled"))
48 if (!strcmp(attr,
"encode")) {
74 const char *sdp_line_ptr =
line;
79 current_stream =
ctx->streams[st_index];
81 if (
av_strstart(sdp_line_ptr,
"fmtp:", &sdp_line_ptr)) {
91 const uint8_t *buf,
int len, uint16_t seq,
97 if (rtp_dv_ctx->
buf && rtp_dv_ctx->
timestamp != *timestamp) {
108 if (!rtp_dv_ctx->
buf) {
static av_cold void close(AVCodecParserContext *s)
void avio_write(AVIOContext *s, const unsigned char *buf, int size)
int avio_open_dyn_buf(AVIOContext **s)
Open a write only memory stream.
void ffio_free_dyn_buf(AVIOContext **s)
Free a dynamic buffer.
#define flags(name, subs,...)
static int parse_packet(AVFormatContext *s, AVPacket *pkt, int stream_index, int flush)
Parse a packet, add all split parts to parse_queue.
#define AVERROR_INVALIDDATA
Invalid data found when processing input.
#define AV_LOG_ERROR
Something went wrong and cannot losslessly be recovered.
int av_strstart(const char *str, const char *pfx, const char **ptr)
Return non-zero if pfx is a prefix of str.
int ff_parse_fmtp(AVFormatContext *s, AVStream *stream, PayloadContext *data, const char *p, int(*parse_fmtp)(AVFormatContext *s, AVStream *stream, PayloadContext *data, const char *attr, const char *value))
int ff_rtp_finalize_packet(AVPacket *pkt, AVIOContext **dyn_buf, int stream_idx)
Close the dynamic buffer and make a packet from it.
#define RTP_FLAG_MARKER
RTP marker bit was set for this packet.
static av_cold int dv_sdp_parse_fmtp_config(AVFormatContext *s, AVStream *stream, PayloadContext *dv_data, const char *attr, const char *value)
static av_cold int dv_parse_sdp_line(AVFormatContext *ctx, int st_index, PayloadContext *dv_data, const char *line)
static av_cold void dv_close_context(PayloadContext *data)
const RTPDynamicProtocolHandler ff_dv_dynamic_handler
static int dv_handle_packet(AVFormatContext *ctx, PayloadContext *rtp_dv_ctx, AVStream *st, AVPacket *pkt, uint32_t *timestamp, const uint8_t *buf, int len, uint16_t seq, int flags)
This structure stores compressed data.
int index
stream index in AVFormatContext
RTP/AV1 specific private data.
uint32_t timestamp
last received timestamp for frame
uint8_t * buf
the temporary storage buffer
static AVFormatContext * ctx