Universal File Ingest for Digital Video
In the media industry, conversations usually center on encoding, streaming, packaging and low latency. Put another way, it is all about delivering superior visual quality and high-fidelity audio with better compression. Amidst all the discussions on digital video workflows, file ingest is often ignored. For example, when is the last time anyone compared different file ingest tools? It is safe to say that file ingest is one of the most undervalued steps in video production workflows today.
What is file ingest?
File ingest is the process of reading content and detecting the codecs used inside a media file from hard disks or memory cards, and sometimes over IP networks. Ingest tools include commands for unpacking the audio and video payloads from file containers, decoding bitstreams and providing access to various types of metadata. Most importantly though, proper file ingest will equip video applications and workflows with seamless support for a vast variety of file types, video and audio codecs and container formats in the wild. File ingest is the first step in the video production process, and when the right tool is used, users can avoid reprocessing video manually and simplify the immensely complex task of reliably ingesting media from recording devices and cameras, container formats and codecs for a variety of use cases.
What applications require file ingest and what are the requirements?
Applications that require file ingest range from video editing, post-production, archiving, and Media Asset Management (MAM), to transcoding frameworks and video playback devices. File ingest tools thus require a complex and ever-growing list of features to support a wide range of video use cases. For example, a typical transcoder not only needs to decode video and audio, but also needs to accurately recognize source file metadata such as aspect ratio, framerate, resolution and channel data to preserve the most system-relevant parameters for compliant video encoding.
A video editing application also requires frame-accurate seeking (i.e., scrubbing) while keeping all audio synchronized. Moreover, if a given application also supports lossless reuse of compressed input data as an output file, also called smart rendering, the file ingest needs to mix and match the original bitstream with re-encoded data, while keeping frame references and group of pictures (or GOP structure) intact. Smart rendering can significantly reduce re-encoding time and eliminate unnecessary quality loss for sections of the timeline where the source video is not overlayed by a filter or transition.When it comes to file ingest, a MAM workflow must be compatible with all types of user and content metadata for reliable, on-demand asset management within its database, plus allow user-friendly content searching of media library files.
For video servers, file ingest can also present significant challenges. For example, video often comes from a variety of different sources, such as a file, SDI or network, and can be written to disk in real-time or for video-on-demand or archival storage. Also, many broadcast playout servers use parallel processing to read from the file as it’s still being written (i.e., read-while-write), while allowing access to parts of the data as the file is being updated. Lastly, synchronization and highly CPU-efficient decoding is required in a 24/7 broadcast production, which further complicates the file ingest process and increases failure risk.
What types of video output do devices provide?
There are literally thousands of device types that are used for producing and recording video with a virtually infinite number of combinations of output variants already in existence. Nowadays, file ingest tools need to seamlessly support these differences and provide a straightforward flow of data to the application, regardless of the type of input file.
Keeping up-to-date support for all these nuances requires constant maintenance and specialized skills. For example, to a user, two MP4 files might look the same, but to a capture device, depending on its configuration, this file may write vastly different outputs and require specific instructions to ingest the file properly.
Is there a tool for universal file ingest?
One of the best-kept secrets at MainConcept® is mfimport, our highly flexible file ingest tool that accompanies our codecs in each SDK and has been developed and maintained for nearly 30 years by the most experienced developers in professional video. mfimport is a small but mighty engine that serves as the backbone for many of our media customers and provides seamless media file reading and ingest for their editing, capture, archive, playback, and MAM products and platforms.
For decades, MainConcept has been a trusted partner to thousands of companies across all parts of the media production and broadcast industry, which affords us access to an unlimited number of real-world media files to work with. In turn, our mfimport, demultiplexers and decoders have been battle-tested for nearly every video use-case imaginable and are essential components in many production products (both MainConcept’s as well as other industry staples such as Adobe Premiere Pro).
How do you keep mfimport up to date?
With each new recording device that enters the market for capturing video with different metadata, video bitstreams, container formats, etc., our team of seasoned developers makes sure our mfimport is compatible, efficient and reliable. As mentioned above, a media file ingest module such as MainConcept’s mfimport isn’t static, so it’s constantly evolving. Our dedication to making file ingest seamless and serving the professional video industry has delivered field-hardened reliability to thousands of companies, organizations and development teams globally.
Where can I get MainConcept mfimport?
mfimport is included in many MainConcept SDK packages and used in our applications and plugins. If you want to learn more about our mfimport, demultiplexers or decoders, please contact one of our media workflow specialists, and we’ll be happy to assist.