-
-
Notifications
You must be signed in to change notification settings - Fork 1.2k
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
Mixxx 1.6.0beta2 Segfaults while "Scratching" #4921
Comments
Commented by: asantoni Just out of curiosity, what is the jog wheel control set to in your MIDI mapping? (This probably has nothing to do with the problem...) |
Commented by: alex-malexmedia My jog wheels are set like so:
However, my codebase has a few lines changed in the configobject.cpp which make diff a little saner for my setup. |
Commented by: alex-malexmedia As you requested, I tried to cause the same problem in pitch-independent stretch mode. Mixxx locked up instead of segfaulting, but here is the backtrace. |
Commented by: alex-malexmedia Caused the same segfault while running under valgrind. |
Commented by: alex-malexmedia Fixed! When the seek speed is too low, we essentially ask SoundTouch to expand our 100-sample buffer into literally gigabytes of RAM. (Which causes SoundTouch to overflow an int and segfault.) This patch adds MIN_SEEK_SPEED, which successfully prevents such nonsense from ever happening. |
Commented by: alex-malexmedia Discovered another case where soundtouch->setRate() could be called with a super-small number. sheepish Guess I need to do my homework better... |
Issue closed with status Fix Released. |
Reported by: alex-malexmedia
Date: 2008-02-17T15:48:35Z
Status: Fix Released
Importance: Medium
Launchpad Issue: lp192663
Attachments: [Backtrace of a locked-up mixxx.](https://bugs.launchpad.net/bugs/192663/+attachment/209334/+files/Backtrace of a locked-up mixxx.), [Lots and Lots of Valgrind](https://bugs.launchpad.net/bugs/192663/+attachment/209338/+files/Lots and Lots of Valgrind), [Patch for issue.](https://bugs.launchpad.net/bugs/192663/+attachment/209437/+files/Patch for issue.), [A fix for the fix.](https://bugs.launchpad.net/bugs/192663/+attachment/209498/+files/A fix for the fix.)
Using Mixxx on Linux (fc7) with no DRI.
When "scratching" through any track using my new MIDI jog wheel, Mixxx will occasionally segfault. The backtraces always seem to lead to the same place. Here is a sample:
Thread 12 (Thread -1338000496 (LWP 4820)):
#0 0x0815f25c in RateTransposerFloat::transposeStereo (this=0xa2f0620, dest=0xae759940, src=0xa035b20, numSamples=100)
at lib/soundtouch/RateTransposer.cpp:590
#1 0x081602d2 in soundtouch::RateTransposer::transpose (this=0xa2f0620, dest=0xae759940, src=0xa035b20, numSamples=100)
at lib/soundtouch/RateTransposer.cpp:318
#2 0x0815f730 in soundtouch::RateTransposer::upsample (this=0xa2f0620, src=0xa035b20, numSamples=100)
at lib/soundtouch/RateTransposer.cpp:231
#3 0x0815f8d9 in soundtouch::RateTransposer::processSamples (this=0xa2f0620, src=0xa035b20, numSamples=100)
at lib/soundtouch/RateTransposer.cpp:303
#4 0x0815f915 in soundtouch::RateTransposer::putSamples (this=0xa2f0620, samples=0xa035b20, numSamples=100)
at lib/soundtouch/RateTransposer.cpp:212
#5 0x0815cc52 in soundtouch::SoundTouch::putSamples (this=0xa1089c0, samples=0xa035b20, numSamples=100)
at lib/soundtouch/SoundTouch.cpp:317
#6 0x0815b8c8 in EngineBufferScaleST::scale (this=0xa035860, playpos=604618.23999999987, buf_size=3176, pBase=0xb78fc008,
iBaseLength=819200) at src/enginebufferscalest.cpp:174
#7 0x080b5142 in EngineBuffer::process (this=0xa04f670, pOut=0xb5918008, iBufferSize=3176) at src/enginebuffer.cpp:1120
#8 0x080e0ed0 in EngineMaster::process (this=0xa081d50, pOut=0x0, iBufferSize=3176) at src/enginemaster.cpp:181
#9 0x0814b078 in SoundManager::requestBuffer (this=0xa0aca70, srcs=@0xb03fb210, iFramesPerBuffer=1588)
at src/soundmanager.cpp:440
#10 0x0815054c in SoundDevicePortAudio::callbackProcess (this=0xa0adef0, framesPerBuffer=1588, output=0xa331c00, in=0x0,
devIndex=1) at src/sounddeviceportaudio.cpp:305
#11 0x081506c2 in paV19Callback (inputBuffer=0x0, outputBuffer=0xa331c00, framesPerBuffer=1588, timeInfo=0xb03fb378,
statusFlags=0, _callbackStuff=0xa0adf30) at src/sounddeviceportaudio.cpp:362
#12 0x0032ae8c in AdaptingOutputOnlyProcess (bp=0xa350c94, streamCallbackResult=0xb03fb39c, hostOutputChannels=0xa046df0,
framesToProcess=400) at src/common/pa_process.c:1058
#13 0x0032bb59 in PaUtil_EndBufferProcessing (bp=0xa350c94, streamCallbackResult=0xb03fb39c) at src/common/pa_process.c:1581
#14 0x0033359d in CallbackThreadFunc (userData=0xa350c48) at src/hostapi/alsa/pa_linux_alsa.c:3303
#15 0x0079e44b in start_thread () from /lib/libpthread.so.0
#16 0x006cc80e in clone () from /lib/libc.so.6
The text was updated successfully, but these errors were encountered: