3.8 reports, queries and bugs

Started by Dotpitch,

asikwus

I have a big issue with the file dialog windows that XMPlay opens becomes excessively big and is not rezisable. The main one for opening files has also placed itself outside the negative areas on the screen, so I have no way to either move it or access the important navigation buttons (see attached screenshot of the entire screen, that's really what it looks like - notice the dark strip at the far left, that's the desktop :) ).

System:
XMPlay version: 3.8.5
OS: Windows 11 Pro x64
CPU: Intel Core i5-8400
GPU: AMD Radeon RX 6600

Ian @ un4seen

Strange. It shouldn't usually be that big, but Windows remembers each app's file selector size and re-uses that next time its opened, so perhaps you maximised it once by double-clicking the titlebar and it's been that way ever since? Try double-clicking the titlebar again and see if that shrinks the window or at least makes it possible to resize by grabbing an edge/corner.

asikwus

#977
Thanks! That solved it, and it's not even repeatable it seems, at least by basic means. Though I was lucky not all of them was located in a negative screen position, then I could'nt have reached the titlebar and they would've been stuck like that.

Update: It is repeatable, you have to be careful at what positions you put each dialog, as each dialog have their own relative screen position offset, that is kept when they're maximized, but the maximization toggle is a common setting. But that makes a situation where all dialogs end up on negative positions seem to be impossible from basic user perspective.

winner

Hey,

I'm trying to play a stream from England and it does not play. I have associated the m3u and pls file extensions with XMPlay. I have tried both the full URL I copied from the website and also just the last portion starting with "http://uk3", but the stream won't play.

https://www.internet-radio.com/servers/tools/playlistgenerator/?u=http://uk3.internet-radio.com:8405/live.m3u&t=.pls

I don't think this is a fault with XMPlay, but can someone please help figure out why this doesn't play?

saga

The stream plays fine here. You could download the PLS file, extract the stream link from it and paste it into your browser of choice. The stream should be playing there, or you should see an error page from which you can figure out what the actual problem is.

saga

#980
Here's two fun (or hair-pulling, depending on how you see it :) ) Impulse Tracker edge cases that XMPlay doesn't emulate correctly at the moment:

NoMapEffects.it
Probably the most curious IT bug in existence, caused by an accidental early return from a function. The details are noted on the linked wiki article, but just to re-iterate the key details: When IT evaluates instrument numbers in instrument mode, if the current note + instrument combination results in trying to access sample slot 0, the rest of the pattern cell parsing is skipped completely - including any (global) effects!
Note that the test case InitialNoteMemory.it may be a prerequisite for getting this test case completely right (due to the note-less instrument number on the first row).
OpenMPT emulates this quirk as of OpenMPT 1.32 (not released yet), so BASS/XMPlay should preferably not apply this quirk when it detects an older version.

DoubleSlide.it / DoubleSlideCompatGxx.it
Impulse Tracker generally initializes effect parameters, effect working memory and similar stuff once per row, before the effects actually run. When using (tone) portamento commands simulatenously in the effect column and volume column, this can lead to surprising results, and in order to emulate them correctly, it is crucial to implement the effect memory initialization in the exact same order as Impulse Tracker does:
  • Evaluate effect column Gxx parameter
  • Evaluate volume column gx parameter
  • Evaluate volume column ex / fx parameter
  • Evaluate effect column Exx / Fxx parameter
Again, OpenMPT gets this right as of OpenMPT 1.32(.00.27). While the test module may sound very abstract, it is actually based on one of my tracks (The Oasis, see pattern 39 at 4:00), which I didn't realize  would play incorrectly in Impulse Tracker until recently (back then I only verified that XMPlay plays it like OpenMPT does). So quite naturally I would appreciate if BASS/XMPlay didn't emulate this quirk for modules made with older OpenMPT versions. :)

kakuyoshi

#981
When playing with ASIO, if I select the SoundBlaster Z SE ASIO driver and click on the file, it crashes without any error.

When playing using ASIO with foobar2000 v2.24 preview2024-10-28(x64) and BASS ASIO there are no issues..

This may be a problem with my environment, but I wanted to report it anyway.

OS windows11 home 23H2
CPU Core i5 12400
Sound Sound Blaster Z SE
MEMORY DDR4 3200 32GB
GPU Intel UHD Graphics 730

sveakul

Quote from: kakuyoshiWhen playing using ASIO with foobar2000 v2.24 preview2024-10-28(x64) and BASS ASIO there are no issues..
Foobar 2.24 x64 does not use BASS libraries.  It uses its own plugin foo_out_asio (or a 3rd party version like foo_out_asio+dsd) to select ASIO drivers installed by your audio device.

Ian @ un4seen

Quote from: kakuyoshiWhen playing with ASIO, if I select the SoundBlaster Z SE ASIO driver and click on the file, it crashes without any error.

If you aren't already using it, please first try this ASIO plugin update (rev.7c):

   www.un4seen.com/stuff/xmp-asio.dll

If it still crashes then please provide a dump file from it (when using rev.7c) to have a look at. You should find some by opening this folder in File Explorer:

   %LOCALAPPDATA%\CrashDumps

ZIP the latest one and upload it here:

   ftp.un4seen.com/incoming

kakuyoshi

I downloaded and tried the ASIO plugin (rev.7c),
but it didn't improve the symptoms.

I'll upload the dump file,
so please check it out.

kakuyoshi

#985
I downloaded and tried the ASIO plugin (rev.7c),
but it didn't improve the symptoms.

Please check the link below for the dump file.
http://hirahi.cloudfree.jp/archive/crash.zip

Ian @ un4seen

Looks like the ASIO driver crashed while is was being loaded/initialized. You say the same driver isn't crashing with BASSASIO? I do see one small difference in how they're initializing the driver, so here's an XMPlay plugin update that does the same as BASSASIO:

   www.un4seen.com/stuff/xmp-asio.dll

If it's still crashing, please provide a new dump file (just in case it's a different crash) and confirm whether BASSASIO is working with or without (or both) the BASS_ASIO_THREAD option? For reference, the console examples from the BASSASIO package are using BASS_ASIO_THREAD, while the GUI examples aren't.

kakuyoshi

Quote from: Ian @ un4seenLooks like the ASIO driver crashed while is was being loaded/initialized. You say the same driver isn't crashing with BASSASIO? I do see one small difference in how they're initializing the driver, so here's an XMPlay plugin update that does the same as BASSASIO:

   www.un4seen.com/stuff/xmp-asio.dll

If it's still crashing, please provide a new dump file (just in case it's a different crash) and confirm whether BASSASIO is working with or without (or both) the BASS_ASIO_THREAD option? For reference, the console examples from the BASSASIO package are using BASS_ASIO_THREAD, while the GUI examples aren't.

It didn't crash with BASSASIO.
I used the uploaded XMP-ASIO but it did crash.

I've uploaded the dump file below.
http://hirahi.cloudfree.jp/archive/CrashDumps.zip

As for BASS_ASIO_THREAD, I was unable to check it as there is no corresponding item for players using BASSASIO.


Ian @ un4seen

It's the same crash, but this dump does narrow it down to the driver's initialization function (after loading). I'm not sure what can be done about it, as there aren't really any initialization options. If you go to the ASIO plugin's options page, does it crash there too? If not, what about if you click the "Control panel" button to open the driver's control panel?

Please also try downloading the BASSASIO package (and BASS) and run the pre-compiled examples (in the C\BIN folder) to see if any of them crash. Start with the LIST.EXE example to see what's detected.

kakuyoshi

Quote from: Ian @ un4seenIt's the same crash, but this dump does narrow it down to the driver's initialization function (after loading). I'm not sure what can be done about it, as there aren't really any initialization options. If you go to the ASIO plugin's options page, does it crash there too? If not, what about if you click the "Control panel" button to open the driver's control panel?

Please also try downloading the BASSASIO package (and BASS) and run the pre-compiled examples (in the C\BIN folder) to see if any of them crash. Start with the LIST.EXE example to see what's detected.

When I click to open the control panelit crashes.
When I run BASSASIO's LIST.EXE I get an application error 0x000007b.


Ian @ un4seen

I guess the error was actually 0xc000007b? That can result from mixing 32-bit and 64-bit EXE/DLLs. BASSASIO's pre-compiled examples are 32-bit, so you will need to use the 32-bit BASSASIO.DLL (and BASS.DLL) with them.

kakuyoshi

Quote from: Ian @ un4seenI guess the error was actually 0xc000007b? That can result from mixing 32-bit and 64-bit EXE/DLLs. BASSASIO's pre-compiled examples are 32-bit, so you will need to use the 32-bit BASSASIO.DLL (and BASS.DLL) with them.

Sorry, it worked after I changed it to the 32-bit version.

execution results are as follows.
http://hirahi.cloudfree.jp/archive/list.png

Ian @ un4seen

Did it crash at that point? It should also show the device's sample rate and supported formats, or "unavailable" if it cannot be initialized.

Please also try running the DSPTEST.EXE example (GUI).

kakuyoshi

#993
Quote from: Ian @ un4seenDid it crash at that point? It should also show the device's sample rate and supported formats, or "unavailable" if it cannot be initialized.

Please also try running the DSPTEST.EXE example (GUI).

device was listed, but not the sample rate or supported formats.

BASS DSPTEST.EXE started up, but BASSASIO DSPTEST.EXE did not respond when clicked.

Ian @ un4seen

Quote from: kakuyoshi
Quote from: Ian @ un4seenDid it crash at that point? It should also show the device's sample rate and supported formats, or "unavailable" if it cannot be initialized.

device was listed, but not the sample rate or supported formats.

Yep, it seems like the ASIO driver crashed again in this case (the driver needs to be loaded and initialized to get that info). Do you have the latest driver version, and is it definitely working in other software? To check whether it's only the 32-bit driver that's crashing, here's a 64-bit version of the LIST.EXE example for you to try with the 64-bit BASSASIO.DLL:

   www.un4seen.com/stuff/asiolist64.exe

Do you see the device's sample rate and supported formats or "unavailable" with that, or still neither?

kakuyoshi

Quote from: Ian @ un4seen
Quote from: kakuyoshi
Quote from: Ian @ un4seenDid it crash at that point? It should also show the device's sample rate and supported formats, or "unavailable" if it cannot be initialized.

device was listed, but not the sample rate or supported formats.

Yep, it seems like the ASIO driver crashed again in this case (the driver needs to be loaded and initialized to get that info). Do you have the latest driver version, and is it definitely working in other software? To check whether it's only the 32-bit driver that's crashing, here's a 64-bit version of the LIST.EXE example for you to try with the 64-bit BASSASIO.DLL:

   www.un4seen.com/stuff/asiolist64.exe

Do you see the device's sample rate and supported formats or "unavailable" with that, or still neither?

Updating to the latest driver.
The results of the 64-bit version of LIST.EXE are shown below.
http://hirahi.cloudfree.jp/archive/list64.png

I've also contacted the sound card manufacturer for support.

Ian @ un4seen

Quote from: kakuyoshiThe results of the 64-bit version of LIST.EXE are shown below.
http://hirahi.cloudfree.jp/archive/list64.png

That looks fine (includes the supported format info), so it's only the 32-bit ASIO driver that's crashing then.

Is there a particular reason that you want to use ASIO? Perhaps you could use exclusive-mode WASAPI instead.

kakuyoshi

Quote from: Ian @ un4seen
Quote from: kakuyoshiThe results of the 64-bit version of LIST.EXE are shown below.
http://hirahi.cloudfree.jp/archive/list64.png

That looks fine (includes the supported format info), so it's only the 32-bit ASIO driver that's crashing then.

Is there a particular reason that you want to use ASIO? Perhaps you could use exclusive-mode WASAPI instead.

There is no particular reason to use ASIO.
It doesn't affect me because I can use the WASAPI exclusive mode, but I wanted to know if it can't be used with 32-bit applications.

Sorry for the trouble.

guest

First order is not skipped.

Channel 6 in first order is played differently in Scream Tracker 3.

• Latest stuff saves only %USERPROFILE%\ in the playlist without the remaining path to the file.

Ian @ un4seen

Quote from: guest• Latest stuff saves only %USERPROFILE%\ in the playlist without the remaining path to the file.

Oops! That's sorted for the 4.0 release, which should be coming on Monday. If there's time, I'll check those S3M issues before then, but they may have to wait until later.