mirror of https://git.ffmpeg.org/ffmpeg.git
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.
This commit is contained in:
parent
14aecc50fa
commit
620b88a302
|
@ -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…
Reference in New Issue