⭐ 欢迎来到虫虫下载站! | 📦 资源下载 📁 资源专辑 ℹ️ 关于我们
⭐ 虫虫下载站

📄 decoder_types.h

📁 这是DVD中伺服部分的核心代码
💻 H
字号:
/*****************************************************************************
******************************************************************************
**                                                                          **
**  Copyright (c) 2006 Videon Central, Inc.                                 **
**  All rights reserved.                                                    **
**                                                                          **
**  The computer program contained herein contains proprietary information  **
**  which is the property of Videon Central, Inc.  The program may be used  **
**  and/or copied only with the written permission of Videon Central, Inc.  **
**  or in accordance with the terms and conditions stipulated in the        **
**  agreement/contract under which the programs have been supplied.         **
**                                                                          **
******************************************************************************
*****************************************************************************/
/**
 * @file decoder_types.h
 *
 * $Revision: 1.11 $ 
 *
 * Decoder data types
 *
 */


#ifndef __DECODER_TYPES_H
#define __DECODER_TYPES_H
    
#include "vdvd_types.h"


/********************************************************************************
                                    DATA TYPES
 ********************************************************************************/

    class Decoder;


    typedef struct tagDECODE_TIMESTAMPS_TYPE
    {
       TIME45k  video_pts;
       TIME45k  audio_pts;
       TIME45k  stc;

    } DECODE_TIMESTAMPS_TYPE;


   typedef enum tagMACROVISION_TYPE
    {
        MACROVISION_TYPE_NONE           =0,
        MACROVISION_TYPE_AGC_ONLY       =1,
        MACROVISION_TYPE_AGC_2LINES     =2,
        MACROVISION_TYPE_AGC_4LINES     =4

    } MACROVISION_TYPE;


    typedef enum tagDECODE_NOTIFY_WAIT_TYPE
    {
        DECODE_NOTIFY_ALWAYS       = 0,
        DECODE_NOTIFY_ONCE         = 1,
        DECODE_NOTIFY_CANCEL       = 2,

    } DECODE_NOTIFY_WAIT_TYPE;



    typedef enum tagDECODE_EVENT_TYPE
    {
        DECODE_EVENT_DECODE_DONE,
        DECODE_EVENT_TIMESTAMPS,
        DECODE_EVENT_PRESENTATION_START
    
    } DECODE_EVENT_TYPE;




    typedef struct tagDECODE_STATUS_TYPE
    {
        TIME45k       video_stc;      
        TIME45k       video_pts;      
        TIME45k       audio_pts;      
        TIME45k       audio_stc; 

        uint32        video_fifo_depth;     

    } DECODE_STATUS_TYPE;


    typedef struct tagDECODE_VIDEO_PARAMETERS
    {
        int             pid;
        int             stream_id;
        int             substream_id;
        int             extstream_id;
        int             stc_offset;

    } DECODE_VIDEO_PARAMETERS;



    typedef struct tagDECODE_AUDIO_PARAMETERS
    {
        int             pid;
        int             stream_id;
        int             substream_id;
        int             extstream_id;
        int             format;
        int             stc_offset;
        int             sample_rate;
        int             num_channels;
        BOOLEAN         downmix_enable;

    } DECODE_AUDIO_PARAMETERS;


    typedef enum tagDECODER_TYPE
    { 
        DECODER_TYPE_VIDEO,
        DECODER_TYPE_AUDIO

    } DECODER_TYPE;



    typedef enum tagDECODE_FLUSH_MODE
    {
        DECODE_FLUSH_MODE_NO_DISCARD,
        DECODE_FLUSH_MODE_DISCARD

    } DECODE_FLUSH_MODE;



    typedef struct tagPCM_SETTINGS_TYPE
    {
        int bits_per_sample;
        int sample_rate;
        int channels;

        BOOLEAN spdif_output_only;

    } PCM_SETTINGS_TYPE;


    typedef enum tagDECODER_STREAM_TYPE
    {
        DECODER_STREAM_TYPE_MPEG2,
        DECODER_STREAM_TYPE_PCM,
        DECODER_STREAM_TYPE_UNKNOWN

    } DECODER_STREAM_TYPE;



    typedef struct tagDECODER_SETTINGS_TYPE
    {
        DECODER_STREAM_TYPE     streamType;
        PCM_SETTINGS_TYPE       pcm;

    } DECODER_SETTINGS_TYPE;

#endif


⌨️ 快捷键说明

复制代码 Ctrl + C
搜索代码 Ctrl + F
全屏模式 F11
切换主题 Ctrl + Shift + D
显示快捷键 ?
增大字号 Ctrl + =
减小字号 Ctrl + -