12.07.2015 Views

VS1033 - MP3/AAC/WMA/MIDI AUDIO CODEC - VLSI Solution

VS1033 - MP3/AAC/WMA/MIDI AUDIO CODEC - VLSI Solution

VS1033 - MP3/AAC/WMA/MIDI AUDIO CODEC - VLSI Solution

SHOW MORE
SHOW LESS

You also want an ePaper? Increase the reach of your titles

YUMPU automatically turns print PDFs into web optimized ePapers that Google loves.

<strong>VLSI</strong><strong>Solution</strong> y<strong>VS1033</strong>c<strong>VS1033</strong>C9. OPERATION9.9 Fast Forward / Rewind9.9.1 <strong>AAC</strong> - ADTSMPEG2.0 Advanced Audio Coded (<strong>AAC</strong>) defines a stream format suitable for random-access (ADTS).When you want to skip forward or backwards in the file, first send 2052 zeros, then continue sending thefile from the new location.By sending zeros you make certain a partial frame does not cause loud artefacts in the sound. The normalfile type checking then finds a new ADTS header and continues decoding.9.9.2 <strong>AAC</strong> - ADIF, MP4MPEG4.0 Advanced Audio Codec (<strong>AAC</strong>) specifies a multimedia file format (.mp4 / .m4a) but does notspecify a stream format and MPEG2.0 <strong>AAC</strong> specifies a file format (ADIF) in addition to the streamableADTS format. ADIF and .mp4 / .m4a are not suitable for random-access and it is recommended thatthey are converted to ADTS format for playback.However, it is also possible to implement fast forward and rewind for ADIF and .mp4 / .m4a files. Theeasiest way is to use the resync field (see section 9.8.1):• Write 8192 to resync– Write 0x1969 to SCI WRAMADDR, Write 0x2000 to SCI WRAM• Send 2048 zeroes• Make a seek X in the file (X > 0 for forward seek)• Indicate the low part of the seek amount by writing to seek1– Write 0x1967 to SCI WRAMADDR, Write (X − 2048)&1023 to SCI WRAM• Indicate the high part of the seek amount by writing to seek2– Write 0x1968 to SCI WRAMADDR, Write (X − 2048)/1024 to SCI WRAM• Continue sending the file from the new locationPerfect fast forward and rewind can be implemented by using the jumpPoints table and making seeksonly on packet or data block boundaries.Version 1.00, 2008-02-01 55

Hooray! Your file is uploaded and ready to be published.

Saved successfully!

Ooh no, something went wrong!