GeezerVison is showing github.com — Video Encode API: BFrames not supported on RX 4xx? · Issue #8 · GPUOpen-LibrariesAndSDKs/AMF
Video Encode API: BFrames not supported on RX 4xx? #8Description10:41:06.215: [AMF Encoder] Type | Acc.Type | Max Bitrate | Stream # | Max Profile | Max Level | BFrames | Ref. Frames | Layer # | FSM | Instance #
10:41:06.215: [AMF Encoder] AVC | Hardware | 100000000 | 16 | 100 | 52 | No | 1 - 16 | 1 | No | 1
10:41:06.215: [AMF Encoder] SVC | Hardware | 100000000 | 16 | 100 | 51 | No | 1 - 16 | 3 | No | 1
I get this result when querying the AMF Encoder for capabilities. The RX 480 has a newer VCE (sub-)generation, shouldn't it support BFrames like the R9 380/R9 285?
This is the output when I select the R9 285 (using the older SDK).
10:41:06.215: [AMF Encoder] Type | Acc.Type | Max Bitrate | Stream # | Max Profile | Max Level | BFrames | Ref. Frames | Layer # | FSM | Instance #
10:41:06.215: [AMF Encoder] AVC | Hardware | 1000000000 | 16 | 100 | 51 | Yes | 1 - 16 | 1 | No | 1
10:41:06.215: [AMF Encoder] SVC | Hardware | 1000000000 | 16 | 100 | 42 | Yes | 1 - 16 | 3 | No | 1
ActivityMikhailAMD commented on Aug 20, 2016 Yes, R9 480 does not support B-frames. You can try new SDK on both HW for consistency. Reacted by mirh Reacted by Roph kytos22 commented on Aug 20, 2016 I think you meant RX480, if so how is this possible? MikhailAMD commented on Aug 20, 2016 Xaymar commented on Aug 20, 2016 ContributorAuthor More actions Does that mean that Vega and Polaris will not support B-Frame encoding, lowering recording quality? That seems like a strange upgrade from VCE 3.0, are you sure it isn't temporarily disabled until the driver side libraries are ready? Roph commented on Aug 21, 2016 Not totally related, but Polaris definitely supports B-Frames when encoding H.265. Encoding some now. Xaymar commented on Aug 21, 2016 ContributorAuthor More actions @Roph Using the AMF SDK or Media Foundation implementation? Roph commented on Aug 21, 2016 Using a very early development transcoder. I believe the developer used the new SDK. kytos22 commented on Aug 22, 2016 MikhailAMD commented on Aug 22, 2016 AMD does not support B-frames for HEVC and H264 on this chip yet. Roph commented on Aug 23, 2016 Xaymar commented on Aug 23, 2016 ContributorAuthor More actions @Roph: If I read your thread right, you have access to a private repository for the SDK? Does that mean that whatever is currently forcing BFrame support to off is version-specific for the SDK?
I've seen many log files for the RX 4xx series now and the capability reporting always shows BFrames as "Not Supported". Roph commented on Aug 23, 2016 Not to the SDK, a developer of VCE-enabled video transcoding software put together an untested new build for me using the new SDK with H265 support. He doesn't have a polaris GPU to test on yet.
It definitely works and produces good (for a GPU) quality HEVC, I can't confirm if it's actually using B-Frames though. Xaymar commented on Aug 23, 2016 ContributorAuthor More actions But... the SDK doesn't have H265 support yet. Unless he is using the Media Foundation encoder, then it would make sense. (Still impressive speeds for media foundation) nwgat commented on Aug 23, 2016 StreamEye can show you if it encodes b-frames or not but it seems not to work on roph's files for some reason even after remux to mkv MikhailAMD commented on Aug 23, 2016 They probably used HEVC encoder MFT. HEVC Encoder AMF was not published yet. But the MFT is built on AMF :) Xaymar commented on Aug 23, 2016 ContributorAuthor More actions @Tukan40 HEVC Encoder is already in the driver side, all it took me to use it was to create the correct component. MikhailAMD commented on Aug 23, 2016 Keep in mind that there is no B-frames there. It is a bug in app or MFT reports wrong capabilities. Xaymar commented on Aug 23, 2016 ContributorAuthor More actions Well, I stepped further into the encoder sent by @Roph to me and it indeed seems to be MFT. I have not found a single reference to amfrt32.dll or amfrt64.dll or any wrappers for the c++ classes. So, yes, it's most likely Windows Media Foundation fucking up again. MikhailAMD commented on Aug 23, 2016 Yes and no. The MFT is not calling AMF runtime but is built from the same source base. Though, for now one still needs to go through Media Foundation APIs to call it. Roph commented on Sep 28, 2016 So to clarify @MikhailAMD, is this a software/driver issue or a hardware one? You said AMD doesn't support B-frames on this chip yet, which seems to imply the former. Earlier though you say the chip itself doesn't support them. A little confused. MikhailAMD commented on Oct 3, 2016 Consulted with HW team: we do not have H264 B-frame encode support in RX480 GPU. Reacted by Marcos Vidal Martinez, Xaymar, locodicegr, Roph, Dennis E. Mungai , mirh and Daniel Langbein Reacted by Atemu Xaymar commented on Oct 3, 2016 ContributorAuthor More actions I guess that was to be expected, the RX 460/70/80 is the low to mid-end spectrum anyway. HEVC and Two Pass encoding will help a lot for this anyway. Brainiarc7 commented on Jul 13, 2017 Can someone confirm if AMD's VCE on Polaris supports weighted prediction encoding for H.264 and H.265? MikhailAMD commented on Jul 13, 2017 weighted prediction is not supported on Polaris.
MetadataMetadataDevelopmentNo branches or pull requestsIssue actions
|