Radeonsi driver does not support packed headers
Nobody has claimed this yet.
- Dominant language
- Go
- Stars
- 283
- Forks
- 72
- Avg merge
- 27m
- Merged PRs (30d)
- 1
Description
This leads to us being unable to mux into containers that expect a global header such as Matroska. Our transcoding example outputs Matroska, so we cannot use AMD cards with the radeonsi driver with this particular example, eg:
```
go run cmd/transcoding/transcoding.go transcoder/test.ts P720p30fps16x9,P576p30fps16x9,P360p30fps16x9,P240p30fps16x9 va /dev/dri/renderD129
```
Note that we encounter the exact same problem with ffmpeg, since it's a shortcoming of the driver:
```
ffmpeg -hwaccel vaapi -hwaccel_output_format vaapi -hwaccel_device /dev/dri/renderD129 -i ~/josh/lpms/transcoder/test.ts -c:v h264_vaapi out/output.mkv
```
Fixing this involves making improvements to the Mesa radeon driver. Would be great to have this in one day.
QuickSync using the Intel media-driver (iHD) works fine (/dev/dri/renderD128 on the machine in the NY office).
Contributor guide
No contributing guide indexed for this repository
First steps
- Read the whole issue, then the project's contributing guide.
- Comment on the issue to say you are picking it up — it saves two people doing the same work.
- Fork the repository and make your change on a branch.
- Open a pull request that references the issue number.
Research direction
Start with cmd/transcoding/transcoding.go and reproduce the Matroska failure using transcoder/test.ts and the radeonsi device shown in the issue. The reported fix requires improvements to the Mesa radeon driver; done means packed headers work for the transcoding example, with Matroska output succeeding on AMD radeonsi.
Written by the indexing model from the issue text.
Assessment
- Tech stack
- go, linux
- Domain
- audio-video-rtc
- Issue type
- Bug
- Difficulty
- 5/5
- Estimated time
- Over a week
- Activity status
- Stale
- Clarity
- Needs clarification
- Newbie friendliness
- 20/100