Jump to content


Photo

On the fly transcoding fails with Emby 4.2.0.5 BETA


  • Please log in to reply
20 replies to this topic

#1 vendion OFFLINE  

vendion

    Member

  • Members
  • 10 posts
  • Local time: 09:24 PM

Posted 12 May 2019 - 03:19 PM

Running Emby 4.2.0.5-BETA on a FreeBSD 11.2 Jail, the on the fly transcoding of a media file fails to run resulting in a "No compatible streams are currently available." error pop up. I have installed all the listed dependencies listed on https://emby.media/freebsd-server.html  but looking at the logs for my Emby server I see a lot of errors due to a missing library

2019-05-12 15:05:37.257 Error MediaEncoder: ProcessRun 'ffmpeg -hide_banner -encoders' Error Output:
    Shared object "libsmbclient.so.0" not found, required by "libavformat.so.58"

Not sure if this is what is causing the transcoding to fail or if it is something else. I also see the following error but I don't know if it's related to the above error:

2019-05-12 15:11:22.748 Error HttpServer: Error processing request
    *** Error Report ***
    Version: 4.2.0.5
    Command line: /usr/local/lib/emby-server/system/EmbyServer.exe -os freebsd -ffdetect /usr/local/lib/emby-server/bin/ffdetect -ffmpeg /usr/local/lib/emby-server/bin/ffmpeg -ffprobe /usr/local/lib/emby-server/bin/ffprobe -programdata /var/db/emby-server -updatepackage emby-server-freebsd11_{version}_amd64.txz
    Operating system: Unix 11.2.0.0
    64-Bit OS: True
    64-Bit Process: True
    User Interactive: False
    Mono: 5.10.1.57 (5.10.1.57 Sun Dec 23 02:16:34 UTC 2018)
    Runtime: file:///usr/local/lib/mono/4.5/mscorlib.dll
    Processor count: 8
    Program data path: /var/db/emby-server
    Application directory: /usr/local/lib/emby-server/system
    System.Exception: System.Exception: No video encoder found for 'h264'
    
    
    >>>>>>  FindVideoDecoder - MediaType: hevc, Mode: 1
    Info    FindVideoDecoder - Checking: 'Automatic software decoder' (Priority: 0)
    Info    FindVideoDecoder - Check successful - selecting 'Automatic software decoder'
    
    >>>>>>  FindVideoEncoder - Media: h264, UseHardwareCodecs: True, Mode: 1
    
      at Emby.Server.MediaEncoding.Encoder.EncodingHelper.GetVideoEncoder (Emby.Server.MediaEncoding.Encoder.EncodingJobInfo state, MediaBrowser.Model.Configuration.EncodingOptions encodingOptions) [0x00061] in <0658cf3ebb7c460f83ee6ee498e55098>:0
      at Emby.Server.MediaEncoding.Encoder.EncodingHelper.DynamicHlsGetCommandLineArguments (System.String outputPath, MediaBrowser.Model.Configuration.EncodingOptions encodingOptions, Emby.Server.MediaEncoding.Api.StreamState state, System.Int32 startNumber, System.Boolean createSubtitleParameters, System.String segmentFileExtension, System.Boolean isEncoding) [0x00009] in <0658cf3ebb7c460f83ee6ee498e55098>:0
      at Emby.Server.MediaEncoding.Api.Hls.DynamicHlsService.GetCommandLineArguments (System.String outputPath, MediaBrowser.Model.Configuration.EncodingOptions encodingOptions, Emby.Server.MediaEncoding.Api.StreamState state, System.Boolean isEncoding) [0x0001b] in <0658cf3ebb7c460f83ee6ee498e55098>:0
      at Emby.Server.MediaEncoding.Api.BaseStreamingService.GetOutputFilePath (Emby.Server.MediaEncoding.Api.StreamState state, MediaBrowser.Model.Configuration.EncodingOptions encodingOptions, System.String outputFileExtension) [0x00017] in <0658cf3ebb7c460f83ee6ee498e55098>:0
      at Emby.Server.MediaEncoding.Api.BaseStreamingService+<GetState>d__78.MoveNext () [0x00855] in <0658cf3ebb7c460f83ee6ee498e55098>:0
    --- End of stack trace from previous location where exception was thrown ---
      at System.Runtime.ExceptionServices.ExceptionDispatchInfo.Throw () [0x0000c] in <0e06830de9a44394a7e366951eabca52>:0
      at System.Runtime.CompilerServices.TaskAwaiter.ThrowForNonSuccess (System.Threading.Tasks.Task task) [0x0003e] in <0e06830de9a44394a7e366951eabca52>:0
      at System.Runtime.CompilerServices.TaskAwaiter.HandleNonSuccessAndDebuggerNotification (System.Threading.Tasks.Task task) [0x00028] in <0e06830de9a44394a7e366951eabca52>:0
      at System.Runtime.CompilerServices.TaskAwaiter.ValidateEnd (System.Threading.Tasks.Task task) [0x00008] in <0e06830de9a44394a7e366951eabca52>:0
      at System.Runtime.CompilerServices.ConfiguredTaskAwaitable`1+ConfiguredTaskAwaiter[TResult].GetResult () [0x00000] in <0e06830de9a44394a7e366951eabca52>:0
      at Emby.Server.MediaEncoding.Api.Hls.DynamicHlsService+<GetDynamicSegment>d__14.MoveNext () [0x000e1] in <0658cf3ebb7c460f83ee6ee498e55098>:0
    --- End of stack trace from previous location where exception was thrown ---
      at System.Runtime.ExceptionServices.ExceptionDispatchInfo.Throw () [0x0000c] in <0e06830de9a44394a7e366951eabca52>:0
      at System.Runtime.CompilerServices.TaskAwaiter.ThrowForNonSuccess (System.Threading.Tasks.Task task) [0x0003e] in <0e06830de9a44394a7e366951eabca52>:0
      at System.Runtime.CompilerServices.TaskAwaiter.HandleNonSuccessAndDebuggerNotification (System.Threading.Tasks.Task task) [0x00028] in <0e06830de9a44394a7e366951eabca52>:0
      at System.Runtime.CompilerServices.TaskAwaiter.ValidateEnd (System.Threading.Tasks.Task task) [0x00008] in <0e06830de9a44394a7e366951eabca52>:0
      at System.Runtime.CompilerServices.ConfiguredTaskAwaitable`1+ConfiguredTaskAwaiter[TResult].GetResult () [0x00000] in <0e06830de9a44394a7e366951eabca52>:0
      at Emby.Server.Implementations.Services.ServiceExecGeneral+<GetTaskResult>d__3.MoveNext () [0x00081] in <7c885746f3214ccab466bfbdb7e08aae>:0
    --- End of stack trace from previous location where exception was thrown ---
      at System.Runtime.ExceptionServices.ExceptionDispatchInfo.Throw () [0x0000c] in <0e06830de9a44394a7e366951eabca52>:0
      at System.Runtime.CompilerServices.TaskAwaiter.ThrowForNonSuccess (System.Threading.Tasks.Task task) [0x0003e] in <0e06830de9a44394a7e366951eabca52>:0
      at System.Runtime.CompilerServices.TaskAwaiter.HandleNonSuccessAndDebuggerNotification (System.Threading.Tasks.Task task) [0x00028] in <0e06830de9a44394a7e366951eabca52>:0
      at System.Runtime.CompilerServices.TaskAwaiter.ValidateEnd (System.Threading.Tasks.Task task) [0x00008] in <0e06830de9a44394a7e366951eabca52>:0
      at System.Runtime.CompilerServices.ConfiguredTaskAwaitable`1+ConfiguredTaskAwaiter[TResult].GetResult () [0x00000] in <0e06830de9a44394a7e366951eabca52>:0
      at Emby.Server.Implementations.Services.ServiceHandler+<ProcessRequestAsync>d__14.MoveNext () [0x00249] in <7c885746f3214ccab466bfbdb7e08aae>:0
    --- End of stack trace from previous location where exception was thrown ---
      at System.Runtime.ExceptionServices.ExceptionDispatchInfo.Throw () [0x0000c] in <0e06830de9a44394a7e366951eabca52>:0
      at System.Runtime.CompilerServices.TaskAwaiter.ThrowForNonSuccess (System.Threading.Tasks.Task task) [0x0003e] in <0e06830de9a44394a7e366951eabca52>:0
      at System.Runtime.CompilerServices.TaskAwaiter.HandleNonSuccessAndDebuggerNotification (System.Threading.Tasks.Task task) [0x00028] in <0e06830de9a44394a7e366951eabca52>:0
      at System.Runtime.CompilerServices.TaskAwaiter.ValidateEnd (System.Threading.Tasks.Task task) [0x00008] in <0e06830de9a44394a7e366951eabca52>:0
      at System.Runtime.CompilerServices.ConfiguredTaskAwaitable+ConfiguredTaskAwaiter.GetResult () [0x00000] in <0e06830de9a44394a7e366951eabca52>:0
      at Emby.Server.Implementations.HttpServer.HttpListenerHost+<RequestHandler>d__51.MoveNext () [0x00bb8] in <7c885746f3214ccab466bfbdb7e08aae>:0
    Source: mscorlib
    TargetSite: Void Throw()

I have attached the full log from my system as well.

Attached Files



#2 Luke OFFLINE  

Luke

    System Architect

  • Administrators
  • 129302 posts
  • Local time: 09:24 PM

Posted 12 May 2019 - 11:59 PM

Hi, did you try installing that missing library?



#3 vendion OFFLINE  

vendion

    Member

  • Members
  • 10 posts
  • Local time: 09:24 PM

Posted 13 May 2019 - 06:22 PM

Hi, did you try installing that missing library?

 

That library is present on my system

root@MediaSRV:~ # find / -type f -name "libsmbclient*"
/usr/local/lib/samba4/libsmbclient.so.0
/usr/local/lib/samba4/private/libsmbclient-raw-samba4.so
/usr/local/man/man7/libsmbclient.7.gz
/usr/ports/multimedia/ffmpeg/work/ffmpeg-4.1/libavformat/libsmbclient.c

Which that is provided by the samba48 package with currently is installed, unless that is no longer the correct version in which the dependency list (mono libass fontconfig freetype2 fribidi gnutls iconv opus samba48 sqlite3 libtheora libva libvorbis webp libx264 libzvbi libraw ImageMagick6) is out of date.


  • Baenwort likes this

#4 makarai OFFLINE  

makarai

    Advanced Member

  • Members
  • 485 posts
  • Local time: 03:24 AM

Posted 14 May 2019 - 01:48 AM

I suppose you ran the 

pkg update
pkg upgrade 

commands ?



#5 vendion OFFLINE  

vendion

    Member

  • Members
  • 10 posts
  • Local time: 09:24 PM

Posted 14 May 2019 - 09:12 PM

Yes all installed packages are current on this system:

root@MediaSRV:~ # pkg update
Updating FreeBSD repository catalogue...
FreeBSD repository is up to date.
All repositories are up to date.
root@MediaSRV:~ # pkg upgrade
Updating FreeBSD repository catalogue...
FreeBSD repository is up to date.
All repositories are up to date.
Checking for upgrades (4 candidates): 100%
Processing candidates (4 candidates): 100%
Checking integrity... done (0 conflicting)
Your packages are up to date.
root@MediaSRV:~ # pkg info samba48
samba48-4.8.11_1
Name           : samba48
Version        : 4.8.11_1
Installed on   : Sun Apr 28 19:51:24 2019 EDT
Origin         : net/samba48
Architecture   : FreeBSD:11:amd64
Prefix         : /usr/local
Categories     : net
Licenses       : GPLv3
Maintainer     : timur@FreeBSD.org
WWW            : http://www.samba.org/
Comment        : Free SMB/CIFS and AD/DC server and client for Unix
...

Now I am using the latest port branch rather than quarterly if that matters (the samba48 and such may be newer there).

root@MediaSRV:~ # foreach pkg ( mono libass fontconfig freetype2 fribidi gnutls iconv opus samba48 sqlite3 libtheora libva libvorbis webp libx264 libzvbi libraw ImageMagick6 )
foreach? echo $pkg
foreach? pkg info $pkg | grep Version
foreach? end
mono
Version        : 5.10.1.57_1
libass
Version        : 0.14.0
fontconfig
Version        : 2.12.6,1
freetype2
Version        : 2.9.1
fribidi
Version        : 0.19.7
gnutls
Version        : 3.6.7
iconv
Version        : 2.0_4
opus
Version        : 1.3.1
samba48
Version        : 4.8.11_1
sqlite3
Version        : 3.28.0
libtheora
Version        : 1.1.1_7
libva
Version        : 2.4.1
libvorbis
Version        : 1.3.6,3
webp
Version        : 1.0.2
libx264
Version        : 0.157.2945
libzvbi
Version        : 0.2.35_3
libraw
Version        : 0.19.2
ImageMagick6
Version        : 6.9.10.22_1,1

Edited by vendion, 14 May 2019 - 09:16 PM.


#6 makarai OFFLINE  

makarai

    Advanced Member

  • Members
  • 485 posts
  • Local time: 03:24 AM

Posted 15 May 2019 - 07:55 AM

 

Yes all installed packages are current on this system:

root@MediaSRV:~ # pkg update
Updating FreeBSD repository catalogue...
FreeBSD repository is up to date.
All repositories are up to date.
root@MediaSRV:~ # pkg upgrade
Updating FreeBSD repository catalogue...
FreeBSD repository is up to date.
All repositories are up to date.
Checking for upgrades (4 candidates): 100%
Processing candidates (4 candidates): 100%
Checking integrity... done (0 conflicting)
Your packages are up to date.
root@MediaSRV:~ # pkg info samba48
samba48-4.8.11_1
Name           : samba48
Version        : 4.8.11_1
Installed on   : Sun Apr 28 19:51:24 2019 EDT
Origin         : net/samba48
Architecture   : FreeBSD:11:amd64
Prefix         : /usr/local
Categories     : net
Licenses       : GPLv3
Maintainer     : timur@FreeBSD.org
WWW            : http://www.samba.org/
Comment        : Free SMB/CIFS and AD/DC server and client for Unix
...

Now I am using the latest port branch rather than quarterly if that matters (the samba48 and such may be newer there).

root@MediaSRV:~ # foreach pkg ( mono libass fontconfig freetype2 fribidi gnutls iconv opus samba48 sqlite3 libtheora libva libvorbis webp libx264 libzvbi libraw ImageMagick6 )
foreach? echo $pkg
foreach? pkg info $pkg | grep Version
foreach? end
mono
Version        : 5.10.1.57_1
libass
Version        : 0.14.0
fontconfig
Version        : 2.12.6,1
freetype2
Version        : 2.9.1
fribidi
Version        : 0.19.7
gnutls
Version        : 3.6.7
iconv
Version        : 2.0_4
opus
Version        : 1.3.1
samba48
Version        : 4.8.11_1
sqlite3
Version        : 3.28.0
libtheora
Version        : 1.1.1_7
libva
Version        : 2.4.1
libvorbis
Version        : 1.3.6,3
webp
Version        : 1.0.2
libx264
Version        : 0.157.2945
libzvbi
Version        : 0.2.35_3
libraw
Version        : 0.19.2
ImageMagick6
Version        : 6.9.10.22_1,1

 

quarterly vs latest

 

Yes that is the problem, as emby works on quarterly packages. Switch to the quarterly package set and retest. cheers



#7 vendion OFFLINE  

vendion

    Member

  • Members
  • 10 posts
  • Local time: 09:24 PM

Posted 15 May 2019 - 09:02 AM

Okay, running with latest hasn't been an issue before with emby's beta version, but I can switch back to quarterly and try again.


  • Baenwort likes this

#8 MRobi OFFLINE  

MRobi

    Advanced Member

  • Members
  • 244 posts
  • Local time: 10:24 PM

Posted 15 May 2019 - 02:14 PM

Running Emby 4.2.0.5-BETA on a FreeBSD 11.2 Jail, the on the fly transcoding of a media file fails to run resulting in a "No compatible streams are currently available." error pop up. I have installed all the listed dependencies listed on https://emby.media/freebsd-server.html  but looking at the logs for my Emby server I see a lot of errors due to a missing library


Did you upgrade or is this a new install?



#9 makarai OFFLINE  

makarai

    Advanced Member

  • Members
  • 485 posts
  • Local time: 03:24 AM

Posted 15 May 2019 - 04:33 PM

Okay, running with latest hasn't been an issue before with emby's beta version, but I can switch back to quarterly and try again.

 

I also recommend just installing a new jail and porting over your settings, its quite easy and takes literally less then 5 minutes



#10 vendion OFFLINE  

vendion

    Member

  • Members
  • 10 posts
  • Local time: 09:24 PM

Posted 17 May 2019 - 07:32 AM

I tried switching back to the quarterly branch and downgrade all my packages with no luck, so I just rebuilt my Jail and sitting on Emby 4.0.2.0 and everything is working now so I guess I'll just sit on the stable version for now. Digging through this forum it seems other users have ran into the same "missing" library issue even with samba48 installed out of the quarterly branch for Emby 4.1.x as well.

 

This also allowed me to redo the setup adding a second nullfs mount into the jail where the Backup & Restore plugin can do a nightly dump of my settings into to ease any future rebuilds of the jail.


  • Baenwort likes this

#11 Luke OFFLINE  

Luke

    System Architect

  • Administrators
  • 129302 posts
  • Local time: 09:24 PM

Posted 17 May 2019 - 10:14 AM

Yea it's because if you're going to use our downloadable packages, then your system needs to be running the exact same version of freebsd that the package was built for. And not only that but your installed packages as well.

The troubleshooting for this is starting to get painful to the point where I'm not sure how much longer we can continue like this.

If you install from freebsd ports then it will be much more flexible.

#12 metsuke OFFLINE  

metsuke

    Advanced Member

  • Members
  • 47 posts
  • Local time: 06:24 PM

Posted 19 May 2019 - 01:13 AM

Yea it's because if you're going to use our downloadable packages, then your system needs to be running the exact same version of freebsd that the package was built for. And not only that but your installed packages as well.

The troubleshooting for this is starting to get painful to the point where I'm not sure how much longer we can continue like this.

If you install from freebsd ports then it will be much more flexible.

 

Maybe beta users should only be supported when using the ports system?  I've only used ports and all my installs thus far have gone perfectly.



#13 Luke OFFLINE  

Luke

    System Architect

  • Administrators
  • 129302 posts
  • Local time: 09:24 PM

Posted 19 May 2019 - 01:44 AM

Unfortunately that's just not realistic because it is a manual process to put together the port submission and the betas move too quickly for that. Not to mention that it takes time for the submissions to get accepted and made available. I think at this point due to the current state of affairs it is looking like betas on FreeBSD are going to be for advanced users only.



#14 Baenwort OFFLINE  

Baenwort

    Advanced Member

  • Members
  • 144 posts
  • Local time: 02:24 AM

Posted 19 May 2019 - 11:49 PM

Yea it's because if you're going to use our downloadable packages, then your system needs to be running the exact same version of freebsd that the package was built for. And not only that but your installed packages as well.

The troubleshooting for this is starting to get painful to the point where I'm not sure how much longer we can continue like this.

If you install from freebsd ports then it will be much more flexible.

 

So what is the current advice for FreeBSD11.2/FreeNAS users? In this post: https://emby.media/c...e-4#entry735902 you recommend latest. Now you say Quarterly.

 

Also, from your following post you seem to be changing the recommendation from beta to stable but since some of us are trapped on beta, until the stable channel catches up to 4.2 or later, will exact guidance be provided on which packages each beta version should be paired with?



#15 alucryd OFFLINE  

alucryd

    Advanced Member

  • Members
  • 319 posts
  • Local time: 03:24 AM
  • LocationLille, France

Posted 20 May 2019 - 02:04 PM

@Baenwort The easiest would be to use our iocage plugin https://github.com/M...er/iocage-amd64

 

I just updated it to drop the dep on samba and add a dep on libvpx (builds with libvpx support are coming), it is temporarily pointing to the latest beta. As for quarterly vs latest, we were at some point targeting quarterly, but it was more trouble so we eventually switched to latest. This iocage plugin also reflects that (the fingerprint might need changing though, please let me know if it doesn't work.

 

We should have a guide somewhere to use it, I need to get my hands on it.


  • PhilWhite likes this

#16 vendion OFFLINE  

vendion

    Member

  • Members
  • 10 posts
  • Local time: 09:24 PM

Posted 20 May 2019 - 03:17 PM

@Baenwort The easiest would be to use our iocage plugin https://github.com/M...er/iocage-amd64

 

I just updated it to drop the dep on samba and add a dep on libvpx (builds with libvpx support are coming), it is temporarily pointing to the latest beta. As for quarterly vs latest, we were at some point targeting quarterly, but it was more trouble so we eventually switched to latest. This iocage plugin also reflects that (the fingerprint might need changing though, please let me know if it doesn't work.

 

We should have a guide somewhere to use it, I need to get my hands on it.

 

This is a bit contradictory, as a few posts up it was said to use quarterly not latest for the pkg port branch, and my problem happened while I was running Emby beta while using the latest port branch rather than quarterly.


  • Baenwort likes this

#17 Luke OFFLINE  

Luke

    System Architect

  • Administrators
  • 129302 posts
  • Local time: 09:24 PM

Posted 20 May 2019 - 03:28 PM

If you're installing from freebsd ports then you should be able to have your system configured any way you like, is that correct @alucryd?
 

If you're installing the downloadable package then you will need to be on latest. I apologize for the disruption, but we ran into some problems that required us to switch from quarterly to latest.



#18 vendion OFFLINE  

vendion

    Member

  • Members
  • 10 posts
  • Local time: 09:24 PM

Posted 20 May 2019 - 03:38 PM

Okay so I was in the right when running Emby 4.2.0.5 (the then latest beta) with latest packages, that is good to know in case I decide to switch back to the Beta as things there worked a bit better than they currently do in 4.0.2.x.

 

I do see that there is a new beta out, maybe that solves the issue where libsmbclient.so.0 could not be found by ffmpeg and such even though it was installed.



#19 alucryd OFFLINE  

alucryd

    Advanced Member

  • Members
  • 319 posts
  • Local time: 03:24 AM
  • LocationLille, France

Posted 20 May 2019 - 03:59 PM

This is a bit contradictory, as a few posts up it was said to use quarterly not latest for the pkg port branch, and my problem happened while I was running Emby beta while using the latest port branch rather than quarterly.

 

We don't rebuild our ffmpeg with every beta as it takes somewhere around 12h for freebsd 11 and 12 on our build environment (2 VMs on top of an already virtualized server, so no hardware acceleration), you might have stumbled upon a version that was built against a somewhat older version of the samba48 than the current one in latest. This will no longer be the case as of the latest beta since we're dropping this troublesome dependency. Other deps are less subject to soname bumps, and even then updated much faster in the ports tree so we know when we can expect one and do a full rebuild when it happens.


  • Baenwort likes this

#20 alucryd OFFLINE  

alucryd

    Advanced Member

  • Members
  • 319 posts
  • Local time: 03:24 AM
  • LocationLille, France

Posted 20 May 2019 - 04:01 PM

@Luke yes, building from the ports tree will always produce a fully working binary because ffmpeg will use what's installed on the system at buildtime.






0 user(s) are reading this topic

0 members, 0 guests, 0 anonymous users