Kitz ADSL Broadband Information
adsl spacer  
Support this site
Home Broadband ISPs Tech Routers Wiki Forum
 
     
   Compare ISP   Rate your ISP
   Glossary   Glossary
 
Please login or register.

Login with username, password and session length
Advanced search  

News:

Author Topic: Video codecs  (Read 1245 times)

NEXUS2345

  • Reg Member
  • ***
  • Posts: 235
Video codecs
« on: February 22, 2017, 09:15:55 PM »

So, I have recently been doing some experimenting after finally getting my hands on an external Blu-Ray drive, and would like to share a couple of insights.

First, some background. I have been buying and ripping Blu-Rays to add to my Plex library using a piece of software called MakeMKV[1] so that I can watch them on my phone, tablet, etc. As such, I have been looking at ways to reduce the network utilisation of these streams, as currently my main computer is acting as my Plex server, and is connected via wi-fi (wired is not convenient at the moment). While the original MKV rips from the Blu-Ray discs look amazing, they use 24-30Mbps of bandwidth which (for some reason?) my router is unable to provide between the devices (even though they are on different bands), so I wanted to find a more reliable solution.

The first solution would of course be to just setup a wired network, but this isn't particularly convenient for everyone, so the only other option was to transcode the movies prestreaming.

The first try I did was with H.264 or AVC standard which was most recently amended in 2014. This codec has very wide support for devices and is the same codec used on Blu-Ray discs themselves. However, by transcoding using a Constant Quality factor, usually 15 for myself, you can reduce the file size while losing some quality. Another thing to consider is the encoder preset used, which defines how long it takes to transcode, but produces a smaller, higher quality file at the end. For most of my H.264 transcodes, I used slowest or placebo, as I was able to transcode them overnight without much issue. The final consideration is the encoder profile, which for this I set to High rather than Main, as I wanted the highest quality image. These produced files which were between 33-50% smaller in size, while retaining similar quality in the end result. Overall, I was quite pleased. However, I wanted to dig a bit deeper into some more modern standards, as H.264 was originally designed in 2003.

The next newest standard is H.265 or HEVC. This standard is used for pretty much all 4K content currently streamable from Netflix, and will also be used on 4K HDR Blu-Ray discs. As such, it has relatively little hardware support, with only Intel's Kaby Lake CPUs[2] providing full encode and decode support as well as NVIDIA 900 and 10 series GPUs[3]. AMD Polaris GPUs are capable of decoding but only partial encoding support.[4] Other hardware is also capable of doing so, including that in smartphones and Blu-Ray players and Smart TVs, but that varies a lot so only some models will support it. The rest use software decoding and encoding and as such are more power consuming. This is the main downside of H.265, as a similar quality transcode in H.265 took me about 2-3 times longer.
The major advantage to H.265 is that from my tests, it has provided between a 60-80% reduction in file size, at the same quality as a comparable H.264 file. As such, this is the codec I am wanting to use for my Plex server, however aforementioned compatibility issues mean that this is limited to my phone (Google Nexus 6P) and my PC, as my other devices (iPad Air 2, XBox One, Chromecast gen 1) do not support it and require that I transcode the files during playback.

I hope this gives some insight for those looking to create a Plex library, as I think this software is great and many should try it, especially if they have a home server of some kind.

Any insights from others would be of great help too, as I am still a sort of beginner myself.

[1] http://www.makemkv.com/
[2] http://www.anandtech.com/show/10610/intel-announces-7th-gen-kaby-lake-14nm-plus-six-notebook-skus-desktop-coming-in-january/3
[3] https://en.wikipedia.org/wiki/Nvidia_PureVideo#Feature_Set_E Feature set E and above for decoding (E is hybrid hardware/software)
     https://en.wikipedia.org/wiki/Nvidia_NVENC Maxwell Gen 2 (900 series and above) for encoding (900 series more limited than 10 series)
[4] http://www.anandtech.com/show/9886/amd-reveals-polaris-gpu-architecture/2
Logged
Security improvement and remediation consultant with infrastructure specialisation

IDNet Openreach FTTP 1000/115 + Asus RT-AX92U | Virgin Media 200 + SuperHub 3 + Synology MR2200ac mesh | Sky 80/20 with WiFi Guarantee on Huawei 288 cabinet

Ronski

  • Helpful
  • Kitizen
  • *
  • Posts: 4300
Re: Video codecs
« Reply #1 on: February 22, 2017, 11:04:14 PM »

I use a combination of MakeMKV, MKVToolnix and Ripbot264 to produce a H265 file, which retains the full audio track, as I require Atmos & DTS-X.

I often find that the audio (I usually keep two tracks) is bigger than the video it self - I use H265 CRF22 10bit, takes about 2hrs give or take, that's using 2 PC's though, one 6 core at 4.5Ghz, and one 4 core at 3.5Ghz

I use a special version of Kodi on an Nvidia Sheild for play back (for Atmos & DTS X pass through), but also Emby on other devices.

If you want more info let me know.
Logged
Formerly restrained by ECI and ali,  now surfing along at 390/36  ;D

NEXUS2345

  • Reg Member
  • ***
  • Posts: 235
Re: Video codecs
« Reply #2 on: February 22, 2017, 11:20:46 PM »

I am just curious as to how you have managed to split the load over multiple computers? Do you use one of those tools to split the file, then transcode them separately and then recombine them after?

I was taking a look at a comparison of Ripbot264 and Handbrake (what I was using) and I can see that Ripbot264 has some advantages with its demuxing, although from my other searches, I have found that StaxRip is a great option too that also provides GPU encoding (NVENC, etc.).
Logged
Security improvement and remediation consultant with infrastructure specialisation

IDNet Openreach FTTP 1000/115 + Asus RT-AX92U | Virgin Media 200 + SuperHub 3 + Synology MR2200ac mesh | Sky 80/20 with WiFi Guarantee on Huawei 288 cabinet

Bowdon

  • Content Team
  • Kitizen
  • *
  • Posts: 2395
Re: Video codecs
« Reply #3 on: February 22, 2017, 11:52:54 PM »

Do you guys use handbrake? I used to use an older version on the old comp.

There are settings to reduce the file sizes of videos. It can be done automatically or you can make manual changes and save a profile.
Logged
BT Full Fibre 500 - Smart Hub 2

NEXUS2345

  • Reg Member
  • ***
  • Posts: 235
Re: Video codecs
« Reply #4 on: February 23, 2017, 12:10:07 AM »

I am using Handbrake yes, and I am aware of what (most) of the settings do. I have been trying to research what sort of impact the advanced tab has to no particular avail.
Logged
Security improvement and remediation consultant with infrastructure specialisation

IDNet Openreach FTTP 1000/115 + Asus RT-AX92U | Virgin Media 200 + SuperHub 3 + Synology MR2200ac mesh | Sky 80/20 with WiFi Guarantee on Huawei 288 cabinet

Ronski

  • Helpful
  • Kitizen
  • *
  • Posts: 4300
Re: Video codecs
« Reply #5 on: February 23, 2017, 06:12:09 AM »

Ripbot264 has a distributed encoding feature, and can use up to 10 PC's/servers. I run two encoding servers on my X99 PC and one on my other PC.

Remember the more you compress video the lower the quality, this is where I've found h265 a huge advantage. I can compress a 25gb video to around 5gb and not tell the difference on a 120" screen.
Logged
Formerly restrained by ECI and ali,  now surfing along at 390/36  ;D