1001 Freelance Projects
Latest Projects from
Freelance Marketplaces
View Project
View this project in detail
(Note: you will be redirected to external marketplace)
Project title:
Android App Bug Fix - Video Overlays (OpenGL Compositing)
Posted by:
External project from PeoplePerHour
Started:
24-Mar-2025 02:02 GMT
Description:
I've been deveoping an android app (using ChatGPT - I have no real android development knowledge!) which animates a dog's mouth through the camera feed. I had the app working okay but with some latency between the camera feed and the overlay (using CameraX and a PreviewView), so I tried to update it to an offscreen rendering approach, using an EGL context and MediaCodec surface to render the camera feed plus overlays into a single composited output.

However, the I have not implemented this correclty and the camera feed is just showing a black screen.

Here's ChatGPT's summary of what we had originally (working) and what we changed it to. Both of these approaches are saved on different github branches which you will have access to. You can see the previously working version on the master branch, and the newly updated (not working) version on a test branch.

What We Had Originally
- An Android app (Kotlin) using CameraX and a PreviewView to display the live camera feed.
- A BoundingBoxOverlay custom View drawn on top for YOLO pose detection (dog’s mouth, eyes, etc.).
- We wanted to animate the dog’s mouth in sync with audio but were limited by the traditional overlay.

What We Changed It To
Offscreen Rendering Approach:
- Created an EGL context and MediaCodec surface (via OffscreenRenderer.kt) to render the camera feed plus overlays into a single composited output.
- The camera feed is now provided by a SurfaceTexture created from an external OES texture (rather than using PreviewView).
- CameraX is configured to output frames to that SurfaceTexture.
- A custom pipeline composites the camera and any overlays (animated mouth, etc.) in OpenGL, then encodes to a video file with MediaCodec.

What We’re Trying to Achieve
A Snapchat-like pipeline:
- Grab the camera feed directly via a SurfaceTexture (external OES texture).
- Apply real-time overlays/filters (like mouth animation, hats, glasses) in OpenGL.
- Composite everything offscreen and encode it into a video file (for recording).
- Avoid the performance constraints of standard Android Views by relying on OpenGL compositing (similar to Snapchat filters).

Despite these changes, the feed currently displays a black screen. We suspect an issue with the GL pipeline, resolution mismatch, or camera frames not drawing as intended.

Goal: Fix the offscreen renderer so that camera frames plus overlays appear in real time, and video recording also works as expected.
Project ID:
3427633
Project category:
Project budget:
View this project in detail
(Note: you will be redirected to external marketplace)
Last Projects / Browse Projects
  Project Started
Move word press site to WIX 30 Mar 2025 14:31 GMT
Logo enhancement 30 Mar 2025 14:06 GMT
Launch Assistant for Drink Brand (Shopify, Marketing, AI, ) 30 Mar 2025 13:19 GMT
Animator needed for Unreal 30 Mar 2025 13:09 GMT
Friends/Employees/Contacts for Feedback (Easy) 30 Mar 2025 11:15 GMT
Salesforce updates including automations with Panda Doc 30 Mar 2025 11:15 GMT
I need to alter (handwritten) text on 3 images 30 Mar 2025 11:00 GMT
Logo design 30 Mar 2025 08:54 GMT
Copy images into PDF template 30 Mar 2025 08:39 GMT
One Page Website 30 Mar 2025 08:39 GMT
Who can Chat Email or Call Meta 30 Mar 2025 08:39 GMT
Website content required. 30 Mar 2025 06:08 GMT
I need a flyer created 30 Mar 2025 06:05 GMT
Wix Template design 30 Mar 2025 06:05 GMT
A GREEN SCREEN BACKGROUND THAT LOOKS LIKE A REAL STUDIO SET 30 Mar 2025 03:25 GMT
Browse All Projects
Projects by Skills ...
android
ajax
asp
aspnet
cms
cpp
csharp
css
delphi
design
drupal
excel
facebook
flash
html
java
javascript
joomla
iphone
mysql
photoshop
php
python
ruby
seo
sql
sysadm
translate
typing
twitter
vbnet
xml
wordpress
writing
New!
Проекты на русском
(Projects in Russian)

Copyright © 2005-2024
1001 Freelance Projects