matroska.h
上传用户:lctgjx
上传日期:2022-06-04
资源大小:8887k
文件大小:2k
源码类别:

流媒体/Mpeg4/MP4

开发平台:

Visual C++

  1. /*****************************************************************************
  2.  * matroska.h:
  3.  *****************************************************************************
  4.  * Copyright (C) 2005 Mike Matsnev
  5.  *
  6.  * This program is free software; you can redistribute it and/or modify
  7.  * it under the terms of the GNU General Public License as published by
  8.  * the Free Software Foundation; either version 2 of the License, or
  9.  * (at your option) any later version.
  10.  *
  11.  * This program is distributed in the hope that it will be useful,
  12.  * but WITHOUT ANY WARRANTY; without even the implied warranty of
  13.  * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
  14.  * GNU General Public License for more details.
  15.  *
  16.  * You should have received a copy of the GNU General Public License
  17.  * along with this program; if not, write to the Free Software
  18.  * Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA  02111, USA.
  19.  *****************************************************************************/
  20. #ifndef X264_MATROSKA_H
  21. #define X264_MATROSKA_H
  22. typedef struct mk_writer mk_writer;
  23. mk_writer *mk_create_writer( const char *filename );
  24. int mk_writeHeader( mk_writer *w, const char *writing_app,
  25.                     const char *codec_id,
  26.                     const void *codec_private, unsigned codec_private_size,
  27.                     int64_t default_frame_duration,
  28.                     int64_t timescale,
  29.                     unsigned width, unsigned height,
  30.                     unsigned d_width, unsigned d_height );
  31. int  mk_start_frame( mk_writer *w );
  32. int  mk_add_frame_data( mk_writer *w, const void *data, unsigned size );
  33. int  mk_set_frame_flags( mk_writer *w, int64_t timestamp, int keyframe );
  34. int  mk_close( mk_writer *w );
  35. #endif