gsnerf 26 Posted September 29, 2014 Share Posted September 29, 2014 Is there way to use the app on a regular laptop without it issueing the server to transcode the video? The laptop is perfectly capable of decoding and playing those videos on it's own and in fact more powerfull than the server side in any way. I have tried setting quallity to maximum but this still causes the server to transcode seemingly everything. 1 Link to comment Share on other sites More sharing options...
7illusions 1249 Posted September 29, 2014 Share Posted September 29, 2014 What kind of formats are you trying to play? Link to comment Share on other sites More sharing options...
gsnerf 26 Posted September 29, 2014 Author Share Posted September 29, 2014 I have almost exclusively MKVs which according to MediaInfo mostly containing AVC(mpeg4/x264) video with audio in AC-3 and/or DTS (and also almost always optional subtitles). Link to comment Share on other sites More sharing options...
7illusions 1249 Posted September 30, 2014 Share Posted September 30, 2014 The problem with WinRT based apps is that they do not support the MKV container and even if the computer installs codecs for mkv the app can't utilize those. So the server will have to remux it into a container that the app supports. If you got the streaming-settings in the app set to Maximum the app will only remux the audio and video, when possible, into HLS instead, and there shouldn't be alot of CPU usage on the server. If you play a mp4 instead of mkv the app will directstream. Link to comment Share on other sites More sharing options...
gsnerf 26 Posted October 1, 2014 Author Share Posted October 1, 2014 What I see in CPU usage indicates it is actually recoding the file, not just remuxing (not sure if video, audio or both). I only have an 1.6Ghz atom based CPU but it shouldn run on 100% on all 4 cores for just remuxing the mkv. For reference, this is how the running ffmpeg instance is called (as you can see this is a linux build, running the current official beta): ffmpeg -fflags +genpts -i file:/my/video/file.mkv -map_metadata -1 -threads 2 -map 0:0 -map 0:1 -map -0:s -codec:v:0 libx264 -preset superfast -crf 23 -maxrate 7180000 -bufsize 14360000 -vsync vfr -force_key_frames expr:gte(t,n_forced*7) -copyts -flags -global_header -codec:a:0 aac -strict experimental -ac 6 -ab 320000 -af adelay=1,aresample=async=1 -hls_time 7 -start_number 0 -hls_list_size 1440 -y /usr/lib/mediabrowser-server/transcoding-temp/cfd9dcdcb988f590fcf6051d529dc172.m3u8 If I understand this correctly this tells ffmpeg to use x264 and acc codecs as output and as there is no -copy statement to be found it is not remuxing but recoding. MediaInfo data for video and audio: Video ID : 1 Format : AVC Format/Info : Advanced Video Codec Format profile : High@L4.1 Format settings, CABAC : Yes Format settings, ReFrames : 5 frames Codec ID : V_MPEG4/ISO/AVC Duration : 2h 12mn Bit rate : 11.4 Mbps Width : 1 920 pixels Height : 800 pixels Display aspect ratio : 2.40:1 Frame rate mode : Constant Frame rate : 23.976 fps Color space : YUV Chroma subsampling : 4:2:0 Bit depth : 8 bits Scan type : Progressive Bits/(Pixel*Frame) : 0.310 Stream size : 10.5 GiB (78%) Writing library : x264 core 133 r2334 a3ac64b Encoding settings : cabac=1 / ref=5 / deblock=1:-3:-3 / analyse=0x3:0x113 / me=umh / subme=7 / psy=1 / psy_rd=0.99:0.01 / mixed_ref=1 / me_range=16 / chroma_me=1 / trellis=1 / 8x8dct=1 / cqm=0 / deadzone=21,11 / fast_pskip=0 / chroma_qp_offset=-3 / threads=6 / lookahead_threads=1 / sliced_threads=0 / nr=0 / decimate=1 / interlaced=0 / bluray_compat=0 / constrained_intra=0 / bframes=3 / b_pyramid=2 / b_adapt=2 / b_bias=0 / direct=3 / weightb=1 / open_gop=0 / weightp=2 / keyint=240 / keyint_min=23 / scenecut=40 / intra_refresh=0 / rc_lookahead=40 / rc=crf / mbtree=1 / crf=18.0 / qcomp=0.60 / qpmin=0 / qpmax=69 / qpstep=4 / ip_ratio=1.40 / aq=1:0.90 Language : English Default : Yes Forced : No Audio #1 ID : 2 Format : DTS Format/Info : Digital Theater Systems Mode : 16 Format settings, Endianness : Big Codec ID : A_DTS Duration : 2h 12mn Bit rate mode : Constant Bit rate : 1 510 Kbps Channel(s) : 6 channels Channel positions : Front: L C R, Side: L R, LFE Sampling rate : 48.0 KHz Bit depth : 24 bits Compression mode : Lossy Stream size : 1.39 GiB (10%) Language : English Default : Yes Forced : No From this I guess it 1. recodes the audio from DTS to AAC and 2. recodes the video as the -maxrate (which I assume is the bitrate to be used for the videostream) is way lower than the movies setting. The question now is: does the request somehow misses any information or does the server screw up? I couldn't find any information about the request in the servers logs yet, but I'll try to set up debug logging to see more over the weekend. I also noticed that trying to change the audio track doesn't work. I'm not sure if this is just my server not responding quickly enough but monitoring the running processes indicates that it didn't try to stop the old recoding process to start a new, so that might be server side issue. On that matter I'd suggest to allow selecting the audio/subtile languages from the movie screen before actually start playing. Link to comment Share on other sites More sharing options...
user29 2 Posted December 13, 2014 Share Posted December 13, 2014 Just a follow up to this. I have hdmi out on my tablet - (when playing via media player all the audio formats work (dts /AC3) - when using media browser they transcode - any options coming on this? Link to comment Share on other sites More sharing options...
Recommended Posts
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 accountSign in
Already have an account? Sign in here.
Sign In Now