diff --git a/apps/codecs/atrac3_rm.c b/apps/codecs/atrac3_rm.c index b666dd4513..997507425e 100644 --- a/apps/codecs/atrac3_rm.c +++ b/apps/codecs/atrac3_rm.c @@ -89,7 +89,7 @@ enum codec_status codec_run(void) fs = rmctx.audio_framesize; sps= rmctx.block_align; h = rmctx.sub_packet_h; - scrambling_unit_size = h*fs; + scrambling_unit_size = h * (fs + PACKET_HEADER_SIZE); res = atrac3_decode_init(&q, ci->id3); if(res < 0) { diff --git a/apps/codecs/cook.c b/apps/codecs/cook.c index 5801ee63af..4a47e74f60 100644 --- a/apps/codecs/cook.c +++ b/apps/codecs/cook.c @@ -88,7 +88,7 @@ enum codec_status codec_run(void) fs = rmctx.audio_framesize; sps= rmctx.block_align; h = rmctx.sub_packet_h; - scrambling_unit_size = h*fs; + scrambling_unit_size = h * (fs + PACKET_HEADER_SIZE); res =cook_decode_init(&rmctx, &q); if(res < 0) { diff --git a/apps/codecs/librm/rm.c b/apps/codecs/librm/rm.c index 6bc187bb5e..eabbe5d92a 100644 --- a/apps/codecs/librm/rm.c +++ b/apps/codecs/librm/rm.c @@ -541,8 +541,9 @@ int rm_get_packet(uint8_t **src,RMContext *rmctx, RMPacket *pkt) if (!y) rmctx->audiotimestamp = pkt->timestamp; - advance_buffer(src,12); - consumed += 12; + /* Skip packet header */ + advance_buffer(src, PACKET_HEADER_SIZE); + consumed += PACKET_HEADER_SIZE; if (rmctx->codec_type == CODEC_COOK || rmctx->codec_type == CODEC_ATRAC) { for(x = 0 ; x < w/sps; x++) {