#include <mediasession_stream.h>
Stream which represents full image data.
Public Types | |
using | InitHandler = Delegate< Result< void >(const MediaStreamImageDataExportRef &stream, MediaStreamProperties &props)> |
using | GetPixelHandler = Delegate< Result< GetPixelHandlerStruct >(const MediaStreamImageDataExportRef &stream, const MediaStreamProperties &props, const PixelFormat &dstFormat, const ChannelOffsets &channelOffsets, const ColorProfile &dstColorProfile, GETPIXELHANDLERFLAGS flags, const LayerSetInterface *layerSet)> |
using | FinishHandler = Delegate< Result< void >(const MediaStreamImageDataExportRef &stream, const MediaStreamProperties &props)> |
Public Member Functions | |
MAXON_METHOD Result< void > | SetCallbackHandler (const InitHandler &initHandler, const GetPixelHandler &getPixelHandler, const FinishHandler &finishHandler) |
MAXON_METHOD Result< void > | InitStream (MediaStreamProperties &props) |
MAXON_METHOD Result< GetPixelHandlerStruct > | GetPixelStream (const MediaStreamProperties &props, const PixelFormat &dstFormat, const ChannelOffsets &channelOffsets, const ColorProfile &dstColorProfile, GETPIXELHANDLERFLAGS flags) |
MAXON_METHOD Result< void > | FinishStream (const MediaStreamProperties &props) |
Private Member Functions | |
MAXON_INTERFACE (MediaStreamImageDataExportInterface, MAXON_REFERENCE_NORMAL, "net.maxon.image.interface.mediastreamimagedataexport") | |
using InitHandler = Delegate<Result<void>(const MediaStreamImageDataExportRef& stream, MediaStreamProperties& props)> |
using GetPixelHandler = Delegate<Result<GetPixelHandlerStruct>(const MediaStreamImageDataExportRef& stream, const MediaStreamProperties& props, const PixelFormat& dstFormat, const ChannelOffsets& channelOffsets, const ColorProfile& dstColorProfile, GETPIXELHANDLERFLAGS flags, const LayerSetInterface* layerSet)> |
using FinishHandler = Delegate<Result<void>(const MediaStreamImageDataExportRef& stream, const MediaStreamProperties& props)> |
|
private |
MAXON_METHOD Result<void> SetCallbackHandler | ( | const InitHandler & | initHandler, |
const GetPixelHandler & | getPixelHandler, | ||
const FinishHandler & | finishHandler | ||
) |
Subscribes to the stream. So if the media converter loads the stream the setPixelHandler callback is triggered. this allows to read data directly to the place where it needs to by without additional memory copy.
[in] | initHandler | A handler which is called from the output media converter to signal that data is required for this frame of the stream. |
[in] | getPixelHandler | A handler which is called for each thread that needs a valid GetPixelHandlerStruct which will be used by the output converter to get the pixel data. |
[in] | finishHandler | A handler which is called from the output media converter to signal that data writing the data from this stream is finished for this frame of the stream. |
MAXON_METHOD Result<void> InitStream | ( | MediaStreamProperties & | props | ) |
called by the input media converter implementation before loading a stream.
[in] | props | Properties of the image stream. |
MAXON_METHOD Result<GetPixelHandlerStruct> GetPixelStream | ( | const MediaStreamProperties & | props, |
const PixelFormat & | dstFormat, | ||
const ChannelOffsets & | channelOffsets, | ||
const ColorProfile & | dstColorProfile, | ||
GETPIXELHANDLERFLAGS | flags | ||
) |
called by the input media converter implementation before loading a stream.
[in] | props | Properties of the image stream. |
[in] | dstFormat | Destination pixel format. |
[in] | channelOffsets | Channel offset that is needed in the destination. |
[in] | dstColorProfile | Destination color profile. |
[in] | flags | See GETPIXELHANDLERFLAGS flags. |
MAXON_METHOD Result<void> FinishStream | ( | const MediaStreamProperties & | props | ) |
called by the input media converter implementation when loading the stream is completed.
[in] | props | Properties of the image stream. |