AMD h.264 Encoder Issue with FCP 11 and FCP 2.1 for iPad

I’m recording a video on one of my device(ROG Ally X) that uses AMD h.264 as hardware encoder on OBS. The video can play using Quictime without any issue.


When I import the video to FCP 11 or FCP 2.1 for iPad, I encounter same issue where the media is just black! This was working before FCP 11 and FCP 2.1.


I tried to isolate the problem

  • I tried recording a video to my other windows device using OBS using NVIDIA encoder (NVENC), and I’m not encountering the issue
  • I tried recoridng a video using my Macbook and OBS using the Macbook encoder (CBR), and I’m not encountering the issue
  • I tried to use the same device (ROG Ally X) but I changed the encoder to software x264, and I’m not encountering the issue


So I believe the issue is with the latest FCP version (11 and 2.1) handling of AMD h.264. This is really frustrating, if Apple was not able to test this kind of scenario before going live with this version of FCP


My workaround now is to use iMovie(No issue using iMovie) just to save again the video and use that new video on FCP. (Really a hassle)


Anyone encountering the same issue and a better workaround?


[Re-Titled by Moderator]

Posted on Jan 12, 2025 8:35 PM

Reply
11 replies
Sort By: 

Jan 29, 2025 3:19 PM in response to _wick3d_

The file is internally damaged, likely due to malformed Long GOP encoding structure. It fails on Resolve Studio 19.1.3 on MacOS and also Premiere Pro 25.1.0, if they have hardware decode acceleration enabled. That is a typical scenario since hardware decoding is more sensitive to illegal or damaged video encoding.


The bad file could be likened to contaminated gasoline, which causes one car to run roughly but not another car. The solution isn't enabling all cars to run on contaminated gas. Rather, the root cause of the contamination must be traced and the responsible party held accountable.


This is apparently a known issue and is causing problems for various software. You can Google "ROG Ally X video decoding error" and you'll see those. This cannot be fixed in FCP or Resolve or Premiere. It must be fixed at the source by whoever is responsible.


I'm working on a utility to scan for such contaminated files, but the task is very complex, so I haven't finished it yet. But that would only help identify such cases in the future.

Reply

Jan 29, 2025 11:52 PM in response to _wick3d_

It seems that movie can be fixed by losslessly rewrapping it with ffmpeg 7.1_3 (ffmpeg 4.4.5_4 does not fix it):


ffmpeg7 -i input.mp4 -c copy output.mp4


broken_rog_allyX_OBS_FCP_recording_rewrapped.mp4 in the link below:


https://www.dropbox.com/scl/fi/fjc3bghxwoy0vtrkle02o/broken_rog_allyX_OBS_FCP_recording_rewrapped.mp4?rlkey=n7tkkltv42bcr4b08zaro3uvj&dl=0

Reply

Jan 30, 2025 9:00 AM in response to Matti Haveri

Matti, thanks for that. The rewrapped file seems to work in FCP, Resolve and Premiere using hardware decoding on all three. However, I noticed there is still a duration mismatch between video: 9.833s vs audio: 9.771s. That might indicate there's something still wrong with it. OTOH, if rewrapping works, that implies a container-level issue.


This H.264 video was encoded by an ASUS Ally X gaming handheld. A professional manufacturer should subject video datastream output of their devices to stringent tests using QC suites such as Elecard StreamEye.


However, unlike standards such as Radio Frequency Interference, AC power safety, etc, there is no licensing or regulatory oversight of data output quality. A hardware or software component could easily spew subtly damaged video data around the world. It's often hard to know where the file even came from.


This is a big problem because even expert end users or video editors do not have access to professional QC tools that check every aspect of the encoded stream, from the highest-level container format down to individual NAL units and their parameters. The assumption is the hardware or software that encoded that file was tested and validated by conscientious engineers. That seems to not be the case with the ASUS Rog X.

Reply

Jan 13, 2025 7:19 PM in response to _wick3d_

H.264 can be recorded in a multitude of ways. There are many parameters that can be tweaked. I think we'd need to know the specifics of the H.264 files the ROG is recording. Not all H.264 files will play in all video playback hardware/software. It's not a universal thing. And no software vendor is able to test every scenario and every combination of software hardware in the universe. It's too overwhelming of a task.

Reply

Jan 28, 2025 10:28 PM in response to BenB

I'm sharing the video recorded by OBS on my ROG Ally X

https://drive.google.com/file/d/1MVbJObdtqzOZtmtdcah85z1Y8LV_3Rf7/view?usp=share_link


As I've mentioned, video encoder setting in OBS installed on my ROG Ally X is "Hardware (AMD, H.264)"


No issue until FCP 11 and FCP for iPad 2.1


Hopefully someone could check why this is happening thanks

Reply

Jan 29, 2025 2:48 PM in response to _wick3d_

I see something similar. The files seems to play fine in QT but appears broken in FCP11 (on Intel iMac). The clip is mostly green and when the content is visible it's almost like i frames are misplaced so it's jumpy and erratic. Optimizing the clip makes it better but not entirely. Nothing jumps out to me in Invisor or ffprobe. Maybe @joema or @Matti can see something.

Reply

Jan 30, 2025 10:30 AM in response to Matti Haveri

Thank you Matti and joema.


@_wick3d_, as joema says, the correct way to resolve this is for ASUS to fix their encoder. I suggest you contact their support with the details and a link to this discussion.


In the meantime, as Matti showed, you can pretty quickly fix the broken files with ffmpeg. I use macports which is a really simple way to install thousands of open source projects on your Mac. Go to macports.org and follow the instructions to install. You can then easily install ffmpeg7 by entering this in the terminal.app:


sudo port install ffmpeg7 +nonfree


macports will take care of all the dependencies and install into /opt/local/ which Apple has stated they won't alter. I prefer this over something like homebrew which relies on the MacOS system utilities and can break their installs when the OS is updated.


The "+nonfree" instructs macports to also install support for aac.

Reply

Jan 30, 2025 11:18 AM in response to terryb

Thank you all for your help, I will try ffmpeg7.


I can also stick with my slow workaround to save again the video using iMovie.


For some reason, iMovie can open and edit the said video without any issue. And once iMovie saved the video, the newly generated video file can be used on FCP without issue


thanks again, I appreciate all your help

Reply

This thread has been closed by the system or the community team. You may vote for any posts you find helpful, or search the Community for additional answers.

AMD h.264 Encoder Issue with FCP 11 and FCP 2.1 for iPad

Welcome to Apple Support Community
A forum where Apple customers help each other with their products. Get started with your Apple Account.