Skip to main content
Topic: No audio from Foobar in Linux (Read 765 times) previous topic - next topic
0 Members and 2 Guests are viewing this topic.

No audio from Foobar in Linux

Following a fresh install of Xubuntu 20.04.1, I'm unable to hear music played on Foobar2000_­v1.6.. It worked perfectly for several years on my previous Xubuntu installation. It appears to be correctly installed under Wine – my music library is loaded and the .mp3 tracks appear to be playing, but no audio. Testing with cfg produces a sound. Output is through PulseAudio. YouTube and vlc play audible music. The issue seems to be that Preferences>Output>Device provides no options, showing only Null Output and nothing in the drop-down menu. Have found no information on how to correct this.
Despite what some say, Foobar doesn’t have a Linux alternative that matches it, especially if one wants a fast, highly customizable player able to organize a very large music collection and recognize the Composer tag. So, I’d love to have this issue resolved.

Re: No audio from Foobar in Linux

Reply #1
Is the wine audio driver set to pulseaudio? In winecfg it states it at the top under 'driver diagnostics'

Re: No audio from Foobar in Linux

Reply #2
Yes. Everything under the Audio tab in Wine configuration is set to Pulseaudio.

Re: No audio from Foobar in Linux

Reply #3
Is the Windows version in winecfg set to something like 7 or later?

Re: No audio from Foobar in Linux

Reply #4
No sure what you mean. I see nothing about Windows in winecfg and have no Windows OS installed.

Re: No audio from Foobar in Linux

Reply #5
On the Applications tab of winecfg, at the bottom, you can choose the Windows version. Since 1.6 foobar uses a different audio API that was first introduced in Vista I think, so maybe if that option is set to XP it won't present the right API to foobar. Try changing it to 7 or 10

Re: No audio from Foobar in Linux

Reply #6
Thanks for that. It was set to 7. I changed it to 10 but that didn't alter the foobar Device Null Output.

Re: No audio from Foobar in Linux

Reply #7
I'm out of ideas. Maybe try a clean wine prefix just to see if it works there? You could try my component

Re: No audio from Foobar in Linux

Reply #8
I appreciate the help. Will wait a few days to see if anyone comes up with a solution. If not, will try your suggestions. In the meantime will use Quod Libet, one of the very few players that recognizes the Composer tag. Not very customizable but is the best alternative I've found for meeting my requirements.

Re: No audio from Foobar in Linux

Reply #9
I deleted Wine, then re-installed and ran wine foobar2000_v1.6.exe. The winecfg and Foobar Null Output were unchanged. The output following that command might provide some clues about the problem to someone knowledgeable about this. There seem to be a lot of errors, but often apparent errors aren't problematic so I've no idea how meaningful the output is. As this is the only program I've ever installed with Wine, my experience with it is limited and I haven't used Windows since XP.
alex@Desktop:~/Downloads$ wine foobar2000_v1.6.exe
0009:err:winediag:SECUR32_initNTLMSP ntlm_auth was not found or is outdated. Make sure that ntlm_auth >= 3.0.25 is in your path. Usually, you can find it in the winbind package of your distribution.
alex@Desktop:~/Downloads$ 002d:err:winediag:SECUR32_initNTLMSP ntlm_auth was not found or is outdated. Make sure that ntlm_auth >= 3.0.25 is in your path. Usually, you can find it in the winbind package of your distribution.
002d:err:ole:CoGetClassObject class {00000320-0000-0000-c000-000000000046} not registered
002d:err:ole:CoGetClassObject no class object {00000320-0000-0000-c000-000000000046} could be created for context 0x80000001
002d:err:ole:CoGetClassObject class {00000320-0000-0000-c000-000000000046} not registered
002d:err:ole:CoGetClassObject no class object {00000320-0000-0000-c000-000000000046} could be created for context 0x80000001
002d:err:ole:StdMarshalImpl_MarshalInterface Failed to create ifstub, hres=0x80004002
002d:err:ole:CoMarshalInterface Failed to marshal the interface {00000122-0000-0000-c000-000000000046}, 80004002
002d:err:ole:CoGetClassObject class {00000320-0000-0000-c000-000000000046} not registered
002d:err:ole:CoGetClassObject no class object {00000320-0000-0000-c000-000000000046} could be created for context 0x80000001
002d:err:ole:CoGetClassObject class {00000320-0000-0000-c000-000000000046} not registered
002d:err:ole:CoGetClassObject no class object {00000320-0000-0000-c000-000000000046} could be created for context 0x80000001
002d:err:ole:StdMarshalImpl_MarshalInterface Failed to create ifstub, hres=0x80004002
002d:err:ole:CoMarshalInterface Failed to marshal the interface {00000122-0000-0000-c000-000000000046}, 80004002
002d:err:ole:CoGetClassObject class {00000320-0000-0000-c000-000000000046} not registered
002d:err:ole:CoGetClassObject no class object {00000320-0000-0000-c000-000000000046} could be created for context 0x80000001
002d:err:ole:CoGetClassObject class {00000320-0000-0000-c000-000000000046} not registered
002d:err:ole:CoGetClassObject no class object {00000320-0000-0000-c000-000000000046} could be created for context 0x80000001
002d:err:ole:StdMarshalImpl_MarshalInterface Failed to create ifstub, hres=0x80004002
002d:err:ole:CoMarshalInterface Failed to marshal the interface {00000122-0000-0000-c000-000000000046}, 80004002
002d:err:ole:CoGetClassObject class {00000320-0000-0000-c000-000000000046} not registered
002d:err:ole:CoGetClassObject no class object {00000320-0000-0000-c000-000000000046} could be created for context 0x80000001
002d:err:ole:CoGetClassObject class {00000320-0000-0000-c000-000000000046} not registered
002d:err:ole:CoGetClassObject no class object {00000320-0000-0000-c000-000000000046} could be created for context 0x80000001
002d:err:ole:StdMarshalImpl_MarshalInterface Failed to create ifstub, hres=0x80004002
002d:err:ole:CoMarshalInterface Failed to marshal the interface {00000122-0000-0000-c000-000000000046}, 80004002
002d:err:ole:CoGetClassObject class {bcde0395-e52f-467c-8e3d-c4579291692e} not registered
002d:err:ole:CoGetClassObject class {bcde0395-e52f-467c-8e3d-c4579291692e} not registered
002d:err:ole:create_server class {bcde0395-e52f-467c-8e3d-c4579291692e} not registered
002d:err:ole:CoGetClassObject no class object {bcde0395-e52f-467c-8e3d-c4579291692e} could be created for context 0x17
002d:err:ole:CoGetClassObject class {bcde0395-e52f-467c-8e3d-c4579291692e} not registered
002d:err:ole:CoGetClassObject class {bcde0395-e52f-467c-8e3d-c4579291692e} not registered
002d:err:ole:create_server class {bcde0395-e52f-467c-8e3d-c4579291692e} not registered
002d:err:ole:CoGetClassObject no class object {bcde0395-e52f-467c-8e3d-c4579291692e} could be created for context 0x17
002d:err:ole:CoGetClassObject class {bcde0395-e52f-467c-8e3d-c4579291692e} not registered
002d:err:ole:CoGetClassObject class {bcde0395-e52f-467c-8e3d-c4579291692e} not registered
002d:err:ole:create_server class {bcde0395-e52f-467c-8e3d-c4579291692e} not registered
002d:err:ole:CoGetClassObject no class object {bcde0395-e52f-467c-8e3d-c4579291692e} could be created for context 0x17
alex@Desktop:~/Downloads$

Re: No audio from Foobar in Linux

Reply #10
Are you sure you have the 32 bit version of ALSA libraries, and/or the 32 bit version of libpulse installed?

Re: No audio from Foobar in Linux

Reply #11
Yes, I'm pretty sure I did that.

Re: No audio from Foobar in Linux

Reply #12
I googled some of the error lines and tried the suggested solutions without success.
I then removed Wine, installed PlayOnLinux, and installed Foobar with that -- same Null Output problem.
Then deleted all that and installed Foobar with a snap package. That solved the problem and Foobar now has audio and so far performs as it should. The snap process was much simpler than the other processes. The only issue was that Foobar didn't appear in the applications menu, but that was easily fixed.
Still no wiser about what went wrong, but at least Foobar is functioning.
Thanks for the help.

Re: No audio from Foobar in Linux

Reply #13
I don't know if it's related, but I was having a similar issue. When I tried to play any songs, they wouldn't start (the time bar didn't move at all) despite it showing "Opening track for playback" in the console tab.
If I changed the "Preferences > Playback > Output > Device" to "Null Output". The time bar started moving, but no audio was played (because it was "null output" duh, but that shows that my output was apparently broken).
I was also getting a 7-zip lib deprecation notice when this started happening.
Then I noticed on the foobar changelog (1.6):

Quote
  • Default output mode is now WASAPI shared
  • Default archive reader now supports 7-zip format

So I kind of found out the upgrade to 1.6 was to blame.
When I installed Case's WASAPI shared output, and changed "Preferences > Playback > Output > Device" to the newly added option "WASAPI (shared) : Default Sound Device" my audio started working again.
I hope this helps someone!

Re: No audio from Foobar in Linux

Reply #14
Thanks lucas. The problem you encountered appears to be much the same as the one I faced, and your solution may have resolved it for me as well. But I should point out that I had the same issue with 1.5.5 as well as 1.6. Snap installed 1.6 and it's been running flawlessly.

Re: No audio from Foobar in Linux

Reply #15
I'm running it through Snap on Ubuntu 18.04 for the record, and I just found out a problem with my solution in my setup. With the "WASAPI" device, the audio starts stuttering after a while. When reading your reply just now, LinuxLifer, I decided to tweak things one more time and went back to my "Default : Primary Sound Driver" (or just "Primary Sound Driver" if you don't have "WASAPI" or anything similar installed) and changed the "Buffer length" ("Preferences > Playback > Output > Buffer length").
I'm still not sure of what's going on, but with the "Default : Primary Sound Driver", if the buffer length is +10s, stuff won't play (seekbar won't even move). When I lower it to 3~5s the player starts working again. So I'm keeping it at 5s. And since I changed the device back to "Default : Primary Sound Driver" it's not stuttering anymore.
Again, despite LinuxLifer finding out a solution already by removing it all and installing fb2k through Snap, I'm leaving this to help anyone who might stumble with this problem (as I was running it through Snap already and it happened to me regardless).

Re: No audio from Foobar in Linux

Reply #16
For the record, I have Pulseaudio as the Output Device. In addition to Null Output, the only the other option provided is Primary Sound Driver.  Buffer length is 1000 ms, which appears to be the default and I didn't tinker with it.

 
SimplePortal 1.0.0 RC1 © 2008-2020