I just moved Plex media and Docker instance over to a Dell R720 with dual XEON E5-2680s. It seems to only be able to handle one transcode session at a time (non-4k, this ia 1080p -> lower) with the CPU massively overloading on that one transcode.
Any docker or plex settings that I could tweak to get more transcode out?
Xeon Model Names confuse me⦠go here: www.passmark.com and check its passmark rating. A Good rule of thumb is 1x1080p transcode (meaning input resolution is 1080p) per 2000 passmark score. So if the score is 2,000, youāll only get one, if itās 10,000 you should be able to do 5, etc. Since itās Dual, just double the number you see in the passmark score column. Other than that, I donāt think thereās any settings other than what is already available in the plex transcoder settings, ie āMake My CPU Hurtā, Background Transcoding quality (only affects sync content and optimize content), etcā¦
It might also be helpful to see the media information XML for one of your media files. The codec used to encode the video (and audio) can have a huge impact in transcoding performance.
CPU: Intel Xeon E5-2680 @ 2.70GHz
Passmark CPU Mark (higher is better): 12,879
Rank (lower is better):⦠261
PU Value (higher is better) ⦠168.18
Thatās a pretty high score if weāre going with a 2,000/1080p transcode. The system is a dual CPU, but running inside of Docker it maybe limited to just one CPU - Iāll have to double check that.
Yeh, so then you should be able to get 6 transcodes out of it⦠As philipsw said, the codec of the initial file is also important, if itās straight x264, then weāre fine, but if itās VC-1 or AVC it can affect the decode speed, it will also affect the decode speed if itās x265 or h.265, as those are also slightly harder to decode, but shouldnāt limit you to 1 from 6. Iād say if all of your content is AVC/VC-1 (Standard BluRay Remux files) you could probably do 3-4 on a single chip, and if itās x265 maybe 4-5 on a single chip (yes, x265 is easier to decode than VC-1 ironically)
Yeah my ātestā movie has a high bit rate for the video and a VERY high rate for the audio so that could be why it was being transcoded even locally.
Format : Matroska
Format version : Version 4
File size : 17.5 GiB
Duration : 1 h 33 min
Overall bit rate mode : Variable
Overall bit rate : 26.8 Mb/s
Encoded date : UTC 2017-10-21 13:53:29
Writing application : mkvmerge v17.0.0 ('Be Ur Friend') 64-bit
Writing library : libebml v1.3.5 + libmatroska v1.4.8
Video
ID : 1
Format : AVC
Format/Info : Advanced Video Codec
Format profile : High@L4.1
Format settings : CABAC / 4 Ref Frames
Format settings, CABAC : Yes
Format settings, Reference frames : 4 frames
Codec ID : V_MPEG4/ISO/AVC
Duration : 1 h 33 min
Bit rate mode : Variable
Bit rate : 22.9 Mb/s
Maximum bit rate : 37.0 Mb/s
Width : 1 920 pixels
Height : 1 080 pixels
Display aspect ratio : 16:9
Frame rate mode : Constant
Frame rate : 23.976 (24000/1001) FPS
Color space : YUV
Chroma subsampling : 4:2:0
Bit depth : 8 bits
Scan type : Progressive
Bits/(Pixel*Frame) : 0.461
Stream size : 15.0 GiB (85%)
Title : English
Language : English
Default : Yes
Forced : No
Audio
ID : 2
Format : DTS XLL
Format/Info : Digital Theater Systems
Commercial name : DTS-HD Master Audio
Codec ID : A_DTS
Duration : 1 h 33 min
Bit rate mode : Variable
Bit rate : 3 803 kb/s
Channel(s) : 6 channels
Channel layout : C L R Ls Rs LFE
Sampling rate : 48.0 kHz
Frame rate : 93.750 FPS (512 SPF)
Bit depth : 24 bits
Compression mode : Lossless
Stream size : 2.49 GiB (14%)
Title : English
Language : English
Default : Yes
Forced : No
well, that file is AVC, so Iād still expect you to get 3-4 transcodes out of it, even with transcoding the audio (Audio is relatively easy to transcode by comparison). What happens when you attempt to transcode more than 1? Does it give an error? do both of them start to stutter/pause/buffer?
With more than one stream both streams become unwatchable. At least with one itās runs clean unless you try jump ahead ⦠then it pauses, that was the only symptom.
in what sense? Pausing/Buffering/Stuttering? or Resolution wise (lookin like Lego people on screen)?
Edit: Can you also get some sort of video encoder for your platform, and transcode that file? Let it run 3-4 minutes, no need to transcode the whole thing. But tell me how many FPS itās transcoding at?
Sorry I should have been more specific ⦠Buffering. It seems be transcoding at around 20fps.
Itās a Dell 1U Rack Server, so no room any additional hardware in there. I might just write a script to covert the files down to H264/mp3 using ffmpeg or something. Itās not great for me locally but itāll make life easier for the family.
EDIT: Btw I checked, Iām not restricting CPU or Memory on the docker container so it should have access to both CPUs and the 64GB of RAM.
20fps is slooow. Something else may be going on. For comparison, my Ryzen 7 2700x has a passmark score of 18,075 and I transcode a 1080p AVC file into a 1080p x264 file using handbrake at ~100fps.
I find it very odd as well. The āCPUā is the only thing busy, memory usage is 80% and below, disk I/O at max was at 74% with no io_waits.
Iām compiling ffmpeg right now to see what a manual run says on conversion.
Yeh, definitely, your first conversion, put it to x264 with just basic settings⦠then come back to us and let us know. Cause you should definitely be able to transcode at like 75-80fps at least under a single CPU
Careful: that value only applies to videos in H.264/AVC codec with a video bandwidth of up to 10 mbps.
A ārawā Bluray rip (with up to ~35mbps) will need more.
A raw rip in VC-1 will need even more.
A 1080p video in H.265/HEVC will need ~5 times more.
Otto, I transcode H.265 videos faster than I transcode VC-1 videos (source video is H.265 1080p or VC-1 1080p). So I donāt think ~5 times more is realisticā¦