Mobile application with powerful video processing capabilities.
| Technology | Purpose |
|---|---|
| Expo SDK 53 | App framework |
| React Native 0.76.7 | Mobile UI |
| TypeScript | Type-safe code |
| NativeWind/Tailwind | Styling |
| Zustand | Local state management |
| React Query | Server/async state |
| RevenueCat | Subscriptions |
| react-native-reanimated | Animations |
Node.js
Express.js
RESTful API
JavaScript
(CommonJS)
Key and Token
High-performance video encoding using FFmpeg interfaced through fluent-ffmpeg for seamless media manipulation.
Intel Quick Sync Video (QSV) hardware acceleration with h264_qsv codec for ultra-fast encoding performance.
Native resolution of 1800px × 1800px ensures crisp, professional-quality video output for all platforms.
Promise-based queue (p-queue) limiting server to two concurrent video jobs, preventing resource exhaustion.
Multer manages disk storage for uploaded assets with Sharp for advanced image manipulation and logo processing.
Custom logging utility with automatic rotation writes general and error logs to apiLogs directory when files reach size threshold.
Primary Node.js library providing a fluent API to build complex FFmpeg commands for encoding, filtering, and combining media streams.
Core command-line tool for video encoding, applying transitions (xfade), and mixing audio tracks with professional-grade output.
Analyzes media files to extract information including duration, codec details, and comprehensive metadata.
Promise-based queue utility managing concurrency of video processing jobs to optimize server resource utilization.
Handles file uploads and manages storage of incoming photos and audio files in job-specific directories before processing.
Copies and converts the credit image logo, applying it to the end of each video for the configured photo duration.
Built-in Node.js module executing standalone FFmpeg commands, including generateSilenceFile function using anullsrc filter for base audio tracks.