a7c137da07
* feat: Call Skia Renderer * Use default NativePreviewView for Skia * Render to separate FBO * It appears once * Refactor a lot lol * Pass width/height * Read width/heights * Update SkiaRenderer.cpp * Read stencil/samples * Use switch for target * Clear full red * Update VideoPipeline.cpp * fix: Use `BorrowTextureFrom` instead of `AdoptTextureFrom` * Get it to work * Draw Camera Frame again (only works for first frame) * glDisable(GL_BLEND) * Use Frame Buffer again * Simplify Skia offscreen surface creation * fix: Get it to kinda work? * fix: Remove `sampler2D` shader Only the EXTERNAL_OES one kinda works * Revert "fix: Remove `sampler2D` shader" This reverts commit bf241a82f440f5a442f23a2b10329b813e7cdb3e. * Revert "fix: Get it to kinda work?" This reverts commit ea6a8784ad8dc7d05e8076591874f021b51dd84a. * fix: Use Skia for rendering * Simplify drawing code a lot * Clean up drawing loop a bit more * Some docs * Update SkiaRenderer.cpp * Surface * try to use Matrix * Use BottomLeft as a surface origin again * Get actual surface dimensions * Use 1x1 pbuffer instead * Update SkiaRenderer.cpp * Update SkiaRenderer.cpp * feat: Implement Skia Frame Processor (#1735) * feat: Implement JS Skia Frame Processor * Update SkiaRenderer.cpp * push * Create Frame from C++ * compile * Compile * Update VideoPipeline.cpp * Fix JNI local ref * Use `HardwareBuffer` for implementation * feat: Custom `Frame` implementation that uses CPU `ByteBuffer` (#1736) * feat: Implement JS Skia Frame Processor * Update SkiaRenderer.cpp * push * Create Frame from C++ * compile * Compile * Update VideoPipeline.cpp * Fix JNI local ref * Use `HardwareBuffer` for implementation * try: Try to just create a CPU based ByteBuffer * fix: Fix Java Type * fix remaining errors * try fixing FrameFactory * Use `free` * fix: Fix scene mode crash on some emulators * fix: Fix scene mode crash on some emulators * Fix getting pixels * fix: Fix buffer not being freed * Add some docs to `Frame` * Test Skia again * Use `getCurrentPresentationTime()` * Remove `FrameFactory.cpp` * Update VideoPipeline.h * Update VideoPipeline.cpp
24 lines
731 B
C++
24 lines
731 B
C++
#include <jni.h>
|
|
#include <fbjni/fbjni.h>
|
|
#include "JVisionCameraScheduler.h"
|
|
#include "JFrameProcessor.h"
|
|
#include "JVisionCameraProxy.h"
|
|
#include "VisionCameraProxy.h"
|
|
#include "JSkiaFrameProcessor.h"
|
|
#include "VideoPipeline.h"
|
|
|
|
JNIEXPORT jint JNICALL JNI_OnLoad(JavaVM *vm, void *) {
|
|
return facebook::jni::initialize(vm, [] {
|
|
vision::VisionCameraInstaller::registerNatives();
|
|
vision::JVisionCameraProxy::registerNatives();
|
|
vision::JVisionCameraScheduler::registerNatives();
|
|
vision::VideoPipeline::registerNatives();
|
|
#if VISION_CAMERA_ENABLE_FRAME_PROCESSORS
|
|
vision::JFrameProcessor::registerNatives();
|
|
#endif
|
|
#if VISION_CAMERA_ENABLE_SKIA
|
|
vision::JSkiaFrameProcessor::registerNatives();
|
|
#endif
|
|
});
|
|
}
|