Skip to content

Custom camera app with real-time text overlays and video editing capabilities. Built with Flutter, featuring orientation-aware preview, tap-to-focus, and FFmpeg integration for burning text into videos.

Notifications You must be signed in to change notification settings

NadeemIqbal/FlutterCustomCameraEditor

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

2 Commits
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

Custom Camera Text Editing App

A Flutter application with custom camera functionality and advanced text editing features for captured media.

Features

Camera Screen

  • Custom UI Layout: Clean, modern interface matching the provided design
  • Cross Button: Close camera with confirmation dialog
  • Flash Control: Toggle flashlight on/off (top right)
  • Gallery Access: Quick access to photo library (bottom left)
  • Capture Button:
    • Tap to take photos
    • Long press to start video recording
    • Continuous recording with timer display
  • Camera Switch: Toggle between front and rear cameras (bottom right)
  • Video Recording Timer: Real-time duration display during recording

Preview Screen

  • Media Preview: View captured photos and videos
  • Back Navigation: Return to camera with confirmation dialog
  • Text Editing (Aa button):
    • Add custom text overlays
    • Change text color from color palette
    • Customize background color/transparency
    • Pinch to resize text
    • Rotate text with gestures
    • Drag to reposition anywhere on screen
    • Double-tap to edit existing text
    • Delete text overlays
  • Video Controls (video only):
    • Mute/unmute audio
    • Auto-play with looping
  • Options Selector: Bottom sheet with selectable options
  • Save Functionality: Save media to device gallery

Text Editing Features

  • Full Color Palette: Choose from extensive color options
  • Background Customization: Transparent, solid colors, or semi-transparent
  • Interactive Gestures:
    • Drag to move
    • Pinch to scale
    • Rotate with touch
    • Double-tap to edit
  • Visual Feedback: Border highlights during manipulation
  • Text Shadows: Automatic shadows for transparent backgrounds

Technical Implementation

Dependencies

  • camera: Camera functionality and controls
  • video_player: Video playback in preview
  • permission_handler: Camera and storage permissions
  • photo_manager: Gallery access and media management
  • image_gallery_saver: Save media to device gallery
  • path_provider: File system access

Permissions

Android

  • Camera access
  • Microphone for video recording
  • Storage read/write permissions
  • Media permissions for Android 13+

iOS

  • Camera usage
  • Microphone access
  • Photo library access and additions

Usage

  1. Launch App: Tap "Open Camera" from home screen
  2. Take Photos: Tap the center capture button
  3. Record Videos: Long press and hold the capture button
  4. Add Text: In preview, tap "Aa" button to add text overlays
  5. Customize Text: Use color pickers and drag gestures to style
  6. Save Media: Tap "Save" to store in device gallery

Architecture

The app follows a clean architecture with:

  • Screens: Main UI components (Camera, Preview, Home)
  • Widgets: Reusable components (TextOverlay, BottomSheet)
  • Data Models: TextOverlayData for text properties
  • State Management: StatefulWidget with proper lifecycle handling

Platform Support

  • Android: API level 21+ (Android 5.0+)
  • iOS: iOS 11.0+
  • Permissions: Automatically requested at runtime

About

Custom camera app with real-time text overlays and video editing capabilities. Built with Flutter, featuring orientation-aware preview, tap-to-focus, and FFmpeg integration for burning text into videos.

Resources

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published

Languages