summaryrefslogtreecommitdiffstats
path: root/libmpdemux
diff options
context:
space:
mode:
authornicodvb <nicodvb@b3059339-0415-0410-9bf9-f77b7e298cf2>2005-03-07 07:36:27 +0000
committernicodvb <nicodvb@b3059339-0415-0410-9bf9-f77b7e298cf2>2005-03-07 07:36:27 +0000
commitf955afd56c81b4202fc7ee279947749ec0619d7c (patch)
treed0b66c0c10f7b0b5bf6ea385e542f4ee18621133 /libmpdemux
parenta9d93954795e901472a1b1c2af1c1d5b3de47eb0 (diff)
downloadmpv-f955afd56c81b4202fc7ee279947749ec0619d7c.tar.bz2
mpv-f955afd56c81b4202fc7ee279947749ec0619d7c.tar.xz
fixed support for mp3 at <32000 sample_rate
git-svn-id: svn://svn.mplayerhq.hu/mplayer/trunk@14928 b3059339-0415-0410-9bf9-f77b7e298cf2
Diffstat (limited to 'libmpdemux')
-rw-r--r--libmpdemux/muxer_mpeg.c11
1 files changed, 9 insertions, 2 deletions
diff --git a/libmpdemux/muxer_mpeg.c b/libmpdemux/muxer_mpeg.c
index 0d73caf9d0..ba1cb71a04 100644
--- a/libmpdemux/muxer_mpeg.c
+++ b/libmpdemux/muxer_mpeg.c
@@ -999,7 +999,7 @@ static void patch_panscan(muxer_priv_t *priv, unsigned char *buf)
static uint32_t get_audio_frame_size(muxer_headers_t *spriv, uint8_t *buf, int format, int samples_ps)
{
- uint32_t sz, tmp;
+ uint32_t sz, tmp, spf;
#ifdef USE_LIBA52
#include "../liba52/a52.h"
@@ -1011,7 +1011,14 @@ static uint32_t get_audio_frame_size(muxer_headers_t *spriv, uint8_t *buf, int f
return sz;
}
#endif
- tmp = spriv->bitrate * (format == 0x2000 ? 1536 : 1152);
+ if(format == 0x2000)
+ spf = 1536;
+ else if((format == 0x55) && (samples_ps < 32000))
+ spf = 576;
+ else
+ spf = 1152;
+
+ tmp = spriv->bitrate * spf;
sz = tmp / samples_ps;
if(sz % 2)
sz++;