background image

29

About the Matrox M264 hardware decoder

keMvCodecOptionCompletionCallback_pI

 parameter and the 

keMvCodecOptionAsynchErrorCallback_pI

 parameter. 

Using the Matrox M264 hardware encoder in 
topology-based workflows

The Matrox M264 hardware encoder can be used to encode in topology-based 
workflows, such as for real time processing. In this case, you must use the 

IMvEncoderStream

 interface to control the Matrox M264 card. The GUID to use 

for the Matrox M264 hardware encoder is 

CLSID_ENCODER_M264

. The Matrox 

M264 hardware encoder is instantiated with the 

IMvEncoderStream

 interface. For 

information on how to use the 

IMvEncoderStream

 interface for controlling the 

Matrox M264 hardware encoder, see “Encoder Streams” in the 

Matrox DSX Topology 

API User Guide

.

About the Matrox M264 hardware decoder

The Matrox M264 hardware decoder is an H.264/AVC hardware decoder. It can be 
used to decompress generic H.264 or Sony XAVC compressed data.

¦

Note

Decoding VBI (Vertical Blanking Interval) or VANC (Vertical Ancillary Data 

Space) data packets and time code information is not supported yet.

Using the Matrox M264 hardware decoder with 
buffers

The Matrox M264 hardware decoder can be used to decode buffers at any speed, such 
as for faster than real time processing. To do so, you must use the 

IMvDecoderVideo

 interface to control and instantiate the Matrox M264 decoder. 

The codec GUID to use for the Matrox M264 hardware decoder is 

CLSID_MvM264Decoder

General characteristic

The Matrox M264 hardware decoder when used to decode buffers with the 

IMvDecoderVideo

 interface has the following general characteristic:

• The decompression operations 

PutCompressedSurface()

GetUncompressedVideoAndVANCSurface()

, and 

Flush()

 are 

asynchronous calls, whereas 

Open()

Close()

SetOption()

, and 

GetOption()

 are synchronous calls.

Sample application

The 

mvsVideoDecoderTester

 sample application demonstrates how to instantiate and 

use the 

IMvDecoderVideo

 interface for decoding compressed H.264 video streams 

into YUV frames using a Matrox M264 card. For more information on this sample 
application, see the 

DSXTopologyAPISampleApplications.txt

 or 

DSX.sdkSampleApplications.txt

 file.

Summary of Contents for M264

Page 1: ...Y11360 101 0970 Matrox M264 Installation and User Guide June 30 2016 ...

Page 2: ...ming video tape or other copyrighted material may violate copyright laws Matrox Electronic Systems Ltd assumes no responsibility for the illegal duplication use or other acts that infringe on the rights of copyright owners Matrox Electronic Systems Ltd 1055 St Regis Blvd Dorval Quebec Canada H9P 2T4 Tel 514 685 2630 Fax 514 685 2853 World Wide Web www matrox com Trademarks Matrox Electronic System...

Page 3: ...ed number of computers owned or leased by Licensee in any location The Software is subject to a restricted license therefore Licensee must use the Software on a single computer owned or leased by Licensee at a time in conjunction with and for the purpose of operating the Matrox hardware product Use of the Software in conjunction with non Matrox products is prohibited and not licensed hereunder Lic...

Page 4: ...ute the Software to Licensee s customers pursuant to a written license agreement At a minimum such license shall safeguard Matrox s ownership rights to the Software and such agreement shall contain similar terms and obligations 5 Licensee may only provide and disclose parts of the Software to third parties who have a need to know for the purpose of installation service integration and or support o...

Page 5: ...ies This License grants you no rights to use such content All rights not expressly granted are reserved by Matrox DISCLAIMER OF WARRANTIES LICENSEE EXPRESSLY ACKNOWLEDGES AND AGREES THAT USE OF THE SOFTWARE IS AT LICENSEE S SOLE RISK THE SOFTWARE IS PROVIDED AS IS AND WITHOUT WARRANTY OF ANY KIND AND MATROX EXPRESSLY DISCLAIMS ALL WARRANTIES EXPRESS AND IMPLIED INCLUDING BUT NOT LIMITED TO THE IMP...

Page 6: ...D ITS 3RD PARTY SUPPLIERS MAKE NO WARRANTY TO LICENSEE WHETHER EXPRESS OR IMPLIED INCLUDING WITHOUT LIMITATION THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE AND NON INFRINGEMENT REGARDING ANY THIRD PARTY SOFTWARE OR ITS USE AND OPERATION ALONE OR IN COMBINATION WITH LICENSEE PRODUCTS NEITHER LICENSEE NOR ITS EMPLOYEES AGENTS OR DISTRIBUTORS HAVE ANY RIGHT TO MAKE A...

Page 7: ...gulations and any other applicable export and import laws Controlling Law The validity performance and construction hereof shall be governed by and interpreted in accordance with the laws of the Province of Quebec Both parties hereby irrevocably submit to the exclusive jurisdiction of the Courts of the district of Montreal Province of Quebec Canada with regard to any dispute arising out of or in c...

Page 8: ...vi MATROX SOFTWARE LICENSE AGREEMENT Your notes ...

Page 9: ...allation Before you install your DSX cards 4 Start with a functioning system 4 Configuring your system s power management 4 BIOS power management configuration 4 Windows power management configuration 4 Linux power management configuration 5 Avoid costly damage 5 Plan for adequate ventilation 6 Chapter 3 Installing Your Matrox M264 Hardware Installing your Matrox M264 card 10 Before restarting you...

Page 10: ...Wizard 14 Disabling Sleep and Hibernate modes in Windows 10 8 and 7 14 Windows notification area error messages 15 Installing the Matrox VFW software codecs on a system without DSX hardware 15 Chapter 5 Installing Your DSX Software for Linux Installing the Matrox software 18 Installing libdispatch 18 Installing the Matrox software installation package 21 Installing the Matrox SDK 22 Uninstalling t...

Page 11: ...e Matrox M264 hardware decoder 29 Using the Matrox M264 hardware decoder with buffers 29 General characteristic 29 Sample application 29 Decompression operation 30 Chapter 7 Using Your Matrox M264 Hardware Overview 34 Using the Matrox M264 card for encoding and decoding using buffers 34 Using the Matrox M264 card in topology based workflows 35 Creating a simple capture topology in mvTopologyBuilde...

Page 12: ...ystem in Linux Overview 48 Using mveXinfo to display DSX information 48 Monitoring your DSX hardware operating temperatures 49 Error notification 49 Appendix A DSX Specifications M264 card 52 General 52 Dimensions 52 Typical operating voltages and current consumption 53 Environmental specifications 53 Appendix B DSX Technical Support Registration 56 DSX OEM technical support 56 DSX applications en...

Page 13: ...1 Introducing Matrox DSX This chapter provides an overview of Matrox DSX Topology API hardware ...

Page 14: ...arks Matrox M264 supports 64 bit applications only The Matrox M264 card can be used in standalone mode or as a co processor with a Matrox I O card such as Matrox X mio3 When used in standalone mode a universal clock is available When used as a co processor with a Matrox I O card the system clock can be derived from the same source as the card that it is being used with For more information see Sys...

Page 15: ...2 Preparing for the DSX Installation This chapter explains how to prepare for installing your DSX hardware ...

Page 16: ...u must configure them as follows For Intel Dynamic power Technology set Enhanced Intel SpeedStep Technology to Disable For System Power Options set PCIe ASPM Support to Disable For details on how to configure your computer s BIOS settings see your computer s documentation Windows power management configuration The procedure for configuring your Windows power management settings depends on your ver...

Page 17: ... small to cause a spark but it can still cause damage to sensitive electronic components or at least reduce their lifespan To avoid damage please observe the following precautions Do not remove DSX cards from their antistatic bags until you re ready to install them Before removing the cards place the packages within easy reach of the area where you intend to perform the installation You should avo...

Page 18: ...w You should make sure that the fan directs air between the various circuit boards When installed this fan works in conjunction with your PC exhaust fan located at the back of the PC case to evacuate warmed air away from your DSX cards Note The illustration below does not represent a specific Matrox card It is only used to show proper fan positioning Choose a fan that has a minimum rating of 60 to...

Page 19: ...ted by the fan is directed through the cards and does not escape through the top of your system Caution Fan installation should be done by a qualified technician Improper installation procedures can result in damage to your DSX components and or your computer system Matrox Electronic Systems Ltd is not responsible for any damage caused by faulty installation ...

Page 20: ...8 Chapter 2 Preparing for the DSX Installation Your notes ...

Page 21: ...3 Installing Your Matrox M264 Hardware This chapter explains how to install the hardware for a Matrox M264 system ...

Page 22: ...the slot that you ve chosen and push it in firmly and evenly until it is fully seated in the slot Remarks To avoid overheating issues don t install the Matrox M264 close to another card that generates heat such as a display card To allow sufficient airflow to the Matrox M264 card s fan provide sufficient clearance between the Matrox M264 card s fan and the adjacent card 3 Secure the Matrox M264 ca...

Page 23: ...4 Installing Your DSX Software for Windows This chapter explains how to install the Matrox DSX software and update the Matrox DSX firmware for Windows ...

Page 24: ...a may display messages indicating that your devices are ready to use or that the device driver software was not successfully installed Ignore these messages and allow the Setup program to complete the entire installation For more information see Windows notification area error messages on page 15 To install the Matrox software 1 Run DSX utils exe 2 Follow the onscreen instructions to install the s...

Page 25: ...onic Systems and then click Install to continue the Matrox software installation Although the Matrox DSX License Agreement is only displayed during a standard installation acceptance of the agreement is implied when installing in silent mode Installing the Matrox SDK In order to install the Matrox Programming Reference Library and Matrox DSX Topology API Programming Reference Library online Help a...

Page 26: ...y detect your devices and install the appropriate drivers The wizard only appears the first time you start your computer after installing your DSX hardware If Windows launches the Found New Hardware Wizard it will appear for each of your DSX hardware components Close the wizard each time it appears To ensure a smooth DSX software installation it is essential that you do not let the wizard try to i...

Page 27: ...rivers If you choose to click the error message for details you will see a list of drivers in the process of being installed Your DSX card appears as either PCI Device or Multimedia Controller and its status is shown as No driver found This status will not change even after the installation is successful as Windows verifies driver status sequentially and the drivers had already been deleted when t...

Page 28: ...16 Chapter 4 Installing Your DSX Software for Windows Your notes ...

Page 29: ...5 Installing Your DSX Software for Linux This chapter explains how to install the Matrox DSX software and update the Matrox DSX firmware for Linux ...

Page 30: ... sudo apt get autoremove 2 Install the libdispatch prerequisites listed at https github com nickhutchinson libdispatch sudo apt get install libblocksruntime dev libkqueue dev libpthread workqueue dev 3 If you have Ubuntu version 12 04 install the Clang compiler version 3 4 available at http www llvm org For different Ubuntu versions go to step 4 a Update the repository of apt get by adding the fol...

Page 31: ...e if you are installing CMake version 3 0 1 type the following tar xvf cmake 3 0 1 tar gz cd cmake 3 0 1 bootstrap make sudo make install Note To access the newly installed CMake you must first close your Terminal 6 Download libdispatch 0 1 3 1 zip available at https github com nickhutchinson libdispatch releases tag v0 1 3 1 then build and install libdispatch as follows unzip libdispatch 0 1 3 1 ...

Page 32: ... 1 tar gz cd libpthread_workqueue 0 9 1 configure make sudo make install 4 Download libkqueue 2 0 3 tar gz available at https github com mheily libkqueue releases then build and install it as follows tar xvf libkqueue 2 0 3 tar gz cd libkqueue 2 0 3 configure make sudo make install 5 In etc ld so conf d create a local conf file with the text usr local lib then run sudo ldconfig 6 Download libdispa...

Page 33: ... it while logged in as the root user b For a silent mode installation run the installer with sudo or while logged in as the root user and add the suffix quiet or q for example sudo DSX TopologyUtils run quiet All prompts and messages are bypassed and your system is automatically restarted if needed Log messages including errors about dependencies will appear in the execution trace c For a trial ru...

Page 34: ...stall the old version as explained in Uninstalling the Matrox software Uninstalling the Matrox software You can uninstall the DSX software as follows To uninstall the DSX TopologyUtils package run the shell script at opt MatroxVideo DSX utils uninstall sh as root user or with sudo To uninstall the DSX TopologySdk package run the shell script at opt MatroxVideo DSX sdk uninstall sh as root user or ...

Page 35: ... Hardware Codecs This chapter provides an overview of the codecs that can be used with the Matrox M264 hardware and provides details on how to configure your Matrox M264 hardware encoder and your Matrox M264 hardware decoder ...

Page 36: ...wever this requires that you access and control the codecs that you would like to use For information on how to access and control the Matrox M264 encoder see About the Matrox M264 hardware encoder on page 25 For information on how to access and control the Matrox M264 decoder see About the Matrox M264 hardware decoder on page 29 Note On the Matrox M264 420 card it is not possible to encode or dec...

Page 37: ...e IMvEncoderStream interface For more information see Using the Matrox M264 hardware encoder in topology based workflows on page 29 Note Encoding VBI Vertical Blanking Interval or VANC Vertical Ancillary Data Space data packets and time code information is not currently supported Sony XAVC format Resolution Frame rate fps Intra Class 100 4 2 2 10 bit with CBG compression 720p 50 and 59 94 1080i 25...

Page 38: ...the data Sample application The mvsVideoEncoderTester sample application demonstrates how to instantiate and use the IMvEncoderVideo interface for encoding YUV frames into H 264 video streams using a Matrox M264 card For more information on this sample application see the DSXTopologyAPISampleApplications txt or DSX sdkSampleApplications txt file Compression operation The following steps explain ho...

Page 39: ...This allows the user application to handle encoder errors 7 Call IMvEncoderVideo GetOption with the keMvCodecOptionMaxCompressedFrameSizeByBytes_ui32 parameter to retrieve the maximum possible size of any compressed frame Remarks If you are generating fields instead of frames this call will return the maximum possible size of the compressed field To ensure a valid frame or field size the IMvEncode...

Page 40: ...IMvEncoderVideo GetOption with the keMvCodecOptionCodecReturnsCompressedField_b parameter If you call IMvEncoderVideo GetCompressedSurface too many times the method may fail with the error code MV_E_MODULE_BUSY If this occurs it means that the hardware device is busy and unable to take commands at this time the surface must be resent You can try resending the surface after you receive a notificati...

Page 41: ...ng Interval or VANC Vertical Ancillary Data Space data packets and time code information is not supported yet Using the Matrox M264 hardware decoder with buffers The Matrox M264 hardware decoder can be used to decode buffers at any speed such as for faster than real time processing To do so you must use the IMvDecoderVideo interface to control and instantiate the Matrox M264 decoder The codec GUID...

Page 42: ...ool of uncompressed Flex host buffers YUV 4 2 2 8 bit YUV 4 2 2 10 bit or v210 4 2 2 10 bit that will receive the uncompressed images 4 Call IMvDecoderVideo Open to open a stream for decoding and pass a pointer to the SMvM264DecompressionOptions structure 5 The user application must implement the completion observer interface using IMvCompletionObserver NotifyCompletion and set a notification call...

Page 43: ...on on working with buffers see Synchronizing surface operations in the Matrox DSX sdk User Guide or Working with buffers in the Matrox DSX Topology API User Guide 9 Call IMvDecoderVideo PutCompressedSurface for each prepared user buffer in the order that they were read 10 Set up the IMvAVContent interface for the buffers created in step 3 and call IMvDecoderVideo GetUncompressedVideoAndVANCSurface...

Page 44: ... all the compressed data has been sent to the decoder call IMvDecoder Flush to notify the decoder that no more compressed data will be sent Remarks The user application will be notified by the notification callback when the decoder has decompressed all the compressed data Continue calling IMvDecoderVideo GetUncompressedVideoAndVANCSurface until the notification callback is called After calling IMv...

Page 45: ...4 Hardware This chapter provides an overview of how to get started with M264 development It explains which sample applications you can use with your M264 and includes sample workflows that you can create in mvTopologyBuilder ...

Page 46: ...ester This sample application is supported only on 64 bit applications in Windows and Linux and demonstrates how to instantiate and use the IMvEncoderVideo interface for encoding YUV frames into H 264 video streams using a Matrox M264 card It also displays statistics which can be used to indicate hardware performance mvsVideoDecoderTester This sample application is supported only on 64 bit applica...

Page 47: ...to encode data with the Matrox DSX Topology API create the following topologies in mvTopologyBuilder Creating a simple capture topology in mvTopologyBuilder In mvTopologyBuilder you can create a basic real time capture topology for the Matrox M264 card that uses an encoder stream as follows 1 Open mvTopologyBuilder 2 Create a universal clock 3 Create a new topology with the following settings Card...

Page 48: ... compressed writer stream with the following settings Name Compressed writer stream 1 Compressed writer type 264 Compressed video Compressed host node 1 Filename Location and 264 file name of your choice A simple capture topology is created as shown in the following figure 9 To encode the stream click the encoder stream and click Play For more information on how to create the items in mvTopologyBu...

Page 49: ...oy on close 4 Create a card node with the following settings Node name Card node 1 Content Video Write to read delay 1 frame Depth 8 frames Video resolution 1080i Video surface format YUYV 422 Video colorimetry ITUR BT 709 Any VANC format 5 Create an input stream with the following settings Output node Card node 1 Input connector SDI IN A 6 Create a host node Node name Host node 1 with the same se...

Page 50: ...y workflow for the Matrox M264 card that captures the SDI inputs of a Matrox I O card is created as shown in the following figure 11 To encode the stream click the encoder stream and click Play For more information on how to create the items in mvTopologyBuilder see the Matrox mvTopologyBuilder User Guide For a complete list of the supporting documents for using the Matrox M264 card see Other supp...

Page 51: ...roxVideo DSX sdk Documentation in Linux 2 The executables for the sample applications if applicable Not all the sample applications have been compiled into executables some only have source code The executables are located at In Windows 64 bit C Program Files x86 Matrox DSX sdk Bin VS2010 64 Release and C Program Files x86 Matrox DSX sdk Bin VS2013 64 Release Java C Program Files x86 Matrox DSX sd...

Page 52: ... from within Microsoft Visual Studio It provides reference information for the Matrox DSX sdk interfaces classes enumerations and structures The Matrox DSX documentation is in PDF format get Adobe Reader here and is available in the following places In the Documentation folder on the FTP site where you download the DSX drivers and installation programs The documents available on the FTP site are a...

Page 53: ...8 Monitoring Your DSX System in Windows This chapter explains how to use X info to display important details about your DSX system and installed hardware in Windows ...

Page 54: ...onitoring details by double clicking the icon on your Windows taskbar or clicking the icon on your Windows taskbar and selecting Open X info Note If you do not see the icon check your taskbar properties and make sure that you re showing the icon for Matrox X info Displaying system information To display information about your Matrox DSX system select System from the Display Information About list ...

Page 55: ...43 Using X info to display DSX information and name of the log then click Create If Open file after scan is selected the HTML system log opens after it is created ...

Page 56: ...sented by a tab Click the card s tab to display a page with hardware information for example serial number and production date You can also monitor the current and maximum temperature for each hardware component Important Whether or not you have opened Matrox X info if one or more of your DSX hardware components exceeds the maximum operating temperature you ll receive a warning message with furthe...

Page 57: ...um operating temperature You should monitor the temperature of your DSX hardware components periodically and take measures as needed to lower the room temperature and or improve the ventilation in your DSX system For details on how to ensure that your system is properly ventilated see Plan for adequate ventilation on page 6 Error notification X info provides temperature warnings and warnings for o...

Page 58: ...46 Chapter 8 Monitoring Your DSX System in Windows Your notes ...

Page 59: ...9 Monitoring Your DSX System in Linux This chapter explains how to use mveXinfo to display important details about your DSX system and installed hardware in Linux ...

Page 60: ...ated at opt MatroxVideo DSX utils bin mveXinfo exe and can be called anytime to display system information hardware information and your DSX hardware operating temperatures as shown in the following example output Install information Matrox DSX utils Version 9 7 0 21007 Matrox DSX utils Path opt MatroxVideo DSX utils Matrox DSX sdk Version 9 7 0 21007 Matrox DSX sdk Path opt MatroxVideo DSX sdk M2...

Page 61: ...your DSX components at or near the maximum temperature for a prolonged period of time You should target your DSX hardware to operate at least 20 C below the maximum operating temperature You should monitor the temperature of your DSX hardware components periodically and take measures as needed to lower the room temperature and or improve the ventilation in your DSX system For details on how to ens...

Page 62: ...50 Chapter 9 Monitoring Your DSX System in Linux Your notes ...

Page 63: ...A DSX Specifications This appendix provides specifications for DSX hardware ...

Page 64: ...s M264 card General PCI interface length full height PCI Express Gen2 x8 card Regulatory compliance FCC Class B CE Class B RCM Class B RoHS Dimensions The dimensions for the Matrox M264 card are as shown in the following illustration ...

Page 65: ...to your DSX components and or computer system make sure that you don t operate your M264 card at or near the maximum operating temperature for a prolonged period of time see Monitoring your DSX hardware operating temperatures on page 45 or page 49 for more information Voltage 12 V Current 1 55 A Total power consumption 18 6 watts may vary depending on the resolution video format and the number of ...

Page 66: ...54 Appendix A DSX Specifications Your notes ...

Page 67: ...B DSX Technical Support This appendix explains how you can register your DSX product and obtain technical support ...

Page 68: ...she should be able to help you correct any installation or system configuration problem If your representative is unable to solve your problem contact our Matrox applications engineering department for further information and assistance Contacting us by telephone Telephone Worldwide 514 685 7230 ext 2841 Matrox Video Products Developer Forum The Matrox Video Products Developer Forum at http forum ...

Page 69: ...erver NotifyCompletion 30 IMvDecoder Flush 32 IMvDecoderVideo 34 GetUncompressedVideoAndVANCSurface 31 32 Open 30 PutCompressedSurface 31 SetOption 30 32 IMvEncoderStream 25 29 IMvEncoderVideo 25 26 34 Close 28 GetCompressedSurface 28 GetOption 27 Open 27 PutUncompressedVideoAndVANC 28 SetOption 27 28 IMvErrorNotificationCallback Notify 27 30 IMvFlexEngine 26 30 CreateCodecEx 26 30 IMvSurface Assi...

Page 70: ...ox M264 hardware decoder decompression operation 30 general characteristic 29 sample applications mvsVideoDecoderTester 29 using buffers 29 Matrox M264 hardware encoder compression operation 26 general characteristics 26 sample application mvsVideoEncoderTester 26 using buffers 26 using in topology based workflows 29 Matrox mveXinfo about 48 monitoring temperatures 49 using 48 using to display inf...

Page 71: ...libdispatch for CentOS 7 19 for openSUSE 13 1 19 for Ubuntu 18 Matrox DSX sdk 13 Matrox DSX utils 12 Matrox DSX TopologySdk 22 Matrox DSX TopologyUtils 21 Matrox VFW software codecs 15 overview 12 18 System information displaying with mveXinfo 48 displaying with X info 42 T Technical support 56 Temperatures monitoring with mveXinfo 49 monitoring with X info 45 U ulBufferSizeInBytes 26 V Validated ...

Page 72: ...60 Index Your notes ...

Page 73: ...ay be required to take adequate measures To meet EC requirements shielded cables must be used to connect equipment and other peripherals to the card These products have been tested in a typical class B compliant host system It is assumed that these products will also achieve compliance in any class B compliant system Français Informations aux utilisateurs Européens Déclaration de conformité Remarq...

Page 74: ...www matrox com video ...

Reviews: