Description
SoundTouch is an open-source audio processing library for changing the Tempo, Pitch and Playback Rates of audio streams or audio files. The library additionally supports estimating stable beats-per-minute rates for audio tracks.
Version
soundtouch, 2.0.
Others
this bug is reported by fish@360TeamSeri0us, please send email to teamSeri0us360@gmail.com if you have some quetion.
Details
- there exists a problem while an exception caught by the program in function WavInFile::WavInFile(const char *fileName) in WavFile.cpp.
root@758932e62c15:/src/installed/bin# gdb -q soundstretch core
Reading symbols from soundstretch...done.
[New LWP 43]
Core was generated by `./soundstretch 1-Poc out.wav'.
Program terminated with signal SIGSEGV, Segmentation fault.
#0 _int_malloc (av=av@entry=0x7f88b005eb20 <main_arena>, bytes=bytes@entry=40) at malloc.c:3727
3727 malloc.c: No such file or directory.
(gdb) bt
#0 _int_malloc (av=av@entry=0x7f88b005eb20 <main_arena>, bytes=bytes@entry=40) at malloc.c:3727
#1 0x00007f88afd1e184 in __GI___libc_malloc (bytes=40) at malloc.c:2913
#2 0x00007f88b0307e78 in operator new(unsigned long) () from /usr/lib/x86_64-linux-gnu/libstdc++.so.6
#3 0x00000000004027f1 in std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> >::_M_construct<char*> (__end=0x419dcf "", __beg=0x419da8 "Input file is corrupt or not a WAV file", this=0x7fff9f0c6bd0)
at /usr/include/c++/5/bits/basic_string.tcc:223
#4 std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> >::_M_construct_aux<char const*> (__end=0x419dcf "", __beg=0x419da8 "Input file is corrupt or not a WAV file", this=0x7fff9f0c6bd0) at /usr/include/c++/5/bits/basic_string.h:195
#5 std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> >::_M_construct<char const*> (__end=0x419dcf "", __beg=0x419da8 "Input file is corrupt or not a WAV file", this=0x7fff9f0c6bd0) at /usr/include/c++/5/bits/basic_string.h:214
#6 std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> >::basic_string (this=this@entry=0x7fff9f0c6bd0, __s=<optimized out>, __s@entry=0x419da8 "Input file is corrupt or not a WAV file", __a=...)
at /usr/include/c++/5/bits/basic_string.h:456
#7 0x000000000040d35d in WavInFile::init (this=this@entry=0x2574ee0) at WavFile.cpp:225
#8 0x000000000040dda8 in WavInFile::WavInFile (this=0x2574ee0, fileName=0x7fff9f0c7912 "1-Poc") at WavFile.cpp:193
#9 0x0000000000403123 in openFiles (params=0x2574ea0, params=0x2574ea0, outFile=<synthetic pointer>, inFile=<synthetic pointer>) at main.cpp:91
#10 main (nParams=<optimized out>, paramStr=0x7fff9f0c6e38) at main.cpp:300
- soundstretch: RateTransposer.cpp:180: void soundtouch::RateTransposer::setChannels(int): Assertion `nChannels > 0' failed.
root@758932e62c15:/src/installed/bin# gdb -q soundstretch core
Reading symbols from soundstretch...done.
[New LWP 48]
Core was generated by `./soundstretch 2-Poc out.wav'.
Program terminated with signal SIGSEGV, Segmentation fault.
#0 __GI_abort () at abort.c:125
125 abort.c: No such file or directory.
(gdb) bt
#0 __GI_abort () at abort.c:125
#1 0x00007ff0fb315bd7 in __assert_fail_base (fmt=<optimized out>, assertion=assertion@entry=0x7ff0fbc75134 "nChannels > 0", file=file@entry=0x7ff0fbc75121 "RateTransposer.cpp", line=line@entry=180,
function=function@entry=0x7ff0fbc75240 <soundtouch::RateTransposer::setChannels(int)::__PRETTY_FUNCTION__> "void soundtouch::RateTransposer::setChannels(int)") at assert.c:92
#2 0x00007ff0fb315c82 in __GI___assert_fail (assertion=assertion@entry=0x7ff0fbc75134 "nChannels > 0", file=file@entry=0x7ff0fbc75121 "RateTransposer.cpp", line=line@entry=180,
function=function@entry=0x7ff0fbc75240 <soundtouch::RateTransposer::setChannels(int)::__PRETTY_FUNCTION__> "void soundtouch::RateTransposer::setChannels(int)") at assert.c:101
#3 0x00007ff0fbc58dcb in soundtouch::RateTransposer::setChannels (this=<optimized out>, nChannels=nChannels@entry=0) at RateTransposer.cpp:180
#4 0x00007ff0fbc5adff in soundtouch::SoundTouch::setChannels (this=this@entry=0x7fff4400d030, numChannels=numChannels@entry=0) at SoundTouch.cpp:155
#5 0x0000000000402d58 in setup (params=0x9deea0, inFile=0x9deee0, pSoundTouch=0x7fff4400d030) at main.cpp:129
#6 main (nParams=<optimized out>, paramStr=<optimized out>) at main.cpp:310
- Working...soundstretch: FIRFilter.cpp:188: virtual uint soundtouch::FIRFilter::evaluateFilterMulti(soundtouch::SAMPLETYPE*, const SAMPLETYPE*, uint, uint): Assertion `numChannels < 16' failed.
root@758932e62c15:/src/installed/bin# gdb -q soundstretch core
Reading symbols from soundstretch...done.
[New LWP 53]
Core was generated by `./soundstretch soundstretch000_id_000001,sig_06,src_000000,op_flip1,pos_22 out.'.
Program terminated with signal SIGSEGV, Segmentation fault.
#0 __GI_abort () at abort.c:125
125 abort.c: No such file or directory.
(gdb) bt
#0 __GI_abort () at abort.c:125
#1 0x00007f6d665f4bd7 in __assert_fail_base (fmt=<optimized out>, assertion=assertion@entry=0x7f6d66f53cc8 "numChannels < 16", file=file@entry=0x7f6d66f53c80 "FIRFilter.cpp", line=line@entry=188,
function=function@entry=0x7f6d66f53e20 <soundtouch::FIRFilter::evaluateFilterMulti(float*, float const*, unsigned int, unsigned int)::__PRETTY_FUNCTION__> "virtual uint soundtouch::FIRFilter::evaluateFilterMulti(soundtouch::SAMPLETYPE*, const SAMPLETYPE*, uint, uint)") at assert.c:92
#2 0x00007f6d665f4c82 in __GI___assert_fail (assertion=assertion@entry=0x7f6d66f53cc8 "numChannels < 16", file=file@entry=0x7f6d66f53c80 "FIRFilter.cpp", line=line@entry=188,
function=function@entry=0x7f6d66f53e20 <soundtouch::FIRFilter::evaluateFilterMulti(float*, float const*, unsigned int, unsigned int)::__PRETTY_FUNCTION__> "virtual uint soundtouch::FIRFilter::evaluateFilterMulti(soundtouch::SAMPLETYPE*, const SAMPLETYPE*, uint, uint)") at assert.c:101
#3 0x00007f6d66f35063 in soundtouch::FIRFilter::evaluateFilterMulti (this=<optimized out>, dest=<optimized out>, src=<optimized out>, numSamples=<optimized out>, numChannels=<optimized out>) at FIRFilter.cpp:188
#4 0x00007f6d66f3277d in soundtouch::AAFilter::evaluate (this=0xc65d30, dest=..., src=...) at AAFilter.cpp:225
#5 0x00007f6d66f388ab in soundtouch::RateTransposer::processSamples (this=0xc62c20, src=<optimized out>, nSamples=<optimized out>) at RateTransposer.cpp:169
#6 0x00007f6d66f397f3 in soundtouch::SoundTouch::putSamples (this=this@entry=0x7ffe7a4646b0, samples=samples@entry=0x7ffe7a45dd60, nSamples=<optimized out>) at SoundTouch.cpp:333
#7 0x0000000000403e6e in process (pSoundTouch=pSoundTouch@entry=0x7ffe7a4646b0, inFile=inFile@entry=0xc65ee0, outFile=outFile@entry=0xc65f50) at main.cpp:200
#8 0x0000000000402f82 in main (nParams=<optimized out>, paramStr=<optimized out>) at main.cpp:314