Privacy-first Android camera and multimedia suite.
FadCam is built for powerful camera, recording, and media-creation workflows without advertising or unnecessary clutter.
The latest production-room debug APK is published by the automated build pipeline.
Artifact: FadCam-default-debug-apk
To install the newest development build, open the repository's Actions → Production Room Build → Artifacts and download the latest successful APK.
Debug builds are development builds. Use them only on devices where you understand the risks of test software.
- 🎥 Background video recording
- 🚗 Dashcam-style recording
- 📱 Screen recording
- 📡 Live streaming capabilities
- 🎛️ Remote camera control
- 🎬 Video playback and media handling
- 🎙️ Camera/video commentary workflows
- 🖼️ Video reaction and picture-in-picture workflows
- 🔊 Mixed camera and source-video audio
- 🔒 Privacy-focused, ad-free design
FadCam includes an evolving creator workflow for video reactions and commentary.
The workflow is designed to let you:
- Select a source video.
- Keep the live camera as the main view.
- Play the source video as a movable and resizable picture-in-picture layer.
- Talk through the video using the device microphone.
- Adjust source-video and microphone audio levels.
- Pause and resume the recording workflow.
- Finish automatically when the source video ends.
- Export a final composition containing the camera view, source video, and mixed audio.
This is intended for reactions, commentary, demonstrations, tutorials, and other creator workflows.
FadCam combines Android camera, media, storage, and recording technologies.
- CameraX — camera capture and preview
- Media3 / ExoPlayer — media playback
- Media3 Muxer — media output and container handling
- FFmpeg — video composition and audio mixing
- Room — local application data
- OpenCV — computer-vision processing where required
- Android MediaStore — exported media storage
The recording pipeline uses a patched Media3 build for functionality required by FadCam.
- Android Studio
- JDK 17
- Android SDK API 36
- The Gradle wrapper included in this repository
./gradlew :app:assembleDefaultDebugAPK output is generated under:
app/build/outputs/apk/
The exact output directory depends on the selected build variant.
FadCam development follows a surgical repair approach:
- Preserve working architecture.
- Change the smallest necessary surface.
- Avoid destructive rewrites when repairing existing functionality.
- Keep recording and media pipelines deterministic.
- Validate builds after source changes.
- Treat media-resource cleanup and lifecycle handling as first-class concerns.
- Keep generated output separate from source code.
FadCam is designed around local-first media handling and a privacy-focused user experience.
The application should request only the Android permissions required for the features being used. Camera, microphone, storage, screen capture, and network functionality should remain explicit and feature-driven.
Always review permissions on your device before installing a development build.
app/
├── src/
│ ├── main/
│ │ ├── java/ Application source
│ │ ├── res/ Android resources
│ │ └── assets/ Bundled assets
│ └── default/ Default build-variant configuration
├── build.gradle.kts
└── ...
.github/
└── workflows/ Automated build workflows
FadCam is under active development.
Current engineering work focuses on recording reliability, media composition, creator workflows, lifecycle safety, and automated APK builds.
Features and development builds may change between commits.
Contributions should prioritize:
- Small, reviewable changes
- Reproducible fixes
- Build-safe implementations
- Clear commit messages
- Regression prevention
- Privacy and security
- Reliable media handling
When repairing an existing feature, preserve unrelated functionality and avoid replacing working systems unnecessarily.
See the license files included in the repository for the applicable licensing terms.
FadCam — record, create, and control your media with privacy in mind.