Jump to content

Error starting ffmpeg


krzaku
Go to solution Solved by krzaku,

Recommended Posts

Regular mkv files seem to work fine, however when playing some of my old divx files i get this error. To top it of, it bugs the LG WebOS Emby app, and once I get this error I cannot exit the application, I have to restart the TV.

 

Emby log:

2018-10-22 18:10:03.742 Info App: /bin/ffmpeg -f avi -i file:"/a_movie.avi" -threads 0 -map 0:0 -map 0:1 -map -0:s -codec:v:0 libx264 -vf "scale=trunc(min(max(iw\,ih*dar)\,1280)/2)*2:trunc(ow/dar/2)*2" -pix_fmt yuv420p -preset veryfast -crf 23 -maxrate 2873910 -bufsize 5747820 -profile:v high -level 4.1 -x264opts:0 subme=0:me_range=4:rc_lookahead=10:me=dia:no_chroma_me:8x8dct=0:partitions=none -force_key_frames "expr:if(isnan(prev_forced_t),eq(t,t),gte(t,prev_forced_t+3))" -copyts -vsync -1 -codec:a:0 aac -strict experimental -ac 2 -ab 192000  -f segment -max_delay 5000000 -avoid_negative_ts disabled -map_metadata -1 -map_chapters -1 -start_at_zero -segment_time 3  -individual_header_trailer 0 -segment_format mpegts -segment_list_type m3u8 -segment_start_number 0 -segment_list "/config/transcoding-temp/04f902f6e56d9298bf324f442c179257.m3u8" -y "/config/transcoding-temp/04f902f6e56d9298bf324f442c179257%d.ts"
2018-10-22 18:10:03.820 Error HttpServer: Error processing request
	*** Error Report ***
	Version: 3.5.3.0
	Command line: /system/EmbyServer.dll -programdata /config -ffmpeg /bin/ffmpeg -ffprobe /bin/ffprobe -restartexitcode 3
	Operating system: Unix 4.14.40.0
	64-Bit OS: True
	64-Bit Process: True
	User Interactive: True
	Processor count: 4
	Program data path: /config
	Application directory: /system
	System.Exception: Error starting ffmpeg
	   at Emby.Server.MediaEncoding.Api.BaseStreamingService.StartFfMpeg(StreamState state, String outputPath, EncodingOptions encodingOptions, CancellationTokenSource cancellationTokenSource, Boolean acquireResources)
	   at Emby.Server.MediaEncoding.Api.Hls.DynamicHlsService.GetDynamicSegment(StreamRequest request, String segmentId)
	   at Emby.Server.Implementations.Services.ServiceExecGeneral.GetTaskResult(Task task)
	   at Emby.Server.Implementations.Services.ServiceHandler.ProcessRequestAsync(HttpListenerHost appHost, IRequest httpReq, IResponse httpRes, ILogger logger, String operationName, CancellationToken cancellationToken)
	   at Emby.Server.Implementations.HttpServer.HttpListenerHost.RequestHandler(IHttpRequest httpReq, String urlString, String host, String localPath, CancellationToken cancellationToken)
	System.Exception
	   at Emby.Server.MediaEncoding.Api.BaseStreamingService.StartFfMpeg(StreamState state, String outputPath, EncodingOptions encodingOptions, CancellationTokenSource cancellationTokenSource, Boolean acquireResources)
	   at Emby.Server.MediaEncoding.Api.Hls.DynamicHlsService.GetDynamicSegment(StreamRequest request, String segmentId)
	   at Emby.Server.Implementations.Services.ServiceExecGeneral.GetTaskResult(Task task)
	   at Emby.Server.Implementations.Services.ServiceHandler.ProcessRequestAsync(HttpListenerHost appHost, IRequest httpReq, IResponse httpRes, ILogger logger, String operationName, CancellationToken cancellationToken)
	   at Emby.Server.Implementations.HttpServer.HttpListenerHost.RequestHandler(IHttpRequest httpReq, String urlString, String host, String localPath, CancellationToken cancellationToken)

FFmpeg log:

2018-10-22 18:18:44.771
Application version: 3.5.3.0

http://172.16.0.10:8096/emby/videos/7a108f6c10ac336de029f93bf5bc5b91/hls1/main/0.ts?DeviceId=TW96aWxsYS81LjAgKFdlYjBTOyBMaW51eC9TbWFydFRWKSBBcHBsZVdlYktpdC81MzcuMzYgKEtIVE1MLCBsaWtlIEdlY2tvKSBDaHJvbWUvMzguMC4yMTI1LjEyMiBTYWZhcmkvNTM3LjM2IFdlYkFwcE1hbmFnZXJ8MTU0MDE1NjEyNzUzOA11&MediaSourceId=7a108f6c10ac336de029f93bf5bc5b91&VideoCodec=h264,h265,hevc&AudioCodec=ac3,eac3,aac,mp3,opus&AudioStreamIndex=1&VideoBitrate=139808000&AudioBitrate=192000&PlaySessionId=d3101bd53a5b4e45a7e8bf155eced7e4&api_key=be36cb2cbbca41588256b06b9b342800&TranscodingMaxAudioChannels=6&RequireAvc=false&Tag=86f92e0f2ee5b7e1a7420d9c00427a9f&SegmentContainer=ts&MinSegments=1&BreakOnNonKeyFrames=False&h264-profile=high,main,baseline,constrainedbaseline,high10&h264-level=51&TranscodeReasons=ContainerBitrateExceedsLimit&allowVideoStreamCopy=false&allowAudioStreamCopy=false

{"Protocol":"File","Id":"7a108f6c10ac336de029f93bf5bc5b91","Path":"/a_movie.avi","Type":"Default","Container":"avi","Name":"some movie","IsRemote":false,"ETag":"86f92e0f2ee5b7e1a7420d9c00427a9f","RunTimeTicks":25461999616,"ReadAtNativeFramerate":false,"IgnoreDts":false,"IgnoreIndex":false,"GenPtsInput":false,"SupportsTranscoding":true,"SupportsDirectStream":true,"SupportsDirectPlay":true,"IsInfiniteStream":false,"RequiresOpening":false,"RequiresClosing":false,"RequiresLooping":false,"SupportsProbing":true,"VideoType":"VideoFile","MediaStreams":[{"Codec":"msmpeg4v3","CodecTag":"DIV3","TimeBase":"1/25","VideoRange":"SDR","DisplayTitle":"SD MSMPEG4V3","IsInterlaced":false,"BitRate":957970,"IsDefault":false,"IsForced":false,"Height":360,"Width":640,"AverageFrameRate":25,"RealFrameRate":25,"Type":"Video","AspectRatio":"16:9","Index":0,"IsExternal":false,"IsTextSubtitleStream":false,"SupportsExternalStream":false,"Level":-99},{"Codec":"ac3","TimeBase":"1/24000","CodecTimeBase":"1/48000","DisplayTitle":"Dolby Digital stereo","IsInterlaced":false,"ChannelLayout":"stereo","BitRate":192000,"Channels":2,"SampleRate":48000,"IsDefault":false,"IsForced":false,"Type":"Audio","Index":1,"IsExternal":false,"IsTextSubtitleStream":false,"SupportsExternalStream":false,"Level":0}],"Formats":[],"Bitrate":1156088,"RequiredHttpHeaders":{}}

User policy for MyEmbyUser: EnablePlaybackRemuxing: True EnableVideoPlaybackTranscoding: True EnableAudioPlaybackTranscoding: True

/bin/ffmpeg -f avi -i file:"/a_movie.avi" -threads 0 -map 0:0 -map 0:1 -map -0:s -codec:v:0 libx264 -vf "scale=trunc(min(max(iw\,ih*dar)\,1280)/2)*2:trunc(ow/dar/2)*2" -pix_fmt yuv420p -preset veryfast -crf 23 -maxrate 2873910 -bufsize 5747820 -profile:v high -level 4.1 -x264opts:0 subme=0:me_range=4:rc_lookahead=10:me=dia:no_chroma_me:8x8dct=0:partitions=none -force_key_frames "expr:if(isnan(prev_forced_t),eq(t,t),gte(t,prev_forced_t+3))" -copyts -vsync -1 -codec:a:0 aac -strict experimental -ac 2 -ab 192000  -f segment -max_delay 5000000 -avoid_negative_ts disabled -map_metadata -1 -map_chapters -1 -start_at_zero -segment_time 3  -individual_header_trailer 0 -segment_format mpegts -segment_list_type m3u8 -segment_start_number 0 -segment_list "/config/transcoding-temp/d2bcdd08f32921e1c8b7a795994d05f5.m3u8" -y "/config/transcoding-temp/d2bcdd08f32921e1c8b7a795994d05f5%d.ts"

ffmpeg version 4.0.2-emby_2018_09_13 Copyright (c) 2000-2018 the FFmpeg developers
  built with gcc 6.3.0 (crosstool-NG crosstool-ng-1.23.0)
  configuration: --cc=x86_64-pc-linux-gnu-gcc --arch=x86_64 --prefix=/home/embybuilder/Buildbot/x64/ffmpeg-x64/staging --pkg-config=pkg-config --disable-doc --disable-ffplay --disable-vdpau --disable-xlib --enable-fontconfig --enable-gnutls --enable-gpl --enable-iconv --enable-libass --enable-libfreetype --enable-libfribidi --enable-libmp3lame --enable-libopus --enable-libtheora --enable-libvorbis --enable-libwebp --enable-libx264 --enable-libzvbi --enable-version3 --disable-decoders --disable-encoders --enable-decoder=aac --enable-decoder=aac_fixed --enable-decoder=aac_latm --enable-decoder=ac3 --enable-decoder=ac3_fixed --enable-decoder=alac --enable-decoder=apng --enable-decoder=ass --enable-decoder=ayuv --enable-decoder=bmp --enable-decoder=dca --enable-decoder=dirac --enable-decoder=dvbsub --enable-decoder=dvdsub --enable-decoder=eac3 --enable-decoder=flac --enable-decoder=gif --enable-decoder=h264 --enable-decoder=hevc --enable-decoder=huffyuv --enable-decoder=mjpeg --enable-decoder=mlp --enable-decoder=mov_text --enable-decoder=mp3 --enable-decoder=mp3float --enable-decoder=mpeg4 --enable-decoder=opus --enable-decoder=pcm_alaw --enable-decoder=pcm_bluray --enable-decoder=pcm_dvd --enable-decoder=pcm_f16le --enable-decoder=pcm_f24le --enable-decoder=pcm_f32be --enable-decoder=pcm_f32le --enable-decoder=pcm_f64be --enable-decoder=pcm_f64le --enable-decoder=pcm_lxf --enable-decoder=pcm_mulaw --enable-decoder=pcm_s16be --enable-decoder=pcm_s16be_planar --enable-decoder=pcm_s16le --enable-decoder=pcm_s16le_planar --enable-decoder=pcm_s24be --enable-decoder=pcm_s24daud --enable-decoder=pcm_s24le --enable-decoder=pcm_s24le_planar --enable-decoder=pcm_s32be --enable-decoder=pcm_s32le --enable-decoder=pcm_s32le_planar --enable-decoder=pcm_s64be --enable-decoder=pcm_s64le --enable-decoder=pcm_s8 --enable-decoder=pcm_s8_planar --enable-decoder=pcm_u16be --enable-decoder=pcm_u16le --enable-decoder=pcm_u24be --enable-decoder=pcm_u24le --enable-decoder=pcm_u32be --enable-decoder=pcm_u32le --enable-decoder=pcm_u8 --enable-decoder=pcm_zork --enable-decoder=pgssub --enable-decoder=png --enable-decoder=r210 --enable-decoder=rawvideo --enable-decoder=ssa --enable-decoder=subrip --enable-decoder=srt --enable-decoder=text --enable-decoder=theora --enable-decoder=truehd --enable-decoder=v210 --enable-decoder=v210x --enable-decoder=v308 --enable-decoder=v408 --enable-decoder=v410 --enable-decoder=vorbis --enable-decoder=vp8 --enable-decoder=vp9 --enable-decoder=webp --enable-decoder=webvtt --enable-decoder=wmalossless --enable-decoder=wmapro --enable-decoder=wmav1 --enable-decoder=wmav2 --enable-decoder=wmavoice --enable-decoder=wmv1 --enable-decoder=wmv2 --enable-decoder=wmv3 --enable-decoder=wmv3image --enable-decoder=y41p --enable-decoder=yuv4 --enable-decoder=zero12v --enable-encoder=aac --enable-encoder=ac3 --enable-encoder=ac3_fixed --enable-encoder=ass --enable-encoder=dvbsub --enable-encoder=dvdsub --enable-encoder=flac --enable-encoder=libmp3lame --enable-encoder=libopus --enable-encoder=libtheora --enable-encoder=libvorbis --enable-encoder=libwebp --enable-encoder=libx264 --enable-encoder=mjpeg --enable-encoder=mov_text --enable-encoder=png --enable-encoder=srt --enable-encoder=ssa --enable-encoder=subrip --enable-encoder=text --enable-encoder=webvtt --enable-libsmbclient --enable-decoder=mp1 --enable-decoder=mp2 --enable-decoder=mpegvideo --enable-decoder=mpeg1video --enable-decoder=mpeg2video --enable-decoder=vc1 --enable-cuda --enable-cuvid --enable-nvenc --enable-vaapi --enable-decoder=h264_cuvid --enable-decoder=hevc_cuvid --enable-decoder=mjpeg_cuvid --enable-decoder=mpeg1_cuvid --enable-decoder=mpeg2_cuvid --enable-decoder=mpeg4_cuvid --enable-decoder=vc1_cuvid --enable-decoder=vp8_cuvid --enable-decoder=vp9_cuvid --enable-encoder=h264_nvenc --enable-encoder=h264_vaapi --enable-encoder=hevc_nvenc --enable-encoder=hevc_vaapi --enable-encoder=mjpeg_vaapi --enable-cross-compile --cross-prefix=x86_64-pc-linux-gnu- --extra-libs='-ldl -lexpat -lfreetype -lfribidi -lfontconfig -liconv -lpng -luuid -lz -lvorbis -logg -lnettle -lhogweed -lgmp -laddns-samba4 -lasn1util-samba4 -lauthkrb5-samba4 -lCHARSET3-samba4 -lcliauth-samba4 -lcli-cldap-samba4 -lcli-ldap-common-samba4 -lcli-nbt-samba4 -lcli-smb-common-samba4 -lcom_err -lcommon-auth-samba4 -ldbwrap-samba4 -ldcerpc-binding -ldcerpc-samba-samba4 -lflag-mapping-samba4 -lgenrand-samba4 -lgensec-samba4 -lgse-samba4 -lgssapi_krb5 -llibcli-lsa3-samba4 -llibsmb-samba4 -linterfaces-samba4 -liov-buf-samba4 -lk5crypto -lkrb5 -lkrb5samba-samba4 -lkrb5support -lldb -lldbsamba-samba4 -lmessages-dgm-samba4 -lmessages-util-samba4 -lmsghdr-samba4 -lmsrpc3-samba4 -lndr -lndr-krb5pac -lndr-nbt -lndr-samba-samba4 -lndr-standard -lreplace-samba4 -lsamba-cluster-support-samba4 -lsamba-credentials -lsamba-debug-samba4 -lsamba-errors -lsamba-hostconfig -lsamba-modules-samba4 -lsamba-security-samba4 -lsamba-sockets-samba4 -lsamba-util -lsamba3-util-samba4 -lsamdb -lsamdb-common-samba4 -lsecrets3-samba4 -lserver-id-db-samba4 -lserver-role-samba4 -lsmbconf -lsmbd-shim-samba4 -lsmb-transport-samba4 -lsocket-blocking-samba4 -lsys-rw-samba4 -ltalloc -ltalloc-report-samba4 -ltdb -ltdb-wrap-samba4 -ltevent -ltevent-util -ltime-basic-samba4 -lutil-cmdline-samba4 -lutil-reg-samba4 -lutil-setid-samba4 -lutil-tdb-samba4 -lwbclient -lwinbind-client-samba4 -ldrm' --target-os=linux --enable-shared --disable-static
  libavutil      56. 14.100 / 56. 14.100
  libavcodec     58. 18.100 / 58. 18.100
  libavformat    58. 12.100 / 58. 12.100
  libavdevice    58.  3.100 / 58.  3.100
  libavfilter     7. 16.100 /  7. 16.100
  libswscale      5.  1.100 /  5.  1.100
  libswresample   3.  1.100 /  3.  1.100
  libpostproc    55.  1.100 / 55.  1.100
Input #0, avi, from 'file:/a_movie.avi':
  Metadata:
    encoder         : Nandub v1.0rc2
  Duration: 00:42:26.20, start: 0.000000, bitrate: 1156 kb/s
    Stream #0:0: Video: msmpeg4v3 (DIV3 / 0x33564944), none, 640x360, 957 kb/s, 25 fps, 25 tbr, 25 tbn, 25 tbc
    Stream #0:1: Audio: ac3 ([0] [0][0] / 0x2000), 48000 Hz, stereo, fltp, 192 kb/s
Stream mapping:
  Stream #0:0 -> #0:0 (? (?) -> h264 (libx264))
  Stream #0:1 -> #0:1 (ac3 (native) -> aac (native))

At the bottom the source video stream is "?", like ffmpeg doesn't support it?

Link to comment
Share on other sites

Hi, Avi files are always difficult. Have you considered converting to mp4? Our media convert feature can help with that.

Link to comment
Share on other sites

Happy2Play

Is this a issue with the DIVX codec?

 Stream #0:0: Video: msmpeg4v3 (DIV3 / 0x33564944)

Stream mapping:
Stream #0:0 -> #0:0 (? (?) -> h264 (libx264))

​On my stable Windows server (WHS2011) I have some divx media and didn't see this issue.

    Stream #0:0: Video: msmpeg4v3 (DIV3 / 0x33564944)

Stream mapping:
  Stream #0:0 -> #0:0 (msmpeg4v3 (msmpeg4) -> h264 (libx264))

Edited by Happy2Play
Link to comment
Share on other sites

What happens if you remux that AVI into MKV with MKVToolNix GUI?

 

Does this exhibit the exact same issue? This could be a header issue as the ? ? in ffmpeg sometimes means the AVI is goofy. Remux to MKV and seeing if that worked or not would be a good test. Remuxing takes seconds. You can also batch all your AVI to be remuxed to MKV quite easily with it.

Edited by speechles
Link to comment
Share on other sites

It looks like you are missing the decoder for it. Ffmpeg expects it to be there. Can ffprobe and detect it. Then goes to actually start and ffmpeg can't decode it. It means msmpeg4v3 which on linux might be harder. This is a microsoft codec.

 

https://support.microsoft.com/en-us/help/278310/microsoft-mpeg4-version-3-0-codec-can-only-be-used-with-windows-media

Edited by speechles
Link to comment
Share on other sites

It may be harder, that's not for me to say as I'm not the developer here. But a certain competitor to Emby that will remain unnamed handles those same files just fine.

Link to comment
Share on other sites

It may be harder, that's not for me to say as I'm not the developer here. But a certain competitor to Emby that will remain unnamed handles those same files just fine.

 

They have a different ffmpeg build than we are using in that case. You can do the same thing. Find an ffmpeg with support for msmpeg4v3 and tell emby to make use of that instead of the default ffmpeg location. You get your cake and can eat it too. :)

Edited by speechles
Link to comment
Share on other sites

Happy2Play

They have a different ffmpeg build than we are using in that case. You can do the same thing. Find an ffmpeg with support for msmpeg4v3 and tell emby to make use of that instead of the default ffmpeg location. You get your cake and can eat it too. :)

 

Does non-Windows builds still have the default ffmpeg location field?

Link to comment
Share on other sites

Correct that library is missing from our ffmpeg build on the stable release. It has been added in the beta. Thanks for the feedback.

Link to comment
Share on other sites

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...