Won't Open Apple Lossless m4a files

Bug #1336982 reported by David Birch
22
This bug affects 5 people
Affects Status Importance Assigned to Milestone
Mixxx
Fix Released
Low
Unassigned

Bug Description

I can open m4a files encoded in lossy AAC. However, when I try to open lossless m4a files encoded in ALAC, a message saying the track could not be loaded is displayed.

Changed in mixxx:
status: New → Incomplete
status: Incomplete → New
jus (jus)
Changed in mixxx:
status: New → Confirmed
importance: Undecided → Low
Revision history for this message
Uwe Klotz (uklotzde-deactivatedaccount) wrote :

The SoundSourceM4A plugin uses FAAD2 to decode .m4a files. Currently Mixxx determines the file type solely by the file extension. Unfortunately ALAC files use the same file extension "m4a". Only a single SoundSource as registered for each file extension.

As a workaround we could use the approach I proposed here to register multiple SoundSources for the same file extension:

https://github.com/mixxxdj/mixxx/pull/605

Drawback: SoundSourceM4A will fail to open an ALAC file and log a warning message. Only then the to-be-created SoundSourceALAC decoder will take over (assuming that is has been assigned a lower priority than SoundSourceM4A).

We should also rename SoundSourceM4A to SoundSourceFAAD2.

Revision history for this message
Uwe Klotz (uklotzde-deactivatedaccount) wrote :

If libsndfile is now able to decode ALAC files we could register SoundSourceSndFile with a lower priority for the file extension "m4a" and there is no need for a new specialized SoundSource.

Revision history for this message
Daniel Schürmann (daschuer) wrote :

https://github.com/mixxxdj/mixxx/pull/605 is now merged. Is this bug solved?

Revision history for this message
Uwe Klotz (uklotzde-deactivatedaccount) wrote :
Changed in mixxx:
assignee: nobody → Uwe Klotz (uklotzde)
status: Confirmed → In Progress
Revision history for this message
Uwe Klotz (uklotzde-deactivatedaccount) wrote :

ALAC files with the extension .m4a should play now when building Mixxx with libsndfile 1.0.26.

I'm not able to check this myself, because Fedora 23 still comes with libsndfile 1.0.25.

Changed in mixxx:
status: In Progress → Fix Committed
Revision history for this message
Uwe Klotz (uklotzde-deactivatedaccount) wrote :

Unfortunately libsndfile 1.0.26 only reads ALAC/CAF, but not ALAC/M4A files.

Disabled support for M4A files in SoundSourceSndFile:
https://github.com/mixxxdj/mixxx/pull/955

Changed in mixxx:
status: Fix Committed → Confirmed
Changed in mixxx:
assignee: Uwe Klotz (uklotzde) → nobody
Revision history for this message
Sean M. Pappalardo (pegasus-renegadetech) wrote :

I just got confirmation from Erik (main libsndfile developer) that the lack of ALAC/M4A support is simply due to manpower, so one of us could add it to libsndfile. https://github.com/erikd/libsndfile/

Revision history for this message
Sean M. Pappalardo (pegasus-renegadetech) wrote :

He also said to add a new container (or codec) just copy one of the existing ones (like src/au.c) and make the appropriate changes.

Changed in mixxx:
status: Confirmed → In Progress
assignee: nobody → Uwe Klotz (uklotzde)
Revision history for this message
Uwe Klotz (uklotzde-deactivatedaccount) wrote :
Changed in mixxx:
milestone: none → 2.2.0
Be (be.ing)
Changed in mixxx:
milestone: 2.2.0 → 2.3.0
Be (be.ing)
Changed in mixxx:
milestone: 2.3.0 → none
Revision history for this message
Uwe Klotz (uklotzde-deactivatedaccount) wrote :
Changed in mixxx:
status: In Progress → Won't Fix
status: Won't Fix → In Progress
milestone: none → 2.3.0
Be (be.ing)
Changed in mixxx:
status: In Progress → Fix Committed
Revision history for this message
S (stan3) wrote :

Apple Lossless (ALAC files with .m4a extension) still don't play on Mixxx 2.3.0 latest nightly alpha as of 2020-04-24. Was the correct fix committed?

Revision history for this message
Daniel Schürmann (daschuer) wrote :

Ok, so we need to reopen this. Please post the last line from the mixxx.log after you have tried to load a ALAC file.
https://www.mixxx.org/wiki/doku.php/finding_the_mixxx.log_file

Changed in mixxx:
status: Fix Committed → Confirmed
Revision history for this message
Uwe Klotz (uklotzde-deactivatedaccount) wrote :

We are even performing tests on an ALAC file included in the repo.

Please remember to build Mixxx with FFmpeg enabled, otherwise it won't work. Ubuntu 18.04 uses and outdated FFmpeg version that is not supported.

Revision history for this message
Uwe Klotz (uklotzde-deactivatedaccount) wrote :

Tested. Works.

Changed in mixxx:
status: Confirmed → Fix Committed
Changed in mixxx:
status: Fix Committed → Fix Released
Revision history for this message
Swiftb0y (swiftb0y) wrote :

Mixxx now uses GitHub for bug tracking. This bug has been migrated to:
https://github.com/mixxxdj/mixxx/issues/7526

lock status: Metadata changes locked and limited to project staff
To post a comment you must log in.
This report contains Public information  
Everyone can see this information.

Other bug subscribers

Remote bug watches

Bug watches keep track of this bug in other bug trackers.