[webkit-gtk] When turning ENABLE_ENCRYPTED_MEDIA_V2 on, build break occurs for webkitgtk-2.8.0 release (webkitgtk-2.8.0.tar.xz) (Error: not declare WebKitDOMMediaKeys)

Huang Xinsheng xinsheng.huang at nagra.com
Mon May 4 01:44:50 PDT 2015


Hi, Philippe:

Thank you very much.
Could you please help to review whether my following method/workaround to turn on EME is reasonable in webkitgtk-2.8.0, and the build succeeds in my environment with this method.
Certainly, it seems we need continue to do some gstreamer related implementation to make it actually support EME, right? By the way, do you think it is a big effort for this work?
Thanks again.

/******************* method/workaround to turn on EME ********************/
tar -xJf webkitgtk-2.8.0.tar.xz 
cd webkitgtk-2.8.0
vi Source/WebCore/PlatformGTK.cmake       # TO NOT generate GObjectDOMBings for HTMLMediaElement.idl/HTMLVideoElement.idl/HTMLAudioElement.idl, so WebKitDOMMediaKeys and WebKitDOMUint8Array etc. is NOT necessary.
vi Source/cmake/OptionsGTK.cmake             # TO enable ENABLE_ENCRYPTED_MEDIA_V2
vi ./Source/WebCore/bindings/gobject/WebKitDOMHTMLPrivate.cpp  # To comment out with // for 4 line of A/V related code of webkitdom in this file for a successful build, as shown below.
    #if ENABLE(VIDEO)
    //#include "WebKitDOMHTMLAudioElementPrivate.h"
    //#include "WebKitDOMHTMLVideoElementPrivate.h"
    #endif
	...
    #if ENABLE(VIDEO)
    #define FOR_EACH_HTML_VIDEO_TAG(macro) \
      //  macro(audio, Audio) \
      //  macro(video, Video)
    #else
    #define FOR_EACH_HTML_VIDEO_TAG(macro)
    #endif
cmake -DCMAKE_INSTALL_PREFIX= -DCMAKE_INSTALL_LIBDIR=lib -DPORT=GTK -DCMAKE_BUILD_TYPE=Release .
make -j 6


Best Regards
Eric




-----Original Message-----
From: webkit-gtk-bounces at lists.webkit.org [mailto:webkit-gtk-bounces at lists.webkit.org] On Behalf Of Philippe Normand
Sent: 2015年5月4日 14:51
To: webkit-gtk at lists.webkit.org
Subject: Re: [webkit-gtk] When turning ENABLE_ENCRYPTED_MEDIA_V2 on, build break occurs for webkitgtk-2.8.0 release (webkitgtk-2.8.0.tar.xz) (Error: not declare WebKitDOMMediaKeys)

Hi,

EME is not officially supported in WebKitGTK+ upstream. We might enable it at some point in the future but it's not decided when yet.

Philippe

On Mon, 2015-05-04 at 01:19 +0000, Huang Xinsheng wrote:
> Hi, All:
> 
>  
> 
> When turning ENABLE_ENCRYPTED_MEDIA_V2 on, build break occurs for
> webkitgtk-2.8.0 release (webkitgtk-2.8.0.tar.xz), and the detailed 
> information is at end of mail.
> 
> Does it mean the we still have the following two issues for support 
> EME in webkitgtk-2.8.0 release?
> 
> 1.     The build system still need some change to fix the build break
> when enabling ENABLE_ENCRYPTED_MEDIA_V2.
> 
> 2.     The EME related implementation for gstreamer (WebCore\platform
> \graphics\gstreamer) may still NOT be done.
> 
> Please also help to answer the additional questions for EME support:
> 
> A.    Which port of webkitgtk-2.8.0 already supports
> ENABLE_ENCRYPTED_MEDIA_V2,  EFL, MAC, or windows?
> 
> B.    Whether it is easy to fix the above possible issue 1 and 2, and
> is there any change list we can refer from other port?
> 
> C.    Have we fixed the above possible issue 1 and 2 in the latest
> code of webkitgtk? Or, do we have any plan to do it? 
> 
> D.    For support EME in webkitgtk, is there any other issue except
> the above 1 and 2?
> 
> Thanks a lot.
> 
>  
> 
> //Detailed information  for build break
> 
> ·       Enable EME by turning it on in the following 2 files:
> 
> ./Source/cmake/OptionsGTK.cmake:WEBKIT_OPTION_DEFAULT_PORT_VALUE(ENABL
> E_ENCRYPTED_MEDIA_V2 ON)
> 
> ./Source/cmake/WebKitFeatures.cmake:
> WEBKIT_OPTION_DEFINE(ENABLE_ENCRYPTED_MEDIA_V2 "Support EME v2" ON)
> 
>  
> 
> ·       The build error is as below, which should AT LEAST mean the
> necessary EME-related idl files are NOT added to the build system in 
> webkitgtk-2.8.0.
> 
> [ 80%] Building CXX object
> Source/WebCore/CMakeFiles/GObjectDOMBindings.dir/bindings/gobject/WebK
> itDOMEventTarget.cpp.o
> 
> [ 80%] Building CXX object
> Source/WebCore/CMakeFiles/GObjectDOMBindings.dir/bindings/gobject/WebK
> itDOMHTMLPrivate.cpp.o
> 
> In file included
> from 
> /home/a/webkitgtk-2.8.0/DerivedSources/webkitdom/WebKitDOMHTMLAudioEle
> ment.h:27:0,
> 
> 
> from 
> /home/a/webkitgtk-2.8.0/DerivedSources/webkitdom/WebKitDOMHTMLAudioEle
> mentPrivate.h:25,
> 
> 
> from /home/a/webkitgtk-2.8.0/Source/WebCore/bindings/gobject/WebKitDOMHTMLPrivate.cpp:151:
> 
> /home/a/webkitgtk-2.8.0/DerivedSources/webkitdom/WebKitDOMHTMLMediaEle
> ment.h:153:86: error: ‘WebKitDOMMediaKeys’ has not been declared
> 
> webkit_dom_html_media_element_webkit_set_media_keys(WebKitDOMHTMLMedia
> Element* self, WebKitDOMMediaKeys* mediaKeys);
> 
>  
> 
> ·       Build command:  (Refer from link
> http://blogs.igalia.com/carlosgc/2014/08/01/webkitgtk-2-5-1-good-bye-webkit1/):
> 
> tar -xJf webkitgtk-2.8.0.tar.xz
> 
> cd webkitgtk-2.8.0
> 
> cmake -DCMAKE_INSTALL_PREFIX= -DCMAKE_INSTALL_LIBDIR=lib -DPORT=GTK 
> -DCMAKE_BUILD_TYPE=Release .
> 
> make -j 6
> 
>  
> 
> Best Regards
> 
> Eric
> 
>  
> 
>  
> 
> 
> _______________________________________________
> webkit-gtk mailing list
> webkit-gtk at lists.webkit.org
> https://lists.webkit.org/mailman/listinfo/webkit-gtk


_______________________________________________
webkit-gtk mailing list
webkit-gtk at lists.webkit.org
https://lists.webkit.org/mailman/listinfo/webkit-gtk


More information about the webkit-gtk mailing list