SoundSourceM4A does not double audio output on monoaural tracks into stereo.

Bug #324666 reported by RJ Skerry-Ryan
4
Affects Status Importance Assigned to Milestone
Mixxx
Fix Released
Undecided
fenugrec

Bug Description

SoundSourceM4A::read() does not properly double the read audio into stereo if the song is mono. Clients of SoundSourceProxy::read() expect this, and all other SoundSources do this.

Revision history for this message
RJ Skerry-Ryan (rryan) wrote :

I don't have any examples of mono files. Anybody have one?

Changed in mixxx:
assignee: nobody → RJ Ryan (rryan)
milestone: none → 1.8.0
status: New → Confirmed
Revision history for this message
Sean M. Pappalardo (pegasus-renegadetech) wrote :

You can make one from the stuff in mixxx/src/test/soundFileFormats. Specifically, unpack the reference file then use sox or whatever to make a mono m4a out of it. Better still, add M4A generation to the generateFiles.sh script so everyone can use it.

Revision history for this message
fenugrec (fenugrec) wrote :

Here's a patch for 1.8 trunk.
As it is, though, SSM4A::ParseHeader on a mono file will still do a Track->setChannels(2)
(hardcoded, see source file) .

The patch also cleans up some of the stuff I mentioned in bug #501542 ,
viz. ::ParseHeader discrepancies.

Revision history for this message
RJ Skerry-Ryan (rryan) wrote :

Nice patch, C. Stewart.

One problem: it does not divide the number of bytes to read by the channels. As the patch stands, you would fill the buffer with mono samples and then double it into 2* the available memory in the read buffer.

Revision history for this message
fenugrec (fenugrec) wrote :

Ah yes, I was misinterpreting the code. This patch should be better.

Revision history for this message
RJ Skerry-Ryan (rryan) wrote :

Fixed thanks to C. Stewart.

Changed in mixxx:
status: Confirmed → Fix Committed
assignee: RJ Ryan (rryan) → C. Stewart (fenugrec)
RJ Skerry-Ryan (rryan)
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/5087

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.