亚洲欧美第一页_禁久久精品乱码_粉嫩av一区二区三区免费野_久草精品视频

? 歡迎來到蟲蟲下載站! | ?? 資源下載 ?? 資源專輯 ?? 關于我們
? 蟲蟲下載站

?? play_asf.c

?? SigmDesign SMP8634 media decode chip development SDK
?? C
?? 第 1 頁 / 共 5 頁
字號:
/* * * Copyright (c) Sigma Designs, Inc. 2002. All rights reserved. * *//**	@file play_asf.c	@brief sample application to access the Mambo chip and test DMA transfers		@author Julien Soulier   	@ingroup dccsamplecode*//*  ******************************************************************************************  This file is part of libsamples library, therefore *NO* static variables should be defined  *******************************************************************************************/#define RELEASE_BUFFER_ENABLE	DISABLE#ifdef CHECK_BUFFER_PTS#define CHECK_BUFFER_4_FREAD	1#define CHECK_BUFFER_4_AUDIO	1#define CHECK_BUFFER_4_VIDEO	1#endif#define _LARGEFILE64_SOURCE 1 // Required for large files (> 4GB)#include "sample_os.h"#define ALLOW_OS_CODE 1#include "../dcc/include/dcc.h"#include "../rmasfdemux/include/rmasfdemuxapi.h"#include "../rmasfdemux/include/wmdrm.h"#include "../rmasfdemux/include/wmdrmopl.h"#include "common.h"#include "../rmwmaprodecoder/include/rmwmaprodefine.h"#include "../rmwmaprodecoder/include/rmwmaprodecoderapi.h"/* #### Begin CARDEA code #### */#include "rmupnp/rmlibwmdrmnd/include/ms_cardea.h"#if (EM86XX_CHIP == EM86XX_CHIPID_TANGO2)void test_cci( void *cardea_context );#endif/* #### End CARDEA code #### *//* ################## Begin DTCP code ################### */#if (EM86XX_CHIP == EM86XX_CHIPID_TANGO15)#include "../rmdtcp/include/dtcp_session.h"#else#include "../rmdtcpapi/include/dtcp_session.h"#endif/* ############### End DTCP code ####################### */#include "bcc.h"#define WAIT_COMMAND_TIMEOUT_US	(TIMEOUT_10MS)	  // 10 ms#define GETBUFFER_TIMEOUT_US	(TIMEOUT_10MS)	  // 10 ms#define SENDDATA_TIMEOUT_US		1000000	  //  1 sec#define WAIT_EOS_TIMEOUT_US		20000000  // 20 sec#define CODEC_SPECIFIC_DATA_MAX_SIZE_BYTES  32/*To correctly dimension the fifos for wmv we have to find the average of: - VideoBitRate, VideoFrameRate - AudioBitRate, AudioFrameRate, that will be determined from AudioBlockSize.The video PTS fifo size is 600 entries ~= 10 sec at 60frames/sec.The audio PTS fifo size is 300 entries ~= 10 sec at 30frames/sec.We could dimension the bitstream fifos to 10 seconds of video/audio in order tocompensate for the wmv files with video/audio not well interleaved.The drift vpts-apts can be 1.5 sec for Dolphins, 3 sec for KidRock, 4 sec for liquid_1.Ex: For liquid_1.wmv:	VideoBitRate = 8,494,469bits => 1063kBytes/sec. FrameRate = 60.	AudioBitRate =   193,758bits => 25kBytes/sec. BlockSize = 0x1000 bytes.	Max vpts-apts = 5sec.*/#define ASF_DMA_BUFFER_SIZE_LOG2	16		// 64kB#define ASF_DMA_BUFFER_COUNT		64		// 32*64kB ~= 2MB#ifdef WMAPRO_V1#define AUDIO_DMA_BUFFER_SIZE_LOG2	16		// 64kB#define AUDIO_DMA_BUFFER_COUNT		2		// 2*64kB ~= 128KB#else#define AUDIO_DMA_BUFFER_SIZE_LOG2	17		// 128kB#define AUDIO_DMA_BUFFER_COUNT		2		// 2*128kB ~= 256KB#endif#define VIDEO_XFER_FIFO_COUNT	(ASF_DMA_BUFFER_COUNT * (1<<ASF_DMA_BUFFER_SIZE_LOG2) / 2048)		// average video packet size = 2k#define AUDIO_XFER_FIFO_COUNT	(AUDIO_DMA_BUFFER_COUNT * (1<<AUDIO_DMA_BUFFER_SIZE_LOG2) / 2048)	// average audio packet size = 2k/* do NOT increase these values unless you have a reason to, otherwise, curacao wont be able to run due to lack of memory */#define VIDEO_FIFO_SIZE		(5*1024*1024)	// 5s @ 1MB/s#define AUDIO_FIFO_SIZE		(1*1024*1024)	// 1s @ 1MB/s #define ADDITIONAL_WMAPRO_FIFO_SIZE	1024*1024 #define KEYFLAGS (SET_KEY_DISPLAY | SET_KEY_PLAYBACK | SET_KEY_AUDIO | SET_KEY_DEBUG | SET_KEY_SPI)// uncomment next line for debug information//#define DISPLAY_VIDEO_STREAM_PAYLOAD_INFO// uncomment next line to save all input compressed frames into separate files//#define SAVE_INPUT_FRAMES#if 0#define PAYLOADDBG ENABLE#else#define PAYLOADDBG DISABLE#endif#if 0#define IFRAMEDBG ENABLE#else#define IFRAMEDBG DISABLE#endif#if 0#define TRICKDBG ENABLE#else#define TRICKDBG DISABLE#endif#if 0#define SENDDBG ENABLE#else#define SENDDBG DISABLE#endif#if 0#define WMAPRODBG	ENABLE#else#define WMAPRODBG	DISABLE#endif#if 0#define DISPLAY_AUDIO_BITRATE#endif#if 0#define DISPLAY_VIDEO_BITRATE#endif#if 0#define KEYDBG ENABLE#else#define KEYDBG DISABLE#endif#if 0#define VC1_STARTCODE_DBG ENABLE#else#define VC1_STARTCODE_DBG DISABLE#endif#define READ_DBG DISABLE#define MAX_INDEX_NUMBER 5#define INDEX_BUFFER_SIZE (200 * 1024)typedef enum {	RMasfIFrameFSM_Disabled = 0,	RMasfIFrameFSM_Init,	RMasfIFrameFSM_WaitIFrameMONChange,	RMasfIFrameFSM_SkipNext}RMasfIFrameFSMstates;#ifndef WITH_MONOtypedef struct {	RMuint16 languageIDCount;	RMuint16 languageIDIndex;	RMnonAscii * languageID;	RMuint8 languageIDLength;} RMasfdemuxLanguageID;#endif //WITH_MONO#define RM_DEVICES_STC 0x1#define RM_DEVICES_VIDEO 0x2#define RM_DEVICES_AUDIO 0x4#define RM_STREAM_VIDEO 0x1#define RM_STREAM_AUDIO 0x2#define RM_SKIP_TO_RESYNC 0x1#define MAX_NUMBER_OF_AUDIO_STREAMS 16struct wmapro_buffer_info {	RMbool new_buffer;	RMuint8 *ptr;	RMuint32 size;	struct emhwlib_info Info;	RMuint32 Stream_Number;	RMuint32 Media_Object_Number;	RMuint32 fSendPTS;#ifndef _ENABLE_WMALSL_	void *pBuffer;#endif // _ENABLE_WMALSL_};struct priv_cmdline {	RMuint32 dummy;};struct stream_info { 	RMuint32		stream_number; 	RMuint8			*aes_buf; 	RMuint32		aes_buf_len;};enum RMProcess_key_goto{    RMProcess_key_goto_none=1,    RMProcess_key_goto_got_key_but_noaction,    RMProcess_key_goto_nojump_but_exit,    RMProcess_key_goto_cleanup,    RMProcess_key_goto_mainloop_seek,    RMProcess_key_goto_wmapro_decoder_delete};struct RMaudio_parameters {      RMbool enabled;      unsigned short Codec_ID;      unsigned short Number_of_Channels;       unsigned long Samples_Per_Second;      unsigned long Average_Number_of_Bytes_Per_Second;      unsigned short Block_Alignment;      unsigned short Bits_Per_Sample;      unsigned char Codec_Specific_Data[CODEC_SPECIFIC_DATA_MAX_SIZE_BYTES];      unsigned long Codec_Specific_Data_Size;}; RMuint32 RMSupported_codec_list[] = {0x161,0x7A21,0x7A21,0x162,0x163,0x1};struct asf_context {	struct RUA *pRUA;	struct RUABufferPool *pDMA;	struct RUABufferPool *pDMAuncompressed;	unsigned char *UncompressedBuffer;	unsigned char *SequenceHeaderBuffer;	RMbool FirstSystemTimeStamp;	struct dcc_context *dcc_info;	struct RM_PSM_Context *PSMcontext;	RMuint32 video_stream_index;	RMint32 audio_stream_index;	RMuint32 cmd;	RMbool SendVideoData;	RMuint32 prev_video_media_object_number;	RMuint32 video_frame_counter;	RMuint32 VideoByteCounter;	RMbool SendVideoPts;	RMuint32 video_last_pts;	// used for video hack	RMuint32 video_vop_tir;#ifdef CHECK_BUFFER_PTS	RMuint32 video_pts;#endif	RMuint32 videoscaler_id;	RMbool SendAudioData;	RMuint32 prev_audio_media_object_number;	RMuint32 audio_frame_counter;	RMuint32 AudioByteCounter;	RMbool SendAudioPts; 	RMuint32 audio_vop_tir;	RMbool isWMAPRO;	RMuint32 start_ms; 	#ifdef CHECK_BUFFER_PTS	RMuint32 audio_pts;	RMuint32 max_avpts_diff;#endif	ExternWMAProVdecoder vDecoder;	ExternalRMASFDemux vASFDemux;	RMbool firstIFrame;	RMbool isIFrameMode;	RMbool isTrickMode;	RMint32 IFrameSize;	RMbool SeekAudio;	RMbool SeekVideo;	RMuint32 PrevAudioMON;	RMuint32 PrevVideoMON;//	struct AudioDecoder_WMAParameters_type wma_params[MAX_NUMBER_OF_AUDIO_STREAMS];	// David: I want it to pass information to payload decoder	RMuint32 WMAPROBitsPacketLength;    struct RMaudio_parameters audio_parameters[MAX_NUMBER_OF_AUDIO_STREAMS];	    RMfile f_bitstream;#ifdef _DUMP_INT_FILE_	FILE *intfile;#endif	#ifdef SAVE_INPUT_FRAMES	int f_compressed_frames;#endif	RMbool video_decoder_initialized;	RMbool audio_decoder_initialized;	RMuint32 Compression_ID;	struct VideoDecoder_WMV9VSProp_type wmv9_prop;	struct VideoDecoder_DIVX3VSProp_type divx3_prop;	RMuint32 asf_packetSize;	RMuint64 asf_Header_Object_Size;	RMasfIFrameFSMstates IFrameFSMState;	RMuint32 inband_aspect_ratio_x;	RMuint32 inband_aspect_ratio_y;	RMuint32 save_inband_aspect_ratio_y;	RMuint32 save_inband_aspect_ratio_x;	RMuint16 inband_aspect_ratio_stream_index;	RMint32 drmError;	RMbool isContentEncrypted;	RMbool unsupported_video;	struct SurfaceAspectRatio_type InBandAspectRatioParams;	RMbool setAspectRatio;	RMuint64 Preroll;	RMbool PrerollSET;	RMuint64 Duration;	RMbool ignoreCallback; /* when we catch a key during a callback, we must ignore all subsequent calls to the payload				  callback  until 'PROCESS_KEY' process it. 				  Required for 'stop', 'quit', 'seek[zero]' and 'iframe' */	RMuint64 CurrentDisplayPTS; /*used for 'accurate' iframe seeking when resuming from iframe mode */	RMint32 IFrameDirection;	RMbool VideoStreamFound;	RMbool AudioStreamFound;	RMuint64 lastSTC;	RMuint64 accurateAudioSeekTo;	RMbool IgnoreAudio;	RMuint32 Video_Codec_Specific_Data_Received;	RMuint32 Audio_Codec_Specific_Data_Received;	RMuint32 ContiguousVideoLength;	RMuint32 ContiguousAudioLength;	RMuint64 video_time_start;	RMuint64 video_time_end;	RMuint64 audio_time_start;	RMuint64 audio_time_end;	RMuint64 video_time_stamp;	RMuint64 audio_time_stamp;	RMint32 min_diff;	RMint32 max_diff;	RMuint32 packet_counter;	RMbool filePropSET;	RMbool langPropSET;	RMasfdemuxLanguageID lang[MAX_NUMBER_OF_AUDIO_STREAMS];#ifdef DISPLAY_AUDIO_BITRATE	RMuint32 prev_timeA;	RMuint32 prev_MON_A;	RMuint32 nb_bytes_since_prev_timeA;	RMuint32 byteRateA;	RMuint32 maxByteRateA;#endif#ifdef DISPLAY_VIDEO_BITRATE	RMuint32 prev_timeV;

?? 快捷鍵說明

復制代碼 Ctrl + C
搜索代碼 Ctrl + F
全屏模式 F11
切換主題 Ctrl + Shift + D
顯示快捷鍵 ?
增大字號 Ctrl + =
減小字號 Ctrl + -
亚洲欧美第一页_禁久久精品乱码_粉嫩av一区二区三区免费野_久草精品视频
91精品国产色综合久久久蜜香臀| 在线亚洲+欧美+日本专区| 国产精品盗摄一区二区三区| 色婷婷综合久久久久中文一区二区 | 久久女同精品一区二区| 97se亚洲国产综合自在线观| 日本最新不卡在线| 国产精品国产三级国产有无不卡| 欧美人妖巨大在线| 国产成人精品免费视频网站| 亚洲第一主播视频| 久久久久久久久久久久久女国产乱 | 99精品热视频| 老鸭窝一区二区久久精品| 国产精品久久久久久久久久久免费看| 欧洲av一区二区嗯嗯嗯啊| 国产呦精品一区二区三区网站 | 免费在线观看精品| 国产精品久久久久久久久免费樱桃| 8x8x8国产精品| 国产成人aaa| 蜜臀精品久久久久久蜜臀| 亚洲视频狠狠干| 久久亚洲一区二区三区四区| 欧美少妇bbb| 99久久精品国产观看| 精品一二线国产| 亚欧色一区w666天堂| 精品91自产拍在线观看一区| 欧美三级韩国三级日本一级| jizz一区二区| 国产经典欧美精品| 久久99久久精品| 亚洲成人激情综合网| 国产精品久久久久久妇女6080| 精品久久国产字幕高潮| 在线观看免费亚洲| 97久久超碰国产精品电影| 国产精品正在播放| 国内精品视频一区二区三区八戒| 亚洲图片欧美色图| 一卡二卡三卡日韩欧美| 亚洲视频一二三| 中文一区二区在线观看| 久久久久久久久久久电影| 欧美大片日本大片免费观看| 3d成人h动漫网站入口| 欧美色爱综合网| 欧美亚洲动漫另类| 91亚洲精品久久久蜜桃网站 | 国产精品一区二区在线播放| 久久爱另类一区二区小说| 日韩在线观看一区二区| 亚洲成a人v欧美综合天堂下载| 亚洲欧洲制服丝袜| 亚洲品质自拍视频| 亚洲蜜臀av乱码久久精品蜜桃| 中文字幕欧美一| 亚洲欧洲日产国码二区| 亚洲乱码精品一二三四区日韩在线 | 日韩一区二区精品| 欧美一级高清大全免费观看| 91精品国产日韩91久久久久久| 欧美日韩情趣电影| 欧美精品久久久久久久久老牛影院| 91久久精品网| 欧美日韩在线播放三区四区| 欧美乱妇一区二区三区不卡视频| 91精品国产91久久综合桃花| 日韩女优毛片在线| 国产视频一区在线播放| 亚洲欧洲在线观看av| 亚洲理论在线观看| 日日摸夜夜添夜夜添国产精品| 秋霞电影一区二区| 国产精品 欧美精品| 成人永久免费视频| 色狠狠av一区二区三区| 欧美福利一区二区| 久久久电影一区二区三区| 久久综合久久久久88| 国产精品二区一区二区aⅴ污介绍| 日韩久久一区二区| 日韩精品亚洲一区二区三区免费| 麻豆精品视频在线观看免费| 福利一区福利二区| 91黄色免费看| 欧美一二三区精品| 中文字幕精品一区二区三区精品| 亚洲精品国产视频| 免费成人你懂的| 国产精品18久久久久久久网站| 国产一区二区三区黄视频| 94色蜜桃网一区二区三区| 欧美日韩国产成人在线免费| 精品免费国产一区二区三区四区| 亚洲国产精品99久久久久久久久| 一区二区三区免费| 国产综合久久久久久鬼色 | 国产99久久久国产精品潘金| 欧美三级三级三级| 日韩欧美资源站| 国产清纯在线一区二区www| 亚洲美女在线国产| 国产在线精品一区二区夜色| 日本道免费精品一区二区三区| 欧美v国产在线一区二区三区| 日韩一区中文字幕| 久久99精品网久久| 91精彩视频在线观看| 精品国产99国产精品| 夜夜嗨av一区二区三区网页| 国内成人免费视频| 欧美日本国产一区| 国产日产欧美一区二区视频| 一区二区欧美在线观看| 国产夫妻精品视频| 日韩一级黄色片| 夜夜亚洲天天久久| 日韩精品一区二区三区在线 | 中文字幕一区二区三区四区不卡| 亚洲高清一区二区三区| 国产69精品一区二区亚洲孕妇| 色综合激情五月| 亚洲天堂成人网| av男人天堂一区| 久久久久久久免费视频了| 国产麻豆视频精品| 日韩av不卡一区二区| 国产一区二区日韩精品| 欧美电影在哪看比较好| 亚洲日本护士毛茸茸| 国产成人精品影院| www亚洲一区| 一区二区三区**美女毛片| 国内精品国产成人国产三级粉色| 欧美日韩精品三区| 一区二区三区.www| 91麻豆文化传媒在线观看| 国产精品午夜在线| 国产成人在线电影| 久久久三级国产网站| 激情综合网天天干| 精品久久久久久久人人人人传媒| 无码av中文一区二区三区桃花岛| 色噜噜狠狠成人中文综合| 国产精品久久久久aaaa| 成人黄色小视频| 欧美激情一区二区三区在线| 成人毛片老司机大片| 亚洲人成在线播放网站岛国| 日本精品视频一区二区三区| 亚洲一区二区三区精品在线| 欧美日韩国产乱码电影| 毛片av一区二区| 欧美国产一区二区| 91蝌蚪国产九色| 亚洲一区二区影院| 欧美videofree性高清杂交| 国产九色精品成人porny| 一区二区中文字幕在线| 欧美日韩成人综合在线一区二区| 免费成人你懂的| 国产精品日日摸夜夜摸av| 91久久精品网| 蜜臀av一区二区三区| 国产女同互慰高潮91漫画| 91蝌蚪porny| 日韩国产精品久久久| 国产欧美精品一区| 欧美日韩成人一区| 国内精品伊人久久久久av一坑| 中文字幕佐山爱一区二区免费| 欧美日韩国产综合一区二区| 国内精品伊人久久久久av一坑| 亚洲女与黑人做爰| 精品久久久久久久久久久久久久久久久 | 欧美大片一区二区| 99精品视频在线播放观看| 日韩 欧美一区二区三区| 亚洲影视在线播放| 一区二区视频免费在线观看| 国产精品99久久久久久似苏梦涵| 91老司机福利 在线| 91麻豆6部合集magnet| 欧美日韩精品欧美日韩精品一| 欧美一区二区啪啪| 国产精品乱人伦| 一区二区久久久| 久久精品国产99久久6| 国产精品99久| 精品视频免费看| 精品国产在天天线2019| 一区二区三区视频在线看| 欧美日韩色一区| 99在线精品一区二区三区| 青青青爽久久午夜综合久久午夜| 亚洲视频一区二区在线| 久久精品一区二区三区av| 欧美日韩国产高清一区二区|