Medialooks knowledge base

Guides, tips and code samples for our products.

H.264 and H.265 GPU-powered decoding

By default, all media files in our tools are decoded in software-only mode: your CPU will be used, which is not the best solution in some scenarios. MPlatform's Decoder Lib and the Expert edition of MFormats SDK offer two options for GPU-powered decoding: Nvidia's NVENC and Intel's Quick Sync. Learn more...

New indexing approach speeds up loading of MXF files

It previously took us up to several minutes to load certain MXF files – usually the ones with a missing index table. Basically, all this time is used to read the file and build the index table when the file is being opened. This problem is hardly noticeable on small MXF files, but turns into a big problem for our customers, when files reach several gigabytes. Learn more...

HTML5 Plugin: using properties to pass information to page

The HTML Plugin uses properties to share information with and to control the web page. Learn more...

HTML5 Plugin: handling events

Our HTML5 Plugin allows to control the web page that is being displayed on top of the video. This post explains how this can be done and what you can use it for. Learn more...

HTML5 Plugin: getting started

With our new HTML5 Plugin (beta) you can use HTML pages as the primary way to design your on-screen graphics as well as overlay web pages on top of the video. The plugin will be available as a separate product (price to be announced later) and will be available in MPlatform version 1.6.2.8736 and MFormats version 1.2.2.8726. Learn more...

Object properties: tips and tricks

If you've used Medialooks objects, you might have noticed that in addition to common configuration and initialization process, each Medialooks object has some special properties. This post talks about such properties and suggests some tips on how to use them. Learn more...

Transmitting long messages with WebRTC

The default limit of WebRTC message size is 24Kb. So everything above this limit was cut out and lost.  Learn more...

Performing the L-shaped items overlay using the MMixer object in MPlatform.

What is the L-shaped items overlaying?  Learn more...

Character Generator: pausing the image sequence on a certain frame.

Except using image sequences as overlay items and frame rate control, the CG object allows you to control the playback and pause the image sequence on a certain frame.  Learn more...

Performing the L-shaped items overlay using the CG in MPlatform and MFormats.

What is the L-shaped items overlay? Learn more...

WebRTC: TURN server deployment and usage

The TURN server is a part of WebRTC environment that transmits media traffic between peers if a direct peer-to-peer connection is not available (for example due to firewall restrictions).  Learn more...

WebRTC environment: signaling, STUN and TURN servers

The WebRTC technology allows browsers or applications transmit audio and video streams between each other directly, without a media server in between in most cases. Learn more...

Frame accurate capture and playback of custom user data

Sometimes it's important to have some custom data to be stored with your video stream frame accurately. For example, camera ID, scene tags, coordinates, service information etc. With MPlatform and MFormats SDKs you can add this data to frames of the video stream.  Once you will add custom data to frames  you can capture them to an *.ANC file that should be stored next to original video file. This file will contain all your custom data that can be extracted out of the frames during the playback.   Learn more...

Choosing the encoder for WebRTC streaming

Since MPlatform SDK version 1.6.1.8195 and MFormats SDK version 1.2.1.8194 you can choose one of predefined video and audio encoders for WebRTC streaming. Learn more...

Detecting and generating dual-tone multi-frequency (DTMF) signals or custom tones with MPlatform and MFormats SDK

Since MPlatform version 1.6.1.8276 and MFormats version 1.2.1.8403 you are able to detect and generate the DTMF or custom tones using MFSignalingDTMF class.  Learn more...

How to get started with WebRTC

There are several ways of using WebRTC with our products. This post is to help you get started by choosing the way that would work for you best. Learn more...

Deploying a signaling server and web pages for WebRTC

Initially WebRTC technology was designed for establishing direct connections between web browsers, like it is shown on the picture below. Learn more...

Sending and receiving custom ANC data packets with MPlatform and MFormats

Since MPlatform version 1.6.1.7552 and MFormats version 1.2.1.7552 you can build custom ANC data packets and embed them into frames manually. Once embedded, the ANC data can be transmitted over the SDI, and extracted out of the frames afterward. Learn more...

Better video mixing with MMixer's "sync mode"

A good way to make your mixed scenes to perform better is to use MMixer's sync mode (available with MPlatform SDK). In this mode MMixer prepares frames from the sources synchronously to make a nicer picture of the mixed video. Learn more...

Using video files as CG items

Overlaying compositions with nice video animation used to be a problem for our customers: none of our objects was able to deal with this task perfectly. We have solved this problem by adding a possibility to add video clips as overlay items to the CG. Learn more...

MPlatform SDK: using MLive and MRenderer with WebRTC

As you might know, our first implementation of WebRTC was done as an MWebRTC class that could be used as a plugin for transmitting WebRTC streams into the network and as a frames source to receive a remote WebRTC stream. Check our posts about remote preview and control for playout and transmitting WebRTC streams and messages between native applications for more information. Learn more...

Using NewTek's NDI with MPlatform and MFormats SDK

NDI (Network Device Interface) is an open standard developed by NewTek that allows transmitting video streams via LAN instead of SDI. The protocol aims to connect video applications in the production and post-production areas. Learn more...

MPlatform SDK: using advanced statistics for application monitoring

We have made it possible to monitor the enhanced statistics for MPlatform objects in your application. The main purpose of this feature is to let you monitor the application state in real time. And it something goes wrong, you will get a signal immediately. It will be really useful for the applications that run 24/7. Learn more...

Remote preview and control for a video recording application using WebRTC

This post shows how to implement a remotely controlled video recording application with MWriter and WebRTC technology. For the initial WebRTC description and signaling see the post on remote preview for playlists and getting started with WebRTC. Learn more...

Transmitting WebRTC streams and messages between native applications

This post explains how to transmit video and messages between native applications via WebRTC. For basics and signaling see the post on remote control for a playlist application. Learn more...

New screen capture engine

Our screen capture engine has been updated with new features and functionality. It is currently available with MPlatform SDK and  MFormats SDK Professional edition. The release of the new DirectShow filter are coming soon.
Learn more...

Remote preview and control for a playout application using WebRTC

This post explains how to remotely view and control your playlist with the WebRTC features in MPlatform SDK. Learn more...

Integrating a custom device into MFormats or MPlatform

To add support for your device you can use MFDeviceTest project located in  {MFormats SDK directory}\Samples\C++\MFDeviceTest (for instance, C:\Program Files (x86)\Medialooks\MFormats SDK\Samples\C++\MFDeviceTest).  Learn more...

Displaying DVB subtitles from TS file

You can display DVB subtitles from a TS file using Multiformat Source Filter, MPlatform or MFormats SDK.  Learn more...

MPlatform SDK: Writer sample

The Writer Sample is a demo for MWriter object. It illustrates how to capture a live source to the file or stream it to the network. Learn more...

Live Smooth Streaming via IIS

Live Smooth Streaming is an adaptive bitrate streaming extention for Microsoft Internet Information Server (IIS), that makes it possible to stream video via the HTTP protocol to players like Silverlight. This post shows how to use this streaming format with MPlatform SDK. Learn more...

H.264 encoding options

There are several options for H.264 encoding in MFormats SDK and MPlatform SDK - both CPU-based and GPU-powered. This post covers these options and helps to navigate for further, more technical information. Learn more...

MPlatform SDK: encoding and sending video to an RTMP streaming server

The Real Time Messaging Protocol (RTMP) is used for high-speed transmission of audio, video and data between a player and a server. MPlatform SDK supports RTMP streaming to several media servers. Learn more...

Play while recording (PWR) feature

This feature allows to preview or even play out a media file while it is still being written to by another process. Playback while recording is available in both MFormats SDK and MPlatform SDK. Learn more...

Deploying applications without DLL registration

With more and more customers using our SDKs, we've started to receive bug reports that happen when two or more apps from different vendors are trying to access the same Medialooks' DLLs on a single system. This post contains a step-by-step guide and video for resolving this issue. Learn more...

Types of license files and redistribution guidelines

This is an important post to read if you have licensed one of our development products: it explains the types of license files that we have and how they shall be applied. Learn more...
subscribe_to_newsletter login_or_register project_submit

Please, describe your project

Please, type in your name.
Please, type in the name of your company.
Please, type in your second name.
e-mail is incorrect
What is on the input?
What kind of processing or logic is needed?
What is on the output?
What hardware will be used?
Please post a brief description of your project to the best of your understanding:
Please, select at least one checkbox or write a project description.
alexander.bashlykov
Alexander
Software developer
Call Chat

dronissim0_o
Andrey
Software integration engineer
Call Chat