Video Transcoder

The client, a reputable name in the Video Surveillance industry wanted to incorporate transcoding into their existing Network Video Recorder (NVR) application. FFMPEG library was used to transcode the video. Vidhvathamah developed a Windows service that transcodes the RTSP feed received from the IP cameras connected to the NVR. The service which was written in C# allowed the user to select the resolution they wish to view the feed in. The RTSP library was written in C++.

4K Video Recording Engine

A video recording engine was developed for the Windows platform that supports UHD(4K) recording. The engine allows recording videos in multiple compression formats which allows users to save videos in their preferred formats. It supports hardware-based encoding which means less processing time when dealing with large 4K video files. The engine supports recording in SD, HD, Full HD and UHD resolution to meet the demand of any customer. The application was developed using Java, JavaFX and JNI. JNI was used as a wrapper to send and receive data between JVM and C++. This was done to segregate the graphical and programmatical sides of the software.

Video Sharing App

The client wanted to develop a video-sharing platform for Android where users could upload and share videos based on their location. The app was built natively for Android using Java and used ExoPlayer to stream videos. The applications backend was written in PHP using the CodeIgniter framework.

RDP Proxy Server using libFreeRDP

The client wanted to implement a proxy server for RDP sessions with a custom authentication flow that ensures users only have access to systems they're granted access to. The server which was built for the Linux environment also has additional features such as session recording. The challenge here was understanding the RDP protocol which transfers screen data as bitmaps and finding an optimum solution to convert these as video frames. The project was implemented using C.

Custom Screen Sharing Software With Session Recording

The client wanted to upgrade their existing screen sharing software which only worked within a local network to work over the internet. The challenge here was that the software captured JPEG images of the screen and transferring multiple images of several kilobytes over the internet would require huge bandwidth. So we had to redesign the architecture from the ground up and build a whole system which catered to the client's requirements. The system consisted of a Proxy server written in C++, a windows application written in C# and a web application developed using .NET Core and Angular 10 framework.

OTT Video Streaming

The client wanted to develop a high availability video streaming platform that caters to certain niche areas of the movie industry. The platform was built from ground up using Python, Django, Nuxt Js and AwS MediaConvert. The video streaming features include bandwidth based dynamic streaming, real-time transcoding and watermarking.