28
Chapter 6, Using the Matrox M264 Hardware Codecs
11
Call the
IMvEncoderVideo::PutUncompressedVideoAndVANC()
method
for each frame or field that you would like to compress. Each
PutUncompressedVideoAndVANC()
operation must contain an
uncompressed frame or field.
Remarks
$
Because VANC surfaces are not supported yet, set VANC surfaces to
NULL
.
$
If you call
IMvEncoderVideo::PutUncompressedVideoAndVANC()
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 notification callback with the
in_pIAVContent
parameter. Make sure that the read count is incremented
accordingly.
12
Call
IMvEncoderVideo::GetCompressedSurface()
for every
corresponding
IMvEncoderVideo::PutUncompressedVideoAndVANC()
frame operation or every two corresponding
IMvEncoderVideo::PutUncompressedVideoAndVANC()
field operations
performed in step
.
Remarks
$
For interlaced video, to determine whether the codec returns fields or frames,
call
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 notification callback with the
in_pIAVContent
parameter. Make sure that the write count is incremented accordingly.
13
Continue the
IMvEncoderVideo::PutUncompressedVideoAndVANC()
and
IMvEncoderVideo::GetCompressedSurface()
loop until all
uncompressed frames have been sent to the encoder. For each compression
operation, a notification callback is received with the
in_pIAVContent
parameter of the compressed surface.
14
Call
IMvEncoderVideo::Close()
to close the stream when finished. The
notification callback will be called with a
in_pIAVContent == NULL
parameter to let the user application know when the codec is closed.
¦
Note
After calling this method, you can still call
IMvEncoderVideo::
GetCompressedSurface()
up until you reach the expected number of
IMvEncoderVideo::PutUncompressedVideoAndVANC()
calls.
15
When
NULL
is returned, release the two notification callbacks by calling
IMvEncoderVideo::SetOption()
with the
Содержание M264
Страница 1: ...Y11360 101 0970 Matrox M264 Installation and User Guide June 30 2016 ...
Страница 8: ...vi MATROX SOFTWARE LICENSE AGREEMENT Your notes ...
Страница 13: ...1 Introducing Matrox DSX This chapter provides an overview of Matrox DSX Topology API hardware ...
Страница 15: ...2 Preparing for the DSX Installation This chapter explains how to prepare for installing your DSX hardware ...
Страница 20: ...8 Chapter 2 Preparing for the DSX Installation Your notes ...
Страница 28: ...16 Chapter 4 Installing Your DSX Software for Windows Your notes ...
Страница 58: ...46 Chapter 8 Monitoring Your DSX System in Windows Your notes ...
Страница 62: ...50 Chapter 9 Monitoring Your DSX System in Linux Your notes ...
Страница 63: ...A DSX Specifications This appendix provides specifications for DSX hardware ...
Страница 66: ...54 Appendix A DSX Specifications Your notes ...
Страница 72: ...60 Index Your notes ...
Страница 74: ...www matrox com video ...