Michael Fabian 'Xaymar' Dirks 545dcd6d50 encoder: Add support for true hardware encoding
This is the last step towards truly efficient encoding on AMD, Nvidia and Intel GPUs. With this we have no software overhead and can directly encode the content that OBS gives us, without going through any intermediate CPU layer. This is effectively what @jp9000 did for the OBS-integrated nvenc, but thanks to FFmpeg it works on all encoders that support D3D11VA acceleration.

With the change, the encoding should now work flawlessly even in very constrained situations (unless OBS itself is being starved of resources). Especially people streaming and recording Ubisoft games will likely see a drastic increase in encoding capability, and thanks to the new options will also be able to get a much higher quality stream and recording with the same hardware.
2019-09-29 19:29:00 +02:00
2019-09-04 00:30:06 +02:00
2018-11-13 19:01:53 +01:00
2019-09-04 00:30:06 +02:00
2018-11-13 19:01:53 +01:00

FFMPEG Encoders for OBS studio

Adds ffmpeg encoders for normal use instead of requiring ffmpeg output. Not much else to say.

Encoders

Video Production / Edition

Apple ProRes (prores_aw)

  • Intra-Frame only
  • Fixed Bitrate (defined by Profile)
  • Profiles: PXY, LT, Standard, HQ, 4444
  • Threading: Frame

Threading Modes

All threading modes can be combined to create a more complex one.

Frame

Frame Threading means that new frames can be submitted before the last one is complete. This is the most basic threading and has huge latency issues, and is likely also very unstable with frame times.

Slice

Slice Threading allows individual frames to be done quicker by splitting up the entire submitted frame into individual slices, each of which are handed off to workers. More complex than frame threading, but can result in faster encoding and will result in less latency.

Macroblock

This kind of threading is rarely seen and splits the frame into macroblocks, allowing for massive parallelization. Similar latency to Slice threading and can occasionally use SMT/HT better, resulting in better performance.

S
Description
Legacy plugin for OBS Studio to provide some FFmpeg encoders.
Readme MIT 413 KiB
Languages
C++ 82.4%
CMake 15.7%
JavaScript 1.9%