<html><head></head><body><div style="font-family: Verdana;font-size: 12.0px;"><div>Thanks! I'm trying to do this on a Pixel 2 XL, but there is no libOpenCL.so on it! (directory listing included later)</div>

<div> </div>

<div>I'm searching for it. I'm looking at the Aredno SDK, </div>

<div> </div>

<div>I'm sort of at a loss for what all I need to include for android. You mention GLESv2, but you also mention v3. </div>

<div>
<div> </div>

<div>taimen:/system/lib $ ls -1 lib*<br/>
lib-imsvideocodec.so<br/>
lib-imsvt.so<br/>
lib-imsvtextutils.so<br/>
lib-imsvtutils.so<br/>
libEGL.so<br/>
libETC1.so<br/>
libFFTEm.so<br/>
libGLESv1_CM.so<br/>
libGLESv2.so<br/>
libGLESv3.so<br/>
libOpenMAXAL.so<br/>
libOpenSLES.so<br/>
libRS.so<br/>
libRSCacheDir.so<br/>
libRSCpuRef.so<br/>
libRSDriver.so<br/>
libRS_internal.so<br/>
libRScpp.so<br/>
libaaudio.so<br/>
libaaudioservice.so<br/>
libandroid.so<br/>
libandroid_net.so<br/>
libandroid_runtime.so<br/>
libandroid_servers.so<br/>
libandroidfw.so<br/>
libappfuse.so<br/>
libart-compiler.so<br/>
libart-dexlayout.so<br/>
libart.so<br/>
libaudio-resampler.so<br/>
libaudioclient.so<br/>
libaudioeffect_jni.so<br/>
libaudioflinger.so<br/>
libaudiohal.so<br/>
libaudiomanager.so<br/>
libaudiopolicyenginedefault.so<br/>
libaudiopolicymanager.so<br/>
libaudiopolicymanagerdefault.so<br/>
libaudiopolicyservice.so<br/>
libaudioprocessing.so<br/>
libaudiospdif.so<br/>
libaudioutils.so<br/>
libbacktrace.so<br/>
libbase.so<br/>
libbcinfo.so<br/>
libbinder.so<br/>
libblas.so<br/>
libc++.so<br/>
libc.so<br/>
libc_malloc_debug.so<br/>
libcamera2ndk.so<br/>
libcamera_client.so<br/>
libcamera_metadata.so<br/>
libcameraservice.so<br/>
libchrome.so<br/>
libclcore.bc<br/>
libclcore_debug.bc<br/>
libclcore_debug_g.bc<br/>
libclcore_g.bc<br/>
libclcore_neon.bc<br/>
libcompiler_rt.so<br/>
libcrypto.so<br/>
libcutils.so<br/>
libdebuggerd_client.so<br/>
libdiag_system.so<br/>
libdl.so<br/>
libdmengine.so<br/>
libdmjavaplugin.so<br/>
libdng_sdk.so<br/>
libdrmframework.so<br/>
libdrmframework_jni.so<br/>
libdvr.so<br/>
libdvr_loader.so<br/>
libeaselcomm.so<br/>
libeffectsconfig.so<br/>
libevent.so<br/>
libexif.so<br/>
libexpat.so<br/>
libfilterfw.so<br/>
libfilterpack_facedetect.so<br/>
libfilterpack_imageproc.so<br/>
libfmq.so<br/>
libfrsdk.so<br/>
libft2.so<br/>
libgatekeeper.so<br/>
libgraphicsenv.so<br/>
libgui.so<br/>
libhardware.so<br/>
libhardware_legacy.so<br/>
libharfbuzz_ng.so<br/>
libheif.so<br/>
libhidlbase.so<br/>
libhidlmemory.so<br/>
libhidltransport.so<br/>
libhwbinder.so<br/>
libhwui.so<br/>
libicui18n.so<br/>
libicuuc.so<br/>
libimg_utils.so<br/>
libimscamera_jni.so<br/>
libimsmedia_jni.so<br/>
libinput.so<br/>
libinputflinger.so<br/>
libinputservice.so<br/>
libiprouteutil.so<br/>
libjavacore.so<br/>
libjavacrypto.so<br/>
libjnigraphics.so<br/>
libjpeg.so<br/>
libkeystore_binder.so<br/>
libldacBT_abr.so<br/>
libldacBT_enc.so<br/>
liblog.so<br/>
liblz4.so<br/>
liblzma.so<br/>
libm.so<br/>
libmdnssd.so<br/>
libmedia.so<br/>
libmedia_helper.so<br/>
libmedia_jni.so<br/>
libmedia_omx.so<br/>
libmediadrm.so<br/>
libmedialogservice.so<br/>
libmediametrics.so<br/>
libmediandk.so<br/>
libmediaplayerservice.so<br/>
libmediautils.so<br/>
libmemtrack.so<br/>
libmemunreachable.so<br/>
libmidi.so<br/>
libminikin.so<br/>
libmtp.so<br/>
libnativebridge.so<br/>
libnativehelper.so<br/>
libnativeloader.so<br/>
libnativewindow.so<br/>
libnbaio.so<br/>
libnetd_client.so<br/>
libnetlink.so<br/>
libnetutils.so<br/>
libneuralnetworks.so<br/>
libnl.so<br/>
libopenjdk.so<br/>
libopenjdkjvm.so<br/>
libopenjdkjvmti.so<br/>
libopus.so<br/>
libpac.so<br/>
libpackagelistparser.so<br/>
libpcre2.so<br/>
libpdfium.so<br/>
libpiex.so<br/>
libpixelflinger.so<br/>
libpng.so<br/>
libpower.so<br/>
libpowermanager.so<br/>
libprocessgroup.so<br/>
libprocinfo.so<br/>
libprotobuf-cpp-full.so<br/>
libprotobuf-cpp-lite.so<br/>
libradio_metadata.so<br/>
librcc.so<br/>
libresourcemanagerservice.so<br/>
librs_jni.so<br/>
librtp_jni.so<br/>
libschedulerservicehidl.so<br/>
libselinux.so<br/>
libsensor.so<br/>
libsensorservice.so<br/>
libsensorservicehidl.so<br/>
libserviceutility.so<br/>
libsigchain.so<br/>
libskia.so<br/>
libsoftkeymaster.so<br/>
libsonic.so<br/>
libsonivox.so<br/>
libsoundpool.so<br/>
libsoundtrigger.so<br/>
libsoundtriggerservice.so<br/>
libspeexresampler.so<br/>
libsqlite.so<br/>
libssl.so<br/>
libstagefright.so<br/>
libstagefright_amrnb_common.so<br/>
libstagefright_enc_common.so<br/>
libstagefright_flacdec.so<br/>
libstagefright_foundation.so<br/>
libstagefright_http_support.so<br/>
libstagefright_httplive.so<br/>
libstagefright_omx.so<br/>
libstagefright_omx_utils.so<br/>
libstagefright_soft_aacdec.so<br/>
libstagefright_soft_aacenc.so<br/>
libstagefright_soft_amrdec.so<br/>
libstagefright_soft_amrnbenc.so<br/>
libstagefright_soft_amrwbenc.so<br/>
libstagefright_soft_avcdec.so<br/>
libstagefright_soft_avcenc.so<br/>
libstagefright_soft_flacdec.so<br/>
libstagefright_soft_flacenc.so<br/>
libstagefright_soft_g711dec.so<br/>
libstagefright_soft_gsmdec.so<br/>
libstagefright_soft_hevcdec.so<br/>
libstagefright_soft_mp3dec.so<br/>
libstagefright_soft_mpeg2dec.so<br/>
libstagefright_soft_mpeg4dec.so<br/>
libstagefright_soft_mpeg4enc.so<br/>
libstagefright_soft_opusdec.so<br/>
libstagefright_soft_rawdec.so<br/>
libstagefright_soft_vorbisdec.so<br/>
libstagefright_soft_vpxdec.so<br/>
libstagefright_soft_vpxenc.so<br/>
libstagefright_wfd.so<br/>
libstagefright_xmlparser.so<br/>
libstdc++.so<br/>
libsurfaceflinger.so<br/>
libsurfaceflinger_ddmconnection.so<br/>
libsuspend.so<br/>
libsync.so<br/>
libsysutils.so<br/>
libtextclassifier.so<br/>
libtextclassifier_hash.so<br/>
libtinyxml2.so<br/>
libtombstoned_client.so<br/>
libui.so<br/>
libunwind.so<br/>
libusbhost.so<br/>
libutils.so<br/>
libvintf.so<br/>
libvixl-arm.so<br/>
libvixl-arm64.so<br/>
libvndksupport.so<br/>
libvorbisidec.so<br/>
libvulkan.so<br/>
libwebviewchromium_loader.so<br/>
libwebviewchromium_plat_support.so<br/>
libwifi-service.so<br/>
libwilhelm.so<br/>
libxml2.so<br/>
libz.so<br/>
libziparchive.so</div>

<div> </div>

<div> </div>

<div name="quote" style="margin:10px 5px 5px 10px; padding: 10px 0 10px 10px; border-left:2px solid #C3D9E5; word-wrap: break-word; -webkit-nbsp-mode: space; -webkit-line-break: after-white-space;">
<div style="margin:0 0 10px 0;"><b>Sent:</b> Wednesday, April 04, 2018 at 4:54 AM<br/>
<b>From:</b> "René Hansen" <renehh@gmail.com><br/>
<b>To:</b> "Jason H" <jhihn@gmx.com><br/>
<b>Cc:</b> "interestqt-project.org" <interest@qt-project.org><br/>
<b>Subject:</b> Re: [Interest] Video Filters on Android</div>

<div name="quoted-content">
<div>I never got that specific example to work, but assuming you're building with the Android NDK, you can include:
<div> </div>

<div>
<div><font face="monospace">#include <GLES2/gl2.h></font></div>

<div><font face="monospace">#include <EGL/egl.h></font></div>
</div>

<div> </div>

<div>Which will give you access to <b>eglGetCurrentContext()</b>.<br/>
<br/>
I'm using the r10e ndk, since that's what works with Qt at the moment. GLES v3 is available in toolchain v21:<br/>
 
<div><font face="monospace">$ ls ~/Code/Android/android-ndk-r10e//platforms/android-21/arch-arm/usr/lib/</font></div>

<div><font face="monospace">crtbegin_dynamic.o      libGLESv2.so            libdl.so                libstdc++.a</font></div>

<div><font face="monospace">crtbegin_so.o           libGLESv3.so            libjnigraphics.so       libstdc++.so</font></div>

<div><font face="monospace">crtbegin_static.o       libOpenMAXAL.so         liblog.so               libthread_db.so</font></div>

<div><font face="monospace">crtend_android.o        libOpenSLES.so          libm.a                  libz.a</font></div>

<div><font face="monospace">crtend_so.o             libandroid.so           libm.so                 libz.so</font></div>

<div><font face="monospace">libEGL.so               libc.a                  libm_hard.a             rs</font></div>

<div><font face="monospace">libGLESv1_CM.so         libc.so                 libmediandk.so</font><br/>
<br/>
If you want to link against OpenCL, you still need to pull a <b>libOpenCL.so</b> from an actual device though.<br/>
<br/>
<br/>
/René</div>
</div>
 

<div class="gmail_quote">
<div>On Wed, 4 Apr 2018 at 01:52 Jason H <<a href="mailto:jhihn@gmx.com" onclick="parent.window.location.href='jhihn@gmx.com'; return false;" target="_blank">jhihn@gmx.com</a>> wrote:</div>

<blockquote class="gmail_quote" style="margin: 0 0 0 0.8ex;border-left: 1.0px rgb(204,204,204) solid;padding-left: 1.0ex;"><a href="http://blog.qt.io/blog/2015/03/20/introducing-video-filters-in-qt-multimedia/" target="_blank">http://blog.qt.io/blog/2015/03/20/introducing-video-filters-in-qt-multimedia/</a> announced video filter support, and hardware accelerated too!<br/>
<br/>
Code: <a href="http://code.qt.io/cgit/qt/qtmultimedia.git/tree/examples/multimedia/video/qmlvideofilter_opencl" target="_blank">http://code.qt.io/cgit/qt/qtmultimedia.git/tree/examples/multimedia/video/qmlvideofilter_opencl</a><br/>
<br/>
I'm trying to get it running on Android, but I'm going down a rabbit hole with OpenCL 2.0 and EGL 3.2. I have been hacking on it but I don't know where EGLContext is declared.<br/>
<br/>
Had anyone gotten this running in Android?<br/>
<br/>
Thanks!<br/>
_______________________________________________<br/>
Interest mailing list<br/>
<a href="mailto:Interest@qt-project.org" onclick="parent.window.location.href='Interest@qt-project.org'; return false;" target="_blank">Interest@qt-project.org</a><br/>
<a href="http://lists.qt-project.org/mailman/listinfo/interest" target="_blank">http://lists.qt-project.org/mailman/listinfo/interest</a></blockquote>
</div>
</div>
</div>
</div>
</div></div></body></html>