Browse Source

swfenc: use av_get_audio_frame_duration() instead of AVCodecContext.frame_size

This way we can do stream copy without having the demuxer wait until
frame_size has been set.
tags/n0.11
Justin Ruggles 14 years ago
parent
commit
620b88a302
1 changed files with 1 additions and 5 deletions
  1. +1
    -5
      libavformat/swfenc.c

+ 1
- 5
libavformat/swfenc.c View File

@@ -187,10 +187,6 @@ static int swf_write_header(AVFormatContext *s)
AVCodecContext *enc = s->streams[i]->codec;
if (enc->codec_type == AVMEDIA_TYPE_AUDIO) {
if (enc->codec_id == CODEC_ID_MP3) {
if (!enc->frame_size) {
av_log(s, AV_LOG_ERROR, "audio frame size not set\n");
return -1;
}
swf->audio_enc = enc;
swf->audio_fifo= av_fifo_alloc(AUDIO_FIFO_SIZE);
if (!swf->audio_fifo)
@@ -452,7 +448,7 @@ static int swf_write_audio(AVFormatContext *s,
}

av_fifo_generic_write(swf->audio_fifo, buf, size, NULL);
swf->sound_samples += enc->frame_size;
swf->sound_samples += av_get_audio_frame_duration(enc, size);

/* if audio only stream make sure we add swf frames */
if (!swf->video_enc)


Loading…
Cancel
Save