diff options
author | michael <michael@b3059339-0415-0410-9bf9-f77b7e298cf2> | 2006-12-29 20:40:19 +0000 |
---|---|---|
committer | michael <michael@b3059339-0415-0410-9bf9-f77b7e298cf2> | 2006-12-29 20:40:19 +0000 |
commit | 6f0e3fb15db6eccab8fdd95c561b28962e750a20 (patch) | |
tree | 6b4befed69afafcdf28c36315bf9a8a6f3b59f66 /libmpcodecs/ae_lavc.c | |
parent | f89822df440323a962542686058b48e47968341c (diff) | |
download | mpv-6f0e3fb15db6eccab8fdd95c561b28962e750a20.tar.bz2 mpv-6f0e3fb15db6eccab8fdd95c561b28962e750a20.tar.xz |
the avi spec does not allow random samplesize whoever wrote this should be shot
also block align should be equal to sample size
i dunno if this breaks anything but the old code was definitly not correct
this also fixes amr_nb muxing (in .3gp with lavf for example)
git-svn-id: svn://svn.mplayerhq.hu/mplayer/trunk@21789 b3059339-0415-0410-9bf9-f77b7e298cf2
Diffstat (limited to 'libmpcodecs/ae_lavc.c')
-rw-r--r-- | libmpcodecs/ae_lavc.c | 7 |
1 files changed, 5 insertions, 2 deletions
diff --git a/libmpcodecs/ae_lavc.c b/libmpcodecs/ae_lavc.c index 3677aa108b..fd565b4edb 100644 --- a/libmpcodecs/ae_lavc.c +++ b/libmpcodecs/ae_lavc.c @@ -56,9 +56,12 @@ static int bind_lavc(audio_encoder_t *encoder, muxer_stream_t *mux_a) mux_a->h.dwSampleSize = 0; // Blocksize not constant } else - mux_a->h.dwSampleSize = mux_a->h.dwScale; + mux_a->h.dwSampleSize = 0; } - mux_a->wf->nBlockAlign = mux_a->h.dwScale; + if(mux_a->h.dwSampleSize) + mux_a->wf->nBlockAlign = mux_a->h.dwSampleSize; + else + mux_a->wf->nBlockAlign = 1; mux_a->h.dwSuggestedBufferSize = (encoder->params.audio_preload*mux_a->wf->nAvgBytesPerSec)/1000; mux_a->h.dwSuggestedBufferSize -= mux_a->h.dwSuggestedBufferSize % mux_a->wf->nBlockAlign; |