MCPcopy Create free account
hub / github.com/FFmpeg/FFmpeg / rm_write_header

Function rm_write_header

libavformat/rmenc.c:295–336  ·  view source on GitHub ↗

Source from the content-addressed store, hash-verified

293}
294
295static int rm_write_header(AVFormatContext *s)
296{
297 RMMuxContext *rm = s->priv_data;
298 StreamInfo *stream;
299 int n;
300 AVCodecContext *codec;
301
302 for(n=0;n<s->nb_streams;n++) {
303 s->streams[n]->id = n;
304 codec = s->streams[n]->codec;
305 stream = &rm->streams[n];
306 memset(stream, 0, sizeof(StreamInfo));
307 stream->num = n;
308 stream->bit_rate = codec->bit_rate;
309 stream->enc = codec;
310
311 switch(codec->codec_type) {
312 case AVMEDIA_TYPE_AUDIO:
313 rm->audio_stream = stream;
314 stream->frame_rate = (float)codec->sample_rate / (float)codec->frame_size;
315 /* XXX: dummy values */
316 stream->packet_max_size = 1024;
317 stream->nb_packets = 0;
318 stream->total_frames = stream->nb_packets;
319 break;
320 case AVMEDIA_TYPE_VIDEO:
321 rm->video_stream = stream;
322 stream->frame_rate = (float)codec->time_base.den / (float)codec->time_base.num;
323 /* XXX: dummy values */
324 stream->packet_max_size = 4096;
325 stream->nb_packets = 0;
326 stream->total_frames = stream->nb_packets;
327 break;
328 default:
329 return -1;
330 }
331 }
332
333 rv10_write_header(s, 0, 0);
334 put_flush_packet(s->pb);
335 return 0;
336}
337
338static int rm_write_audio(AVFormatContext *s, const uint8_t *buf, int size, int flags)
339{

Callers

nothing calls this directly

Calls 2

rv10_write_headerFunction · 0.85
put_flush_packetFunction · 0.85

Tested by

no test coverage detected