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
[GStreamer] refactor video decoder limit customization #7381
[GStreamer] refactor video decoder limit customization #7381
Conversation
EWS run on previous version of this PR (hash 3f4aec5) |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Appart from the comments, the rest of the changes look fine to me.
videoDecodingLimits = videoDecoderLimitsDefaults(); | ||
if (!videoDecodingLimits) { | ||
GST_WARNING("Parsing VIDEO_DECODING_LIMIT failed"); | ||
ASSERT_NOT_REACHED(); |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
The style checker complained about this. Try adding return SupportsType::IsNotSupported;
after this line to ensure that an early return happens in case assertions are disabled at runtime.
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Do we really want to return IsNotSupport in case of wrongly set VIDEO_DECODING_LIMIT? The consequence will be that none of the stream will be played.
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
If the packager has decided to enable VIDEO_DECODING_LIMIT in CMake, then they should take care of properly defining the limit. Getting all the videos failing is a good way of noticing that something is wrong, so it's acceptable to me (although I'm not a reviewer).
: mediaMaxWidth(mediaMaxWidth) | ||
, mediaMaxHeight(mediaMaxHeight) | ||
, mediaMaxFrameRate(mediaMaxFrameRate) | ||
{ |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
I think this should be one tab less, like in this example.
3f4aec5
to
b0cc7e3
Compare
EWS run on previous version of this PR (hash b0cc7e3) |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Could these checks be done only when configuration == Configuration::Decoding
?
@philn : Sorry for late response, I will add it ASAP. |
b0cc7e3
to
4477143
Compare
EWS run on previous version of this PR (hash 4477143) |
Source/WebCore/platform/graphics/gstreamer/GStreamerRegistryScanner.cpp
Outdated
Show resolved
Hide resolved
4477143
to
7e64ee9
Compare
EWS run on current version of this PR (hash 7e64ee9) |
It works with correct value e.g.: I tested it also with few incorrect values: In case of incorrect value the limit is not applied - as expected. For testing I used dashjs reference player: |
https://bugs.webkit.org/show_bug.cgi?id=248961 Reviewed by Philippe Normand. Moved the same functionality to one place - from MediaPlayerPrivateGStreamerMSE::supportsType to GStreamerRegistryScanner::isContentTypeSupported. * Source/WebCore/platform/GStreamer.cmake: * Source/WebCore/platform/graphics/gstreamer/GStreamerRegistryScanner.cpp: (videoDecoderLimitsDefaults): (WebCore::GStreamerRegistryScanner::isContentTypeSupported const): * Source/WebCore/platform/graphics/gstreamer/mse/MediaPlayerPrivateGStreamerMSE.cpp: (WebCore::MediaPlayerPrivateGStreamerMSE::supportsType): (videoDecoderLimitsDefaults): Deleted. Canonical link: https://commits.webkit.org/263408@main
7e64ee9
to
c367583
Compare
Committed 263408@main (c367583): https://commits.webkit.org/263408@main Reviewed commits have been landed. Closing PR #7381 and removing active labels. |
c367583
7e64ee9