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.
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.
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
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
- 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.
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.
So what you are saying is its better to run on cpu alone?
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
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
when possible yes, sometime sits not possible, and it will be better to run on gpu alone
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.
Graphics workloads are GPU bound.
This isn’t a graphics workload, or at least not that kind of graphics workload. The GPU is irrelevant here.
well at one point rebar was kinda that for windows folk :D
You can see the results for this here: https://openbenchmarking.org/test/pts/x265&eval=3361398242e51c9735e344947066888a1fb27436
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.
What are you trying to achieve?
This smells of an XY question.
If you want to use hardware acceleration from the Intel iGPU, you’d want to do something like:
ffmpeg -i input -hwaccel qsv -hwaccel_output_format qsv -c:v h265_qsv -crf 26 -preset fast -c:a aac -b:a 128k output.mp4
Intel tends to be much higher quality for hardware accelerated encoding. If you’re doing pure CPU encoding using libx265, then AMD tends to have more/better cores so they can go a bit faster at the same price level.
If you’re using hardware acceleration for video specifically, Intel is better.
Intel