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

📄 mp4parse.h

📁 mpeg4 demux 代码
💻 H
字号:
  /* <LIC_AMD_STD>
 * Copyright (C) 2003-2005 Advanced Micro Devices, Inc.  All Rights Reserved.
 *
 * Unless otherwise designated in writing, this software and any related
 * documentation are the confidential proprietary information of AMD.
 * THESE MATERIALS ARE PROVIDED "AS IS" WITHOUT ANY
 * UNLESS OTHERWISE NOTED IN WRITING, EXPRESS OR IMPLIED WARRANTY OF ANY
 * KIND, INCLUDING BUT NOT LIMITED TO WARRANTIES OF MERCHANTABILITY,
 * NONINFRINGEMENT, TITLE, FITNESS FOR ANY PARTICULAR PURPOSE AND IN NO
 * EVENT SHALL AMD OR ITS LICENSORS BE LIABLE FOR ANY DAMAGES WHATSOEVER.
 *
 * AMD does not assume any responsibility for any errors which may appear
 * in the Materials nor any responsibility to support or update the
 * Materials.  AMD retains the right to modify the Materials at any time,
 * without notice, and is not obligated to provide such modified
 * Materials to you. AMD is not obligated to furnish, support, or make
 * any further information available to you.
 * </LIC_AMD_STD>  */
/* <CTL_AMD_STD>
 * </CTL_AMD_STD>  */
/* <DOC_AMD_STD>
 * </DOC_AMD_STD>  */

#ifndef _MP4PARSE_
#define _MP4PARSE_

#if defined(__cplusplus)
extern "C" {
#endif

#include "mai_osal.h"

#define NUM_TRACK_TYPES		6

typedef enum {
	VIDEO,
	AUDIO,
	HINT,
	OD,
	BIFS,
	UNKNOWN
}TRACK_TYPES;

typedef enum {
	eMP41,
	eMP42, // MP4 file format ISO/IEC 14496-14
	eISOM,  // ISO base media file format ISO/IEC 15444-3
	eAACAudio,
	eUNKNOWN
} FILE_BRAND;

typedef struct _VIDEO_INFO {
	m_u16 height;
	m_u16 width;
}Video_Info_t;

int check_file_type(unsigned char *pBuff,long lData,FILE_BRAND *File_brand);
void ParseMP4(MAIOSFile_t g_hFile);
void ParseISOM(MAIOSFile_t g_hFile);
void CloseParser();
m_u32 sample_info(long SampleNum, TRACK_TYPES index, m_u32 *samplesize,m_u32 *filepos);
m_u32 GetPTS(long lSampleNum, TRACK_TYPES index);
m_u32 sample_timming_info(long lSampleNum, TRACK_TYPES index,m_u32 *PTS);
m_u32 time_to_sample(TRACK_TYPES index, m_u32 PTS);
m_u32 GetSampeCount(TRACK_TYPES index);
void GetVideoInfo(Video_Info_t *);
void GetAudioInfo(m_u16 * ChannelCount, m_u16 *SampleRate);
void GetConfigInfo(m_u8 *pData, long *lData);

#if defined(__cplusplus)
}
#endif
#endif

 

⌨️ 快捷键说明

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