My advice would be to avoid offering to supply work as .m4a, but rather to offer to supply work in a limited number of formats, such as “Microsoft WAV”, [16-bit integer, 24-bit integer, 32-bit integer, 32-bit float], [44100 Hz, 48000 Hz, 96000 Hz].
If you do accept a job that requires another format, then you need to know in advance, the full and exact format options, and you need to have the means to produce that format.
M4A format has many format options, including bit-rate, bit rate mode, number of channels, sample rate, complexity, which encoder, various additional flags. Unless you know the full specification of the required format, you will just be guessing and may have to re-encode many times before you get the exact format that the client requires.
Audacity’s default interface for .M4A has very few options, and does not have an option for the “isStreamable” flag. To set “advanced” options such as the “isStreamable” flag, using Audacity, you need to use the “external encoder” option. See: https://manual.audacityteam.org/man/exporting_to_an_external_program.html
You will also need to have a suitable command-line encoder installed. In this case I would expect that “ffmpeg-release-full.7z” version: 4.4 from here will do the job: https://www.gyan.dev/ffmpeg/builds/ (I’m on Linux, so I’ve not tested that version, but it looks to me like the right one). You will need to extract and install FFmpeg from that .7z file.
An example command line entry for .M4A with “isStreamable” enabled to use in Audacity’s “external encoder” options:
ffmpeg -i - -movflags +faststart "%f"
Breaking that down:
-
ffmpeg is the encoder to use - you may need to include the full path to the FFmpeg executable.
-
-i - sets the input file to “-”, which tells FFmpeg to use the audio stream that is being exported from Audacity.
-
-movflags +faststart sets the “isStreamable” flag. For recent FFmpeg builds this may need to be: -movflags faststart
-
“%f” sets the output filename to the name that you supply as “Name” in the Export dialog screen.
Note that the file name that you supply in the Export dialog screen should include the required file extension. For example: “myfile.m4a” rather that just “myfile”.
Unless you just want to use FFmpeg’s defaults, you will probably need to also include the target bit-rate, and possibly the number of channels in your external exporter command. For the full range of options, refer to the FFmpeg documentation: https://ffmpeg.org/ffmpeg.html