Not sure if there are any emby users (most people i guess want plex), but since plex uses its own ffmpeg (and code is not open), it's a bit harder to have hw transcoding than with emby.
Here's the server log:
- Code: Select all
http://129.127.248.18:8096/emby/videos/0263a73ae384c2feef7b07256f1a8c97/hls1/main/0.ts?DeviceId=39bd3c935755c4f8f5fb742f0026f67ae17b13f9&MediaSourceId=0263a73ae384c2feef7b07256f1a8c97&VideoCodec=h264&AudioCodec=aac,mp3&AudioStreamIndex=1&VideoBitrate=599872296&AudioBitrate=127704&Level=51&Profile=high&PlaySessionId=e47b6e3376b94bae846e45d4909a843e&api_key=eebfa201aa2b453ea72febf6b65943d1&CopyTimestamps=false&TranscodingMaxAudioChannels=6&EnableSubtitlesInManifest=false&Tag=014fae5077a8f8d2ee962659fef2a772&RequireAvc=true
{"Protocol":"File","Id":"0263a73ae384c2feef7b07256f1a8c97","Path":"/home/odroid/Video/mono.avi","Type":"Default","Container":"avi","Name":"SD/MSMPEG4/MP3","IsRemote":false,"ETag":"014fae5077a8f8d2ee962659fef2a772","RunTimeTicks":80035233792,"ReadAtNativeFramerate":false,"SupportsTranscoding":true,"SupportsDirectStream":true,"SupportsDirectPlay":true,"IsInfiniteStream":false,"RequiresOpening":false,"RequiresClosing":false,"SupportsProbing":true,"VideoType":"VideoFile","MediaStreams":[{"Codec":"msmpeg4","CodecTag":"DIV3","TimeBase":"4171/100000","CodecTimeBase":"4171/100000","IsInterlaced":false,"BitRate":573722,"RefFrames":1,"IsDefault":false,"IsForced":false,"Height":288,"Width":512,"AverageFrameRate":23.97507,"RealFrameRate":23.97507,"Type":"Video","AspectRatio":"16:9","Index":0,"IsExternal":false,"IsTextSubtitleStream":false,"SupportsExternalStream":false,"PixelFormat":"yuv420p","Level":-99,"IsAnamorphic":false},{"Codec":"mp3","TimeBase":"1/15963","CodecTimeBase":"1/44100","DisplayTitle":"MP3 stereo","IsInterlaced":false,"ChannelLayout":"stereo","BitRate":127704,"Channels":2,"SampleRate":44100,"IsDefault":false,"IsForced":false,"Type":"Audio","Index":1,"IsExternal":false,"IsTextSubtitleStream":false,"SupportsExternalStream":false,"Level":0,"IsAnamorphic":false}],"PlayableStreamFileNames":[],"Formats":[],"Bitrate":706525,"RequiredHttpHeaders":{}}
/usr/local/bin/ffmpeg -f avi -codec:0 msmpeg4 -codec:1 mp3 -i file:"/home/odroid/Video/mono.avi" -map_metadata -1 -map_chapters -1 -threads 0 -map 0:0 -map 0:1 -map -0:s -codec:v:0 h264_v4l2m2m -pix_fmt nv21 -b:v 573722 -maxrate 573722 -bufsize 1147444 -vsync -1 -force_key_frames "expr:gte(t,n_forced*3)" -vf "scale=trunc(min(max(iw\,ih*dar)\,720)/2)*2:trunc(ow/dar/2)*2" -copyts -codec:a:0 copy -f segment -max_delay 5000000 -avoid_negative_ts disabled -start_at_zero -segment_time 3 -individual_header_trailer 0 -segment_format mpegts -segment_list_type m3u8 -segment_start_number 0 -segment_list "/home/odroid/src/emby/Emby-3.2.8/Tools/Linux_Build_Scripts/mediabrowser/MediaBrowser.Mono.3.2.8.0/ProgramData-Server/transcoding-temp/117f397dcd8a9192fa06100a7d26448f.m3u8" -y "/home/odroid/src/emby/Emby-3.2.8/Tools/Linux_Build_Scripts/mediabrowser/MediaBrowser.Mono.3.2.8.0/ProgramData-Server/transcoding-temp/117f397dcd8a9192fa06100a7d26448f%d.ts"
ffmpeg version 3.0.2 Copyright (c) 2000-2016 the FFmpeg developers
built with gcc 6.3.0 (Debian 6.3.0-6) 20170205
configuration: --prefix=/usr/local --libdir=/usr/local/lib --incdir=/usr/local/include --pkg-config-flags=--static --enable-gpl --enable-static --enable-avresample --enable-avisynth --enable-gnutls --enable-ladspa --enable-libass --enable-libbluray --enable-libbs2b --enable-libcaca --enable-libcdio --enable-libflite --enable-libfontconfig --enable-libfreetype --enable-libfribidi --enable-libgme --enable-libgsm --enable-libmodplug --enable-libmp3lame --enable-libopus --enable-libpulse --enable-librubberband --enable-librtmp --enable-libshine --enable-libsnappy --enable-libsoxr --enable-libspeex --enable-libssh --enable-libtheora --enable-libtwolame --enable-libvorbis --enable-libvpx --enable-libwavpack --enable-libwebp --enable-libx265 --enable-libxvid --enable-libzvbi --enable-openal --enable-opengl --disable-stripping
libavutil 55. 17.103 / 55. 17.103
libavcodec 57. 24.102 / 57. 24.102
libavformat 57. 25.100 / 57. 25.100
libavdevice 57. 0.101 / 57. 0.101
libavfilter 6. 31.100 / 6. 31.100
libavresample 3. 0. 0 / 3. 0. 0
libswscale 4. 0.100 / 4. 0.100
libswresample 2. 0.101 / 2. 0.101
libpostproc 54. 0.100 / 54. 0.100
Input #0, avi, from 'file:/home/odroid/Video/mono.avi':
Duration: 02:13:23.52, start: 0.000000, bitrate: 706 kb/s
Stream #0:0: Video: msmpeg4v3 (DIV3 / 0x33564944), yuv420p, 512x288, 573 kb/s, 23.98 fps, 23.98 tbr, 23.98 tbn, 23.98 tbc
Stream #0:1: Audio: mp3 (U[0][0][0] / 0x0055), 44100 Hz, stereo, s16p, 127 kb/s
[h264_v4l2m2m @ 0x80886330] Device path not set, probing /dev/video*
[h264_v4l2m2m @ 0x80886330] Using device /dev/video11
[h264_v4l2m2m @ 0x80886330] mfc-enc: gop_size: 12
[h264_v4l2m2m @ 0x80886330] mfc-enc: enabling bitrate control if required rate 573722 > 1
[h264_v4l2m2m @ 0x80886330] mfc-enc: max b-frames: 0
[h264_v4l2m2m @ 0x80886330] mfc-enc: h264 profile: 4
[h264_v4l2m2m @ 0x80886330] mfc-enc: min/max quantizer scale: (2, 31)
[h264_v4l2m2m @ 0x80886330] mfc-enc: h264 level: V4L2_MPEG_VIDEO_H264_LEVEL_4_0
Output #0, segment, to '/home/odroid/src/emby/Emby-3.2.8/Tools/Linux_Build_Scripts/mediabrowser/MediaBrowser.Mono.3.2.8.0/ProgramData-Server/transcoding-temp/117f397dcd8a9192fa06100a7d26448f%d.ts':
Metadata:
encoder : Lavf57.25.100
Stream #0:0: Video: h264 (h264_v4l2m2m), nv21, 512x288, q=2-31, 573 kb/s, 23.98 fps, 90k tbn, 23.98 tbc
Metadata:
encoder : Lavc57.24.102 h264_v4l2m2m
Stream #0:1: Audio: mp3 (U[0][0][0] / 0x0055), 44100 Hz, stereo, 127 kb/s
Stream mapping:
Stream #0:0 -> #0:0 (msmpeg4v3 (msmpeg4) -> h264 (h264_v4l2m2m))
Stream #0:1 -> #0:1 (copy)
Press [q] to stop, [?] for help
[h264_v4l2m2m @ 0x80886330] Performing useless memcpy() on output pool because buffers do not match
[h264_v4l2m2m @ 0x80886330] This could be avoided by using av_v4l_buffer_pool_get_buffer*() or av_v4l_buffer_pool_make_pipe()
[segment @ 0x80887200] Timestamps are unset in a packet for stream 0. This is deprecated and will stop working in the future. Fix your code to set the timestamps properly
[segment @ 0x80887200] Encoder did not produce proper pts, making some up.
frame= 439 fps=0.0 q=-0.0 size=N/A time=00:00:19.03 bitrate=N/A speed= 38x
frame= 857 fps=856 q=-0.0 size=N/A time=00:00:36.53 bitrate=N/A speed=36.5x
frame= 1259 fps=838 q=-0.0 size=N/A time=00:00:53.04 bitrate=N/A speed=35.3x
frame= 1667 fps=833 q=-0.0 size=N/A time=00:01:10.02 bitrate=N/A speed= 35x