MATLAB: Do I receive an “Out of Memory” error when I use the WAVREAD or WAVWRITE function in MATLAB 7.1 (R14SP3)

MATLABwavewavfinfo

The largest contiguous block of memory on my system is larger than 250 MB. When I try to read in a 250 MB WAV-file using WAVREAD, I receive an "Out of Memory" error.

Best Answer

The ability to read or write WAV-files larger than the fourth largest block of contiguous memory is not available in MATLAB.
Two possible workarounds to memory limitations are:
1. To consider windowing, if it fits the application, by specifying a small subset of samples from a.WAV file at a given time for time-localized processing using the command
wavread(filename, [starting_sample, ending_sample])
2. Read data from the .WAV file in the native file format, instead of MATLAB's default double-precision by executing
wavread(filename, 'native')
This will help minimize memory usage further if the native file format encoded is of a precision less than 64-bit word size.