audacious-media-player / audacious

A lightweight and versatile audio player
https://audacious-media-player.org
Other
816 stars 109 forks source link

(SOLVED: USER ERROR) libopenmpt in Audacious doesn't play PCM samples when OPL3 is in action #1449

Closed seacat17 closed 4 weeks ago

seacat17 commented 1 month ago

Describe the bug There is a good song called "Nightfall" by Pigu that was written as a demo for OpenMPT. It plays both in OpenMPT and Audacious but in Audacious some sounds are missing. After tinkering around a bit I figured out that the sounds that are missing are strictly PCM ones. This song is a hybrid of OPL3 and PCM and while OPL3 sounds play just fine PCM sounds get ignored in Audacious.

Steps to reproduce Just download Pigu - Nightfall on ModArchive and play it to hear that PCM samples are missing.

Expected behavior The song should play with all the sounds and samples in action.

Additional information

mschwendt commented 1 month ago

With my former MOD & OPL3 coder hat on, I cannot hear anything wrong here with Audacious and don't hear anything different if playing it with openmpt123. And that is with OpenMPT 0.7.8.

Also, given how rather simple these input plugins are because they rely on a MOD backend library doing the work, I would call it unexpected if Audacious had an influence on dropping some samples/instruments.

As a side-note, the two alternative MOD input plugins ModPlug and XMP don't play this file correctly, though.

seacat17 commented 1 month ago

With my former MOD & OPL3 coder hat on, I cannot hear anything wrong here with Audacious and don't hear anything different if playing it with openmpt123. And that is with OpenMPT 0.7.8.

Here's the example of the issue. Using audacity I inverted the Audacious output and mixed it down with OpenMPT output to hear the differences. The only difference is missing PCM samples. The source FLAC streams are in the archive as well.

REPRODUCED.zip

Maybe that's an issue of the Arch Linux build of libopenmpt or Audacious but the issue is there and I think there should be a way to fix it, since OpenMPT itself plays the song just fine.

mschwendt commented 1 month ago

Cannot reproduce.

Particularly the samples in your DIFFERENCES.ogg at 0:38 onwards and at 1:38 onwards are audible here with Audacious.

Btw, the OpenMPT version mentioned in your files is over a year old. It's 1.31.08.00 here.

seacat17 commented 1 month ago

Cannot reproduce.

Particularly the samples in your DIFFERENCES.ogg at 0:38 onwards and at 1:38 onwards are audible here with Audacious.

Maybe it's distro related bug?... Could you please try to reproduce this on Arch in VM?

Btw, the OpenMPT version mentioned in your files is over a year old. It's 1.31.08.00 here.

I know it's old. I just don't really want to update it because I don't make music, I just convert it with OMPT from MO3 into XM so my phone could play it.

mschwendt commented 1 month ago

As pointed out, Audacious itself and its OpenMPT input plugin know nothing at all about the low-level module formats. It's the sole responsibility of the input plugin's backend library (here libopenmpt) to detect, load and decode a file's format, and to return audio data to the player. Anything about OpenMPT module .MPTM format internals and differences to Impulse Tracker's .IT format is handled within libopenmpt, not in Audacious or its input plugin.

So, yes, trouble-shooting ought to start on Arch Linux. Sometimes symptoms are gone already after rebuilding/recompiling packages.

radioactiveman commented 1 month ago

Particularly the samples in your DIFFERENCES.ogg at 0:38 onwards and at 1:38 onwards are audible here with Audacious.

Here as well, using Audacious on Arch Linux.

seacat17 commented 4 weeks ago

Here as well, using Audacious on Arch Linux.

So ya mean that this issue is literally only on Arch Linux?

radioactiveman commented 4 weeks ago

No, my reply means I can't reproduce this issue because I can hear the samples in pigu_-_nightfall.mptm at 0:38 and 1:38. Exactly as @mschwendt has described it.

seacat17 commented 4 weeks ago

Okay, there's something clearly off with my Audacious installation. I'm trying to tinker with the in-app ModPlug settings and they simply don't take effect even after restarting Audacious and entire computer.

How do I send logs?

EDIT:

I tried playing the same file in openmpt123 and here we go now.

Filename...: Pigu - Nightfall.mptm
Size.......: 45kB
Warnings...: warning: Loading external sample 4 ('.\Samples\80s Clap.flac') failed: External samples are not supported.
           : warning: Loading external sample 20 ('.\Samples\Wavestation Percussion 1.flac') failed: External samples are not supported.
Type.......: mptm (OpenMPT MPTM)
Tracker....: OpenMPT 1.28.01.00
Date.......: 2018-12-22T18:19:36
Artist.....: Pigu
Title......: Nightfall (short ver.)
Duration...: 02:07.152
Subsongs...: 1
Channels...: 16
Orders.....: 20
Patterns...: 21
Instruments: 22
Samples....: 21

Seems like the song I downloaded with the program itself loads the samples that are NOT in the song file. What a mess...

Now I know where the issue lies and I'm terribly sorry for wasting your time. Looks like I am truly an idiot.

radioactiveman commented 4 weeks ago

Glad to hear that you found the root cause. :+1:

So you basically used another file than the refernced one from ModArchive in the steps to reproduce? Then it makes sense why we could not reproduce the issue. The info output differs from yours as well and does not show warnings.

Now I know where the issue lies and I'm terribly sorry for wasting your time. Looks like I am truly an idiot.

No problem, this can happen to all of us. And I assume you have spent more time debugging this than us.


openmpt123 --info pigu_-_nightfall.mptm 
openmpt123 v0.7.9, libopenmpt 0.7.9+r21223.pkg (OpenMPT 1.31.09.00 https://source.openmpt.org/svn/openmpt/tags/libopenmpt-0.7.9@21223 (2024-07-21T12:01:13.335584Z) clean-pkg)
Copyright (c) 2013-2024 OpenMPT Project Developers and Contributors <https://lib.openmpt.org/>

Filename...: pigu_-_nightfall.mptm
Size.......: 241kB
Type.......: mptm (OpenMPT MPTM)
Tracker....: OpenMPT 1.28.01.00
Date.......: 2018-12-31T14:08:23
Artist.....: Pigu
Title......: Nightfall (short ver.)
Duration...: 02:07.152
Subsongs...: 1
Channels...: 16
Orders.....: 20
Patterns...: 21
Instruments: 22
Samples....: 21