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

📄 mpeg_stream.h

📁 linux下的MPEG1
💻 H
字号:
/*    $Id: mpeg_stream.h,v 1.2 2004/04/11 12:20:32 miguelfreitas Exp $    Copyright (C) 2000 Herbert Valerio Riedel <hvr@gnu.org>    This program is free software; you can redistribute it and/or modify    it under the terms of the GNU General Public License as published by    the Free Software Foundation; either version 2 of the License, or    (at your option) any later version.    This program is distributed in the hope that it will be useful,    but WITHOUT ANY WARRANTY; without even the implied warranty of    MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the    GNU General Public License for more details.    You should have received a copy of the GNU General Public License    along with this program; if not, write to the Free Software    Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA  02111-1307  USA*/#ifndef __VCD_MPEG_STREAM__#define __VCD_MPEG_STREAM__#include <libvcd/types.h>/* Private includes */#include "stream.h"#include "data_structures.h"#include "mpeg.h"#define MPEG_PACKET_SIZE 2324typedef struct _VcdMpegSource VcdMpegSource;/* used in APS list */struct aps_data{  uint32_t packet_no;  double timestamp;};/* enums */typedef enum {  MPEG_AUDIO_NOSTREAM = 0,  MPEG_AUDIO_1STREAM = 1,  MPEG_AUDIO_2STREAM = 2,  MPEG_AUDIO_EXT_STREAM = 3} mpeg_audio_t;typedef enum {  MPEG_VIDEO_NOSTREAM = 0,  MPEG_VIDEO_NTSC_STILL = 1,  MPEG_VIDEO_NTSC_STILL2 = 2,  MPEG_VIDEO_NTSC_MOTION = 3,  MPEG_VIDEO_PAL_STILL = 5,  MPEG_VIDEO_PAL_STILL2 = 6,  MPEG_VIDEO_PAL_MOTION = 7} mpeg_video_t;/* mpeg stream info */struct vcd_mpeg_stream_info;/* mpeg packet info */struct vcd_mpeg_packet_info;/* access functions */VcdMpegSource *vcd_mpeg_source_new (VcdDataSource *mpeg_file);/* scan the mpeg file... needed to be called only once */typedef struct {  long current_pack;  long current_pos;  long length;} vcd_mpeg_prog_info_t;typedef int (*vcd_mpeg_prog_cb_t) (const vcd_mpeg_prog_info_t *progress_info,                                   void *user_data);voidvcd_mpeg_source_scan (VcdMpegSource *obj, bool strict_aps, bool fix_scan_info,                      vcd_mpeg_prog_cb_t callback, void *user_data);/* gets the packet at given position */intvcd_mpeg_source_get_packet (VcdMpegSource *obj, unsigned long packet_no,			    void *packet_buf, struct vcd_mpeg_packet_info *flags,                            bool fix_scan_info);voidvcd_mpeg_source_close (VcdMpegSource *obj);const struct vcd_mpeg_stream_info *vcd_mpeg_source_get_info (VcdMpegSource *obj);longvcd_mpeg_source_stat (VcdMpegSource *obj);voidvcd_mpeg_source_destroy (VcdMpegSource *obj, bool destroy_file_obj);#endif /* __VCD_MPEG_STREAM__ *//*  * Local variables: *  c-file-style: "gnu" *  tab-width: 8 *  indent-tabs-mode: nil * End: */

⌨️ 快捷键说明

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