Skip to content
Permalink
master
Switch branches/tags

Name already in use

A tag already exists with the provided branch name. Many Git commands accept both tag and branch names, so creating this branch may cause unexpected behavior. Are you sure you want to create this branch?
Go to file
 
 
Cannot retrieve contributors at this time

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

  1. 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


  1. 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

  1. 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