m4aread provides a drop-in replacement for wavread when the audio files are compressed using MPEG4 audio (AAC or M4A) format. (Protected m4p files cannot be decoded, unfortunately.)
All the work is done by the external "faad" binary, an open-source AAC decoder available for multiple platforms. Matlab File Exchange precludes posting binaries, but binaries for MACI64, GLNXA64, and Windows, can be downloaded from http://www.ee.columbia.edu/~dpwe/resources/matlab/m4aread/ .
faad can extract the audio from an mp4 format video, so you can also read these files directly with m4aread.
This is based on my mp3read code.
Also seems to require "resample" a function from the Signal Processing Toolbox
When calling wavread (with format either 'native' or 'double'), I return an error:
Invalid Wave File. Reason: Incorrect chunk size information in WAV file.
I read this file into audacity with no issues, so I don't believe there is an problem with this .m4a
by the way Nezaket, the author was kind enough to upload the files you need at his site:
could you please tell me what faad.exe file is for and where can i find it? the code does not work because of absence of faad.exe. i am very new to that subject.
Added support for reading excerpts from very large files without excessive memory usage.
The code is updated to support the FORCEMONO and DOWNSAMPLE options that were introduced in mp3read.
I removed the previously-included binaries to comply with MFE policy.
m4aread has been extended to support the FORCEMONO and DOWNSAMPLE flags exactly as defined for the parallel function mp3read.m.
No change to files, but noted in description that it can also pull audio directly from mp4 movie files.