What happens if you simply do ffmpeg -i aFile.ts aFile.m4a as opposed to ffmpeg -i aFile.ts -codec copy aFile.m4a, when the TS file contains only a single stream, namely AAC, and knowing that m4a files also typically contain AAC.
Does ffmpeg - even in the absence of any filters etc. - decode the original AAC and re-encode back to AAC (with whatever default parameters ffmpeg assumes for that - not necessarily matching those of the original)? Or does it do something else?
I tried this both with and without "-codec copy" and the results in each case were AAC but the files were significantly different in size (Original TS: 8.5 MB, ffmpeg'd without "-codec copy" 7 MB, ffmpeg'd with latter 5.1 MB.
At https://ffmpeg.org/ffmpeg.html it is stated (under "3.2 Stream copy"...
Stream copy is a mode selected by supplying the copy parameter to the -codec option. It makes ffmpeg omit the decoding and encoding step for the specified stream, so it does only demuxing and muxing. It is useful for changing the container format or modifying container-level metadata. Implied by the inverse of that situation is that, in the absence of "-codec copy", ffmpeg will carry out the decoding and encoding steps.