Page 1 of 1

Unknown encoder 'libmp3lame'

PostPosted: Wed Dec 10, 2014 3:45 pm
by Neumann
Hi,

I 'm new here, and new as well to NAS, not to speak of Linux/Unix. Yet, guided by the TheSwede86's excellent procedure here, I managed to install Serviio 1.4.1.2 on my Zyxel NSA325-v2, firmware V4.71(AALS.0), and FFP version 0.7/arm. It runs like a charm, and I greatly appreciate the way Serviio handles access rights and controls distribution. I have turned off entirely the built-in Twonky server and changed all those public shares into private ones.

Just one thing is disturbing. Something seems to go wrong with ffmpeg/lame handling (presumably libmp3lame) in transcoding to flv for the Mediabrowser, in this case running on my PC (Windows 7 x64, Firefox 34.0.5, Adobe Flash Player 15.0.0.239). When I try to play a movie (mkv), it will not start, and the serviio.log will show something like this:

  Code:
    2014-12-09 10:43:48,144 WARN  [ServiioStatusService] IOException occured. Returning error code 500 to the REST layer. Message: Transcoded file '/ffp/tmp/Serviio/transcoding-temp-5885-flv_player-ORIGINAL.stf' cannot be found, FFmpeg execution probably failed
    2014-12-09 10:43:48,656 WARN  [ProcessExecutor] Process ffmpeg has a return code of 1! This is a possible error. Detailed output follows.
    Metadata:
    title           : 01:37:00.760
    Stream #0:0(eng): Video: h264, yuv420p, 1920x808 [SAR 1:1 DAR 240:101], 25 fps, 25 tbr, 1k tbn, 50 tbc (default)
    Stream #0:1(ger): Audio: dts, 48000 Hz, 5.1(side), fltp, 1536 kb/s (default)
    Unknown encoder 'libmp3lame'


I'm using ffmpeg-1.2.1-arm-1.txz and lame-3.99.5-arm-1.txz. On start-up, the log for ffmpeg shows:

  Code:
    2014-12-10 07:01:44,533 INFO  [FFMPEGWrapper] Found FFmpeg: ffmpeg version 1.2.1 Copyright (c) 2000-2013 the FFmpeg developers
    2014-12-10 07:01:44,534 WARN  [FFMPEGWrapper] FFmpeg is not compiled with librtmp support, RTMP streaming will not work.
    2014-12-10 07:01:44,534 WARN  [FFMPEGWrapper] FFmpeg is not compiled with libass support, rendering subtitles (hardsubs) will not work.


On the command line, I get:

  Code:
:~# ffmpeg -version

    ffmpeg version 1.2.1
    built on Jun 24 2013 07:49:34 with gcc 4.5.4 (GCC) 20111110 (prerelease)
    configuration: --prefix=/ffp --disable-static --enable-shared --enable-gpl --enable-version3 --enable-nonfree --enable-small --disable-encoder=aac --disable-decoder=aac --disable-armv6 --disable-armv6t2 --disable-amd3dnow --disable-amd3dnowext --disable-mmx --disable-mmxext --disable-sse --disable-sse2 --disable-sse3 --disable-ssse3 --disable-sse4 --disable-sse42 --disable-vfp --disable-mips32r2 --disable-mipsdspr1 --disable-mipsdspr2 --disable-mipsfpu --enable-zlib --enable-postproc --enable-swscale
    libavutil      52. 18.100 / 52. 18.100
    libavcodec     54. 92.100 / 54. 92.100
    libavformat    54. 63.104 / 54. 63.104
    libavdevice    54.  3.103 / 54.  3.103
    libavfilter     3. 42.103 /  3. 42.103
    libswscale      2.  2.100 /  2.  2.100
    libswresample   0. 17.102 /  0. 17.102
    libpostproc    52.  2.100 / 52.  2.100

:~# lame -?

    LAME 32bits version 3.99.5 (http://lame.sf.net)
    ...


I tried ffmpeg-2.1.3_git20140213-arm-0, but it refused to load, also complaining about a missing 'libmp3lame'. – Not that playing video in the Mediabrowser is directly vital for me. But I had a similar failure when trying to stream a video with DTS audio to an older LG TV (declared as Panasonic Viera (2010)) that by itself can only play AC3. I can't find the error output anymore. But I remember this worked with the same Serviio version that I had installed on my PC before.

As these are the only two cases involving actual transcoding I've tested, I suspect there's something wrong with the ffmpeg / lame libraries. Anyone got an idea? (Probably the NAS would be too slow anyway, but maybe not.)

Re: Unknown encoder 'libmp3lame'

PostPosted: Sun Dec 14, 2014 9:52 am
by Neumann
Solved. I tried ffmpeg-2.1.3_git20140213-arm-0 once more, this time also installing twolame. No more warnings even, the serviio.log shows:

    [FFMPEGWrapper] Found FFmpeg: ffmpeg version 2.1.3-compiled_by_barmalej2_for_Serviio1.4_and_MiniDLNA1.1.1 Copyright (c) 2000-2014 the FFmpeg developers

Video in MediaBrowser now works all right, but the NAS is way too slow. For my old LG TV, using the Panasonic Viera (2010) profile, Serviio / FFmpeg take about a minute for about a second of actual play time, as both video and audio seem to be transcoded. I'll see if I can find/make a profile that will leave the H264 video untouched and only transcode the audio from DTS to AC3. If this won't do it, well, I guess a new TV should be cheaper than a faster NAS.

Re: Unknown encoder 'libmp3lame'

PostPosted: Sun Dec 14, 2014 10:48 am
by NX3
Why not use a LG profile? Or find out what your LG does play native then make a profile?

Far cheaper than a new nas or tv....or even a cheap media player would do the job

Re: Unknown encoder 'libmp3lame'

PostPosted: Sun Dec 14, 2014 2:07 pm
by Neumann
Oh yeah, thanks. Looked into profiles.xml and found that the transcoding section for LG TV was commented out. Now it works, NAS at 100% cpu usage, but fine. Set my other, newer LG TV to Generic, so Serviio does not transcode DTS, which this LG model can play by itself.