Thanks to visit codestin.com
Credit goes to github.com

Skip to content

Conversation

@catap
Copy link

@catap catap commented Jul 23, 2025

No description provided.

@rmader
Copy link
Contributor

rmader commented Oct 24, 2025

Thanks for the PR! I just tested it and found one issue - vah264dec not working without h264parse - and one suggestion. Pushed that changes to https://github.com/rmader/dino/commits/pr-1742-fixups/, please feel free to squash into your commits.

With those I think this is good to go.

Semi-related: #1775

case "msdkvp9enc":
case "vaapivp9enc":
case "msdkvp8enc":
case "vavp8enc":
Copy link
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

This is missing vavp9enc - however I think the vp9 elements will fail the tests anyway without vp9parse for both en- and decoding (vp8 is one of the only codecs not needing that).

Given that vavp9enc is

  1. only supported by a very limited set of devices (Intel only)
  2. pretty unlikely to be used as vah264enc is usually present

I suggest to drop it from the PR altogether and only leave the decoding/vavp9dec parts (even though that'll likely need vp9parse in get_decode_prefix() , see rmader@829a5c3

Copy link
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

P.S.: not sure if that actually makes sense as vp9 encoding would still be broken/problematic. Maybe it's better to just drop vp9 altogether - vp8 is the better fallback and h264 is the better default anyway.

I.e. leaving it out in this PR and then do a follow-up PR dropping support for vp9 and the legacy vaapi* elements.

@rmader
Copy link
Contributor

rmader commented Oct 24, 2025

@catap I looked into this a bit further and ended up opening #1781, mentioning you in the respective commits - hope that works for you?

@catap
Copy link
Author

catap commented Oct 25, 2025

@rmader I not sure that replacing "deprecated" decoder/encoder is good idea. As far as I recall modern is supported by only new enough hardware, and old hardware is supported only with old or deprecated driver.

@rmader
Copy link
Contributor

rmader commented Oct 25, 2025

As far as I recall modern is supported by only new enough hardware, and old hardware is supported only with old or deprecated driver.

Fortunately this is not the case. I just double-checked #1781 on my oldest test device with H264 en/decoding support - a Thinkpad X220 from 2011 (*1) - and hardware video decoding with vah264dec works perfectly fine. This is also in line with the Gstreamer 1.26 release notes:

gstreamer-vaapi has been deprecated and is no longer actively maintained. Users who rely on gstreamer-vaapi are encouraged to migrate to the va plugin's elements at the earliest opportunity.

Note that on that device hardware encoding is blocked by Gstreamer as we found it to be too buggy when enabling hardware encoding by default in Gnome-Shell (for screen recording).

  1. Sandybridge, the first Intel generation with GLES 3.0 support, which is now also the baseline for GL rendering in GTK4. I.e. older hardware will be very slow either way.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

2 participants