mywave82 / opencubicplayer

Open Cubic Player (unix fork). Music visualizer for various tracked music formats (amiga modules, S3M, IT), chiptunes and other formats related to demoscene
https://stian.cubic.org/project-ocp.php
GNU General Public License v2.0
280 stars 19 forks source link

SIGABRT while playing a tracker file #117

Open SergeyMC9730 opened 1 month ago

SergeyMC9730 commented 1 month ago

Recently I decided to switch from Pulseaudio to Pipewire on my Arch Linux machine. Due to devpAlsa being to fail to play any sound (snd_pcm_delay() returns negative value everytime) I've decided to use devpSDL2 device instead. It worked great but sometimes OpenCubicPlayer liked to randomly crash with assertion failed in ringbuffer.c:206

Here's the full ocp log:

dog@hostname ~/Downloads % ocp
Setting to cfHomeDir to /home/dog/
Setting to cfConfigHomeDir to /home/dog/.config/ocp/
Setting to cfDataHomeDir to /home/dog/.local/share/ocp/
Setting to cfDataDir to /usr/local/share/ocp/data/
Setting to cfProgramDir to /usr/local/lib/ocp/
Open Cubic Player for Unix v0.2.109, compiled on Jul  9 2024, 20:47:56
Ported to Unix by Stian Skjelstad
linking default objects...
running initializers...
initializing fileselector...
Loading /home/dog/.local/share/ocp/CPARCMETA.DAT .. Done
Loading /home/dog/.local/share/ocp/CPMODNFO.DAT .. Done
Loading /home/dog/.local/share/ocp/CPDIRDB.DAT .. No header
Loading /home/dog/.local/share/ocp/CPMUSBRN.DAT .. Empty database
Initing console... 
We have a PTY (so no need to test for framebuffer and/or vcsa)
[x11] X is online
[x11] rootwindow: width:1920 height:1080
[x11] xvidmode disabled in ocp.ini
Locating cdroms [.....]
playbackdevices:
[SDL] Using audio driver pulseaudio
 devpSDL2: SDL 2.x Player.................. (detected)
 devpDisk: Disk Writer..................... (skipped)
 devpNone: Super High Quality Quiet Player. (skipped)
wavetabledevices:
[devwMixF] C version, (volramp=1, declick=1)
[devwMixF] registering post processing plugin fReverb
 devwMixF: FPU Mixer....................... (detected)
 devwMixQ: Integer Quality Mixer........... (skipped)
 devwMix : Integer Mixer................... (skipped)
 devwNone: None............................ (skipped)
[GMD] loading pod.s3m... (432k)
[GMD] preparing samples (362k)...
ocp: ringbuffer.c:206: ringbuffer_tail_consume_samples: Assertion `(self->cache_read_available + self->cache_write_available + self->cache_processing_available + 1) == self->buffersize' failed.
[1]    128866 IOT instruction (core dumped)  ocp

OCP has been compiled from GitHub source with ALSA sound driver fully disabled.

Pipewire version: 1:1.2.1-1 PulseAudio replacement (pipewire-pulse) version: 1:1.2.1-1 OCP version: v0.2.109

Interpolation has been disabled while playing pod.s3m, pod.s3m ("Point of Departure") file was used to demonstrate this crash.

mywave82 commented 1 month ago

That is some strange behaviour on your system. I have not seen alsa drivers and alsa driver emulators reporting invalid numbers for many years. Are there available any Arch VirtualBox images that has the same issues as you experience?