📄 codec_pipeline.h
字号:
/* ///////////////////////////////////////////////////////////////////////////////// INTEL CORPORATION PROPRIETARY INFORMATION// This software is supplied under the terms of a license agreement or// nondisclosure agreement with Intel Corporation and may not be copied// or disclosed except in accordance with the terms of that agreement.// Copyright(c) 2003-2005 Intel Corporation. All Rights Reserved.////*/#ifndef __CODEC_PIPELINE_H__#define __CODEC_PIPELINE_H__#include "umc_base_codecs.h"#include "umc_media_data_ex.h"#include "umc_source_types.h"enum{ DEF_DATA_READER = 0, FILE_DATA_READER, VOB_DATA_READER, SOCKET_DATA_READER, HTTP_DATA_READER};class CodecPipeline{public: static UMC::Status SelectDataReader(UMC::ModuleContext& rContext, UMC::DataReader*& rpDataReader, vm_var32 ulPrefferedReader); static UMC::Status SelectAudioRender(UMC::AudioRenderParams& rAudioRenderInit, UMC::AudioRender*& rpRender, vm_var32 ulPrefferedRender = UMC::DEF_AUDIO_RENDER); static UMC::Status SelectAudioRender(UMC::sAudioStreamInfo& rAudioInfo, UMC::ModuleContext& rContext, UMC::AudioRender*& rpAudioRender, vm_var32 ulPrefferedRender = UMC::DEF_AUDIO_RENDER); static UMC::Status SelectAudioDecoder(UMC::sAudioStreamInfo& rAudioInfo, UMC::BaseCodec*& rpAudioDecoder); static UMC::Status SelectDTAudioDecoder(UMC::sAudioStreamInfo& rAudioInfo, UMC::BaseCodec*& rpAudioDecoder, UMC::DualThreadedCodec*& rpDSAudioCodec, UMC::MediaBuffer*& rpMediaBuffer, UMC::MediaData*); // select splitter for various media source(s) static UMC::Status SelectSplitter(UMC::SourceInfo *lpSourceInfo, vm_var32 uiSplitterFlags, UMC::Splitter*& rpSplitter, UMC::MediaDataEx& rFirstFrame, vm_var32 uiSelectedVideoPID = UMC::SELECT_ANY_VIDEO_PID, vm_var32 uiSelectedAudioPID = UMC::SELECT_ANY_AUDIO_PID); // select splitter for media file static UMC::Status SelectSplitter(UMC::DataReader* pDataReader, vm_var32 uiSplitterFlags, UMC::Splitter*& rpSplitter, UMC::MediaDataEx& rFirstFrame, vm_var32 uiSelectedVideoPID = UMC::SELECT_ANY_VIDEO_PID, vm_var32 uiSelectedAudioPID = UMC::SELECT_ANY_AUDIO_PID); static UMC::Status SelectVideoDecoder(UMC::sVideoStreamInfo& rVideoInfo, UMC::MediaData& rFirstFrame, UMC::ColorFormat DstColorFormat, unsigned int ulReduceCoeff, unsigned int lInterpolation, unsigned int lPostProc, unsigned int numThreads, unsigned int ulVideoDecoderFlags, UMC::BaseColorSpaceConverter& rColorConverter, UMC::VideoDecoder*& rpVideoDecoder, UMC::sClipInfo * lpDestSize = NULL); static UMC::Status SelectVideoRender(UMC::ModuleContext& rContext, UMC::sClipInfo ClipInfo, UMC::RECT rectDisp, UMC::RECT rectRange, UMC::ColorFormat RenderCFormat, vm_var32 ulVideoRenderFlags, UMC::VideoRender*& rpVideoRender, vm_var32 ulPrefferedRender = UMC::DEF_VIDEO_RENDER); static UMC::Status SelectVideoRender(UMC::VideoRenderParams& rVideoRenderParams, UMC::ModuleContext& rContext, UMC::VideoRender*& rpRender, vm_var32 ulPrefferedRender = UMC::DEF_VIDEO_RENDER);};#endif // __CODEC_PIPELINE_H__
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -