Bug 196346

Summary: [GStreamer] imxvpudecoder detection and handling
Product: WebKit Reporter: Philippe Normand <pnormand>
Component: MediaAssignee: Philippe Normand <pnormand>
Status: RESOLVED FIXED    
Severity: Normal CC: calvaris, webkit-bug-importer
Priority: P2 Keywords: InRadar
Version: WebKit Nightly Build   
Hardware: Unspecified   
OS: Unspecified   
Attachments:
Description Flags
Patch calvaris: review+, calvaris: commit-queue-

Description Philippe Normand 2019-03-28 04:27:23 PDT
When the imxvpudecoder is used, the texture sampling of the directviv-uploaded texure returns an RGB value, so there's no need to convert it.
Comment 1 Philippe Normand 2019-03-28 04:48:32 PDT
Created attachment 366165 [details]
Patch
Comment 2 Xabier Rodríguez Calvar 2019-03-28 05:28:29 PDT
Comment on attachment 366165 [details]
Patch

View in context: https://bugs.webkit.org/attachment.cgi?id=366165&action=review

> Source/WebCore/ChangeLog:9
> +        directviv-uploaded texure returns an RGB value, so there's no need

texture

> Source/WebCore/ChangeLog:11
> +        ImageRotation flag handling. The flat is now computed once only

flag

> Source/WebCore/platform/graphics/gstreamer/MediaPlayerPrivateGStreamerBase.cpp:858
> +    bool shouldWait = m_videoDecoderPlatform == WebKitGstVideoDecoderPlatform::Video4Linux;
>      auto proxyOperation =
> -        [shouldWait = m_isVideoDecoderVideo4Linux, pipeline = pipeline()](TextureMapperPlatformLayerProxy& proxy)
> +        [shouldWait, pipeline = pipeline()](TextureMapperPlatformLayerProxy& proxy)

nit: is there any problem in using this in one line?

> Source/WebCore/platform/graphics/gstreamer/MediaPlayerPrivateGStreamerBase.h:294
> +    mutable WebKitGstVideoDecoderPlatform m_videoDecoderPlatform;

Does this need to be mutable?
Comment 3 Philippe Normand 2019-03-29 02:55:51 PDT
Comment on attachment 366165 [details]
Patch

View in context: https://bugs.webkit.org/attachment.cgi?id=366165&action=review

>> Source/WebCore/platform/graphics/gstreamer/MediaPlayerPrivateGStreamerBase.h:294
>> +    mutable WebKitGstVideoDecoderPlatform m_videoDecoderPlatform;
> 
> Does this need to be mutable?

It indeed does not!
Comment 4 Philippe Normand 2019-03-29 03:43:47 PDT
Committed r243644: <https://trac.webkit.org/changeset/243644>
Comment 5 Radar WebKit Bug Importer 2019-03-29 03:45:40 PDT
<rdar://problem/49415998>