Lines Matching defs:rdt
31 #include "rdt.h"
132 rdt_load_mdpr (PayloadContext *rdt, AVStream *st, int rule_nr)
153 if (!rdt->mlti_data)
155 ffio_init_context(&pb0, rdt->mlti_data, rdt->mlti_data_size, 0,
177 size = rdt->mlti_data_size;
180 if (ff_rm_read_mdpr_codecdata(rdt->rmctx, pb, st, rdt->rmst[st->index], size, NULL) < 0)
262 * [2] http://www.wireshark.org/docs/dfref/r/rdt.html and
263 * http://anonsvn.wireshark.org/viewvc/trunk/epan/dissectors/packet-rdt.c
295 rdt_parse_packet (AVFormatContext *ctx, PayloadContext *rdt, AVStream *st,
301 if (rdt->audio_pkt_cnt == 0) {
307 res = ff_rm_parse_packet(rdt->rmctx, &pb.pub, st, rdt->rmst[st->index],
314 memcpy (rdt->buffer, buf + pos, len - pos);
315 rdt->rmctx->pb = avio_alloc_context (rdt->buffer, len - pos, 0,
322 rdt->audio_pkt_cnt =
323 ff_rm_retrieve_cache (rdt->rmctx, rdt->rmctx->pb,
324 st, rdt->rmst[st->index], pkt);
325 if (rdt->audio_pkt_cnt == 0 &&
327 avio_context_free(&rdt->rmctx->pb);
332 return rdt->audio_pkt_cnt > 0;
411 PayloadContext *rdt, const char *line)
417 rdt->mlti_data = rdt_parse_b64buf(&rdt->mlti_data_size, p);
427 if (rdt->nb_rmst < count) {
428 if ((err = av_reallocp(&rdt->rmst,
429 count * sizeof(*rdt->rmst))) < 0) {
430 rdt->nb_rmst = 0;
433 memset(rdt->rmst + rdt->nb_rmst, 0,
434 (count - rdt->nb_rmst) * sizeof(*rdt->rmst));
435 rdt->nb_rmst = count;
437 rdt->rmst[s->streams[n]->index] = ff_rm_alloc_rmstream();
438 if (!rdt->rmst[s->streams[n]->index])
440 rdt_load_mdpr(rdt, s->streams[n], (n - first) * 2);
527 static av_cold int rdt_init(AVFormatContext *s, int st_index, PayloadContext *rdt)
531 rdt->rmctx = avformat_alloc_context();
532 if (!rdt->rmctx)
535 if ((ret = ff_copy_whiteblacklists(rdt->rmctx, s)) < 0)
538 return avformat_open_input(&rdt->rmctx, "", &ff_rdt_demuxer, NULL);
542 rdt_close_context (PayloadContext *rdt)
546 for (i = 0; i < rdt->nb_rmst; i++)
547 if (rdt->rmst[i]) {
548 ff_rm_free_rmstream(rdt->rmst[i]);
549 av_freep(&rdt->rmst[i]);
551 if (rdt->rmctx)
552 avformat_close_input(&rdt->rmctx);
553 av_freep(&rdt->mlti_data);
554 av_freep(&rdt->rmst);