Linux build 334 MP3s & AAC not playing [Solved - Upgraded ffmpeg]

Hi @support,

Since the last upgrade my collection of MP3s and AAC are not playing. Does not matter which endpoint I choose. All lossless formats work ok however.

This impacts also my internet radio which is also streamed as MP3. It is also not playing.

Let me know what other info may I provide you with to solve this?

Server: Linux 64bit build 334
Endpoint: Chord Dave, iPad

Thanks,
Stefan

Hi first line of support I know … but have you tried rebooting the Roon Core, Roon Remote and DAC?

PS what is build version of Roon Remote on the iPad?

Hi Carl,
Same behavior after reboot. Ipad is on the latest build 333.
Some more info: After choosing a mp3 or aac album I click to play the album. First song gets selected like normally and the animation on the left of the song title shows that it is playing. However the timeline cursor on the bottom is not moving and the timmer stays at 0:00. I can manually move the cursor to advance in the song, but the cursor never moves from its new position. No sound is coming out during this.
Could it be related to the new 24bit processing of mp3s?

Let’s ask @support.

This is entirely possible, though we tried fairly hard not to break anything. Could you tell me a little about the Linux machine that you’re running the core on? Specifically, I’d like to know what Linux distribution you’re using and the output of the following commands:

ffmpeg -version
ffmpeg -decoders

1 Like

I’m running the Linux RoonServer on the following:
ReadyNAS OS6.9.3
Debian 8 (jessie)
Here are the outputs.

$ ffmpeg -version
ffmpeg version 3.4.1 Copyright © 2000-2017 the FFmpeg developers
built with gcc 4.9.2 (Debian 4.9.2-10)
configuration: --prefix=/usr --extra-cflags=’-g -O2 -fstack-protector-strong -Wformat -Werror=format-security ’ --extra-ldflags=’-Wl,-z,relro’ --cc=cc --libdir=/usr/lib/x86_64-linux-gnu --shlibdir=/usr/lib/x86_64-linux-gnu --enable-shared --disable-stripping --enable-small --disable-amd3dnow --disable-cuvid --disable-cuda --disable-bsfs --disable-ffserver --enable-avresample --disable-devices --disable-protocols --enable-protocol=file --enable-protocol=pipe --disable-parsers --enable-parser=aac --enable-parser=ac3 --enable-parser=dvbsub --enable-parser=dvdsub --enable-parser=flac --enable-parser=h261 --enable-parser=h263 --enable-parser=h264 --enable-parser=mjpeg --enable-parser=mlp --enable-parser=mpeg4video --enable-parser=mpegaudio --enable-parser=mpegvideo --enable-parser=vc1 --enable-parser=vorbis --enable-parser=vp3 --enable-parser=vp8 --disable-demuxers --enable-demuxer=aac --enable-demuxer=ac3 --enable-demuxer=aiff --enable-demuxer=asf --enable-demuxer=avi --enable-demuxer=dts --enable-demuxer=dv --enable-demuxer=eac3 --enable-demuxer=flac --enable-demuxer=flv --enable-demuxer=h261 --enable-demuxer=h263 --enable-demuxer=h264 --enable-demuxer=matroska --enable-demuxer=mjpeg --enable-demuxer=mov --enable-demuxer=m4v --enable-demuxer=mp3 --enable-demuxer=mpegps --enable-demuxer=mpegts --enable-demuxer=mpegtsraw --enable-demuxer=mpegvideo --enable-demuxer=ogg --enable-demuxer=rtsp --enable-demuxer=vc1 --enable-demuxer=wav --disable-decoders --enable-decoder=aac --enable-decoder=alac --enable-decoder=eac3 --enable-decoder=flac --enable-decoder=flv --enable-decoder=h264 --enable-decoder=mp3 --enable-decoder=mpeg2video --enable-decoder=mpeg4 --enable-decoder=pcm_s16be --enable-decoder=pcm_s16le --enable-decoder=vorbis --enable-decoder=wmalossless --enable-decoder=wmapro --enable-decoder=wmav1 --enable-decoder=wmav2 --disable-muxers --enable-muxer=mp3 --enable-muxer=pcm_s16be --enable-muxer=pcm_s16le --disable-encoders --enable-libmp3lame --enable-encoder=libmp3lame --enable-encoder=pcm_s16be --enable-encoder=pcm_s16le --disable-filters --enable-filter=aresample
libavutil 55. 78.100 / 55. 78.100
libavcodec 57.107.100 / 57.107.100
libavformat 57. 83.100 / 57. 83.100
libavdevice 57. 10.100 / 57. 10.100
libavfilter 6.107.100 / 6.107.100
libavresample 3. 7. 0 / 3. 7. 0
libswscale 4. 8.100 / 4. 8.100
libswresample 2. 9.100 / 2. 9.100

$ ffmpeg -decoders
ffmpeg version 3.4.1 Copyright © 2000-2017 the FFmpeg developers
built with gcc 4.9.2 (Debian 4.9.2-10)
configuration: --prefix=/usr --extra-cflags=’-g -O2 -fstack-protector-strong -Wformat -Werror=format-security ’ --extra-ldflags=’-Wl,-z,relro’ --cc=cc --libdir=/usr/lib/x86_64-linux-gnu --shlibdir=/usr/lib/x86_64-linux-gnu --enable-shared --disable-stripping --enable-small --disable-amd3dnow --disable-cuvid --disable-cuda --disable-bsfs --disable-ffserver --enable-avresample --disable-devices --disable-protocols --enable-protocol=file --enable-protocol=pipe --disable-parsers --enable-parser=aac --enable-parser=ac3 --enable-parser=dvbsub --enable-parser=dvdsub --enable-parser=flac --enable-parser=h261 --enable-parser=h263 --enable-parser=h264 --enable-parser=mjpeg --enable-parser=mlp --enable-parser=mpeg4video --enable-parser=mpegaudio --enable-parser=mpegvideo --enable-parser=vc1 --enable-parser=vorbis --enable-parser=vp3 --enable-parser=vp8 --disable-demuxers --enable-demuxer=aac --enable-demuxer=ac3 --enable-demuxer=aiff --enable-demuxer=asf --enable-demuxer=avi --enable-demuxer=dts --enable-demuxer=dv --enable-demuxer=eac3 --enable-demuxer=flac --enable-demuxer=flv --enable-demuxer=h261 --enable-demuxer=h263 --enable-demuxer=h264 --enable-demuxer=matroska --enable-demuxer=mjpeg --enable-demuxer=mov --enable-demuxer=m4v --enable-demuxer=mp3 --enable-demuxer=mpegps --enable-demuxer=mpegts --enable-demuxer=mpegtsraw --enable-demuxer=mpegvideo --enable-demuxer=ogg --enable-demuxer=rtsp --enable-demuxer=vc1 --enable-demuxer=wav --disable-decoders --enable-decoder=aac --enable-decoder=alac --enable-decoder=eac3 --enable-decoder=flac --enable-decoder=flv --enable-decoder=h264 --enable-decoder=mp3 --enable-decoder=mpeg2video --enable-decoder=mpeg4 --enable-decoder=pcm_s16be --enable-decoder=pcm_s16le --enable-decoder=vorbis --enable-decoder=wmalossless --enable-decoder=wmapro --enable-decoder=wmav1 --enable-decoder=wmav2 --disable-muxers --enable-muxer=mp3 --enable-muxer=pcm_s16be --enable-muxer=pcm_s16le --disable-encoders --enable-libmp3lame --enable-encoder=libmp3lame --enable-encoder=pcm_s16be --enable-encoder=pcm_s16le --disable-filters --enable-filter=aresample
libavutil 55. 78.100 / 55. 78.100
libavcodec 57.107.100 / 57.107.100
libavformat 57. 83.100 / 57. 83.100
libavdevice 57. 10.100 / 57. 10.100
libavfilter 6.107.100 / 6.107.100
libavresample 3. 7. 0 / 3. 7. 0
libswscale 4. 8.100 / 4. 8.100
libswresample 2. 9.100 / 2. 9.100
Decoders:
V… = Video
A… = Audio
S… = Subtitle
.F… = Frame-level multithreading
…S… = Slice-level multithreading
…X… = Codec is experimental
…B. = Supports draw_horiz_band
…D = Supports direct rendering method 1
V…BD flv (codec flv1)
V…BD h263
VFS…D h264
V.S.BD mpeg2video
VF…BD mpeg4
A…D aac
A…D ac3
AF…D alac
A…D eac3
AF…D flac
A…D mp3
A…D pcm_s16be
A…D pcm_s16le
A…D vorbis
A…D wmalossless
A…D wmapro
A…D wmav1
A…D wmav2

Another interesting observetaion. It seems my server is running in debug mode:

$ ps -ef | grep Roon
root 3022 1 0 08:01 ? 00:00:00 /bin/bash /opt/RoonServer/start.sh
root 3087 3022 0 08:01 ? 00:00:00 /opt/RoonServer/RoonMono/bin/RoonServer --debug --gc=sgen --server RoonServer.exe
root 3110 3087 3 08:01 ? 00:07:34 /opt/RoonServer/RoonMono/bin/RoonAppliance --debug --gc=sgen --server RoonAppliance.exe -watchdogport=35257
root 3115 3087 0 08:01 ? 00:00:00 /opt/RoonServer/Server/processreaper 3110
root 3284 3110 0 08:01 ? 00:00:03 /opt/RoonServer/RoonMono/bin/RAATServer --debug --gc=sgen --server RAATServer.exe

Since it runs in debug mode already, where can I see the logs? I had a look at my journalctl but nothing shows up in there. An I couldn’t find the logs in /opt/RoonServer. In /var/log there is no dir related to Roon.

Log files are in the RoonServer/Logs and RAATServer/Logs dirs in /var/roon.

Just adding a data point: running RoonServer on Arch troublefree with MP3/AAC (ffmpeg 4.01, kernel 4.17.4)

Hi @StefanK ---- Thank you for the report and the continued feedback. The insight is very appreciated!

Moving forward, I would like to enable diagnostics on your account so our tech team can have a closer look into this behavior for you. However, before I go ahead and enable this feature, may I very kindly ask you for the following:

  • Please play an MP3 file via Roon and note the…

    • Time of day when the error occurs and what track was being played.
  • Please play an AAC file via Roon and note the…

    • Time of day when the error occurs and what track was being played.

Once the issue has been reproduced and the time has been noted I will go ahead and enable the mentioned diagnostics.

-Eric

Hi @eric,

Yes, sure let me know if I need to provide some access over the firewall.
MP3 test: 08/07 at 19:58 CEST
Track: To Pasteur (This Is Kevin/Slowly to the sun)
AAC test: 08/07 at 20:04 CEST
Track: Uzziel (John Zorn/Book of Angels)

One extra observation. After playing single mp3/aac the endpoint is blocked and does not play even flac songs. Only way to fix this for now is to transfer some playing flac drom another zone.

I finally found the logs: /aaps/roon/RoonServer/Logs
When I get some time I will try to see if anything is popping up.
Possibly new version of ffmpeg is needed, as Rene pointed out he has no issue on his system.

Hello @StefanK,

Thank you for providing those timestamps. I have gone ahead and enabled diagnostics mode for your account but unfortunately we have not received any diagnostic information from your machine yet, possibly due to the firewall you have active. I will PM you shortly on how to manually submit those log files for further analysis. It may also be worthwhile to have the new version of ffmpeg installed as well as Rene suggested.

Thanks,
Noris

So I’ve upgraded to the latest version of ffmpeg from github and now all is working again.
Apparently the ffmpeg 3.4.1 I was using had issue with the latest 334 Roon build.

Thanks for all the support from the Roon team and @RBM for pointing me at the right direction.

1 Like

Glad to hear that upgrading ffmpeg has solved the issue @StefanK! If you run into any more issues, don’t hesitate to contact us again!

Thanks,
Noris

I’m glad to hear that you got this working for you (and sorry I didn’t see your response to my questions before you managed to figure it out on your own). I just wanted to clarify that I don’t think the version of ffmpeg you had before was too old, but rather built in some way where it wasn’t working right, perhaps due to some functionality that wasn’t included at configure/build time. If you want the full benefits of the recent changes we made to AAC/MP3 decoding, you’ll want to make sure that your ffmpeg -decoders output includes the following two lines:

 A....D aac_fixed            AAC (Advanced Audio Coding) (codec aac)
 A....D mp3float             MP3 (MPEG audio layer 3) (codec mp3)

In the case of AAC, it was determined through (my own entirely subjective) testing that the aac_fixed decoder sounds better, while the mp3float decoder is the only mp3 decoder in ffmpeg capable of undithered output. We should fall back gracefully to the normal aac and mp3 decoders if the ones we prefer don’t exist, but something obviously went wrong in your case.

Was the version of ffmpeg you were using from a package provided by Debian, or was it something you built yourself?

Thanks for the info. Fortunately both of these are part of my new ffmpeg.
The one I had on the NAS before came as a standard package from Netgear.

This topic was automatically closed after 4 days. New replies are no longer allowed.