Using Vamp Plugins and Hosts > Host Forum: Sonic Visualiser
Built on debian wheezy amd64 no audio port
lorenzosu:
Hi,
I'm on debian wheezy amd64. As there was no amd64 build and I couldn't get the 1.7.1cc-1_amd64 deb to work, I downloaded the source and compiled after figuring out the dependencies.
Build goes well without any evident error and I can successfully load sonic-visualiser and load a file, but when I open a file or a session I get a message: "No audio available - Could not open an audio device for playback. - Automatic audio device detection failed. Audio playback will not be available during this session. to play" and thus can't playback.
The message on the stdout is simply WARNING: AudioTargetFactory::createCallbackTarget: No suitable targets available.
I did spot these in the build process which are probably causing the trouble:
AudioCoreAudioTarget.h:0: Warning: No relevant classes found. No output generated.
AudioJACKTarget.h:0: Warning: No relevant classes found. No output generated.
AudioPortAudioTarget.h:0: Warning: No relevant classes found. No output generated.
AudioPulseAudioTarget.h:0: Warning: No relevant classes found. No output generated.
Otherwise I'm pretty clueless on what else to try,.. Any help would be appreciated.
Thanks,
Lorenzo.
cannam:
Hi -- apologies to you and to everyone for my inattention to this forum in recent weeks.
--- Quote from: lorenzosu on March 24, 2011, 21:07:59 ---I did spot these in the build process which are probably causing the trouble:
AudioCoreAudioTarget.h:0: Warning: No relevant classes found. No output generated.
AudioJACKTarget.h:0: Warning: No relevant classes found. No output generated.
AudioPortAudioTarget.h:0: Warning: No relevant classes found. No output generated.
AudioPulseAudioTarget.h:0: Warning: No relevant classes found. No output generated.
--- End quote ---
Yes, you need to have at least one playback target! JACK and Pulse are the most likely candidates on Linux. With the 1.7 release, this is probably a question of adjusting the defines in the prf/sv.prf file (it does use pkg-config to pick up what libraries are available, but presumably this has failed).
The recently-released 1.8 has a different build system, using autoconf for these things, which may be worth a try. So far there is only a 32-bit Linux binary available for that, but hopefully I should be able to make a 64-bit one as well shortly.
Chris
lorenzosu:
Hi Chris,
Thanks for taking time to look into this.
--- Quote from: cannam on April 14, 2011, 14:53:58 ---Yes, you need to have at least one playback target! JACK and Pulse are the most likely candidates on Linux. With the 1.7 release, this is probably a question of adjusting the defines in the prf/sv.prf file (it does use pkg-config to pick up what libraries are available, but presumably this has failed).
--- End quote ---
Ok I'm not very familiar with that, but as a workaround to get at least JACK output working I dug into it a bit and thought the problem might be jack 2, so I managed to compile by:
- installing jack 1 and libs
- compile SV
- re-install jack 2
The caveat is that in this way removing jack 1 pulls all packages (e.g. ardour and many other applications) which are marked to depend on it. So it is a good idea to take a note of the removed packages.
Interestingly sonic visualiser continues to work perfectly with jack 2.
--- Quote from: cannam on April 14, 2011, 14:53:58 ---The recently-released 1.8 has a different build system, using autoconf for these things, which may be worth a try. So far there is only a 32-bit Linux binary available for that, but hopefully I should be able to make a 64-bit one as well shortly.
--- End quote ---
Autoconf seems interesting and should make it easier to dig into the dependencies. As soon as I have the time I'll try to compile it and maybe give my feedback.
Lorenzo
lorenzosu:
Hi again,
So I tried with 1.8
I installed the same packages recommended for ubuntu in 1.7.2 (again jack2 was removed).
configure picked up jack but not portaudio. It seems portaudio19-dev is required (not libportaudio-dev)
make starts but I got an error:
/usr/bin/ld: ../svcore/libsvcore.a(Init.o): undefined reference to symbol 'XGetErrorText'
/usr/bin/ld: note: 'XGetErrorText' is defined in DSO //usr/lib64/libX11.so.6 so try adding it to the linker command line
//usr/lib64/libX11.so.6: could not read symbols: Invalid operation
This seemed to be solved by adding manually -lX11 to the Makefile in the ./sonic-visualiser dir.
But then I get an error:
../svapp/libsvapp.a(AudioTargetFactory.o): In function `AudioTargetFactory::createCallbackTarget(AudioCallbackPlaySource*)':
AudioTargetFactory.cpp:(.text+0x76f): undefined reference to `AudioJACKTarget::AudioJACKTarget(AudioCallbackPlaySource*)'
AudioTargetFactory.cpp:(.text+0xb54): undefined reference to `AudioJACKTarget::AudioJACKTarget(AudioCallbackPlaySource*)'
At this point I'm pretty much stuck. Any hint would be appreciated.
Lorenzo
cannam:
--- Quote from: lorenzosu on April 15, 2011, 16:39:09 ---
/usr/bin/ld: ../svcore/libsvcore.a(Init.o): undefined reference to symbol 'XGetErrorText'
/usr/bin/ld: note: 'XGetErrorText' is defined in DSO //usr/lib64/libX11.so.6 so try adding it to the linker command line
//usr/lib64/libX11.so.6: could not read symbols: Invalid operation
--- End quote ---
This one is an error on my part -- svcore should not be referring to this symbol. I'm not quite sure why it should actually fail to link for you, since it works here, but if you've got a workaround that should be enough for the moment. I'll correct it in the code in the mean time.
--- Quote from: lorenzosu on April 15, 2011, 16:39:09 ---But then I get an error:
../svapp/libsvapp.a(AudioTargetFactory.o): In function `AudioTargetFactory::createCallbackTarget(AudioCallbackPlaySource*)':
AudioTargetFactory.cpp:(.text+0x76f): undefined reference to `AudioJACKTarget::AudioJACKTarget(AudioCallbackPlaySource*)'
AudioTargetFactory.cpp:(.text+0xb54): undefined reference to `AudioJACKTarget::AudioJACKTarget(AudioCallbackPlaySource*)'
At this point I'm pretty much stuck. Any hint would be appreciated.
--- End quote ---
Can you delete svapp/o/AudioJACKTarget.o and re-run make in the svapp directory, and paste the g++ command that make runs?
Chris
Navigation
[0] Message Index
[#] Next page
Go to full version