With no graphics card specific compilation to the ffmpeg, which among intel or AMD is better for executing

ffmpeg -i input -c:v libx265 -crf 26 -preset fast -c:a aac -b:a 128k output.mp4

Would tight integration between amd cpu + gpu help in this case?

Fyi. Currently i am using intel with cpu only mode for this and its pretty slow.

  • OpticalMoose
    link
    fedilink
    English
    arrow-up
    13
    ·
    edit-2
    1 year ago

    AMD APUs have Video Coding Engine / Unified Video Decoder, while Intel CPUs have QuickSync. FFMPEG’s hardware page says that AMD support is incomplete.

    You may want to ask over in !datahoarder@lemmy.ml . This topic often came up back on Reddit, and the general vibe I got was that most people prefer QuickSync. Intel may not be great in a lot of areas, but they are a beast in video encoding/decoding. That being said, I use a Ryzen APU and it’s perfectly fine. There are way more important things to look at when choosing a CPU.

    If your performance is slow, I would check your CPU is listed on the chart I linked above. Not all CPUs support all codecs.

    Edit: If your CPU doesn’t support the codec, it will still work, it just won’t be accelerated.

    • drwankingstein@lemmy.dbzer0.com
      link
      fedilink
      English
      arrow-up
      3
      arrow-down
      1
      ·
      1 year ago

      quicksync really doesn’t have good quality:compression buying a used nvidia gpu and using that would be far better. but really, any moderatly up to date cpu should get good x265 or svtav1 perf

  • drwankingstein@lemmy.dbzer0.com
    link
    fedilink
    English
    arrow-up
    12
    ·
    1 year ago

    none, you aren’t using gpu, just whatever cpu is the fastest. if you want gpu acceleration you have to specify it. and keep note gpu acceleration is less efficient then cpu so your files will be bigger. though at preset fast it might actually be pretty close

    • Disonantezko@lemmy.sdf.org
      link
      fedilink
      arrow-up
      3
      ·
      edit-2
      1 year ago
      • Hardware (GPU) encoders are worst than software encoders.
      • GPU Acceleration is good for faster encoding and free CPU to do other things. But you get bigger files at similar quality.
      • Maybe is useful for live streaming or if you really really need CPU do other things.
      • drwankingstein@lemmy.dbzer0.com
        link
        fedilink
        English
        arrow-up
        3
        ·
        1 year ago

        Yes this is indeed what I said. but well calling gpu encoders “worse” isnt really fair, it’s all trade offs, they for sure have worse efficiency as we both said, but their speed is significantly faster usually. I would say that doesn’t make the encoder “worse” just different.

    • cmgvd3lwOP
      link
      fedilink
      arrow-up
      2
      ·
      1 year ago

      So what you are saying is its better to run on cpu alone?

      • scholar@lemmy.world
        link
        fedilink
        arrow-up
        6
        ·
        1 year ago

        Running on cpu will give you better quality and (maybe) smaller output file size, but will take longer.

        Everything’s a compromise and it all depends on what matters more to you

        • drwankingstein@lemmy.dbzer0.com
          link
          fedilink
          English
          arrow-up
          1
          ·
          1 year ago

          Better quality:Compression ratio you can easily get better quality out of a gpu then a cpu depending on your settings, but it will rarely be better quality AND compression unless you have a quite slow CPU and cant run a sensible preset

  • UnfortunateShort@lemmy.world
    link
    fedilink
    arrow-up
    3
    ·
    1 year ago

    Probably won’t, at least not because of the integration. Interactions between CPU and GPU are very generic, because obviously every CPU should work with every GPU. You can do optimizations in driver, but as far as I’m aware AMD does not implement any tech to make specifically their GPUs work better with their CPUs. At least not anything noteworthy.

    Graphics workloads are GPU bound. The only thing that matters is your GPU. You might be able to use the iGPU if you have one. Should already help a whole lot.

  • waigl@lemmy.world
    link
    fedilink
    English
    arrow-up
    2
    ·
    1 year ago

    As far as I know and could look up on short notice, libx265 does not make use of GPU computing (via CUDA or otherwise), so the answer to your second question

    Would tight integration between amd cpu + gpu help in this case?

    is almost certainly no.

    Performance wise, the ffmpeg command you posted will be completely dominated by the video encoding part through libx265, to the point where everything else is pretty much negligable. Also, the rest of this does not use gpgpu computing either.