2010-10-20 17:06:48 +02:00
|
|
|
// Copyright (c) 2010 The WebM project authors. All Rights Reserved.
|
|
|
|
//
|
|
|
|
// Use of this source code is governed by a BSD-style license
|
|
|
|
// that can be found in the LICENSE file in the root of the source
|
|
|
|
// tree. An additional intellectual property rights grant can be found
|
|
|
|
// in the file PATENTS. All contributing project authors may
|
|
|
|
// be found in the AUTHORS file in the root of the source tree.
|
|
|
|
|
|
|
|
|
|
|
|
#ifndef MKV_CONTEXT_HPP
|
|
|
|
#define MKV_CONTEXT_HPP 1
|
|
|
|
|
|
|
|
void writeSimpleBock(EbmlGlobal *ebml, unsigned char trackNumber, unsigned short timeCode,
|
|
|
|
int isKeyframe, unsigned char lacingFlag, int discardable,
|
|
|
|
unsigned char *data, unsigned long dataLength);
|
|
|
|
|
|
|
|
|
|
|
|
// these are helper functions
|
|
|
|
void writeHeader(EbmlGlobal *ebml);
|
2012-07-14 00:21:29 +02:00
|
|
|
void writeSegmentInformation(EbmlGlobal *ebml, EbmlLoc *startInfo, unsigned long timeCodeScale, double duration);
|
|
|
|
// this function is a helper only, it assumes a lot of defaults
|
2010-10-20 17:06:48 +02:00
|
|
|
void writeVideoTrack(EbmlGlobal *ebml, unsigned int trackNumber, int flagLacing,
|
|
|
|
char *codecId, unsigned int pixelWidth, unsigned int pixelHeight,
|
|
|
|
double frameRate);
|
|
|
|
void writeAudioTrack(EbmlGlobal *glob, unsigned int trackNumber, int flagLacing,
|
|
|
|
char *codecId, double samplingFrequency, unsigned int channels,
|
|
|
|
unsigned char *private, unsigned long privateSize);
|
|
|
|
|
|
|
|
void writeSimpleBlock(EbmlGlobal *ebml, unsigned char trackNumber, short timeCode,
|
|
|
|
int isKeyframe, unsigned char lacingFlag, int discardable,
|
|
|
|
unsigned char *data, unsigned long dataLength);
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
#endif
|