SnapReels | Short Drama Streaming SaaS Script with Android App

Bluehost Shared Hosting
SnapReels | Short Drama Streaming SaaS Script with Android App SnapReels | Short Drama Streaming SaaS Script with Android App

What You’ll Get with Your Purchase

  • Complete Web Platform Source Code – Includes the website landing page, user dashboard, admin control panel, and API backend (all included in this purchase).
  • Android Mobile App Source Code – Native Kotlin/Jetpack Compose Android application source code ready for customization and publishing.
  • Complete Documentation – Step-by-step installation, configuration, deployment, and build instructions.
  • Future Version Updates – Access to future updates and improvements released for this item on CodeCanyon.
  • Item Support – Assistance with installation-related questions according to Envato’s standard support terms.

SnapReels is a modern Android application for short drama streaming platforms. The app includes premium episodes, rewards system, coin wallet, AdMob monetization, Google Play Billing support, and seamless integration with the SnapReels backend platform.

Built for creators, startups, and businesses looking to launch their own mobile streaming application with a modern user experience and monetization features.

Live Demo

Explore the live demo of the Android App, Website, and Admin Panel below:

Android App Demo APK: Download Demo APK
Website Demo: View Live Website
Admin Panel Demo: Access Admin Panel


User App Login

Email: user@demo.com
Password: demo123

Admin Login

Username: admin
Password: admin123

Security Notice: The credentials “admin/admin123” are for demo purposes only. You must configure secure, unique passwords in your production database.

Key Features

  • Short Drama Streaming System: High-performance, vertical-scrolling video feed optimized for short-form movies and series.
  • Premium Episode Unlocking: Lock specific episodes and allow users to unlock them using virtual coins.
  • Coin Wallet & Balance System: Built-in wallet where users can track their coin balance, purchase transactions, and claims.
  • Google Play Billing Integration: In-app purchases for coin packs directly through the Android application.
  • Multiple Payment Gateways: Integrated checkout systems for PayPal, Stripe, and Razorpay to buy coin packs on the web.
  • Rewards & Daily Check-in: Daily reward system that encourages users to check-in regularly and earn free coins.
  • Custom Reward Tasks: Configure tasks (e.g., watch a rewarded ad, invite friends) for users to earn coins.
  • Continue Watching / History: Save watch history automatically, allowing users to resume dramas exactly where they left off.
  • My List / Bookmarks: Users can bookmark their favorite series to a personal list for quick access.
  • Live Search Functionality: Fast search indexing across dramas, tags, categories, and creators.
  • Modern Android UI/UX: Sleek mobile layout built with Jetpack Compose, featuring native fluid transitions and dark mode.
  • Secure User Authentication: Supports Email/Password login, Firebase Auth, and guest logins.

Dynamic Admin Control Panel

  • Full Catalog Management: Easily add, edit, or delete series, seasons, and episodes with rich metadata.
  • Multi-Storage Management: Configure cloud storage keys and instantly switch active storage providers from the UI.
  • Monetization Controls: Set price-per-episode, configure custom coin packages, and toggle user reward values.
  • Mediation & Ad Controls: Toggle, configure, and rotate ad banners, interstitials, and rewarded ads.
  • Translation & Localization Editor: Edit translation keys directly from the dashboard to support any custom language.
  • User Management: View user accounts, check coin balances, and review financial transaction histories.
  • Report & Inbox Manager: Manage reported content, bug reports, and user feedback through a centralized admin inbox.
  • Custom Pages: Dynamically publish privacy policies, terms of service, and custom landing pages.

Multi-Cloud Storage Support

  • Local Server Storage: Save media assets directly on your hosting server.
  • Bunny.net Storage & CDN: Ultra-fast media uploads and global low-latency CDN delivery.
  • DigitalOcean Spaces: Seamless S3-compatible file storage integration.
  • Amazon S3: Enterprise-grade media storage for large-scale deployments.
  • Google Cloud Storage (GCS): Highly scalable cloud buckets with S3 HMAC support.
  • Backblaze B2: Cost-effective cloud storage option with secure API keys.

Ads Integration & Mediation

  • AdMob Integration: Show native banner, interstitial, and rewarded video ads.
  • Facebook Audience Network (Meta Ads): High-yield banner and rewarded ads.
  • AppLovin MAX Support: Access leading mobile ad networks through mediation.
  • Multi-Ads Rotation: Dynamic client-side rotation system to maximize ad impressions and fill-rates.

Security & Performance

  • WebP Image Conversion: Automatically compresses poster and thumbnail uploads to WebP for faster page load times.
  • Direct File Protection: Restricts direct HTTP access to uploaded video folders on the server to prevent media theft.
  • SEO & Metadata Configurator: Configure page titles, meta descriptions, and keywords directly from the admin panel.
  • Fully Responsive Web: Responsive desktop and mobile browser UI featuring glassmorphic overlays and smooth loading skeletons.

Requirements

  • Android Studio & Android SDK (for building the app)
  • Node.js VPS or Hosting (for hosting the SnapReels Backend Platform – Backend code is included in this purchase)
  • MongoDB Database (required for backend storage)
  • Google AdMob Account (required if ads monetization is enabled)
  • Google Play Developer Account (required to publish the app)

Installation Overview

  1. Open the project in Android Studio.
  2. Configure the API URL and API Key in the app configuration.
  3. Deploy the included SnapReels backend on your server.
  4. Configure your AdMob IDs and Google Play Billing product identifiers.
  5. Build the release APK or App Bundle and upload to the Google Play Console.

Included Files

  • Complete Backend Source Code (Next.js SaaS Web Panel & API)
  • Complete Mobile Source Code (Kotlin Native Android App)
  • Detailed Setup & Deployment Documentation
  • Release Changelog and History file


⚠️ Important Cost, Infrastructure, and Service Disclosures

  • External VPS / Hosting Costs: Deploying the backend platform requires cloud VPS or web hosting. These are external services that the buyer must set up and purchase separately.
  • Database Requirements: A MongoDB database is required. If using external managed databases (e.g., MongoDB Atlas), usage charges may apply.
  • Google Play Developer Fees & Commissions: Google Play requires a standard developer registration fee. Google also retains service commissions (typically 15% to 30%) on all in-app purchases processed via Google Play Billing.
  • Payment Gateways (Stripe, PayPal, Razorpay): Using integrated online checkouts requires active merchant accounts with Stripe, PayPal, or Razorpay. These platforms require separate accounts and charge transaction fees per checkout.
  • Third-Party Cloud Storage (AWS, Google Cloud, Bunny.net, Backblaze, DigitalOcean): Storing large video files in the cloud requires active accounts with storage providers. Ongoing data storage and bandwidth egress fees are charged by these service providers separately.
  • Firebase Integration: Using Firebase Authentication and Firestore may incur external usage costs at scale, governed by Google’s service limits.
  • Proprietary Licensing & Verification Disclosure: This product includes a proprietary verification system (“DevSnaplix Central API Licensing”) for domain lock validation and automated periodic licensing checks. Verification occurs online. This service requires no subscription fees or ongoing costs to buyers. Local test environments (e.g., localhost) are pre-whitelisted and require no internet licensing check. In the unlikely event this license service is discontinued, a free product update will be released immediately to remove the validation check. The license verification is entirely non-blocking, meaning it operates silently in the background and does not interrupt, delay, or degrade the end-user experience.

Changelog

Version 1.1.7 (Current Update) – 26-08-2026
 *   [Feature] Added new App Store and Google Play Store download badges to the website footer. *   [Feature] Automated IndexNow SEO ping to Bing/Yandex whenever a drama series is published or edited. *   [Feature] Added a Search Bar to the Users Admin Panel to quickly find accounts by Name, Email, or ID. *   [Security] Implemented IP Rate Limiting to prevent automated bot spam on the user registration endpoints. *   [Fix] Fixed an issue with Custom Pages (like Privacy Policy) not showing in the website footer. *   [Fix] Fixed a bug preventing the Sendmail configuration from saving properly in Security Settings. *   [Mobile App Update] Upgraded Google Play Billing Library to version 9.1.0 to comply with Google Play's mandatory policies (August 2026 requirement) and support the latest monetization features. *   [Feature] Added a completely new, polished First-Time Onboarding Experience (Welcome Slides, Feature Highlights, Language Selection) for new Android app users. *   [Fix] Fixed layout glitches when switching to the Arabic language (Right-to-Left Layout is now correctly enforced instantly without app restart). *   [Fix] Added missing Arabic translations for all the new onboarding interface elements. *   [Fix] Resolved a critical backend issue that crashed the Password Reset functionality due to improper parsing of the Firebase Admin Service Account JSON. 
Version 1.1.6 – 12-08-2026
 *   [Feature] Added IndexNow API integration to the Admin Panel (Settings > Plugins) for instant search engine indexing. *   [Feature] The IndexNow API Key is served dynamically via middleware, requiring no manual server restarts (PM2) after generation. *   [Fix] Added automatic cleanup for the old IndexNow `.txt` file in the `/public` directory when generating a new key. *   [Fix] Resolved an issue with Groq Cloud AI integration in the admin panel. *   [Fix] Fixed user management bugs in the Admin Panel to ensure proper data handling. *   [Fix] Resolved an authentication issue that was creating malformed accounts (e.g., `dev_uid@snapreels.gadohost.com`). *   [Doc] Added Architecture Overview and End-User Experience sections to the main documentation index. *   [Doc] Reorganized the Admin Guide into detailed walkthroughs for Content, Monetization, and User Management. *   [Doc] Added comprehensive instructions for setting up Firebase Cloud Messaging (FCM) Push Notifications for Android. *   [Doc] Fixed step numbering and removed duplicate configuration steps in the Android App Setup guide. *   [Doc] Added specific troubleshooting steps for "Video Player Retrying Connection / Spinning Forever" issues. *   [Doc] Added a critical "Pre-Upgrade Backup" step to the Upgrade & Migration Guide. *   [Security] Removed sensitive plain-text admin credentials from the demo environment and public documentation. 
Version 1.1.5 – 06-08-2026
  *   [Feature] Added full support for HLS (`.m3u8`) video streaming, allowing direct loading from external servers without heavy proxy buffering. *   [Feature] Upgraded the Admin Panel upload validation to detect and support `.m3u8` and `.ts` chunk files with correct `application/x-mpegURL` MIME types. *   [Mobile App Update] Replaced the legacy `VideoView` with Google's modern `ExoPlayer` in the Android App's Shorts feed, resolving buffering delays and adding `VideoCacheManager` background caching support. *   [Mobile App Update] Fixed an issue where Embed Videos would restart from the beginning when the device orientation (rotation) was changed by enabling configuration state persistence in `AndroidManifest.xml`. *   [Fix] Fixed an issue with Phone Authentication where the generated user email and display name would default to the long 28-character Firebase UID. It now intelligently generates a clean 8-digit random ID (e.g., `45849065@snapreels.com`). 
Version 1.1.4 – 31-07-2026
  *   [Feature] Added Phone Number Authentication (OTP Login) support across both the Web Application and the Android App. *   [Feature] Added "Forgot Password" and secure password reset workflows for Admin users. *   [Feature] Added "Forgot Password" and secure password reset workflows for regular App users. *   [Feature] Introduced Rate Limiting controls in `/admin/settings/security` including "Max Failed Logins per IP / Day" (Number of incorrect attempts before blocking the IP address for 24 hours) and "Max Password Resets / Day" to prevent brute-force and spam attacks. *   [Mobile App Update] Fixed an issue where Embed Videos were not playing correctly in the Android App by improving the native WebView player fallback. *   [UI/UX] Renamed "Mail Configuration" to "Security" in the Admin Panel and updated its URL slug/link references for better clarity and alignment with Firebase Service Account inputs. *   [Feature] Added dynamic default login credentials to the Admin Panel (`/admin/login`) that automatically populate only when `NEXT_PUBLIC_DEMO_MODE` is enabled. *   [Fix] Fixed an issue where the Admin Panel sidebar was incorrectly rendering on authentication pages (Forgot Password, Reset Password) by updating the `AdminLayoutShell` routing exclusions. *   [Fix] Resolved an `ESOCKET` TLS connection error preventing system emails from being sent (e.g. Password Resets) on shared hosts like cPanel by configuring the SMTP Mailer to allow self-signed certificates. *   [Fix] Fixed an issue where the "Login with Phone" button was missing from the Android App by adding `phoneLoginEnabled` to the mobile API settings synchronization endpoint. *   [Fix] Resolved the "Invalid Firebase Service Account JSON" error encountered when sending OTPs or Password Reset links by implementing a defensive regex parser that automatically fixes unescaped newlines (`\n`) introduced during copy-pasting into the Admin Panel. *   [Fix] Fixed a bug where the Firebase Service Account JSON field would sometimes fail to save in the Admin Panel Settings by ensuring it is properly tracked in the React Hook Form default values and backend allowlist. *   [Fix] Fixed a UI glitch in the Web App Authentication Modal where the phone number would get stuck in the OTP input field by resolving React DOM reconciliation key collisions. 
Version 1.1.3 – 27-07-2026
  *   [Doc] Reorganized the FAQ & Troubleshooting page into categorized sections (GadoHost, VPS, Android App, Admin Panel) for easier navigation. *   [Doc] Added a dedicated Upgrade & Migration Guide (upgrade.html) detailing step-by-step instructions for updating on GadoHost and traditional VPS environments. *   [Doc] Expanded Android App setup documentation with detailed feature overviews, architecture notes, and Play Store release guides. *   [Fix] Added a troubleshooting guide for resolving the 500 Internal Error immediately after completing the installation wizard on GadoHost environments. *   [Fix] Upgraded Android video player to Google ExoPlayer (Media3) with DefaultMediaSourceFactory, resolving progressive streaming and playback compatibility issues. *   [Fix] Fixed video seeking interruptions and playback restarting from the beginning by implementing non-blocking slider state updates (onValueChangeFinished) in the Android App. *   [Fix] Fixed an issue in the Android App where long HD videos (14+ minutes) would reset their duration to 0 during buffering or stream transitions. *   [Fix] Fixed duplicate Range HTTP headers in the backend video proxy (api/video/route.ts) when streaming remote cloud videos. *   [Fix] Increased the local video streaming chunk size cap from 10MB to 500MB per request, supporting uninterrupted streaming and seeking for long High-Definition video reels. *   [Feature] Added background pre-buffering (pre-caching) for the next video reel in the Android App feed using Disk Cache Engine (VideoCacheManager) for instant, seamless swiping. *   [Security] Restricted license key validation checks to only apply to the `/admin` route, ensuring the public frontend website and video streams remain 100% accessible and operational without requiring license activation on root. *   [UI/UX] Modernized the Android App video player controls UI with a sleek custom layout featuring smooth progress bars, speed selectors, rewind/fast-forward buttons, and episode navigation. *   [UI/UX] Polished the Web Application Series Detail page with modern dark-mode aesthetics, responsive layouts, and smooth animations. *   [Feature] Created a custom, high-converting 404 Not Found error page with a sleek "Back to Home" button and neon aesthetic for both root and localized routes. *   [Fix] Fixed a database indexing error when fetching user comments in the Web Application by updating index constraints in the user action library. *   [Fix] Resolved 500 Internal Server Error occurrences on development and production web servers caused by Next.js/Turbopack build cache conflicts. *   [Fix] Eliminated slow video loading and the blocking "RETRYING CONNECTION..." spinner overlay on the Web Application by pre-calculating secure video URLs on the server before rendering and preventing ReactPlayer DOM unmounting when switching episodes. *   [Fix] Fixed an issue in the Web Application where video duration would show as 0:00 (e.g. 0:03 / 0:00) when playing or switching between episodes by implementing dynamic duration synchronization during playback progress and ready lifecycle events. *   [Fix] Resolved a runtime crash (ReferenceError: setIsRetrying is not defined) in the Web Application video player when clearing retry indicators during playback initialization. *   [Feature] Expanded Store Currencies in `/admin/coin-packs` to support all major global currencies (including Indian Rupee INR/₹, Nigerian Naira NGN, Kenyan Shilling KES, and more). *   [Feature] Added full integration for the Flutterwave Payment Gateway across both Web Application and Android Mobile App, supporting African and global payment methods with dynamic logo customization in `/admin/settings/payment-gateway`. *   [UI/UX] Redesigned the Web Application payment checkout dialog (`payment-dialog.tsx`) with compact, proportionate logo cards (`object-contain`) and streamlined height layouts, eliminating oversized logos and text distortion. *   [Fix] Added translation dictionary fallback text for Flutterwave checkout redirection to prevent raw underscore keys (`PAYMENT_DIALOG_FLUTTERWAVE_REDIRECT`) from displaying during payment processing. *   [UI/UX] Simplified Google Play In-App Billing settings in the Admin Panel by replacing unnecessary service account private key inputs with a clean informative card detailing direct Product ID recognition. *   [Update] Updated Groq Cloud AI integration from deprecated Llama 3.3 70B Versatile to the newer supported Llama 3.1 70B / Qwen 2.5 models across backend AI generation routes and Admin UI. *   [Feature] Streamlined Flutterwave Payment Gateway authentication in `/admin/settings/payment-gateway` and backend actions, allowing merchants to configure just their `Flutterwave Secret Key / API ID (FLWSECK)` without requiring a redundant Public Key. *   [UI/UX] Completely redesigned the Web Application checkout dialog (`payment-dialog.tsx`) into a sleek, vertical selectable list of payment cards ("Wahda taht whda"), replacing cramped horizontal tabs. *   [UI/UX] Refined checkout typography and visual layout by removing redundant description text, eliminating oversized logo containers, and formatting all payment gateway names in clean Title Case (`Stripe`, `PayPal`, `Razorpay`, `Flutterwave`). *   [UI/UX] Updated the primary checkout action button in the Web Application from all-caps `SECURE PAY & REDIRECT` to a clean, user-friendly `Continue Payment`. *   [Fix] Added `flutterwaveEnabled`, `currency`, and `currencySymbol` to the backend mobile API endpoint (`/api/mobile/v1/settings`), enabling proper synchronization between the Admin Panel and the Android App. *   [Fix] Fixed an issue in the Android App where Flutterwave was not displayed in the payment checkout list by updating the repository setting parser to read `flutterwaveEnabled`. *   [Fix] Fixed an issue in the Android App where coin pack prices and VIP subscriptions were hardcoded to US Dollars (`$`) by dynamically linking all price tags and checkout texts to the admin-defined store currency symbol (`currencySymbol`). 
Version 1.1.2 – 07-07-2026
  * [Fix] Fixed redirection loop (`ERR_TOO_MANY_REDIRECTS`) on the `/install` page in production builds by forcing dynamic rendering at runtime. * [Fix] Fixed `500 Internal Server Error` on the `/admin/login` page after finishing the installation wizard by implementing lazy MongoDB connection caching, eliminating the need for a manual server restart. * [Fix] Fixed `Application error: a client-side exception has occurred` React crash when navigating the dashboard while Google Translate extension is active. * [Fix] Added a comprehensive list of languages to the admin panel and fixed an issue causing AI Translate to fail for language names containing international characters or parentheses. * [Fix] Fixed an issue where changing the language wouldn't append the corresponding slug to the URL (e.g., `/pt-BR`) by separating the user's cookie preference from the site's global default locale in the routing middleware. * [Fix] Fixed an issue where Google Analytics (GA4) was not tracking visitors or page views by rewriting the analytics tracking script injection to ensure the correct `arguments` object is properly passed to the Google Tag Manager `dataLayer`. * [Feature] Improved Admin User Management by sorting the user list to show the most recently registered users first. * [Feature] Added a detailed "User History" analytics modal in the Admin Panel that allows admins to view and track all coin transactions, rewards, and payments for any user with pagination support. * [Feature] Added a "Welcome Bonus" setting in the Admin Panel (Settings > Authentication) to customize the number of free coins given to new users upon registration. * [UI/UX] Modernized the Admin Dashboard typography by replacing ALL CAPS text with cleaner Title Case, replacing the date range calendar picker with a streamlined preset dropdown, and significantly improving mobile responsiveness across tables and widgets. * [Fix] Fixed an issue where the SEO Settings and Authentication Settings (Welcome Bonus) were not saving in the Admin Panel by adding their respective keys to the backend's secure settings allowlist. * [UI/UX] Fixed the UI layout for the Featured and Premium toggle switches in the Series Add/Edit form, resolving layout cramping and truncated labels on smaller screens. * [Feature] Added an optional "Featured Image" upload field (16:9 aspect ratio, scaled to 1920px) for Drama Series, providing a dedicated banner for sliders that automatically falls back to the standard Poster image if left empty. * [Mobile App Update] Updated the Kotlin Android App to dynamically load the Google Sign-in Web Client ID from `google-services.json` rather than using a hardcoded string, making authentication setup plug-and-play for buyers. * [UI/UX] Redesigned the main Website Hero Slider to be an edge-to-edge cinematic banner with an optimized viewport height (vh), allowing content below it to peek into view. Moved pagination dots inside the slider to save vertical space. * [UI/UX] Updated the Android App Featured Slider to support the new cinematic 16:9 aspect ratio, mirroring the premium look and feel of the website's hero section. * [Fix] Added a bypass for Dailymotion video URLs to render as native HTML5 iframes automatically, resolving playback issues and the "Video Unavailable" error caused by ReactPlayer SDK timeouts. * [Mobile App Update] Fixed the Android App failing to load "Embed Code" video sources by implementing an embedded WebView fallback specifically for iframe HTML strings. * [Fix] Fixed the Admin Panel "Edit Episode" modal incorrectly reverting the Source Type from "Embed Code" to "Direct Link" for embed codes wrapped in tags. * [Fix] Fixed the Website Video Player returning a "Retrying Connection..." error for iframe and div embed codes by updating the global embed detection logic. * [Fix] Fixed an issue where embedded video iframes would randomly reload or restart from the beginning when the user moved their mouse or triggered UI state changes. * [Fix] Fixed slow video loading times and seek (skip) interruptions for large uploaded MP4 videos by rewriting the local video streaming API route to properly support HTTP 206 Partial Content (Range Requests) via Web ReadableStreams. * [Fix] Fixed embedded videos (e.g., Dailymotion) appearing horizontally with a 16:9 aspect ratio inside the vertical player by forcing Tailwind overrides on inline padding CSS styles. * [Fix] Fixed an issue where the Website only displayed the first Featured Drama in the slider if the interface language was changed to Arabic. * [UI/UX] Added the Drama Title and a localized "Watch Now" overlay button to the Android App Featured Slider, mirroring the premium look and feel of the website. * [UI/UX] Removed the blurred background edge-color from the Android App Featured Slider and Banner Ads to achieve a cleaner, edge-to-edge transparent appearance. 
Version 1.1.1 – 26-06-2026
  * Added full integration for bunny.net storage and CDN video streaming. * Added Gemini AI support as a third AI provider for smart content automation. * Redesigned the Website Homepage UI for better engagement and modern layouts. * Major UI/UX redesign for the Android Mobile Application. * Added configuration controls for Facebook Audience Network and AppLovin MAX ads. * Added Multi-Ads Rotation Manager with ratios and priority settings. * Optimized settings database collections for third-party plugins. * Added AES-256-CBC token encryption for local and cloud video streams. * Secured video routes using encrypted tokens instead of raw paths. * Implemented middleware and API guards to block direct video access (403 Forbidden). * Added automatic deletion of files when a Drama Series or Episode is removed. * Added automatic cleanup for old images and videos during updates. * Refactored Likes, Favorites and Share buttons to match Android UI. * Integrated native Web Share API support. * Added dynamic region extraction for cloud storage providers. * Added client-side validation messages in the admin Series form. * Enabled wildcard image domains support in next.config.ts. * Updated documentation. * Added a dedicated Mobile App settings section. * Added Android App configuration panel. * Added API Base URL management. * Added API Access Key generation and management. * Added mobile app version control and force update system. * Added custom update URL configuration. * Added Privacy Policy, Terms of Service and Rate Us links management. * Added Google Play Billing support. * Added enable/disable option for Google Play payments. * Redesigned payment gateway settings. * Added a dedicated Android Rewards System. * Added separate Android Ad Rewards management. * Added Android Daily Check-in reward configuration. * Added Android reward task management panel. * Added AI-powered metadata generator. * Added automatic title, description and SEO metadata generation. * Added automatic tags, categories and URL slug generation. * Added OpenAI support as a second AI provider. * Improved Groq Cloud integration and AI configuration panel. * Added PayPal, Stripe and Razorpay payment logos. * Improved performance, stability and mobile responsiveness. 
Version 1.0.0 – 19-06-2026
  * Initial release of SnapReels. 

5 average based on 16 ratings.

DevSnaplix

DevSnaplix

Visit Author's Portfolio

View Portfolio
Last Update 2026-08-26
Created 2026-06-19
Sales 78
Discussion Comments
Software Version Kotlin 1.x Android 15.0 Android 12.0 Android 11.0 Android 10.0 Android 9.0 Other
Files Included .apk .java .xml JavaScript JS CSS HTML
Video Preview Resolution