Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

core/libraries: Videodec2 implementation #1241

Merged
merged 1 commit into from
Oct 24, 2024
Merged

core/libraries: Videodec2 implementation #1241

merged 1 commit into from
Oct 24, 2024

Conversation

polybiusproxy
Copy link
Collaborator

@polybiusproxy polybiusproxy commented Oct 4, 2024

Work-in-progress implementation of the Videodec2 library, used for AVC (H.264) and HEVC (H.265) video decoding.
Seen on games such as Persona 5 Royal and Rock Band 4.

Left tasks:

  • Error handling
  • Decoder flushing
  • Decoder reset
  • Obtaining picture info
  • HEVC/H.265 implementation
  • Implement memory querying

The memory querying functions are quite important, as the sizes we output can affect games - for example, if we give a low size for memory querying on Persona 5 Royal, the decode output breaks (see the first image below).
The decoder library outputs a different size depending on the decoder profile given by the game.

@georgemoralis
Copy link
Collaborator

@vladmikhalin can you review this?

@roamic
Copy link
Collaborator

roamic commented Oct 10, 2024

@vladmikhalin can you review this?

It's still a draft, is it ready for review?

@georgemoralis
Copy link
Collaborator

it is ready

@polybiusproxy
Copy link
Collaborator Author

@vladmikhalin can you review this?

It's still a draft, is it ready for review?

It's still marked as a draft but I'd still want you to review it

Copy link
Collaborator

@roamic roamic left a comment

Choose a reason for hiding this comment

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

Apart from the obvious magic numbers and bogus values that I can attribute to this PR being a draft I only have these 2 comments.

src/core/libraries/videodec/videodec2_impl.cpp Outdated Show resolved Hide resolved
@georgemoralis
Copy link
Collaborator

what other games uses videcodec2 expect persona????

@polybiusproxy
Copy link
Collaborator Author

Rock Band 4 and lots of Unreal Engine games, it seems

@polybiusproxy polybiusproxy changed the title core/libraries: WIP Videodec2 implementation core/libraries: Videodec2 implementation Oct 13, 2024
@polybiusproxy polybiusproxy requested a review from roamic October 13, 2024 11:45
@polybiusproxy polybiusproxy force-pushed the core/vdec2 branch 3 times, most recently from db0e695 to 0bbf917 Compare October 17, 2024 16:09
@polybiusproxy polybiusproxy marked this pull request as ready for review October 17, 2024 16:09
@polybiusproxy
Copy link
Collaborator Author

I believe this is ready to merge. The remaining tasks can be left for later.

Copy link
Collaborator

@roamic roamic left a comment

Choose a reason for hiding this comment

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

LGTM otherwise

src/core/libraries/videodec/videodec2.cpp Outdated Show resolved Hide resolved
src/core/libraries/videodec/videodec2_impl.cpp Outdated Show resolved Hide resolved
src/core/libraries/videodec/videodec2_impl.cpp Outdated Show resolved Hide resolved
src/core/libraries/videodec/videodec2_impl.cpp Outdated Show resolved Hide resolved
@polybiusproxy polybiusproxy force-pushed the core/vdec2 branch 2 times, most recently from 6c20d9f to 8751b76 Compare October 19, 2024 12:30
@polybiusproxy polybiusproxy merged commit 9d6eee6 into main Oct 24, 2024
20 checks passed
@georgemoralis georgemoralis deleted the core/vdec2 branch October 25, 2024 17:33
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.

3 participants