xxxzhou / aoce Goto Github PK
View Code? Open in Web Editor NEWandroid/window (GPU image processing)(multimedia)
Home Page: https://www.zhihu.com/people/zhou-xin-12-70-21/posts
License: MIT License
android/window (GPU image processing)(multimedia)
Home Page: https://www.zhihu.com/people/zhou-xin-12-70-21/posts
License: MIT License
本人的理解是 VkOutputLayer的inTex[0] 作为输入的Vulkan管线的绘制结果,需要1. blit到HardwareImage的image用于OpenGL ES对应的surfaceView的展示 2. bilt到vulkan SurfaceView对应的ANativeWindow的present的Image
第2步的逻辑已经清楚了,不知道第1步怎么做的 我看到OnCommand的blit不是每次都调用但是Opengl ES对应的SurfaceView上屏结果每次都有更新,希望解答下这块儿逻辑
非常感谢 ,学习中,这个工程很强大!!!
在您的博客中,我看到有把断点打在glsl内请问有这方面的调试资料吗??
还有我在linux下,有没有其他的非Nsight的调试方法??(intel显卡)
我在android上不能运行成功 第三方库也加了 opencv也配置了 还是不行 会报win32的错误 能否出一个专门针对android的代码?
andrid studio -> File -> Open ->导入aoce-master\android\,整个工程导入后在编译apk的时候报了一个错误
E:\StudioWorkspace\aoce-master\aoce-master\CMakeLists.txt : C/C++ debug|armeabi-v7a : CMake Error at E:\StudioWorkspace\aoce-master\aoce-master\code\aoce_ffmpeg\CMakeLists.txt:5 (message):
FFmpeg not find.please set option AOCE_INSTALL_FFMPEG false
不知道怎么解决,求指教,非常感谢
I'm interested in this project, but I don't have more experience in CMake. The compilation fails under Windows platform.
thank you
[cmake] -- Selecting Windows SDK version 10.0.18362.0 to target Windows 10.0.19042.
[cmake] -- install:H:/aoce-master/build/install/win
[cmake] -- build type:Debug
[cmake] aoce head--H:/aoce-master/code/aoce/Aoce.hH:/aoce-master/code/aoce/Aoce.hppH:/aoce-master/code/aoce/AoceAudioDevice.hH:/aoce-master/code/aoce/AoceBuildSettings.hH:/aoce-master/code/aoce/AoceCore.hH:/aoce-master/code/aoce/AoceDefine.hH:/aoce-master/code/aoce/AoceLayer.hH:/aoce-master/code/aoce/AoceLive.hH:/aoce-master/code/aoce/AoceManager.hppH:/aoce-master/code/aoce/AoceMath.hH:/aoce-master/code/aoce/AoceMedia.hH:/aoce-master/code/aoce/AoceMetadata.hH:/aoce-master/code/aoce/AoceVideoDevice.hH:/aoce-master/code/aoce/AoceWindow.hH:/aoce-master/code/aoce/module/FrameCount.hppH:/aoce-master/code/aoce/module/IModule.hppH:/aoce-master/code/aoce/module/ModuleManager.hppH:/aoce-master/code/aoce/videoDevice/VideoDevice.hppH:/aoce-master/code/aoce/videoDevice/VideoManager.hppH:/aoce-master/code/aoce/layer/BaseLayer.hppH:/aoce-master/code/aoce/layer/InputLayer.hppH:/aoce-master/code/aoce/layer/OutputLayer.hppH:/aoce-master/code/aoce/layer/PipeGraph.hppH:/aoce-master/code/aoce/layer/PipeNode.hppH:/aoce-master/code/aoce/live/LiveRoom.hppH:/aoce-master/code/aoce/media/AudioEncoder.hppH:/aoce-master/code/aoce/media/MediaHelper.hppH:/aoce-master/code/aoce/media/MediaMuxer.hppH:/aoce-master/code/aoce/media/MediaPlayer.hppH:/aoce-master/code/aoce/media/VideoEncoder.hppH:/aoce-master/code/aoce/fixgraph/VideoView.hppH:/aoce-master/code/aoce/math/WrapMat.hppH:/aoce-master/code/aoce/metadata/LayerMetadata.hppH:/aoce-master/code/aoce/audioDevice/AudioDevice.hpp
[cmake] aoce source--H:/aoce-master/code/aoce/Aoce.cppH:/aoce-master/code/aoce/AoceCore.cppH:/aoce-master/code/aoce/AoceManager.cppH:/aoce-master/code/aoce/module/FrameCount.cppH:/aoce-master/code/aoce/module/IModule.cppH:/aoce-master/code/aoce/module/ModuleManager.cppH:/aoce-master/code/aoce/videoDevice/VideoDevice.cppH:/aoce-master/code/aoce/videoDevice/VideoManager.cppH:/aoce-master/code/aoce/layer/BaseLayer.cppH:/aoce-master/code/aoce/layer/InputLayer.cppH:/aoce-master/code/aoce/layer/OutputLayer.cppH:/aoce-master/code/aoce/layer/PipeGraph.cppH:/aoce-master/code/aoce/layer/PipeNode.cppH:/aoce-master/code/aoce/live/LiveRoom.cppH:/aoce-master/code/aoce/media/AudioEncoder.cppH:/aoce-master/code/aoce/media/MediaHelper.cppH:/aoce-master/code/aoce/media/MediaMuxer.cppH:/aoce-master/code/aoce/media/MediaPlayer.cppH:/aoce-master/code/aoce/media/VideoEncoder.cppH:/aoce-master/code/aoce/fixgraph/VideoView.cppH:/aoce-master/code/aoce/math/AMath.cppH:/aoce-master/code/aoce/math/WrapMat.cppH:/aoce-master/code/aoce/metadata/LayerMetadata.cppH:/aoce-master/code/aoce/audioDevice/AudioDevice.cppH:/aoce-master/code/aoce/audioDevice/AudioHelper.cpp
[cmake] INSTALL TARGETS - target aoce has PUBLIC_HEADER files but no PUBLIC_HEADER DESTINATION.
[cmake] -- system:1
[cmake] -- using find_package to locate vulkan
[cmake] -- Vulkan_LIBRARY
[cmake] -- C:/VulkanSDK/1.2.154.1/Lib/vulkan-1.lib
[cmake] -- vulkan found = TRUE
[cmake] -- vulkan include = C:/VulkanSDK/1.2.154.1/Include
[cmake] -- vulkan lib = C:/VulkanSDK/1.2.154.1/Lib/vulkan-1.lib
[cmake] -- using find_package to locate vulkan
[cmake] -- Vulkan_LIBRARY
[cmake] -- C:/VulkanSDK/1.2.154.1/Lib/vulkan-1.lib
[cmake] -- vulkan found = TRUE
[cmake] -- vulkan include = C:/VulkanSDK/1.2.154.1/Include
[cmake] -- vulkan lib = C:/VulkanSDK/1.2.154.1/Lib/vulkan-1.lib
[cmake] -- aoce_image_path: H:/aoce-master/code/aoce_vulkan_extra/../../images/lookup_amatorka.binary
[cmake] -- Found DirectX11 headers: C:/Program Files (x86)/Windows Kits/10/Include/10.0.18362.0/um
[cmake] -- dx11 libs:d3d11.libdxgi.libdxguid.lib
[cmake] -- mf- H:/aoce-master/code/aoce
[cmake] CMake Error at code/aoce_cuda/CMakeLists.txt:56 (set_property):
[cmake] set_property given invalid scope aoce_cuda. Valid scopes are GLOBAL,
[cmake] DIRECTORY, TARGET, SOURCE, TEST, CACHE, INSTALL.
[cmake]
[cmake]
[cmake] -- OpenCV ARCH: x64
[cmake] -- OpenCV RUNTIME: vc15
[cmake] -- OpenCV STATIC: OFF
[cmake] -- Found OpenCV 4.4.0 in D:/opencv4.4/opencv/build/x64/vc15/lib
[cmake] -- You might need to add D:\opencv4.4\opencv\build\x64\vc15\bin to your PATH to be able to run your applications.
[cmake] -- OpenCV library status:
[cmake] -- found: 1
[cmake] -- version: 4.4.0
[cmake] -- version: 4.4.0
[cmake] -- libraries: opencv_calib3d;opencv_core;opencv_dnn;opencv_features2d;opencv_flann;opencv_gapi;opencv_highgui;opencv_imgcodecs;opencv_imgproc;opencv_ml;opencv_objdetect;opencv_photo;opencv_stitching;opencv_video;opencv_videoio;opencv_world
[cmake] -- librarie path: D:/opencv4.4/opencv/build/x64/vc15/lib
[cmake] -- include path: D:/opencv4.4/opencv/build/include
[cmake] -- link opencv: opencv_calib3d;opencv_core;opencv_dnn;opencv_features2d;opencv_flann;opencv_gapi;opencv_highgui;opencv_imgcodecs;opencv_imgproc;opencv_ml;opencv_objdetect;opencv_photo;opencv_stitching;opencv_video;opencv_videoio;opencv_world
[cmake] -- link opencv: opencv_calib3d;opencv_core;opencv_dnn;opencv_features2d;opencv_flann;opencv_gapi;opencv_highgui;opencv_imgcodecs;opencv_imgproc;opencv_ml;opencv_objdetect;opencv_photo;opencv_stitching;opencv_video;opencv_videoio;opencv_world
[cmake] -- link opencv: opencv_calib3d;opencv_core;opencv_dnn;opencv_features2d;opencv_flann;opencv_gapi;opencv_highgui;opencv_imgcodecs;opencv_imgproc;opencv_ml;opencv_objdetect;opencv_photo;opencv_stitching;opencv_video;opencv_videoio;opencv_world
[cmake] -- aoce_image_path: H:/aoce-master/samples/cudatest/../../images/toy-mask.bmpH:/aoce-master/samples/cudatest/../../images/toy.bmp
[cmake] -- aoce_vulkan_glsl: H:/aoce-master/glsl/target/adaptiveThreshold.comp.spvH:/aoce-master/glsl/target/addBlend.comp.spvH:/aoce-master/glsl/target/alphaBlend.comp.spvH:/aoce-master/glsl/target/alphaShow.comp.spvH:/aoce-master/glsl/target/alphaShowC1.comp.spvH:/aoce-master/glsl/target/alphaShowF1.comp.spvH:/aoce-master/glsl/target/alphaShowF4.comp.spvH:/aoce-master/glsl/target/alphaShowSI1.comp.spvH:/aoce-master/glsl/target/alphaShowSI4.comp.spvH:/aoce-master/glsl/target/averageLuminanceThreshold.comp.spvH:/aoce-master/glsl/target/bilateral.comp.spvH:/aoce-master/glsl/target/bilateralC1.comp.spvH:/aoce-master/glsl/target/blend.comp.spvH:/aoce-master/glsl/target/blurPosition.comp.spvH:/aoce-master/glsl/target/blurSelective.comp.spvH:/aoce-master/glsl/target/brightness.comp.spvH:/aoce-master/glsl/target/bulgeDistortion.comp.spvH:/aoce-master/glsl/target/canny.comp.spvH:/aoce-master/glsl/target/cgaColorspace.comp.spvH:/aoce-master/glsl/target/chromaKey.comp.spvH:/aoce-master/glsl/target/colorBlend.comp.spvH:/aoce-master/glsl/target/colorBurnBlend.comp.spvH:/aoce-master/glsl/target/colorDodgeBlend.comp.spvH:/aoce-master/glsl/target/colorInvert.comp.spvH:/aoce-master/glsl/target/colorLocalBinaryPattern.comp.spvH:/aoce-master/glsl/target/colorMatrix.comp.spvH:/aoce-master/glsl/target/contrast.comp.spvH:/aoce-master/glsl/target/convertImage.comp.spvH:/aoce-master/glsl/target/convertImageF4.comp.spvH:/aoce-master/glsl/target/copyImage.comp.spvH:/aoce-master/glsl/target/cropFilter.comp.spvH:/aoce-master/glsl/target/crosshatch.comp.spvH:/aoce-master/glsl/target/darkenBlend.comp.spvH:/aoce-master/glsl/target/differenceBlend.comp.spvH:/aoce-master/glsl/target/directionalNMS.comp.spvH:/aoce-master/glsl/target/directionalSobel.comp.spvH:/aoce-master/glsl/target/dissolveBlend.comp.spvH:/aoce-master/glsl/target/divideBlend.comp.spvH:/aoce-master/glsl/target/emboss.comp.spvH:/aoce-master/glsl/target/exclusionBlend.comp.spvH:/aoce-master/glsl/target/exposure.comp.spvH:/aoce-master/glsl/target/falseColor.comp.spvH:/aoce-master/glsl/target/fastFeatureDetector.comp.spvH:/aoce-master/glsl/target/filter2D.comp.spvH:/aoce-master/glsl/target/filter2DC1.comp.spvH:/aoce-master/glsl/target/filter2DF4.comp.spvH:/aoce-master/glsl/target/filterColumn.comp.spvH:/aoce-master/glsl/target/filterColumnC1.comp.spvH:/aoce-master/glsl/target/filterColumnF4.comp.spvH:/aoce-master/glsl/target/filterMat3x3.comp.spvH:/aoce-master/glsl/target/filterRow.comp.spvH:/aoce-master/glsl/target/filterRowC1.comp.spvH:/aoce-master/glsl/target/filterRowF4.comp.spvH:/aoce-master/glsl/target/flip.comp.spvH:/aoce-master/glsl/target/gamma.comp.spvH:/aoce-master/glsl/target/glassSphere.comp.spvH:/aoce-master/glsl/target/guidedFilter1.comp.spvH:/aoce-master/glsl/target/guidedFilter2.comp.spvH:/aoce-master/glsl/target/guidedMatting.comp.spvH:/aoce-master/glsl/target/halftone.comp.spvH:/aoce-master/glsl/target/hardLightBlend.comp.spvH:/aoce-master/glsl/target/harrisCornerDetection.comp.spvH:/aoce-master/glsl/target/haze.comp.spvH:/aoce-master/glsl/target/highlightShadow.comp.spvH:/aoce-master/glsl/target/highlightShadowTint.comp.spvH:/aoce-master/glsl/target/histogram.comp.spvH:/aoce-master/glsl/target/histogramC1.comp.spvH:/aoce-master/glsl/target/histogramCombin.comp.spvH:/aoce-master/glsl/target/histogramLut.comp.spvH:/aoce-master/glsl/target/histogramLutResult.comp.spvH:/aoce-master/glsl/target/histogramLutResultC1.comp.spvH:/aoce-master/glsl/target/hue.comp.spvH:/aoce-master/glsl/target/hueBlend.comp.spvH:/aoce-master/glsl/target/inputARGB.comp.spvH:/aoce-master/glsl/target/inputBRGA.comp.spvH:/aoce-master/glsl/target/inputRGB.comp.spvH:/aoce-master/glsl/target/kuwahara.comp.spvH:/aoce-master/glsl/target/levels.comp.spvH:/aoce-master/glsl/target/lightenBlend.comp.spvH:/aoce-master/glsl/target/linearBurnBlend.comp.spvH:/aoce-master/glsl/target/lookup.comp.spvH:/aoce-master/glsl/target/luminance.comp.spvH:/aoce-master/glsl/target/luminanceRange.comp.spvH:/aoce-master/glsl/target/luminanceThreshold.comp.spvH:/aoce-master/glsl/target/luminosityBlend.comp.spvH:/aoce-master/glsl/target/mapChannel.comp.spvH:/aoce-master/glsl/target/mask.comp.spvH:/aoce-master/glsl/target/median.comp.spvH:/aoce-master/glsl/target/medianC1.comp.spvH:/aoce-master/glsl/target/medianK3.comp.spvH:/aoce-master/glsl/target/medianK3C1.comp.spvH:/aoce-master/glsl/target/memset.comp.spvH:/aoce-master/glsl/target/memsetU1.comp.spvH:/aoce-master/glsl/target/monochrome.comp.spvH:/aoce-master/glsl/target/morph1_dilation.comp.spvH:/aoce-master/glsl/target/morph1_dilationC1.comp.spvH:/aoce-master/glsl/target/morph1_erosion.comp.spvH:/aoce-master/glsl/target/morph1_erosionC1.comp.spvH:/aoce-master/glsl/target/morph2_dilation.comp.spvH:/aoce-master/glsl/target/morph2_dilationC1.comp.spvH:/aoce-master/glsl/target/morph2_erosion.comp.spvH:/aoce-master/glsl/target/morph2_erosionC1.comp.spvH:/aoce-master/glsl/target/motionBlur.comp.spvH:/aoce-master/glsl/target/motionDetector.comp.spvH:/aoce-master/glsl/target/multiplyBlend.comp.spvH:/aoce-master/glsl/target/nobleCornerDetection.comp.spvH:/aoce-master/glsl/target/normalBlend.comp.spvH:/aoce-master/glsl/target/opacity.comp.spvH:/aoce-master/glsl/target/operate.comp.spvH:/aoce-master/glsl/target/overlayBlend.comp.spvH:/aoce-master/glsl/target/perlinNoise.comp.spvH:/aoce-master/glsl/target/pinchDistortion.comp.spvH:/aoce-master/glsl/target/pixellate.comp.spvH:/aoce-master/glsl/target/pixellatePosition.comp.spvH:/aoce-master/glsl/target/poissonBlend.comp.spvH:/aoce-master/glsl/target/polarPixellate.comp.spvH:/aoce-master/glsl/target/polkaDot.comp.spvH:/aoce-master/glsl/target/posterize.comp.spvH:/aoce-master/glsl/target/prewittEdge.comp.spvH:/aoce-master/glsl/target/reduce2_sumF1.comp.spvH:/aoce-master/glsl/target/reduce2_sumF4.comp.spvH:/aoce-master/glsl/target/reduce_sum.comp.spvH:/aoce-master/glsl/target/reduce_sumC1.comp.spvH:/aoce-master/glsl/target/resize.comp.spvH:/aoce-master/glsl/target/resizeC1.comp.spvH:/aoce-master/glsl/target/resizeF4.comp.spvH:/aoce-master/glsl/target/rgb.comp.spvH:/aoce-master/glsl/target/rgba2yuvV1.comp.spvH:/aoce-master/glsl/target/rgba2yuvV2.comp.spvH:/aoce-master/glsl/target/saturation.comp.spvH:/aoce-master/glsl/target/saturationBlend.comp.spvH:/aoce-master/glsl/target/screenBlend.comp.spvH:/aoce-master/glsl/target/sharpen.comp.spvH:/aoce-master/glsl/target/shiTomasiFeatureDetection.comp.spvH:/aoce-master/glsl/target/showRound.comp.spvH:/aoce-master/glsl/target/sketch.comp.spvH:/aoce-master/glsl/target/sketchThreshold.comp.spvH:/aoce-master/glsl/target/skinTone.comp.spvH:/aoce-master/glsl/target/sobelEdge.comp.spvH:/aoce-master/glsl/target/sobelThreshold.comp.spvH:/aoce-master/glsl/target/softLightBlend.comp.spvH:/aoce-master/glsl/target/solarize.comp.spvH:/aoce-master/glsl/target/sourceOverBlend.comp.spvH:/aoce-master/glsl/target/sphereRefraction.comp.spvH:/aoce-master/glsl/target/stretchDisortion.comp.spvH:/aoce-master/glsl/target/subtractBlend.comp.spvH:/aoce-master/glsl/target/swirl.comp.spvH:/aoce-master/glsl/target/thresholdedNMS.comp.spvH:/aoce-master/glsl/target/tiltShift.comp.spvH:/aoce-master/glsl/target/toon.comp.spvH:/aoce-master/glsl/target/transpose.comp.spvH:/aoce-master/glsl/target/unsharpMask.comp.spvH:/aoce-master/glsl/target/vibrance.comp.spvH:/aoce-master/glsl/target/vignette.comp.spvH:/aoce-master/glsl/target/voronoiConsumer.comp.spvH:/aoce-master/glsl/target/whiteBalance.comp.spvH:/aoce-master/glsl/target/xyDerivative.comp.spvH:/aoce-master/glsl/target/yuv2rgbaV1.comp.spvH:/aoce-master/glsl/target/yuv2rgbaV2.comp.spvH:/aoce-master/glsl/target/zoomBlur.comp.spv
[cmake] -- aoce_vulkan_glsl_dst: H:/aoce-master/build/bin/Debug/glsl
[cmake] -- SWIG found:I:/swigwin-3.0.6/swig.exe
[cmake] CMake Warning (dev) at swig/CSharp/CMakeLists.txt:13 (file):
[cmake] Ignoring empty file name in REMOVE.
[cmake] This warning is for project developers. Use -Wno-dev to suppress it.
[cmake]
[cmake] CMake Warning (dev) at C:/Program Files/CMake/share/cmake-3.20/Modules/UseSWIG.cmake:750 (message):
[cmake] Policy CMP0078 is not set: UseSWIG generates standard target names. Run
[cmake] "cmake --help-policy CMP0078" for policy details. Use the cmake_policy
[cmake] command to set the policy and suppress this warning.
[cmake]
[cmake] Call Stack (most recent call first):
[cmake] swig/CSharp/CMakeLists.txt:15 (swig_add_library)
[cmake] This warning is for project developers. Use -Wno-dev to suppress it.
[cmake]
[cmake] CMake Warning (dev) at C:/Program Files/CMake/share/cmake-3.20/Modules/UseSWIG.cmake:592 (message):
[cmake] Policy CMP0086 is not set: UseSWIG honors SWIG_MODULE_NAME via -module
[cmake] flag. Run "cmake --help-policy CMP0086" for policy details. Use the
[cmake] cmake_policy command to set the policy and suppress this warning.
[cmake]
[cmake] Call Stack (most recent call first):
[cmake] C:/Program Files/CMake/share/cmake-3.20/Modules/UseSWIG.cmake:862 (SWIG_ADD_SOURCE_TO_MODULE)
[cmake] swig/CSharp/CMakeLists.txt:15 (swig_add_library)
[cmake] This warning is for project developers. Use -Wno-dev to suppress it.
[cmake] -- swig: create charp files H:/aoce-master/build/swig/CSharp/swig
[cmake]
[cmake] -- Configuring incomplete, errors occurred!
[cmake] See also "H:/aoce-master/build/CMakeFiles/CMakeOutput.log".
这个是在windows环境下cmake生成的
你好,非常感谢开源工作,
我目前基于Android能正常编译aoceswigtest,打开后看到能选择上百种滤镜的页面,但是点进去之后全屏浅蓝色,可以点击参数按钮且有正常反应,相机权限已打开,想问一下可能的原因是?
我尝试过直接安装你提供的apk,是可以正常work的
GPU Adreno: CreateNativeImage: Invalid context passed
看Android源码,好像是这个问题
https://cs.android.com/android/platform/superproject/+/master:device/generic/goldfish-opengl/system/egl/egl.cpp;l=2195;drc=master?q=eglCreateImageKHR&ss=android%2Fplatform%2Fsuperproject
A declarative, efficient, and flexible JavaScript library for building user interfaces.
🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.
TypeScript is a superset of JavaScript that compiles to clean JavaScript output.
An Open Source Machine Learning Framework for Everyone
The Web framework for perfectionists with deadlines.
A PHP framework for web artisans
Bring data to life with SVG, Canvas and HTML. 📊📈🎉
JavaScript (JS) is a lightweight interpreted programming language with first-class functions.
Some thing interesting about web. New door for the world.
A server is a program made to process requests and deliver data to clients.
Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.
Some thing interesting about visualization, use data art
Some thing interesting about game, make everyone happy.
We are working to build community through open source technology. NB: members must have two-factor auth.
Open source projects and samples from Microsoft.
Google ❤️ Open Source for everyone.
Alibaba Open Source for everyone
Data-Driven Documents codes.
China tencent open source team.