Jump to content

Android Server on H96 Pro + : No Transcoding And can't play video


thelittlefireman

Recommended Posts

thelittlefireman

Hi,

This is some logs from the android Server Emby on a H96 pro plus Android Tv Box.

 

I manage to install emby server, configure to read data from a smb server (a synology Nas).

 

1) when i try to play a tv serie (video is in mkv x265 HD) i get some error (see the logs). Try play from a pc and an android phone thought chrome browser.

 

2) I enable "Media codec transcoding" and check all the checkbox (h264, h265, enable decode/encode hardware) but i can't see some hardware acceleration args in the ffmpeg command

 

does ffmpeg is compile with : "--enable-decoder=h264_mediacodec --enable-mediacodec --enable-hwaccel=h264_mediacodec" ? (i just see --enable-mediacodec"

and why codec used is : "-codec:v:0 libx264" and not "-codec:v:0 h264_mediacodec" ?

2018-05-21 10:04:31.037
Application version: 3.4.1.1

http://embydev.berlioz.me:8096/videos/c39b6c98e01507b139fc239698f39ff6/live.m3u8?DeviceId=TW96aWxsYS81LjAgKExpbnV4OyBBbmRyb2lkIDcuMDsgU00tRzkzNUYgQnVpbGQvTlJEOTBNKSBBcHBsZVdlYktpdC81MzcuMzYgKEtIVE1MLCBsaWtlIEdlY2tvKSBDaHJvbWUvNjYuMC4zMzU5LjE1OCBNb2JpbGUgU2FmYXJpLzUzNy4zNnwxNTI2ODkxMjg5MzM4&MediaSourceId=c39b6c98e01507b139fc239698f39ff6&VideoCodec=h264&AudioCodec=mp3,aac&VideoBitrate=8558000&AudioBitrate=192000&PlaySessionId=0ef541f762cd49de866deb86aca72c17&api_key=9dba6a1056474ec6aee5d141b039cab6&TranscodingMaxAudioChannels=2&RequireAvc=true&Tag=95ab7fa4787a1597bb6bba90fa3b70c4&SegmentContainer=ts&MinSegments=1&BreakOnNonKeyFrames=False&h264-profile=high,main,baseline,constrainedbaseline,high10&h264-level=51&h264-deinterlace=true&TranscodeReasons=ContainerBitrateExceedsLimit

{"Protocol":"File","Id":"c39b6c98e01507b139fc239698f39ff6","Path":"smb://192.168.1.14/Downloads/TV Shows/True Detective/True.Detective.S01E01.MULTI.1080p.DTS-HDMA.x265-ONLY.mkv","Type":"Default","Container":"mkv","Name":"True.Detective.S01E01.MULTI.1080p.DTS-HDMA.x265-ONLY","IsRemote":false,"ETag":"95ab7fa4787a1597bb6bba90fa3b70c4","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":[],"Formats":[],"RequiredHttpHeaders":{}}

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

/data/data/com.emby.embyserver/files/ffmpeg_3_4_2/ffmpeg -i "smb://192.168.1.14/Downloads/TV Shows/True Detective/True.Detective.S01E01.MULTI.1080p.DTS-HDMA.x265-ONLY.mkv" -map_metadata -1 -map_chapters -1 -threads 0 -sn -codec:v:0 libx264 -pix_fmt yuv420p -preset veryfast -crf 23 -maxrate 8558000 -bufsize 17116000 -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:gte(t,n_forced*3)" -vf "scale=trunc(min(max(iw\,ih*dar)\,1920)/2)*2:trunc(ow/dar/2)*2" -flags -global_header -vsync -1 -codec:a:0 libmp3lame -ac 2 -ab 192000 -f segment -max_delay 5000000 -avoid_negative_ts disabled -start_at_zero -segment_time 3 -individual_header_trailer 0 -segment_format mpegts -segment_list_entry_prefix "hls/59879af406004c2702329dd3db5d9470/" -segment_list_type m3u8 -segment_start_number 0 -segment_list "/storage/emulated/0/Android/data/com.emby.embyserver/files/transcoding-temp/59879af406004c2702329dd3db5d9470.m3u8" -y "/storage/emulated/0/Android/data/com.emby.embyserver/files/transcoding-temp/59879af406004c2702329dd3db5d9470%d.ts"

ffmpeg version 4.0 Copyright (c) 2000-2018 the FFmpeg developers
built with Android clang version 5.0.300080 (based on LLVM 5.0.300080)
configuration: --enable-cross-compile --cross-prefix=arm-linux-androideabi- --cc=arm-linux-androideabi-clang --cxx=arm-linux-androideabi-clang++ --arch=armv7 --prefix=/home/embybuilder/Buildbot/arm_neon_android/ffmpeg-arm_neon_android/staging --pkg-config=pkg-config --disable-doc --disable-ffplay --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 --extra-libs='-ldl -lexpat -lfreetype -lfribidi -lfontconfig -liconv -lpng -luuid -lz -lvorbis -logg -lnettle -lhogweed -lgmp -liconv -lm' --target-os=android --disable-shared --enable-static --enable-jni --enable-mediacodec --enable-omx --disable-cuda --disable-cuvid --disable-nvenc
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
smb://192.168.1.14/Downloads/TV Shows/True Detective/True.Detective.S01E01.MULTI.1080p.DTS-HDMA.x265-ONLY.mkv: Protocol not found
Did you mean file:smb://192.168.1.14/Downloads/TV Shows/True Detective/True.Detective.S01E01.MULTI.1080p.DTS-HDMA.x265-ONLY.mkv?
ffmpeg version 4.0 Copyright (c) 2000-2018 the FFmpeg developers
built with Android clang version 5.0.300080 (based on LLVM 5.0.300080)
configuration: --enable-cross-compile --cross-prefix=arm-linux-androideabi- --cc=arm-linux-androideabi-clang --cxx=arm-linux-androideabi-clang++ --arch=armv7 --prefix=/home/embybuilder/Buildbot/arm_neon_android/ffmpeg-arm_neon_android/staging --pkg-config=pkg-config --disable-doc --disable-ffplay --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 --extra-libs='-ldl -lexpat -lfreetype -lfribidi -lfontconfig -liconv -lpng -luuid -lz -lvorbis -logg -lnettle -lhogweed -lgmp -liconv -lm' --target-os=android --disable-shared --enable-static --enable-jni --enable-mediacodec --enable-omx --disable-cuda --disable-cuvid --disable-nvenc
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
smb://192.168.1.14/Downloads/TV Shows/True Detective/True.Detective.S01E01.MULTI.1080p.DTS-HDMA.x265-ONLY.mkv: Protocol not found
Did you mean file:smb://192.168.1.14/Downloads/TV Shows/True Detective/True.Detective.S01E01.MULTI.1080p.DTS-HDMA.x265-ONLY.mkv?

ps : sorry for my bad english.

 

thanks for all

And thanks for the amazing port to Android :)

 

Thomas

 

edit :

 

Same issue with h264 video :

2018-05-21 13:52:14.135
Application version: 3.4.1.1

http://embydev.berlioz.me:8096/videos/0189d25694380fce690ef03f335c97c1/live.m3u8?DeviceId=TW96aWxsYS81LjAgKFdpbmRvd3MgTlQgMTAuMDsgV09XNjQ7IHJ2OjYwLjApIEdlY2tvLzIwMTAwMTAxIEZpcmVmb3gvNjAuMHwxNTI2ODk0NDIzODM4&MediaSourceId=0189d25694380fce690ef03f335c97c1&VideoCodec=h264&AudioCodec=aac&VideoBitrate=13301976&AudioBitrate=192000&PlaySessionId=4878c9d2675c4097bc1efd668b92016c&api_key=55dea06f46d3472c9943102acc0a46ca&TranscodingMaxAudioChannels=2&RequireAvc=true&Tag=32224930c4d2c96d03f17c1e46885eb0&SegmentContainer=ts&MinSegments=1&BreakOnNonKeyFrames=True&h264-profile=high,main,baseline,constrainedbaseline&h264-level=51&h264-deinterlace=true&TranscodeReasons=ContainerNotSupported,ContainerBitrateExceedsLimit

{"Protocol":"File","Id":"0189d25694380fce690ef03f335c97c1","Path":"smb://192.168.1.14/Downloads/TV Shows/The Big Bang Theory/Season 01/Episode 01 - Pilot.mkv","Type":"Default","Container":"mkv","Name":"Episode 01 - Pilot","IsRemote":false,"ETag":"32224930c4d2c96d03f17c1e46885eb0","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":[],"Formats":[],"RequiredHttpHeaders":{}}

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

/data/data/com.emby.embyserver/files/ffmpeg_3_4_2/ffmpeg -i "smb://192.168.1.14/Downloads/TV Shows/The Big Bang Theory/Season 01/Episode 01 - Pilot.mkv" -map_metadata -1 -map_chapters -1 -threads 0 -sn -codec:v:0 libx264 -pix_fmt yuv420p -preset veryfast -crf 23 -maxrate 13301976 -bufsize 26603952 -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:gte(t,n_forced*3)" -vf "scale=trunc(min(max(iw\,ih*dar)\,1920)/2)*2:trunc(ow/dar/2)*2" -flags -global_header -vsync -1 -codec:a:0 aac -strict experimental -ac 2 -ab 192000  -f segment -max_delay 5000000 -avoid_negative_ts disabled -start_at_zero -segment_time 3  -individual_header_trailer 0 -segment_format mpegts -segment_list_entry_prefix "hls/d92cc5de250f07df883296d0d789ed1d/" -segment_list_type m3u8 -segment_start_number 0 -segment_list "/storage/emulated/0/Android/data/com.emby.embyserver/files/transcoding-temp/d92cc5de250f07df883296d0d789ed1d.m3u8" -y "/storage/emulated/0/Android/data/com.emby.embyserver/files/transcoding-temp/d92cc5de250f07df883296d0d789ed1d%d.ts"

ffmpeg version 4.0 Copyright (c) 2000-2018 the FFmpeg developers
  built with Android clang version 5.0.300080 (based on LLVM 5.0.300080)
  configuration: --enable-cross-compile --cross-prefix=arm-linux-androideabi- --cc=arm-linux-androideabi-clang --cxx=arm-linux-androideabi-clang++ --arch=armv7 --prefix=/home/embybuilder/Buildbot/arm_neon_android/ffmpeg-arm_neon_android/staging --pkg-config=pkg-config --disable-doc --disable-ffplay --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 --extra-libs='-ldl -lexpat -lfreetype -lfribidi -lfontconfig -liconv -lpng -luuid -lz -lvorbis -logg -lnettle -lhogweed -lgmp -liconv -lm' --target-os=android --disable-shared --enable-static --enable-jni --enable-mediacodec --enable-omx --disable-cuda --disable-cuvid --disable-nvenc
  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
smb://192.168.1.14/Downloads/TV Shows/The Big Bang Theory/Season 01/Episode 01 - Pilot.mkv: Protocol not found
Did you mean file:smb://192.168.1.14/Downloads/TV Shows/The Big Bang Theory/Season 01/Episode 01 - Pilot.mkv?
ffmpeg version 4.0 Copyright (c) 2000-2018 the FFmpeg developers
  built with Android clang version 5.0.300080 (based on LLVM 5.0.300080)
  configuration: --enable-cross-compile --cross-prefix=arm-linux-androideabi- --cc=arm-linux-androideabi-clang --cxx=arm-linux-androideabi-clang++ --arch=armv7 --prefix=/home/embybuilder/Buildbot/arm_neon_android/ffmpeg-arm_neon_android/staging --pkg-config=pkg-config --disable-doc --disable-ffplay --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 --extra-libs='-ldl -lexpat -lfreetype -lfribidi -lfontconfig -liconv -lpng -luuid -lz -lvorbis -logg -lnettle -lhogweed -lgmp -liconv -lm' --target-os=android --disable-shared --enable-static --enable-jni --enable-mediacodec --enable-omx --disable-cuda --disable-cuvid --disable-nvenc
  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
smb://192.168.1.14/Downloads/TV Shows/The Big Bang Theory/Season 01/Episode 01 - Pilot.mkv: Protocol not found
Did you mean file:smb://192.168.1.14/Downloads/TV Shows/The Big Bang Theory/Season 01/Episode 01 - Pilot.mkv?

embyLog.txt

Edited by thelittlefireman
Link to comment
Share on other sites

Hi, the reason for this is that our android ffmpeg build does not yet have support for the smb protocol. It's something we'll look at adding in a future test build. Thanks.

Link to comment
Share on other sites

thelittlefireman

Hi, thanks for your reply :)

 

i also make some test with a usb drive and it's fail to use hardware accelleration too on this sample : http://4kmedia.org/samsung-travel-with-my-pet-hdr-uhd-4k-demo/ 

LogFfmpeg.txtLog.txt

it works whith cpu decoder (as expexted it's very slow) and if i play it directly why a common video player it's works perfectly

 

thomas

Edited by thelittlefireman
Link to comment
Share on other sites

Hi, thanks for your reply :)

 

i also make some test with a usb drive and it's fail to use hardware accelleration too on this sample : http://4kmedia.org/samsung-travel-with-my-pet-hdr-uhd-4k-demo/ 

attachicon.gifLogFfmpeg.txtattachicon.gifLog.txt

it works whith cpu decoder (as expexted it's very slow) and if i play it directly why a common video player it's works perfectly

 

thomas

 

It's "working" here, but it's just not going fast enough to be playable for you. What Emby app are you playing with?

Link to comment
Share on other sites

thelittlefireman

It's "working" by transcoding though the cpu but why the hardware acceleration (media_codec) Fails ? My device is able to decode up to hevc 4K 60 fps.

Link to comment
Share on other sites

That's something we still need to work out. encoding with mediacodec is not very well documented. there is an h264_mediacodecndk library we've had some difficulty finding information on.

Link to comment
Share on other sites

thelittlefireman

OKay thanks :) it's seems that there is new libavcodec versions (actual use 58.18.100 (28 fev 2018) ==> 58.19.102)

There is some interesting fix in the mediacodec_wrapper on libavcodec : https://github.com/FFmpeg/FFmpeg/commits/fe0a6bcbda0f51d0613dbbd42a7635c22530ce95/libavcodec/mediacodec_wrapper.c maybe it could help to fix some issue ?

If you need helps don't hesitate to ask :)

Thanks :)

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