inStudio is a web application. The user interface module has been developed in the Rails technology using Ruby language. The back-end modules, responsible eg. for video processing tasks, are based on Erlang/OTP platform.
Rails is a popular web application framework for the Ruby programming language which allows easy and rapid modification of the user interface code. Adjusting and updates of live systems may be therefore carried out without any down-time. Simple integration of the Rails framework with popular and appreciated HTTP servers as Apache, allows easy implementation of front-end applications on multiple distributed servers to ensure their high availability and efficiency.
Erlang is a concurrent programming language, originally designed by Ericsson to support distributed, fault-tolerant, real-time, non-stop applications. A failure of any of Erlang software components does not crash an entire system. A component that failed is automatically restarted to bring the system to its complete functionality in short time. inStudio uses Erlang together with it’s OTP framework, a set of libraries and tools intended to be used in complex concurrent software environments. Erlang/OTP is a great choice for inStudio archive, where many jobs and operations may be performed simultaneously.
The separation of the front-end and back-end modules to Rails and Erlang/OTP helps to increase the security of the system as well as its efficiency and flexibility in further development.
inStudio uses the PostgreSQL database, probably the best available open source relational database management system. PostgreSQL uses advanced mechanisms of maintainig data structure consistency and providing efficient data access even under very high load. inStudio uses PostgreSQL also to support a fast full text search in many languages, aware of grammar variations and spelling mistakes.
For video processing inStudio makes use of FFmpeg, one of the best solutions for transcoding of audio and video content. Flexibility of FFmpeg and its libavcodec library lets inStudio work with a very wide range of audio/video formats, such as DV, MXF, AVCHD, HDV, DNxHD, DPX, H.262/MPEG-2 Part 2, MPEG-4 Part 2, H.264/MPEG-4 AVC, Apple ProRes, AVI, WMV, FLV, WebM/VP8, Vorbis and many more. More demanding clients may use our experience with commercial transcoding systems such as Vantage Transcode or ProMedia Carbon (formerly Carbon Coder).