Building a Custom Video Application — A million-dollar idea !!

Shubhi Dubey
McKinley & Rice
Published in
4 min readApr 20, 2020

Video applications are at the forefront of the ever-evolving digital age where we have witnessed exponential growth in new social apps and content creators. With privacy becoming a major concern amongst digital users, there is a demand, however, for enhanced personal security and reliability while allowing users to monetize shared content.

Building such an app that has a heavy user growth can make social interactions more comfortable. It can develop a sense of community where people come together to share their knowledge and influence each other in ways that were unimaginable before.

In October 2010, a new social app was released by two engineers from San Francisco, California. Kevin Systrom and Mike Krieger released their experimental mobile photo app which featured creative filters and square photos. Two years later, in 2012, Facebook acquired them for $1 Billion. At the time, their user base was a staggering 100 million. As of June 2018, their user base surpassed 1000 million as it evolved into one of the internet’s most popular apps. Today, Instagram is everywhere, and it releases new updates faster than a hipster on a geared bike. Instagram with its algorithmic features galore has served as the perfect incubator by turning ideas into full-fledged businesses.

Video platforms as a marketing tool host a tremendous amount of online content on a wide range of subjects, making it one of the most popular social media channels of modern-day. One app that is all rage among teenagers is a ‘short-form video’ platform called TikTok.

TikTok, called Douyin, in China, is available in over 155 countries, 75 languages boasting of over 250 million users as of January 2020, 90 percent of whom access the app on a daily basis.

According to SensorTower, TikTok actually overtook most of the apps as the most downloaded social networking application globally in the first quarter of 2019, at 188 million, with India accounting for 47% of them. As of March 2019, the user base of TikTok in the US was approximately 14 Million. The 2019 Internet Trends Report revealed that China internet users spent more than 600 million hours per day watching short videos.

Before starting to build a custom video application, let’s have an overview of the minimum requirements:

  1. Video Player: to play posted videos.
  2. Video Trimmer
  3. Music Trimmer
  4. Video Filters: to beautify your app.
  5. Emoticons/Stickers
  6. There are tons of features that you can provide into the app but to start with, include the following 2 sections. These are the most basic sections that your app must have at any cost:

a) Video Feed Section — Where users can like, bookmark, comment and share anyone’s video/posts

b) Upload Section: To upload user’s posts (videos/photos) and their descriptions.

Let’s Get Building:

A few years ago, I was searching for the custom camera with some awesome filtration and trimming functionalities and I ended up learning all the aspects that every custom video application developer needs to know.
Here is a step by step guide to making a custom camera application:

>> Make a new project with minimum SDK version 21.

  1. Video Feed section: Let’s start setting up the video player. The Exo player is the most popular and awesome video player to play any kind of video. Don’t forget to customize your feed section accordingly where users can have more interactions such as comment, like, bookmark and share. Refer to: https://github.com/yusufcakmak/ExoPlayerSample
  2. Video Upload section: Here’s the link you can use to set up your camera with google camera2Api:https://android.jlelse.eu/the-least-you-can-do-with-camera2-api-2971c8c81b8b
  3. After setting this up, add the below plugin to customize your app with beautiful filters and amazing functionalities:
    implementation ‘com.writingminds:FFmpegAndroid:0.3.2’
    https://www.ostechnix.com/20-ffmpeg-commands-beginners/
  4. Through this FFMpeg library, you can make your app as beautiful as you want. There are commands to add some exciting features like filters, music, additional images, stickers, subtitle, trimming, slow motion, etc. which can elevate the user experience of your app
  5. I’ve seen several times that users want a specific video frame to highlight their videos. If you want the same functionality for your app, you can implement something like: https://github.com/wseemann/FFmpegMediaMetadataRetriever/issues/45
  6. One of the most vital features in a video app has to be video trimming. Use this to trim any video: https://github.com/titansgroup/k4l-video-trimmer
  7. Last, but not the least, every user wants to be able to use music merging. Use this link to check it out: https://github.com/reyanshmishra/Rey-RingtoneMaker.Through this a user can easily merge the desired music with his/her uploaded video. After merging, the user should save the final video outcome to the device’s internal memory which will be later used to show the customized video to upload it to the server.

I’m glad to be able to share my experience that I’ve gathered making video applications. After all, it’s all about entertainment. Users want to capture a funny or touching moment and immediately share it with their friends. Developing a video editing app for any mobile device can be an excruciating experience due to insufficient hardware capabilities and other factors. But, if you are confident that you can face this challenge, you might be among the new trend-setters in the world of mobile apps!

Thanks!

--

--