Lines Matching defs:avctx
101 static void var_read_metadata(AVFormatContext *avctx, const char *tag, int size)
103 char *value = var_read_string(avctx->pb, size);
105 av_dict_set(&avctx->metadata, tag, value, AV_DICT_DONT_STRDUP_VAL);
108 static int set_channels(AVFormatContext *avctx, AVStream *st, int channels)
111 av_log(avctx, AV_LOG_ERROR, "Channel count %d invalid.\n", channels);
122 static int parse_global_var(AVFormatContext *avctx, AVStream *st,
125 MvContext *mv = avctx->priv_data;
126 AVIOContext *pb = avctx->pb;
132 var_read_metadata(avctx, name, size);
146 static int parse_audio_var(AVFormatContext *avctx, AVStream *st,
149 MvContext *mv = avctx->priv_data;
150 AVIOContext *pb = avctx->pb;
158 var_read_metadata(avctx, name, size);
160 return set_channels(avctx, st, var_read_int(pb, size));
182 static int parse_video_var(AVFormatContext *avctx, AVStream *st,
185 AVIOContext *pb = avctx->pb;
204 avpriv_request_sample(avctx, "Video compression %s", str);
230 var_read_metadata(avctx, name, size);
239 static int read_table(AVFormatContext *avctx, AVStream *st,
240 int (*parse)(AVFormatContext *avctx, AVStream *st,
246 AVIOContext *pb = avctx->pb;
261 av_log(avctx, AV_LOG_ERROR, "entry size %d is invalid\n", size);
264 if (parse(avctx, st, name, size) < 0) {
265 avpriv_request_sample(avctx, "Variable %s", name);
291 static int mv_read_header(AVFormatContext *avctx)
293 MvContext *mv = avctx->priv_data;
294 AVIOContext *pb = avctx->pb;
317 ast = avformat_new_stream(avctx, NULL);
325 vst = avformat_new_stream(avctx, NULL);
342 avpriv_request_sample(avctx, "Video compression %i", v);
355 av_log(avctx, AV_LOG_ERROR, "Invalid sample rate %d\n", ast->codecpar->sample_rate);
372 avpriv_request_sample(avctx, "Audio sample size %i bytes", bytes_per_sample);
376 avpriv_request_sample(avctx, "Audio compression (format %i)", v);
382 if (set_channels(avctx, ast, avio_rb32(pb)) < 0)
389 var_read_metadata(avctx, "title", 0x80);
390 var_read_metadata(avctx, "comment", 0x100);
410 if ((ret = read_table(avctx, NULL, parse_global_var)) < 0)
415 av_log(avctx, AV_LOG_ERROR, "Stream count is invalid.\n");
420 avpriv_request_sample(avctx, "Multiple audio streams support");
423 ast = avformat_new_stream(avctx, NULL);
427 if ((ret = read_table(avctx, ast, parse_audio_var)) < 0)
434 avpriv_request_sample(avctx,
441 av_log(avctx, AV_LOG_ERROR, "No valid channel count found.\n");
447 avpriv_request_sample(avctx, "Multiple video streams support");
450 vst = avformat_new_stream(avctx, NULL);
454 if ((ret = read_table(avctx, vst, parse_video_var))<0)
464 avpriv_request_sample(avctx, "Version %i", version);
471 static int mv_read_packet(AVFormatContext *avctx, AVPacket *pkt)
473 MvContext *mv = avctx->priv_data;
474 AVIOContext *pb = avctx->pb;
475 AVStream *st = avctx->streams[mv->stream_index];
506 if (mv->eof_count >= avctx->nb_streams)
514 if (mv->stream_index >= avctx->nb_streams)
520 static int mv_read_seek(AVFormatContext *avctx, int stream_index,
523 MvContext *mv = avctx->priv_data;
524 AVStream *st = avctx->streams[stream_index];
530 if (!(avctx->pb->seekable & AVIO_SEEKABLE_NORMAL))
537 for (i = 0; i < avctx->nb_streams; i++)