Resource icon

AMD Hardware Encoder(s) 2.6.0

Xaymar

Active Member

Ever wanted to use the Hardware AMD H264 and H265/HEVC encoders in OBS Studio? Well now you can! This plugin adds full support for both into OBS Studio, with both a simple and advanced UI for the casual and power user.

It is built upon the GPUOpen Advanced Media Framework SDK and thanks to a lot of optimizations can rival the raw performance of AMD ReLive and Windows 10 Game DVR while offering many more features.

Features
  • Works on all VCE enabled AMD GPUs with the latest drivers.
  • H264/AVC and H265/HEVC Encoders
  • Presets for easy setup
  • Several View Modes that gradually reveal more options for Power Users wishing to mix and match.
Help Out
As a solo developer most of the time I don't have the funding necessary to maintain my software and additions. It would be greatly appreciated if you could help out through Patreon.

Requirements
Minimum
  • AMD Bulldozer or equivalent Intel CPU
  • AMD GCN1/VCE1
  • 4 GB RAM
  • Windows 7
  • AMD Driver 19.7.1
Recommended
  • AMD Ryzen 3 or better, Intel not recommended due to various issues
  • AMD GCN1/VCE1
  • 16 GB RAM
  • Windows 10
  • Latest AMD Driver
 
Last edited:

sneaky4oe

Member
Wow, man. That's what I've been dreaming of for a long time!
Would be great to be able to select installed videocard for doing that (I have 2 different, and'd like to use a secondary for recording).
Also, some default values for presets would be awesome. Like, gather statistics and don't use "-1". I played with it a bit and was unable to launch with my r9 390x.
 
Last edited:

wazer

New Member

Xaymar

Active Member
Oh boy, this is awesome, however there's 2 different versions which one should i select under output > encoder > Streaming?

h264 VCE Encoder (AMD Media Framework)

This one makes my obs crash.

Logs

Crash log
http://pastebin.com/EVNqq2tV

Normal Log
http://pastebin.com/f4DFsM8c



I'm streaming via RTMP/RTMFP

In the logs on server it says like this

http://image.prntscr.com/image/05b63c36d05f4b0a99a2d78540072861.png



AMD Video Coding Engine H.264 Encoder (Media Foundation)

Trying to test this ATM.
Streaming is not yet supported, [strikethrough]OBS Studio[/strikethrough]the plugin needs to be patched first to allow that.

Wow, man. That's what I've been dreaming of for a long time!
Would be great to be able to select installed videocard for doing that (I have 2 different, and'd like to use a secondary for recording).
Also, some default values for presets would be awesome. Like, gather statistics and don't use "-1". I played with it a bit and was unable to launch with my r9 390x.
-1 (Default) uses the default for your graphics card, usage and quality preset. Gathering Statistics here is pretty much the worst thing you could do as those change depending on what you select and how your GPU is being used at the time.
 
Last edited:

wazer

New Member
Streaming is not yet supported, OBS Studio needs to be patched first to allow that.
Alright, however so i just wasted testing rtmp on the already implemented part which is bad i guess since the video is looking like crap :P, i will wait for your updates.
 

Xaymar

Active Member
Xaymar updated h264 VCE Encoder (AMD Media Framework) with a new update entry:

Streaming, Keyframes and much more! (Prerelease)

  • Fixed: Crash when Streaming to YouTube, Twitch, etc.
  • Fixed: High Disk load due to logging during runtime.
  • Fixed: Order of Quality Preset and Usage overwrote each other.
  • Changed: Dynamic Properties can now be changed at runtime.
  • Updated: AMF Binaries to latest version at the time.
  • Added: More Properties and defaults for these properties.
  • Added: Experimental RGBA support.
Read the rest of this update entry...
 

Xaymar

Active Member
Xaymar updated h264 VCE Encoder (AMD Media Framework) with a new update entry:

1.1 - Keyframes, Streaming, more Settings and more!

  • Fixed: Crash when Streaming to YouTube, Twitch, etc.
  • Fixed: High Disk load due to logging during runtime.
  • Fixed: Order of Quality Preset and Usage overwrote each other.
  • Changed: Dynamic Properties can now be changed at runtime.
  • Updated: AMF Binaries to latest version at the time.
  • Added: More Properties and defaults for these properties.
  • Added: Experimental RGBA support.
  • Fixed:...
Read the rest of this update entry...
 
Last edited:

Xaymar

Active Member
Xaymar updated h264 VCE Encoder (AMD Media Framework) with a new update entry:

1.1.2pre2 - The Choice is yours: AllocSurface or CreateSurfaceFromHostNative?

  • Added: Support for both AllocSurface and CreateSurfaceFromHostNative. Support via dropping in the correct version.
Installation is different now:
  • AllocSurface users should extract the content of Release-withAllocSurface to their obs root folder.
  • CreateSurfaceFromHostNative users should extract the content of Release to their obs root folder.
Read the rest of this update entry...
 

Xaymar

Active Member

ynetwork

New Member
Does this work with GCN 1 cards. I have a 7970 and I installed the amd media framework but does not show up in obs 32bit or 64bit, I just copied and replaced in the root obs studio directory.
You may need to install new Visual Studio 2015 Redistributables. Check developer's website.

I tried with my old 7870XT on Overwatch 1920x1080@30 fps and it is working.


*corrected a typo.
 
Last edited:

chummy

Member
Nice done. But memory leaks still there, my 390 just caused OBS memory to fill up to 6.5gb. If i start recording in 10 seconds it increase memory usage by 1Gb.
 

Xaymar

Active Member
Does this work with GCN 1 cards. I have a 7970 and I installed the amd media framework but does not show up in obs 32bit or 64bit, I just copied and replaced in the root obs studio directory.
It should work with 1st Generation GCN cards, but you have to keep in mind that you're on VCE Version 1.0 - not everything will work as you'd think it would. Media Foundation will often give you better results, since it is a software assisted encoder.

Nice done. But memory leaks still there, my 390 just caused OBS memory to fill up to 6.5gb. If i start recording in 10 seconds it increase memory usage by 1Gb.
That is due to the fact that it currently queues up input frames if the VCE Encoder tells us that the buffer is full. You'll have to change some settings for it to work properly. In the future (read: when I know how to) it will instead buffer up to <FPS> frames and then start dropping them with the "Encoding overloaded!" message.

Good job, I tried here https://www.youtube.com/watch?v=VgLgxsQZKvU and works very well but still need to improve quality/perf as new features/fixes come in.
A lot of it is testing with different settings, let's hope AMD updates their Media SDK soon.
 

blradj

New Member
ehh, guess i need some help with configs for streaming =(
image on the stream are flashing and playing at 10-15 fps, have no idea what to change in config
 
Top