Jump to content

h264 problem with 4.5.0.10 beta


Recommended Posts

_NoName_
Posted

I have been unable to watch h264 encoded media with 4.5.0.9 and 4.5.0.10.  When I review the logs, it appears that h264 support is missing from ffmpeg.

 

Emby is running in a jail (FrreBSD 11.3) and was installed via the "pkg add" command.  Prior to 4.5.0.9 everything was working.

2020-05-12 17:45:57.562 Error HttpServer: Error processing request
	*** Error Report ***
	Version: 4.5.0.10
	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.3.6.0
	64-Bit OS: True
	64-Bit Process: True
	User Interactive: False
	Mono: 5.10.1.57 (5.10.1.57 Tue Mar 10 02:43:30 UTC 2020)
	Runtime: file:///usr/local/lib/mono/4.5/mscorlib.dll
	System.Environment.Version: 4.0.30319.42000
	Processor count: 4
	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'
	
	
	>>>>>>  FindVideoEncoder - Media: h264, UseHardwareCodecs: True, Mode: Automatic
	
	  at Emby.Server.MediaEncoding.Encoder.TranscodingCommandBuilder.FindVideoEncoder (Emby.Server.MediaEncoding.Encoder.EncodingJobInfo state, MediaBrowser.Controller.MediaEncoding.CodecParameterContext parameterContext) [0x00183] in <c93bd8df578e48f7b450e486e0ffcc86>:0 
	  at Emby.Server.MediaEncoding.Encoder.TranscodingCommandBuilder.HlsGetCommandLineArguments (System.String outputPath, Emby.Server.MediaEncoding.Api.StreamState state, System.Int32 startNumber, System.Boolean createSubtitleParameters, System.Boolean isForTv, System.String segmentFileExtension) [0x0005b] in <c93bd8df578e48f7b450e486e0ffcc86>:0 
	  at Emby.Server.MediaEncoding.Api.Hls.DynamicHlsService.GetCommandLineArguments (System.String outputPath, Emby.Server.MediaEncoding.Api.StreamState state) [0x0001b] in <c93bd8df578e48f7b450e486e0ffcc86>:0 
	  at Emby.Server.MediaEncoding.Api.BaseStreamingService+<StartFfMpeg>d__52.MoveNext () [0x00311] in <c93bd8df578e48f7b450e486e0ffcc86>: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 () [0x007c4] in <c93bd8df578e48f7b450e486e0ffcc86>: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.ServiceController+<GetTaskResult>d__12.MoveNext () [0x00081] in <374aa6ca269b493ab3f6b72664d2943d>: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__4.MoveNext () [0x001da] in <374aa6ca269b493ab3f6b72664d2943d>: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__46.MoveNext () [0x00b72] in <374aa6ca269b493ab3f6b72664d2943d>:0 
	Source: mscorlib
	TargetSite: Void Throw()

 

Earlier in the log file, I see the following when emby server starts

2020-05-12 17:44:25.934 Info FfmpegManager: ProcessRun 'ffmpeg -hide_banner -version' Execute: /usr/local/lib/emby-server/bin/ffmpeg -hide_banner -version
2020-05-12 17:44:26.434 Info FfmpegManager: ProcessRun 'ffmpeg -hide_banner -version' Process exited with code 1
2020-05-12 17:44:26.435 Error FfmpegManager: ProcessRun 'ffmpeg -hide_banner -version' Output:
	
2020-05-12 17:44:26.435 Error FfmpegManager: ProcessRun 'ffmpeg -hide_banner -version' Error Output:
	Shared object "libstdc++.so.6" not found, required by "libx265.so.188"
	
2020-05-12 17:44:26.438 Info FfmpegManager: ProcessRun 'ffmpeg -hide_banner -decoders' Execute: /usr/local/lib/emby-server/bin/ffmpeg -hide_banner -decoders
2020-05-12 17:44:26.914 Info FfmpegManager: ProcessRun 'ffmpeg -hide_banner -decoders' Process exited with code 1
2020-05-12 17:44:26.914 Error FfmpegManager: ProcessRun 'ffmpeg -hide_banner -decoders' Output:
	
2020-05-12 17:44:26.914 Error FfmpegManager: ProcessRun 'ffmpeg -hide_banner -decoders' Error Output:
	Shared object "libstdc++.so.6" not found, required by "libx265.so.188"
	
2020-05-12 17:44:26.914 Info FfmpegManager: ProcessRun 'ffmpeg -hide_banner -encoders' Execute: /usr/local/lib/emby-server/bin/ffmpeg -hide_banner -encoders
2020-05-12 17:44:27.386 Info FfmpegManager: ProcessRun 'ffmpeg -hide_banner -encoders' Process exited with code 1
2020-05-12 17:44:27.386 Error FfmpegManager: ProcessRun 'ffmpeg -hide_banner -encoders' Output:
	
2020-05-12 17:44:27.386 Error FfmpegManager: ProcessRun 'ffmpeg -hide_banner -encoders' Error Output:
	Shared object "libstdc++.so.6" not found, required by "libx265.so.188"
	
2020-05-12 17:44:27.386 Info FfmpegManager: ProcessRun 'ffmpeg -hide_banner -hwaccels' Execute: /usr/local/lib/emby-server/bin/ffmpeg -hide_banner -hwaccels
2020-05-12 17:44:27.885 Info FfmpegManager: ProcessRun 'ffmpeg -hide_banner -hwaccels' Process exited with code 1
2020-05-12 17:44:27.885 Error FfmpegManager: ProcessRun 'ffmpeg -hide_banner -hwaccels' Output:
	
2020-05-12 17:44:27.885 Error FfmpegManager: ProcessRun 'ffmpeg -hide_banner -hwaccels' Error Output:
	Shared object "libstdc++.so.6" not found, required by "libx265.so.188"
	
2020-05-12 17:44:27.886 Info FfmpegManager: ProcessRun 'ffmpeg -hide_banner -protocols' Execute: /usr/local/lib/emby-server/bin/ffmpeg -hide_banner -protocols
2020-05-12 17:44:28.368 Info FfmpegManager: ProcessRun 'ffmpeg -hide_banner -protocols' Process exited with code 1
2020-05-12 17:44:28.369 Error FfmpegManager: ProcessRun 'ffmpeg -hide_banner -protocols' Output:
	
2020-05-12 17:44:28.369 Error FfmpegManager: ProcessRun 'ffmpeg -hide_banner -protocols' Error Output:
	Shared object "libstdc++.so.6" not found, required by "libx265.so.188"
	
2020-05-12 17:44:28.369 Info FfmpegManager: ProcessRun 'ffmpeg -hide_banner -filters' Execute: /usr/local/lib/emby-server/bin/ffmpeg -hide_banner -filters
2020-05-12 17:44:28.847 Info FfmpegManager: ProcessRun 'ffmpeg -hide_banner -filters' Process exited with code 1
2020-05-12 17:44:28.848 Error FfmpegManager: ProcessRun 'ffmpeg -hide_banner -filters' Output:
	
2020-05-12 17:44:28.848 Error FfmpegManager: ProcessRun 'ffmpeg -hide_banner -filters' Error Output:
	Shared object "libstdc++.so.6" not found, required by "libx265.so.188"

 

Posted

Hi there, please attach the complete emby server log. Thanks.

Posted

Also what was the pkg add command that you used?

_NoName_
Posted

I used the following command to install the update

pkg add -f https://github.com/MediaBrowser/Emby.Releases/releases/download/4.5.0.10/emby-server-freebsd11_4.5.0.10_amd64.txz

The server log is attached

embyserver.txt

Posted

Is that all you did?

_NoName_
Posted

For the update, yes.  For the initial install i did

pkg install mono libass fontconfig freetype2 fribidi gnutls iconv opus sqlite3 libtheora libva libvpx libvorbis webp libx264 x265 dav1d libzvbi libraw ImageMagick6

and

pkg add https://github.com/MediaBrowser/Emby.Releases/releases/download/4.4.0.40/emby-server-freebsd11_4.4.0.40_amd64.txz

I did not need samba installed in the jail, so I omitted it.

_NoName_
Posted

It appears that the libx265 that is part of the emby-server package is dynamically linked to libstdc++, which is not part of the emby-server package nor is any dependency listed.  I'm keeping this jail as clean as I can to facilitate the beta testing, so there are not many packages installed.

/usr/local/lib/emby-server/lib/libx265.so.188:
	libthr.so.3 => /lib/libthr.so.3 (0x801695000)
	libdl.so.1 => /usr/lib/libdl.so.1 (0x8018bd000)
	libstdc++.so.6 => not found (0)
	libm.so.5 => /lib/libm.so.5 (0x801abe000)
	libc.so.7 => /lib/libc.so.7 (0x800825000)

The libx265 provided by ports

/usr/local/lib/libx265.so.179:
	libthr.so.3 => /lib/libthr.so.3 (0x801749000)
	librt.so.1 => /usr/lib/librt.so.1 (0x801971000)
	libdl.so.1 => /usr/lib/libdl.so.1 (0x801b77000)
	libc++.so.1 => /usr/lib/libc++.so.1 (0x801d78000)
	libcxxrt.so.1 => /lib/libcxxrt.so.1 (0x802047000)
	libm.so.5 => /lib/libm.so.5 (0x802266000)
	libc.so.7 => /lib/libc.so.7 (0x800825000)
	libgcc_s.so.1 => /lib/libgcc_s.so.1 (0x802496000)

 

Posted

You still need to install all of the required packages. The ffmpeg build will fail without them.

_NoName_
Posted

I was able to get h264 videos working by installing the gcc10-devel package, which provides libstdc++. 

 

FWIW, the samba48 package is deprecated and has been replaced with samba410. 

Posted

Our package doesn't directly depend on samba anymore.

Create an account or sign in to comment

You need to be a member in order to leave a comment

Create an account

Sign up for a new account in our community. It's easy!

Register a new account

Sign in

Already have an account? Sign in here.

Sign In Now
×
×
  • Create New...