forked from len0rd/rockbox
Fix the Xing header parser to have reliable gapless playback. Closes FS#12062.
git-svn-id: svn://svn.rockbox.org/rockbox/trunk@29708 a1c6a512-1295-4272-9138-f99709370657
This commit is contained in:
parent
77268ec48f
commit
4359058c79
1 changed files with 2 additions and 2 deletions
|
|
@ -41,7 +41,7 @@
|
||||||
#include "buffer.h"
|
#include "buffer.h"
|
||||||
#include "system.h"
|
#include "system.h"
|
||||||
|
|
||||||
// #define DEBUG_VERBOSE
|
//#define DEBUG_VERBOSE
|
||||||
|
|
||||||
#ifdef DEBUG_VERBOSE
|
#ifdef DEBUG_VERBOSE
|
||||||
#define VDEBUGF DEBUGF
|
#define VDEBUGF DEBUGF
|
||||||
|
|
@ -452,7 +452,7 @@ static void get_xing_info(struct mp3info *info, unsigned char *buf)
|
||||||
#if CONFIG_CODEC==SWCODEC
|
#if CONFIG_CODEC==SWCODEC
|
||||||
i += 21;
|
i += 21;
|
||||||
info->enc_delay = ((int)buf[i ] << 4) | (buf[i+1] >> 4);
|
info->enc_delay = ((int)buf[i ] << 4) | (buf[i+1] >> 4);
|
||||||
info->enc_padding = ((int)buf[i+1] << 8) | buf[i+2];
|
info->enc_padding = ((int)(buf[i+1]&0xF) << 8) | buf[i+2];
|
||||||
/* TODO: This sanity checking is rather silly, seeing as how the LAME
|
/* TODO: This sanity checking is rather silly, seeing as how the LAME
|
||||||
header contains a CRC field that can be used to verify integrity. */
|
header contains a CRC field that can be used to verify integrity. */
|
||||||
if (!(info->enc_delay >= 0 && info->enc_delay <= 2880 &&
|
if (!(info->enc_delay >= 0 && info->enc_delay <= 2880 &&
|
||||||
|
|
|
||||||
Loading…
Add table
Add a link
Reference in a new issue