Nearing the filling of my 14.5TB hard drive and wanting to wait a bit longer before shelling out for a 60TB raid array, I’ve been trying to replace as many x264 releases in my collection with x265 releases of equivalent quality. While popular movies are usually available in x265, less popular ones and TV shows usually have fewer x265 options available, with low quality MeGusta encodes often being the only x265 option.

While x265 playback is more demanding than x264 playback, its compatibility is much closer to x264 than the new x266 codec. Is there a reason many release groups still opt for x264 over x265?

  • @[email protected]
    link
    fedilink
    English
    127
    edit-2
    10 months ago

    A lot of TV shows are direct rips from streaming services and they don’t use H.265 because of the ridiculous licensing it comes with.

    I suspect AV1 will become much more popular for streaming in a few years when the hardware support becomes more common. It’s an open source codec, so licensing shouldn’t be an issue. Then we will see a lot more AV1 releases.

      • Shimitar
        link
        fedilink
        English
        1210 months ago

        In my experience, you always gain space savings going av1 from 264 and 265 as well. For me its always been significant savings at the same quality level.

        Ofc YMMV and use a very recent ffmpeg with the best av1 libraries.

      • bjorney
        link
        fedilink
        English
        1010 months ago

        In my experience about ~8% better but 4x slower to transcode

  • ChaoticNeutralCzech
    link
    fedilink
    English
    6310 months ago

    x265 playback is more demanding than x264 playback

    By a factor of 2 with the same bitrate. But you only need half the bitrate for the same quality (SNR) so it really isn’t.

    However, encoding is about 10x more demanding in terms of bitrate, or 5x for the same quality. This may be worth it for long-term storage or wide distribution over limited bandwidth (torrenting), but not for one-time personal use.

      • Saik0
        link
        fedilink
        English
        1010 months ago

        Only if you’re disk limited or bandwidth limited. And in many cases will lead to transcoding the content, which could be a problem if you’re CPU limited or have no GPU for hardware transcoding.

        Everything (not literally… but figuratively) can do x264. Not everything can do x265…

        • @[email protected]
          link
          fedilink
          English
          2
          edit-2
          10 months ago

          If your Jellyfin collection starts to grow big enough, and x264 transcoding on the fly is as easy as passing through the GPU these days…it’s pretty much a no brainer. You have small files, and if someone still needs x264 (which would need to be specifically a Firefox streamer, as I believe Chrome supports it, and the Jellyfin apps also support it if your computer/phone does), the transcoding on the fly can be done using about 1-2% of the server CPU. I did something like 12 simultaneous different transcodes once, and my oldish i5 9500T held its ground perfectly, I think it reached about 35% CPU at the peak of it.

          • Saik0
            link
            fedilink
            English
            210 months ago

            9500T has quicksync. That’s why you’re transcodes were only 1-2% on the cpu. You were doing transcoding on the built in gpu.

            It is NOT trivial to do transcode without hardware decoding. How much utilization was on your 630 iGPU in that scenario?

            • @[email protected]
              link
              fedilink
              English
              2
              edit-2
              10 months ago

              Well it’s a Jellyfin server. I bought a CPU that CAN transcode, for this specific purpose. Without hardware decoding, CPU usage scales quite quickly, but it could still hold 3-4 streams at 60fps I believe. At any rate, I bought this 2nd hand microPC with the specific purpose of being a Proxmox server with Jellyfin transcoding. And so, between having to consider further hard drive upgrades, or using the transcode function…I kinda choose the cheapest one since it’s at hand.

              • Saik0
                link
                fedilink
                English
                2
                edit-2
                10 months ago

                Congrats? I’m running my Plex server on enterprise hardware. There’s no onboard gpu for decoding because that’s not the purpose of that hardware. I do have a graphics card in there to do transcodes, and intimately monitor that usage. My original statement still holds. “which could be a problem if you’re CPU limited or have no GPU for hardware transcoding.”

                Transcoding may not be that accessible/useful for some people. I’d rather waste some drive space than do transcodes for every user, but that’s because I have 400TB(not a typo) of space but don’t have enough space to put in any card that takes up more than 1pci slot. In my mind throwing another 20TB drive into my configuration is easier and cheaper than transcoding. In a couple of years we’re going to be having this discussion for AV1 anyway.

                Edit: Oh, and 3-4 streams at 60fps, isn’t enough description… really doesn’t cover the most taxing part of the transcode process, which is resolution. 3-4 1080p streams is much easier than even 1-2 4k streams. Considering that content is trending towards higher resolutions rather than higher framerates, I’m not sure what you’re getting at. My T600 can do 3-4 4k streams before it starts running into problems. That should be something like 15-16 1080p streams. Considering my library, I’d still rather have the drives in a more accessible format that will direct play on more devices than transcode my 60-100mbps 4k videos. Keep the transcoding for those that really need it rather than making it the default answer.

      • @[email protected]
        link
        fedilink
        English
        1010 months ago

        Did you do something specific to play x265 on JellyFin? Last time I tried, the video kept crashing every 5-8minutes, even with a low bitrate threshold.

            • @[email protected]
              link
              fedilink
              English
              110 months ago

              There is an option to use an external player. So you could use VLC as an external player and use it. It would work better.

              • @[email protected]
                link
                fedilink
                English
                110 months ago

                I tried that, but the result is the same (and progress doesn’t seem to be saved). Maybe it’s specific to the Shield or to my files

        • @[email protected]
          link
          fedilink
          English
          110 months ago

          Hmmm what do you mean the video kept crashing? Where is your server set up? What are you using for OS? Is it bare metal, is it running in a Windows, in a VM, in a container?

          In my case it’s running in a Proxmox LXC container (the container is running Ubuntu). I’m passing through the integrated GPU, as instructed in the Jellyfin docs. And then I enable Intel QSV transcoding on Jellyfin. The CPU consumption is close to negligible. Then again, you need an Intel CPU capable of x264 transcoding at decent rates. Anything after 8th gen should be able to do the trick (with this I mean, you can ALSO transcode whatever source to x265 on the fly, but that’s not a feature I’m actively using at the moment, as the resulting file is usually larger anyway). I’m using an i5 9500T, and I benchmarked something like 8 transcodes simultaneously to almost no impact. I think it was starting to be noticeable past 12 transcodes simultaneously. But that’s some heavy streaming there! That’d mean EVERYONE is connecting at once to your server using FF (I believe Chrome is x265 capable, and the apps also take x265 just fine if your phone/computer support it). So…in short, my i5 from a few generations ago is already overkill for x265

  • Shimitar
    link
    fedilink
    English
    6210 months ago

    Go AV1… In my direct experience the space saving is simply amazing at the same quality.

    265 doesn’t seems to be the future since all Android are going to support AV1 by mandatory from A14.

    • @[email protected]
      link
      fedilink
      English
      3410 months ago

      I recently started transcoding my media to save some space, and I went with h265 instead. AV1 will be great in a few years, but the hardware support is just not there yet.

    • @[email protected]
      link
      fedilink
      English
      19
      edit-2
      10 months ago

      Av1 would be great if everything supported playback, maybe soon. Tvs and chromecast with google tv 4k specifically. Somehow the 1080p one does

      • @[email protected]
        link
        fedilink
        English
        13
        edit-2
        10 months ago

        Will still be at least 10 years away sadly for it to be truly ubiquitous… Remember I couldn’t play x265 properly for quite a while.

      • Shimitar
        link
        fedilink
        English
        610 months ago

        I got an amazon fire stick, all the new ones support av1 and all android devices from A14 must support av1 too.

        On PC vlc plays it just fine too.

    • @[email protected]
      link
      fedilink
      English
      810 months ago

      It doesn’t play well on older kit though. Even the Nvidia Shield Pro won’t play them unless they’re really low resolution.

      265 is ideal for me, even if it’s hamstrung on open source browsers.

  • Shimitar
    link
    fedilink
    English
    3110 months ago

    Some notes: Don’t use GPU to reencode you will lose quality.

    Don’t worry for long encoding times, specially if the objective is long term storage.

    Power consumption might be significant. I run mine what the sun shine and my photovoltaic picks up the tab.

    And go AV1, open source and seems pretty committed to by the big players. Much more than h265.

      • Billegh
        link
        fedilink
        English
        8
        edit-2
        10 months ago

        I have some comments based on personal experiences with GPU av1 encoding: you will always end up with either larger or worse output with GPU encoding because currently all the encoders have a frame deadline. It will only try for so long to build frame data. This is excellent when you are transcoding live. You can ensure that you hit generation framerate goals that way. If you disable the frame deadline, it’s much much slower.

        Meanwhile CPU encoders don’t have this because CPU is almost never directly used in transcoding. And even with a frame deadline the output would still not be at the same speed as the GPU. However the CPU encoders will get frames as small as you ask for.

        So if you need a fast transcode of anything, GPU is your friend. If you’re looking for the smallest highest quality for archival, CPU reference encoders are what’s needed.

      • @[email protected]
        link
        fedilink
        English
        610 months ago

        Yeah that caught my eye too, seems odd. Most compression/encoding schemes benefit from a large dictionary but I don’t think it would be constrained by the sometimes lesser total RAM on a GPU than the main system - in most cases that would make the dictionary larger than the video file. I’m curious.

        • icedterminal
          link
          fedilink
          English
          2110 months ago

          It’s not odd at all. It’s well known this is actually the truth. Ask any video editor in the professional field. You can search the Internet yourself. Better yet, do a test run with ffmpeg, the software that does encoding and decoding. It’s available to download by anyone as it’s open source.

          Hardware accelerated processing is faster because it takes shortcuts. It’s handled by the dedicated hardware found in GPUs. By default, there are parameters out of your control that you cannot change allowing hardware accelerated video to be faster. These are defined at the firmware level of the GPU. This comes at the cost of quality and file size (larger) for faster processing and less power consumption. If quality is your concern, you never use a GPU. No matter which one you use (AMD AMF, Intel QSV or Nvidia NVENC/DEC/CUDA), you’re going to end up with a video that appears more blocky or grainy at the same bitrate. These are called “artifacts” and make videos look bad.

          Software processing uses the CPU entirely. You have granular control over the entire process. There are preset parameters programmed if you don’t define them, but every single one of them can be overridden. Because it’s inherently limited by the power of your CPU, it’s slower and consumes more power.

          I can go a lot more in depth but I’m choosing to stop here because this can comment can get absurdly long.

          • @[email protected]
            link
            fedilink
            English
            210 months ago

            My understanding is that all of the codecs we are discussing are deterministic. If you have evidence to the contrary I’d love to see it.

            • @[email protected]
              link
              fedilink
              English
              1110 months ago

              GPU encoders like NVENC run their own algorithms that are optimized for graphics cards. The output it compatible with x265, but the encoder is not identical and there are far fewer options to tweak to optimize your video.

              The output is orders of magnitude faster but (in my experience) objectively worse, introducing lots of artifacts

            • @[email protected]
              link
              fedilink
              English
              410 months ago

              This. It sounds really odd to me that the GPU would make what is pretty much math calculations somehow “different” from what the CPU would do.

              • @[email protected]
                link
                fedilink
                English
                1110 months ago

                GPU encoders basically all run at the equivalent of “fast” or “veryfast” CPU encoder settings.

                Most high quality, low size encodes are run at “slow” or “veryslow” or “placebo” CPU encoder settings, with a lot of the parameters that aren’t tunable on GPU encoders set to specific tunings depending on the content type.

              • @[email protected]
                link
                fedilink
                English
                6
                edit-2
                10 months ago

                So the GPU encoding isn’t using the GPU cores. It’s using separate fixed hardware. It supports way less operations than a CPU does. They’re not running the same code.

                But even if you did compare GPU cores to CPU cores, they’re not the same. GPUs also have a different set of operations from a CPU, because they’re designed for different things. GPUs have a bunch of “cores” bundled under one control unit. They all do the exact same operation at the same time, and have significantly less capability beyond that. Code that diverges a lot, especially if there’s not an easy way to restructure data so all 32 cores under a control unit* branch the same way, can pretty easily not benefit from that capability.

                As architectures get more complex, GPUs are adding things that there aren’t great analogues for in a CPU yet, and CPUs have more options to work with (smaller) sets of the same operation on multiple data points, but at the end of the day, the answer to your question is that they aren’t doing the same math, and because of the limitations of the kind of math GPUs are best at, no one is super incentivized to try to get a software solution that leverages GPU core acceleration.

                *last I checked, that’s what a warp on nvidia cards was. It could change if there’s a reason to.

              • @[email protected]
                link
                fedilink
                English
                110 months ago

                Every encoder does different math calculations. Different software and different software profiles do different math calculations too.

        • @[email protected]
          link
          fedilink
          English
          710 months ago

          The way it was explained to me once is that the asic in the gpu makes assumptions that are baked in to the chip. It made sense because they can’t reasonably “hardcode” for every possible variation of input the chip will get.

          The great thing though is if you’re transcoding you can use the gpu to do the decoding part which will work fine and free up more cpu for the encoding half.

      • @[email protected]
        link
        fedilink
        English
        4
        edit-2
        10 months ago

        Already been explained a few times, but GPU encoders are hardware with fixed options, with some leeway in presets and such. They are specialized to handle a set of profiles.

        They use methods which work well in the specialized hardware. They do not have the memory that a software encoder can use for example to comb through a large amount of frames, but they can specialize the encoding flow and hardware to the calculations. Hardware encoded can not do everything software encoders do, nor can they be as thorough because of constraints.

        Even the decoders are like that, for example my player will crash trying to hardware decode AV1 encoded with super resolution frames, frames that have a lower resolution that are supposed to be upscale by the decoder. (a feature in AV1, that hardware decoder profiles do not support, afaik.)

      • @[email protected]
        link
        fedilink
        English
        210 months ago

        GPU encoding means it’s using the encoder the GPU and driver provides. Which can be worse than software encoders. For software encoders they exist for encoding. On a GPU it’s one feature of many, and doesn’t necessarily seek out the same high bar.

      • Shimitar
        link
        fedilink
        English
        -310 months ago

        Not really, I don’t do GPU encoding anyway so can’t say first person.

        But everybody says so on all forums so maybe its true.

    • @[email protected]
      link
      fedilink
      English
      11
      edit-2
      10 months ago

      Yep, gpu de- and encoding is high-speed but often lower quality and with old codec versions. Common mistake to think that gpu = better.

    • @[email protected]OP
      link
      fedilink
      English
      410 months ago

      In order to encode to a specific format without unintentionally losing quality, doesn’t the initial file have to be a remux?

      • @[email protected]
        link
        fedilink
        English
        710 months ago

        Yes, that’s right. But the point stands, you indeed shouldn’t do such encoding on the GPU, it’s a tradeoff of (fast) speed vs (poor) quality and (big) size. Good for when you need realtime encoding.

      • Shimitar
        link
        fedilink
        English
        110 months ago

        Indeed, but YMMV and to me quality is still good if source was not a remix but a top quality encoding

      • zeluko
        link
        fedilink
        110 months ago

        You can downsample from BluRay, which would give you least loss.
        But if you only have some good h264 version and want space savings, you can also reencode that, while probably loosing some small amount of quality, depending on your settings.

  • @[email protected]
    link
    fedilink
    English
    3010 months ago

    RARBG was so good for this, their releases were of such good consistent quality

    If you search for ORARBG on therarbg site you can still find some OG releases and not random YIFY crap

      • @[email protected]
        link
        fedilink
        English
        1
        edit-2
        10 months ago

        Didn’t even know that was a thing ngl and I use qbit nox on my server. Kinda obsoletes the *arr suite

        • Bigfoot
          link
          fedilink
          English
          910 months ago

          Eh, the *arr apps are more about the freedom to be hands-off. Ideally you will just request something in a frontend like Overseerr from your phone and it will handle the rest. Or automatically grab upon release.

        • @[email protected]
          link
          fedilink
          English
          710 months ago

          I only found out shortly after the closure of RARBG. Found this is the best way to find old RARBG torrents, just search for whatever then filter for RARBG or 265

        • @[email protected]
          link
          fedilink
          English
          510 months ago

          Not if you have lots of specific filters set up in the *Arr suite. So much better getting a HQ rip automatically than choosing a random one in qbit.

  • Gravitywell
    link
    fedilink
    English
    2810 months ago

    MeGusta and Im pretty sure all other x265 groups aren’t really considered official scene releases and usually the sources are the larger x264 scene releases. I’ve found that you can get the same if not better results as MeGusta encoding with a simple -cq 27 with the nvenc_h265 encoder which is reasonably fast.

    A good portion of the world thats pirating media is playing it cheap junk with 10+ year old CPUs that can’t handle x265, most do not have terabytes of media they just watch and delete so overall size isnt a huge issue, most likely when a new codec does become more mainstream, it won’t actually mean smaller releases anyway, it will just mean better quality ones.

    In the 00’s the standard everyone used was 800mb DivX because thats the size CD-Rs came in, over time, going into the 2010s we got x264 releases but the targets were around 4-8gb usually and by that point the size of optical media didn’t really matter since flash drives are cheap and reusable and overall internet speeds for people continues to increase as well so its more likely that when the day comes, the scene will probably coalesce around something like 8-16gb per release.

    • @[email protected]
      link
      fedilink
      English
      610 months ago

      That’s why I grab the Chinese versions of stuff in the original language, they seem to not care about license and encode in h265 in the app

  • Bobby Turkalino
    link
    fedilink
    English
    1810 months ago

    I’d be interested to know how many of the streaming services natively offer x265. If it’s not many, then I could understand why release groups wouldn’t wanna re encode (e.g. it wouldn’t be a true WEB-DL anymore)

    • @[email protected]
      link
      fedilink
      English
      510 months ago

      Prob 0 % as h265 is like HDMI and needs to be licensed to be used. Sadly this has set up 265 to be a failure outside of piracy

      • @[email protected]
        link
        fedilink
        English
        12
        edit-2
        10 months ago

        It’s used for the majority of HDR streams and all Dolby Vision streams. h265 is the only codec that supports DV

      • Bobby Turkalino
        link
        fedilink
        English
        210 months ago

        Should’ve mentioned I meant 1080p. x265 or something equivalent is essential for 4k

  • @[email protected]
    link
    fedilink
    English
    1510 months ago

    There’s always the chance that compatibility / breadth can be a factor. I don’t know how much more demanding 265 is than 264 but if it is “noticeable” / “enough”, if it means someone can’t play the content in their (smart) TV set or on their phone, it makes sense then to release for the more compatible option / avoid a dual release.

    • @[email protected]
      link
      fedilink
      English
      4
      edit-2
      10 months ago

      My old laptop can’t handle h265. I don’t think my old SmartTV can, either. We need h264 for those devices since they both have dedicated h264 decoding hardware.

      • @[email protected]
        link
        fedilink
        English
        310 months ago

        Word! My daily driver phone is old enough that I think it can only handle like, h236 or something at most.

  • @[email protected]
    link
    fedilink
    English
    1010 months ago

    I only download h265 because my drive is filling up as well. I can usually play it back easily in software, except for film grain that wrecks the performance

  • @nimmoA
    link
    English
    610 months ago

    I’ve just recently started using tdarr to convert all of my media to x265on 14/02 and so far I’ve saved 4.02 TB of what was 28.12TB media collection. (The number isn’t a true reflection though because new episodes and shows have been added to that library since I started)

    I’m letting tdarr manage the conversion process and once up and running meant that my NAS, desktop, my NUC and a mini pc are all plodding through and converting when I’m not using them for other things.

    If you are worried about the disk space being taken and have some CPU time you can devote to the conversion process then I’d suggest it’s worth looking into tdarr.

    • @[email protected]
      link
      fedilink
      English
      410 months ago

      I’ve saved 4.02 TB of what was 28.12TB media collection.

      How much kw and months did you use for that? 😮

      • @nimmoA
        link
        English
        910 months ago

        I’m going to choose not to answer that for two reasons…

        1. I don’t know the answer
        2. solar panels and batteries are great.

        But yes I’m in a position where I was more willing to pay for the power than I was to buy additional storage space as I’m hitting the top of what I can do without significant expense.

        • @[email protected]
          link
          fedilink
          English
          5
          edit-2
          10 months ago

          solar panels and batteries are great.

          Agree. That’s why i want to place my mini-server on my dad’s farm, he has solar on the roof.

      • zeluko
        link
        fedilink
        5
        edit-2
        10 months ago

        Just keep it seeding?
        Of course if you want both, best space saving would be to use the same file.
        I have multiple servers, so it doesnt really matter anyways, one machine downloads and seeds via its SSD and theother is just for storage on HDDs. Though i could setup tiered storage in this scenario to be able to seed more with same SSD strorage amount.

      • @nimmoA
        link
        English
        410 months ago

        Ah, fair point. I don’t use torrents, my media comes from usenet, so that doesn’t need to factor into my thinking.

        My (overly?) Complex setup does allow me to resort to torrents as a last resort, but that happens on another machine outside my home network and gets synchronised into my home via a one-way syncthing share, so even on the rare occasion I have to resort to torrents I can leave it on that server seeding for a few weeks or months.

  • @[email protected]
    link
    fedilink
    English
    510 months ago

    I’ve done a bunch of transcoding of things to x265 in the past (as I’m sure everyone is aware transcoding isn’t GREAT but cuts down on storage costs). With that said I’ve now moved to AV1. I don’t use GPU encoders at all as I found the quality to be pretty terrible. I just use a custom written ZSH script to go through and check the current format (it also converts audio to OPUS too)

  • @[email protected]
    link
    fedilink
    English
    410 months ago

    My raspberry pi doesnt transcode h265 very well at all. Much easier to expand the storage until I can upgrade to something better

      • @[email protected]
        link
        fedilink
        English
        410 months ago

        Oh my apologies, my pi doesnt handle it well on plex. Didnt realise it at the time and sorta just went with what was easiest to set up before realising I’d need to pay to get transcoding 😔

        • @[email protected]
          link
          fedilink
          English
          2
          edit-2
          10 months ago

          I stick to 264 for the same reason. I’m happy running Plex from my Pi4. Multiple streams are fine to devices around the home.

          Also streams fine on my phone when external.

      • cartoon meme dog
        link
        fedilink
        English
        3
        edit-2
        10 months ago

        at least on a 4, this command will misleadingly return “disabled” even though your programs are able to use hwdec, because the h.265 decoder isn’t part of the Pi 4’s GPU, it’s elsewhere.

        • cartoon meme dog
          link
          fedilink
          English
          2
          edit-2
          10 months ago

          nor decoding 264 :(

          a rather annoying regression from the 4 to the 5, especially when the 5 now supports more MIPI cameras where live encoding is crucial.