My CPU is an AMD 5600X. My test video is 1080p 30fps, I’m trying to bring it down to 480p using AV1.

This is my first time playing with AV1. I bought an A310 to play around with because I read that the hardware encoder was faster than software, albeit lower quality and slightly larger.

Quality isn’t important to me, I have 700gb of 480i video that was saved at 1080p and inefficiently encoded, I want to reduce its size dramatically.

I’m using handbrake on Windows, and I chose AV1 SVT at first, and I average about 150fps, sometimes 120 sometimes 180. My CPU sits at 100%.

But if I choose AV1 Intel QSV, I average only about 40fps. And the GPU sits at 68%.

What am I missing? Thanks in advance

Edit: I found a thread from a year ago saying that encoding performance dropped after driver 4887, so I rolled way way back to 4885 from October 2023, and my performance almost doubled to 70-80 fps. But this is still far worse than SVT on CPU alone.

I read about a bug where the whole card can only be utilized if running two jobs simultaneously, so I tried this. The second job runs much slower, about 10-20fps. But that does bring me closer to 90-100fps combined, sometimes 🤷‍♂️

Something has got to be wrong, or maybe I’m expecting too much performance for the job I’m doing? I don’t have any special filters set up. You’d think encoding 1080 to 480 would be lightning fast.

  • ferret@sh.itjust.works
    link
    fedilink
    English
    arrow-up
    1
    ·
    2 days ago

    Ignore the yammering about QSV being the wrong encoder, it isn’t. Try setting “lowpower=0” in the ”More Settings” box, although I do not know if that works on windows or just linux.

    If you have the means to, I would encourage you to test on linux, as others have suggested, as it could help you determine if it is a software problem or if those are the right numbers for that gpu.

  • Justin@lemmy.jlh.name
    link
    fedilink
    English
    arrow-up
    2
    ·
    2 days ago

    QSV is the correct driver. I use an A310 for Jellyfin on Linux and I get a ton of performance. Well over 60fps transcoding 4K, and it you can get like 120fps even?

    I imagine the 68% gpu reading is misleading, as video transcoding uses special parts of the silicon dedicated to transcoding and doesn’t use all of the parts of a GPU.

    The slowness you’re getting I’m thinking is either related to deinterlacing or windows drivers. You could try booting up Linux on a flash drive to see if that helps at all.

  • sga
    link
    fedilink
    English
    arrow-up
    3
    ·
    3 days ago

    not really experienced - but is there a memory read limit somewhere? if your gpu is not able to read fast enough or write fast enough this would result in lower usage (68%). I think with intel cards, you have to enable

    Also encoding being slower than CPU is possible (there is a possibility there are not just enough units on the card to the encode) but in this case, it seems much lower, possibly power limited?

    • beastlykings@sh.itjust.worksOP
      link
      fedilink
      English
      arrow-up
      2
      ·
      edit-2
      3 days ago

      Thanks for the suggestions!

      Hmmm, I’d think a memory r/w limit would affect CPU encoding too? The files are reading from and writing to the same high speed nvme drive, 7Gb/s read, 5Gb/s write.

      Maybe the slot it’s in is only 1x for some reason? I’m pretty sure it’s an 8x slot, and the a310 only needs 4x. I can look into it.

      Power limited, hard to say. It’s a 75w card that gets all it’s juice from the pcie slot, no plugs on it. My motherboard has all its plugs plugged in 🤔

      Thanks for the suggestions! And good to know that it seems weird to you too, maybe I’m not crazy then haha

      • sga
        link
        fedilink
        English
        arrow-up
        1
        ·
        2 days ago

        no, i think cpus are allowed to access all of memory, where gpus (dependingon config) have to to ask for memory via cpu in chunks of 500MiB to GiB

        also, maybe check motherboard setting for this power curves

      • sp3ctr4l@lemmy.zip
        link
        fedilink
        English
        arrow-up
        1
        arrow-down
        2
        ·
        edit-2
        3 days ago

        Your problem is using Intel QSV.

        Nothing you or sga have said so far is really relevant.

        Intel QSV is an encoding method designed to work on Intel CPUs, running integrated graphics, meaning that it either entirely doesn’t or barely uses your GPU at all, because its designed for a computer that doesn’t have a GPU.

        Please see my other comment.

  • sp3ctr4l@lemmy.zip
    link
    fedilink
    English
    arrow-up
    1
    arrow-down
    2
    ·
    edit-2
    3 days ago

    If you mean that using an encoder aimed at Intel CPUs (Intel QSV) results in your AMD CPU rendering frames slower than an encoder (SVT) that went open source 5 years ago and supports both AMD and Intel CPUs, and AMD and Nvidia and Intel GPUs…

    Uh… yep. That’ll happen.

    Get an Intel CPU or use a codec that is better supported on AMD hardware for better render times.

    Intel QSV is a processor reliant method that only works well on Intel CPUs, it does not leverage Intel GPUs.

    https://www.intel.com/content/www/us/en/support/articles/000029338/graphics.html

    Its meant for Intel CPUs running integrated graphics through the CPU only.

    It probably doesn’t even use your Intel GPU much at all.

    Intel QSV as an encoder only works well on Intel CPUs basically post 2011, that have hardware support for the encoder.

    https://en.m.wikipedia.org/wiki/Intel_Quick_Sync_Video

    Quick Sync Video is available on Core i3, Core i5, Core i7, and Core i9 and new Core Ultra processors starting with Sandy Bridge, and Celeron & Pentium processors starting with Haswell.

    Processors. CPUs.

    If you mean your rendered videos are popping out at varying frame rates:

    https://handbrake.fr/docs/en/latest/technical/frame-rates.html

    You need to set a Constant Frame Rate, probably 30.

    Also… if your source for conversion is 480i… that basically means every frame is actually half of frame.

    480i basically means every odd frame only uodates every odd row of pixels, every even frame only uodayes every even row of pixels.

    Each new frame only updates half of the on screen pixels.

    Its basically an old trick, a leftover from analog days.

    480p, by comparison, actually fully draws a new frame each time.

    https://handbrake.fr/docs/en/latest/technical/filters-summary.html

    You may also want to try different de-interlacing filters.

    I’d suggest taking one of your 480i videos, cut a 30 or 60 second chunk out of it… or just find your shortest 480i video, so that you can more rapidly test different setting combinations untill you find a good output quality, then remember those settings and set up a massive batch proccess for your whole library you wanna convert.

    • ferret@sh.itjust.works
      link
      fedilink
      English
      arrow-up
      2
      ·
      edit-2
      2 days ago

      This is explicitly incorrect. The QSV api is used for the media engine on arc GPUs on windows. (see information on the fixed-function encoder here) additionally, QSV is only ever used to access hardware encoding features. If there was no related hardware installed in the system, it would be impossible to use.

      EDIT: Arc GPUs are even included on the support table in the QSV wikipedia page you yourself linked.

      • sp3ctr4l@lemmy.zip
        link
        fedilink
        English
        arrow-up
        1
        arrow-down
        1
        ·
        edit-2
        2 days ago

        Ok, you got me, I flubbed that one.

        Did not see that QSV is on Intel GPUs.

        As I had said previously, I’ve not used Intel GPUs for encoding, and historically, its always been a CPU thing.

        However:

        https://community.intel.com/t5/Intel-ARC-Graphics/Intel-Driver-Causing-Issue/m-p/1669199#M21274

        Go through this and similar reports.

        Whole bunch of Intel GPU users reporting problems with QSV AV1 encoding.

        Looks like a recent Intel driver update buggered up their QSV AV1 encoding on Arc GPUs, and they are planning a patch to fix it.

        Most people are reporting problems with OBS, but it seems like Intel has admitted it’s their problem, hence the incoming driver fix, which would mean that at least right now, Arc cards… do not properly support QSV.

        =P

    • beastlykings@sh.itjust.worksOP
      link
      fedilink
      English
      arrow-up
      2
      ·
      3 days ago

      Thanks for the information!

      My source files are 1080p recordings, but the source that made them was 480i. The 1080p source files look great, I’m just trying to ditch all the unnecessary data.

      My problem is encoding speed, not any facet of the final product.

      I used Intel QSV because it’s the option that showed up when I installed my Intel Arc A310 GPU with built in AV1 encoder. When I use Intel QSV, I see the usage on my Intel GPU climb to 68%, so presumably it is working as intended. It is just much slower than expected.

      Do you have experience with Intel Arc cards and handbrake?

      Thanks!

      • sp3ctr4l@lemmy.zip
        link
        fedilink
        English
        arrow-up
        1
        arrow-down
        3
        ·
        edit-2
        3 days ago

        I don’t specifically have experience using handbrake on an Intel GPU, as those are pretty new and uncommon.

        I do have experience using handbrake in general.

        You say QSV is just slower and you don’t care about quality…?

        Intel QSV is not going to work well for you, because you have an AMD CPU.

        Intel QSV is designed to use a hardware component that doesn’t exist on your AMD CPU, it only exists on Intel CPUs.

        It… it would be like trying to do Realtime Raytracing in CyberPunk 77 on an Nvidia 3080 vs on an AMD 6080 xt.

        Performance would be comparable without RTT, but RTT only works well on Nvidia card because they have hardware components designed to support it.

        Probably just go back to SVT, set a CFR if that’s relevant.

        • beastlykings@sh.itjust.worksOP
          link
          fedilink
          English
          arrow-up
          1
          ·
          3 days ago

          I hear what you’re saying. I understand that QSV will not work on AMD.

          I’m saying that QSV only shows up as an option when the Arc card is installed. And my GPU usage only goes up when using QSV. So QSV is the correct option to use for an Arc card. The question is then, why is the Arc card performing so badly?