Skip to content

Commit

Permalink
wpewebkit: add recipe to fetch from upstream trunk
Browse files Browse the repository at this point in the history
Use it with the following line on local.conf:

PREFERRED_VERSION_wpewebkit = "0.r%"

Signed-off-by: Carlos Alberto Lopez Perez <[email protected]>
  • Loading branch information
clopez committed Feb 26, 2018
1 parent d88b02c commit 267ce67
Show file tree
Hide file tree
Showing 2 changed files with 375 additions and 0 deletions.
Original file line number Diff line number Diff line change
@@ -0,0 +1,183 @@
From e7d59b1bfdf68e2f53a2a8f45eec0ef8eb6e2b95 Mon Sep 17 00:00:00 2001
From: Carlos Alberto Lopez Perez <[email protected]>
Date: Tue, 26 Sep 2017 15:22:30 +0200
Subject: [PATCH] Revert "[GTK][WPE][GSTREAMER_GL] Change the colorspace used
by the video frames provided by GStreamer"

This reverts commit fed922529570b7cc64c52e6ecb74651fa9e5b266.
---
.../gstreamer/MediaPlayerPrivateGStreamerBase.cpp | 18 ++++--------------
.../gstreamer/VideoTextureCopierGStreamer.cpp | 19 ++-----------------
.../graphics/gstreamer/VideoTextureCopierGStreamer.h | 9 +--------
.../platform/graphics/texmap/TextureMapperGL.cpp | 2 --
.../platform/graphics/texmap/TextureMapperGL.h | 3 +--
5 files changed, 8 insertions(+), 43 deletions(-)

diff --git a/Source/WebCore/platform/graphics/gstreamer/MediaPlayerPrivateGStreamerBase.cpp b/Source/WebCore/platform/graphics/gstreamer/MediaPlayerPrivateGStreamerBase.cpp
index 46c89308853..7531253ed62 100644
--- a/Source/WebCore/platform/graphics/gstreamer/MediaPlayerPrivateGStreamerBase.cpp
+++ b/Source/WebCore/platform/graphics/gstreamer/MediaPlayerPrivateGStreamerBase.cpp
@@ -55,16 +55,6 @@
#endif

#if USE(GSTREAMER_GL)
-#if G_BYTE_ORDER == G_LITTLE_ENDIAN
-#define GST_GL_CAPS_FORMAT "{ BGRx, BGRA }"
-#define TEXTURE_MAPPER_COLOR_CONVERT_FLAG TextureMapperGL::ShouldConvertTextureBGRAToRGBA
-#define TEXTURE_COPIER_COLOR_CONVERT_FLAG VideoTextureCopierGStreamer::ColorConversion::ConvertBGRAToRGBA
-#else
-#define GST_GL_CAPS_FORMAT "{ xRGB, ARGB }"
-#define TEXTURE_MAPPER_COLOR_CONVERT_FLAG TextureMapperGL::ShouldConvertTextureARGBToRGBA
-#define TEXTURE_COPIER_COLOR_CONVERT_FLAG VideoTextureCopierGStreamer::ColorConversion::ConvertARGBToRGBA
-#endif
-
#include <gst/app/gstappsink.h>

#if USE(LIBEPOXY)
@@ -193,7 +183,7 @@ public:
return;

m_size = IntSize(GST_VIDEO_INFO_WIDTH(&videoInfo), GST_VIDEO_INFO_HEIGHT(&videoInfo));
- m_flags = flags | (GST_VIDEO_INFO_HAS_ALPHA(&videoInfo) ? TextureMapperGL::ShouldBlend : 0) | TEXTURE_MAPPER_COLOR_CONVERT_FLAG;
+ m_flags = flags | (GST_VIDEO_INFO_HAS_ALPHA(&videoInfo) ? TextureMapperGL::ShouldBlend : 0);

GstBuffer* buffer = gst_sample_get_buffer(sample);
if (UNLIKELY(!gst_video_frame_map(&m_videoFrame, &videoInfo, buffer, static_cast<GstMapFlags>(GST_MAP_READ | GST_MAP_GL))))
@@ -887,7 +877,7 @@ bool MediaPlayerPrivateGStreamerBase::copyVideoTextureToPlatformTexture(Graphics
unsigned textureID = *reinterpret_cast<unsigned*>(videoFrame.data[0]);

if (!m_videoTextureCopier)
- m_videoTextureCopier = std::make_unique<VideoTextureCopierGStreamer>(TEXTURE_COPIER_COLOR_CONVERT_FLAG);
+ m_videoTextureCopier = std::make_unique<VideoTextureCopierGStreamer>();

bool copied = m_videoTextureCopier->copyVideoTextureToPlatformTexture(textureID, size, outputTexture, outputTarget, level, internalFormat, format, type, flipY, m_videoSourceOrientation);

@@ -921,7 +911,7 @@ NativeImagePtr MediaPlayerPrivateGStreamerBase::nativeImageForCurrentTime()
context->makeContextCurrent();

if (!m_videoTextureCopier)
- m_videoTextureCopier = std::make_unique<VideoTextureCopierGStreamer>(TEXTURE_COPIER_COLOR_CONVERT_FLAG);
+ m_videoTextureCopier = std::make_unique<VideoTextureCopierGStreamer>();

unsigned textureID = *reinterpret_cast<unsigned*>(videoFrame.data[0]);
bool copied = m_videoTextureCopier->copyVideoTextureToPlatformTexture(textureID, size, 0, GraphicsContext3D::TEXTURE_2D, 0, GraphicsContext3D::RGBA, GraphicsContext3D::RGBA, GraphicsContext3D::UNSIGNED_BYTE, false, m_videoSourceOrientation);
@@ -1024,7 +1014,7 @@ GstElement* MediaPlayerPrivateGStreamerBase::createVideoSinkGL()

gst_bin_add_many(GST_BIN(videoSink), upload, colorconvert, appsink, nullptr);

- GRefPtr<GstCaps> caps = adoptGRef(gst_caps_from_string("video/x-raw(" GST_CAPS_FEATURE_MEMORY_GL_MEMORY "), format = (string) " GST_GL_CAPS_FORMAT));
+ GRefPtr<GstCaps> caps = adoptGRef(gst_caps_from_string("video/x-raw(" GST_CAPS_FEATURE_MEMORY_GL_MEMORY "), format = (string) { RGBA }"));

result &= gst_element_link_pads(upload, "src", colorconvert, "sink");
result &= gst_element_link_pads_filtered(colorconvert, "src", appsink, "sink", caps.get());
diff --git a/Source/WebCore/platform/graphics/gstreamer/VideoTextureCopierGStreamer.cpp b/Source/WebCore/platform/graphics/gstreamer/VideoTextureCopierGStreamer.cpp
index c78b2d635de..dce5a4b0af9 100644
--- a/Source/WebCore/platform/graphics/gstreamer/VideoTextureCopierGStreamer.cpp
+++ b/Source/WebCore/platform/graphics/gstreamer/VideoTextureCopierGStreamer.cpp
@@ -32,7 +32,7 @@

namespace WebCore {

-VideoTextureCopierGStreamer::VideoTextureCopierGStreamer(ColorConversion colorConversion)
+VideoTextureCopierGStreamer::VideoTextureCopierGStreamer()
{
GLContext* previousContext = GLContext::current();
ASSERT(previousContext);
@@ -52,7 +52,6 @@ VideoTextureCopierGStreamer::VideoTextureCopierGStreamer(ColorConversion colorCo
glBindBuffer(GL_ARRAY_BUFFER, m_vbo);
glBufferData(GL_ARRAY_BUFFER, sizeof(GLfloat) * 8, vertices, GL_STATIC_DRAW);

- updateColorConversionMatrix(colorConversion);
updateTextureSpaceMatrix();

previousContext->makeContextCurrent();
@@ -72,20 +71,6 @@ VideoTextureCopierGStreamer::~VideoTextureCopierGStreamer()
previousContext->makeContextCurrent();
}

-void VideoTextureCopierGStreamer::updateColorConversionMatrix(ColorConversion colorConversion)
-{
- switch (colorConversion) {
- case ColorConversion::ConvertBGRAToRGBA:
- m_colorConversionMatrix.setMatrix(0.0, 0.0, 1.0, 0.0, 0.0, 1.0, 0.0, 0.0, 1.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 1.0);
- break;
- case ColorConversion::ConvertARGBToRGBA:
- m_colorConversionMatrix.setMatrix(0.0, 1.0, 0.0, 0.0, 0.0, 0.0, 1.0, 0.0, 0.0, 0.0, 0.0, 1.0, 1.0, 0.0, 0.0, 0.0);
- break;
- default:
- RELEASE_ASSERT_NOT_REACHED();
- }
-}
-
void VideoTextureCopierGStreamer::updateTextureSpaceMatrix()
{
m_textureSpaceMatrix.makeIdentity();
@@ -190,7 +175,7 @@ bool VideoTextureCopierGStreamer::copyVideoTextureToPlatformTexture(GLuint input
m_shaderProgram->setMatrix(m_shaderProgram->modelViewMatrixLocation(), m_modelViewMatrix);
m_shaderProgram->setMatrix(m_shaderProgram->projectionMatrixLocation(), m_projectionMatrix);
m_shaderProgram->setMatrix(m_shaderProgram->textureSpaceMatrixLocation(), m_textureSpaceMatrix);
- m_shaderProgram->setMatrix(m_shaderProgram->textureColorSpaceMatrixLocation(), m_colorConversionMatrix);
+ m_shaderProgram->setMatrix(m_shaderProgram->textureColorSpaceMatrixLocation(), TransformationMatrix());

// Perform the copy.
glEnableVertexAttribArray(m_shaderProgram->vertexLocation());
diff --git a/Source/WebCore/platform/graphics/gstreamer/VideoTextureCopierGStreamer.h b/Source/WebCore/platform/graphics/gstreamer/VideoTextureCopierGStreamer.h
index 218977ca014..9971f2de593 100644
--- a/Source/WebCore/platform/graphics/gstreamer/VideoTextureCopierGStreamer.h
+++ b/Source/WebCore/platform/graphics/gstreamer/VideoTextureCopierGStreamer.h
@@ -34,16 +34,10 @@ class ImageOrientation;

class VideoTextureCopierGStreamer {
public:
- enum class ColorConversion {
- ConvertBGRAToRGBA,
- ConvertARGBToRGBA
- };
-
- VideoTextureCopierGStreamer(ColorConversion);
+ VideoTextureCopierGStreamer();
~VideoTextureCopierGStreamer();

bool copyVideoTextureToPlatformTexture(GLuint inputTexture, IntSize& frameSize, GLuint outputTexture, GLenum outputTarget, GLint level, GLenum internalFormat, GLenum format, GLenum type, bool flipY, ImageOrientation& sourceOrientation);
- void updateColorConversionMatrix(ColorConversion);
void updateTextureSpaceMatrix();
void updateTransformationMatrix();
GLuint resultTexture() { return m_resultTexture; }
@@ -58,7 +52,6 @@ private:
TransformationMatrix m_modelViewMatrix;
TransformationMatrix m_projectionMatrix;
TransformationMatrix m_textureSpaceMatrix;
- TransformationMatrix m_colorConversionMatrix;
GLuint m_resultTexture { 0 };
};

diff --git a/Source/WebCore/platform/graphics/texmap/TextureMapperGL.cpp b/Source/WebCore/platform/graphics/texmap/TextureMapperGL.cpp
index 15ed70a5b6b..908aa3d6f0d 100644
--- a/Source/WebCore/platform/graphics/texmap/TextureMapperGL.cpp
+++ b/Source/WebCore/platform/graphics/texmap/TextureMapperGL.cpp
@@ -418,8 +418,6 @@ static TransformationMatrix colorSpaceMatrixForFlags(TextureMapperGL::Flags flag
TransformationMatrix matrix;
if (flags & TextureMapperGL::ShouldConvertTextureBGRAToRGBA)
matrix.setMatrix(0.0, 0.0, 1.0, 0.0, 0.0, 1.0, 0.0, 0.0, 1.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 1.0);
- else if (flags & TextureMapperGL::ShouldConvertTextureARGBToRGBA)
- matrix.setMatrix(0.0, 1.0, 0.0, 0.0, 0.0, 0.0, 1.0, 0.0, 0.0, 0.0, 0.0, 1.0, 1.0, 0.0, 0.0, 0.0);

return matrix;
}
diff --git a/Source/WebCore/platform/graphics/texmap/TextureMapperGL.h b/Source/WebCore/platform/graphics/texmap/TextureMapperGL.h
index 1c889965608..55da5faad47 100644
--- a/Source/WebCore/platform/graphics/texmap/TextureMapperGL.h
+++ b/Source/WebCore/platform/graphics/texmap/TextureMapperGL.h
@@ -51,8 +51,7 @@ public:
ShouldRotateTexture90 = 0x10,
ShouldRotateTexture180 = 0x20,
ShouldRotateTexture270 = 0x40,
- ShouldConvertTextureBGRAToRGBA = 0x80,
- ShouldConvertTextureARGBToRGBA = 0x100
+ ShouldConvertTextureBGRAToRGBA = 0x80
};

typedef int Flags;
--
2.11.0

192 changes: 192 additions & 0 deletions recipes-browser/wpewebkit/wpewebkit_trunk.bb
Original file line number Diff line number Diff line change
@@ -0,0 +1,192 @@
SUMMARY = "WPE WebKit port pairs the WebKit engine with the Wayland display protocol, \
allowing embedders to create simple and performant systems based on Web platform technologies. \
It is designed with hardware acceleration in mind, relying on EGL, the Wayland EGL platform, and OpenGL ES."
HOMEPAGE = "http://www.webkitforwayland.org/"
LICENSE = "BSD & LGPLv2+"
LIC_FILES_CHKSUM = "file://Source/WebCore/LICENSE-LGPL-2.1;md5=a778a33ef338abbaf8b8a7c36b6eec80 "

DEPENDS += " \
wpebackend \
bison-native gperf-native harfbuzz-native libxml2-native ruby-native ninja-native chrpath-replacement-native \
cairo fontconfig freetype glib-2.0 gnutls harfbuzz icu jpeg pcre sqlite3 zlib \
libpng libsoup-2.4 libwebp libxml2 libxslt \
virtual/egl virtual/libgles2 libepoxy \
"

SVNREV ?= "226305"

SRC_URI = " \
svn://svn.webkit.org/repository/webkit;module=trunk;rev=${SVNREV};protocol=https \
file://Revert-GTK-WPE-GSTREAMER_GL-Change-the-colorspace-us.patch \
"

S = "${WORKDIR}/trunk"
PV = "0.r${SVNREV}"


inherit cmake pkgconfig perlnative pythonnative

TOOLCHAIN = "gcc"


PACKAGECONFIG ?= "deviceorientation fetchapi gamepad indexeddb libinput logs mediasource notifications sampling-profiler shadowdom subtitle udev video webaudio wayland touch gst_gl"

# Mesa only offscreen target support for Westeros backend
# FIXME Needs to be moved to mesa backend
PACKAGECONFIG[westeros-mesa] = "-DUSE_WPEWEBKIT_BACKEND_WESTEROS_MESA=ON,,"

# WPE Platform specific switches
PACKAGECONFIG[intelce] = "-DUSE_WPEWEBKIT_PLATFORM_INTEL_CE=ON -DUSE_HOLE_PUNCH_GSTREAMER=ON,,"
PACKAGECONFIG[nexus] = "-DUSE_WPEWEBKIT_PLATFORM_BCM_NEXUS=ON -DUSE_HOLE_PUNCH_GSTREAMER=ON,,"
PACKAGECONFIG[westeros] = "-DUSE_WPEWEBKIT_PLATFORM_WESTEROS=ON -DUSE_HOLE_PUNCH_GSTREAMER=ON -DUSE_WESTEROS_SINK=ON,,westeros"

PACKAGECONFIG[wayland] = "-DUSE_WPEWEBKIT_BACKEND_WAYLAND_EGL=ON,,"

# WPE features
PACKAGECONFIG[2dcanvas] = "-DENABLE_ACCELERATED_2D_CANVAS=ON,-DENABLE_ACCELERATED_2D_CANVAS=OFF,"
PACKAGECONFIG[deviceorientation] = "-DENABLE_DEVICE_ORIENTATION=ON,-DENABLE_DEVICE_ORIENTATION=OFF,"
PACKAGECONFIG[encryptedmedia] = "-DENABLE_LEGACY_ENCRYPTED_MEDIA=ON,-DENABLE_LEGACY_ENCRYPTED_MEDIA=OFF,libgcrypt"
PACKAGECONFIG[encryptedmediav1] = "-DENABLE_LEGACY_ENCRYPTED_MEDIA_V1=ON,-DENABLE_LEGACY_ENCRYPTED_MEDIA_V1=OFF,libgcrypt"
PACKAGECONFIG[fetchapi] = "-DENABLE_FETCH_API=ON,-DENABLE_FETCH_API=OFF,"
PACKAGECONFIG[fusion] = "-DUSE_FUSION_API_GSTREAMER=ON,-DUSE_FUSION_API_GSTREAMER=OFF,"
PACKAGECONFIG[gamepad] = "-DENABLE_GAMEPAD=ON,-DENABLE_GAMEPAD=OFF,"
PACKAGECONFIG[geolocation] = "-DENABLE_GEOLOCATION=ON,-DENABLE_GEOLOCATION=OFF,geoclue"
PACKAGECONFIG[indexeddb] = "-DENABLE_DATABASE_PROCESS=ON -DENABLE_INDEXED_DATABASE=ON,-DENABLE_DATABASE_PROCESS=OFF -DENABLE_INDEXED_DATABASE=OFF,"
PACKAGECONFIG[libinput] = "-DUSE_WPEWEBKIT_INPUT_LIBINPUT=ON,-DUSE_WPEWEBKIT_INPUT_LIBINPUT=OFF,libinput"
PACKAGECONFIG[logs] = "-DLOG_DISABLED=OFF,-DLOG_DISABLED=ON,"
PACKAGECONFIG[mediasource] = "-DENABLE_MEDIA_SOURCE=ON,-DENABLE_MEDIA_SOURCE=OFF,gstreamer1.0 gstreamer1.0-plugins-good"
PACKAGECONFIG[mediastream] = "-DENABLE_MEDIA_STREAM=ON,-DENABLE_MEDIA_STREAM=OFF,openwebrtc"
PACKAGECONFIG[nativevideo] = "-DENABLE_NATIVE_VIDEO=ON,-DENABLE_NATIVE_VIDEO=OFF,"
PACKAGECONFIG[notifications] = "-DENABLE_NOTIFICATIONS=ON,-DENABLE_NOTIFICATIONS=OFF,"
PACKAGECONFIG[sampling-profiler] = "-DENABLE_SAMPLING_PROFILER=ON,-DENABLE_SAMPLING_PROFILER=OFF,"
PACKAGECONFIG[shadowdom] = "-DENABLE_SHADOW_DOM=ON,-DENABLE_SHADOW_DOM=OFF,"
PACKAGECONFIG[subtitle] = "-DENABLE_TEXT_SINK=ON,-DENABLE_TEXT_SINK=OFF,"
PACKAGECONFIG[touch] = "-DENABLE_TOUCH_EVENTS=ON,-DENABLE_TOUCH_EVENTS=OFF,"
PACKAGECONFIG[udev] = "-DUSE_WPEWEBKIT_INPUT_UDEV=ON,-DUSE_WPEWEBKIT_INPUT_UDEV=OFF,udev"
PACKAGECONFIG[video] = "-DENABLE_VIDEO=ON -DENABLE_VIDEO_TRACK=ON,-DENABLE_VIDEO=OFF -DENABLE_VIDEO_TRACK=OFF,gstreamer1.0 gstreamer1.0-plugins-base gstreamer1.0-plugins-good gstreamer1.0-plugins-bad"
PACKAGECONFIG[webaudio] = "-DENABLE_WEB_AUDIO=ON,-DENABLE_WEB_AUDIO=OFF,gstreamer1.0 gstreamer1.0-plugins-base gstreamer1.0-plugins-good"
PACKAGECONFIG[webcrypto] = "-DENABLE_WEB_CRYPTO=ON,-DENABLE_WEB_CRYPTO=OFF,libgcrypt libtasn1"

# DRM
PACKAGECONFIG[opencdm] = "-DENABLE_OCDM=ON,-DENABLE_OCDM=OFF,opencdm"
PACKAGECONFIG[playready] = "-DENABLE_PLAYREADY=ON,-DENABLE_PLAYREADY=OFF,playready"
PACKAGECONFIG[provisioning] = "-DENABLE_PROVISIONING=ON,-DENABLE_PROVISIONING=OFF,libprovision,libprovision"

# GStreamer
PACKAGECONFIG[gst_gl] = "-DUSE_GSTREAMER_GL=ON,,"
PACKAGECONFIG[gst_httpsrc] = "-DUSE_GSTREAMER_WEBKIT_HTTP_SRC=ON,,"
PACKAGECONFIG[gst_holepunch] = "-DUSE_HOLE_PUNCH_GSTREAMER=ON,,"

EXTRA_OECMAKE += " \
-DCMAKE_BUILD_TYPE=Release \
-DCMAKE_COLOR_MAKEFILE=OFF -DBUILD_SHARED_LIBS=ON -DPORT=WPE \
-DEXPORT_DEPRECATED_WEBKIT2_C_API=ON \
-G Ninja \
"
EXTRANATIVEPATH += "chrpath-native"

# don't build debug
FULL_OPTIMIZATION_remove = "-g"

# WPEWebProcess crashes when built with ARM mode on RPi
ARM_INSTRUCTION_SET_armv7a = "thumb"
ARM_INSTRUCTION_SET_armv7r = "thumb"
ARM_INSTRUCTION_SET_armv7m = "thumb"
ARM_INSTRUCTION_SET_armv7ve = "thumb"


do_compile() {
${STAGING_BINDIR_NATIVE}/ninja -v ${PARALLEL_MAKE} libWPEWebKit.so libWPEWebInspectorResources.so WPEWebProcess WPENetworkProcess WPEStorageProcess
}
do_compile[progress] = "outof:^\[(\d+)/(\d+)\]\s+"

do_install() {
DESTDIR=${D} cmake -DCOMPONENT=Development -P ${B}/Source/WebKit/cmake_install.cmake
DESTDIR=${D} cmake -DCOMPONENT=Development -P ${B}/Source/JavaScriptCore/cmake_install.cmake

install -d ${D}${libdir}
cp -av --no-preserve=ownership ${B}/lib/libWPE* ${D}${libdir}/
install -m 0755 ${B}/lib/libWPEWebInspectorResources.so ${D}${libdir}/
# Hack: Remove the RPATH embedded in libWPEWebKit.so
chrpath --delete ${D}${libdir}/libWPE*

install -d ${D}${bindir}
install -m755 ${B}/bin/WPEWebProcess ${D}${bindir}/
install -m755 ${B}/bin/WPENetworkProcess ${D}${bindir}/
install -m755 ${B}/bin/WPEStorageProcess ${D}${bindir}/

# Hack: Remove RPATHs embedded in apps
chrpath --delete ${D}${bindir}/WPEWebProcess
chrpath --delete ${D}${bindir}/WPENetworkProcess
chrpath --delete ${D}${bindir}/WPEStorageProcess
}

LEAD_SONAME = "libWPEWebKit.so"

PACKAGES =+ "${PN}-web-inspector-plugin"

FILES_${PN}-web-inspector-plugin += "${libdir}/libWPEWebInspectorResources.so"
INSANE_SKIP_${PN}-web-inspector-plugin = "dev-so"

PACKAGES =+ "${PN}-platform-plugin"


RDEPS_MEDIASOURCE = " \
gstreamer1.0-plugins-good-isomp4 \
"

RDEPS_VIDEO = " \
gstreamer1.0-plugins-base-app \
gstreamer1.0-plugins-base-playback \
gstreamer1.0-plugins-good-souphttpsrc \
"

RDEPS_WEBAUDIO = " \
gstreamer1.0-plugins-good-wavparse \
"

# plugins-bad config option 'dash' -> gstreamer1.0-plugins-bad-dashdemux
# plugins-bad config option 'videoparsers' -> gstreamer1.0-plugins-bad-videoparsersbad

RDEPS_EXTRA = " \
gstreamer1.0-plugins-base-audioconvert \
gstreamer1.0-plugins-base-audioresample \
gstreamer1.0-plugins-base-gio \
gstreamer1.0-plugins-base-videoconvert \
gstreamer1.0-plugins-base-videoscale \
gstreamer1.0-plugins-base-volume \
gstreamer1.0-plugins-base-typefindfunctions \
gstreamer1.0-plugins-good-audiofx \
gstreamer1.0-plugins-good-audioparsers \
gstreamer1.0-plugins-good-autodetect \
gstreamer1.0-plugins-good-avi \
gstreamer1.0-plugins-good-deinterlace \
gstreamer1.0-plugins-good-interleave \
gstreamer1.0-plugins-bad-dashdemux \
gstreamer1.0-plugins-bad-mpegtsdemux \
gstreamer1.0-plugins-bad-smoothstreaming \
gstreamer1.0-plugins-bad-videoparsersbad \
"

RDEPS_VIDEOGL = " \
gstreamer1.0-omx \
gstreamer1.0-plugins-bad-opengl \
"
#fixme
# gstreamer1.0-plugins-bad-faad (videogl=> aac)
# gstreamer1.0-plugins-bad-hls
# gstreamer1.0-plugins-ugly-mpg123


RDEPS_MEDIASOURCE += "${RDEPS_EXTRA}"
RDEPS_VIDEO += "${RDEPS_EXTRA}"
RDEPS_WEBAUDIO += "${RDEPS_EXTRA}"

RRECOMMENDS_${PN} += " \
ca-certificates \
shared-mime-info \
ttf-bitstream-vera \
${PN}-platform-plugin \
"
# FIXME: add this conditionally based on selected pkconfig entries
RDEPENDS_${PN} = " ${RDEPS_MEDIASOURCE} ${RDEPS_VIDEO} ${RDEPS_VIDEOGL} ${RDEPS_WEBAUDIO} ${RDEPS_EXTRA} "

0 comments on commit 267ce67

Please sign in to comment.