View Issue Details

IDProjectCategoryView StatusLast Update
0014221MMW v4Codecpublic2017-08-11 22:01
Reporterpeke Assigned To 
PriorityurgentSeveritymajorReproducibilityalways
Status closedResolutionfixed 
Target Version4.1.18Fixed in Version4.1.18 
Summary0014221: AAC: Some AAC do not play in MMW
DescriptionSome AAC with bad headers are not recognized in MMW even Audio Data is OK.
Additional InformationTICKET ID:
BWY-793-63606 (Sample file is attached)
TagsNo tags attached.
Fixed in build1844

Relationships

related to 0009427 closedmichal Radio stations fail to display track metadata (when playing by Media Foundation) 

Activities

michal

2017-05-10 08:44

developer   ~0047945

There is combination of things, which are causing, that the file is not playable in MM. MM can play AAC using Windows native codecs in Media Foundation, using QuickTime or by f_aac_codec plugin.
1) the file is HE-AAC, this AAC profile is not supported by FAAD codec in f_aac_codec
2) the file has non-standard ID3 tag at the file beginning, this tag is causing that QuickTime and MF codecs do not recognize it as supported format and do not play it.

The solution is to remove ID3 tag from the file. It cannot be done in MM, user has to use some external application. E.g. in the example file ID3 tag has 4096B, user can use DD tool (native in Linux, Win version here: http://www.chrysocome.net/dd ). Then e.g. BAT file with this line could remove first 4096B from all AAC files in the current directory:
for %%a in (*.aac) do ddrelease64.exe if=%%a of=%%a.edited.aac bs=4096 skip=1

peke

2017-05-11 21:02

developer   ~0047957

Last edited: 2017-05-11 21:08

Can you please analyze new file supplied in Ticket which MMW recognize?

Both are saved in AIMP and both contain ID3. Difference is that second one is playable in MMW and even ID3 is read correctly.

michal

2017-05-12 07:36

developer   ~0047960

Last edited: 2017-05-12 07:37

For me, it behaves exactly the same way as the first file, i.e. no playback until removing ID3 tag.
Note, we can read ID3 tag from AAC, but system codecs cannot play the file.

michal

2017-05-15 11:19

developer   ~0047975

Last edited: 2017-05-15 11:34

Analyzed more and it seems, there is something wrong in the first file even after ID3 tag, that is causing, that our aac codec plugin does not play it, it should play even HE-AAC files. I have found possible fix for the user, without reencoding:
1) download MP4Box free command line tool
2) place not playable AAC files to the same folder as MP4Box.exe
3) create BAT file with line:
for %%a in (*.aac) do mp4box.exe -add "%%a" "%%~na.m4a"

4) run batch file

It will remux all AAC files from the folder to standard, playable and taggable M4A files. Tried with both files he gave us and works like a charm. MP4Box can skip non-standard ID3 tag and fix the unknown problem in the stream, without recompressing.

peke

2017-05-17 00:30

developer   ~0047984

Retrieved several files from another user and I cam confirm Michal findings.

HE-AACv1 are more prone to stream corruption where decoder can't find correct audio data and do not play it. Full file analyze using specific tools fixes the file by putting correct Audio data into .m4a

HE-AACv2 is playable using our Codec pack but not native OS where incorrect ID3v2 confuses decoder and decoding graph can't be created

peke

2017-05-18 14:35

developer   ~0047988

MMW throw Missing codec if QuickTime is not installed and unfortunately QT just silently fail to play.

Nothing we can do on our side in that case. Resolving

peke

2017-05-23 10:54

developer   ~0048011

HE-AACv1 Streams get corrupted when using raw recording without conversion and those files do not play in MMW.

Solution used is that MMW is used to determine what files are non playable and then as they are created in AIMP user uses AIMP converter to Convert/Transcode them into M4A container.

peke

2017-08-10 22:25

developer   ~0048511

Reopen, stumbled on Radio stream that do not play in MMW with and without Codec pack. Play in Firefox, AIMP, POT player,...

http://stream.playradio.rs:8001/play.aac

michal

2017-08-11 14:38

developer   ~0048512

Fixed in build 1844. It was related to the last fix in 0009427.

peke

2017-08-11 22:01

developer   ~0048527

Verified 1844

Also Re verified 0009427 in 1844