1 // Copyright (c) 2010 The WebM project authors. All Rights Reserved. 2 // 3 // Use of this source code is governed by a BSD-style license 4 // that can be found in the LICENSE file in the root of the source 5 // tree. An additional intellectual property rights grant can be found 6 // in the file PATENTS. All contributing project authors may 7 // be found in the AUTHORS file in the root of the source tree. 8 9 10 #ifndef MKV_CONTEXT_HPP 11 #define MKV_CONTEXT_HPP 1 12 13 void writeSimpleBock(EbmlGlobal *ebml, unsigned char trackNumber, unsigned short timeCode, 14 int isKeyframe, unsigned char lacingFlag, int discardable, 15 unsigned char *data, unsigned long dataLength); 16 17 18 // these are helper functions 19 void writeHeader(EbmlGlobal *ebml); 20 void writeSegmentInformation(EbmlGlobal *ebml, EbmlLoc* startInfo , unsigned long timeCodeScale, double duration); 21 //this function is a helper only, it assumes a lot of defaults 22 void writeVideoTrack(EbmlGlobal *ebml, unsigned int trackNumber, int flagLacing, 23 char *codecId, unsigned int pixelWidth, unsigned int pixelHeight, 24 double frameRate); 25 void writeAudioTrack(EbmlGlobal *glob, unsigned int trackNumber, int flagLacing, 26 char *codecId, double samplingFrequency, unsigned int channels, 27 unsigned char *private, unsigned long privateSize); 28 29 void writeSimpleBlock(EbmlGlobal *ebml, unsigned char trackNumber, short timeCode, 30 int isKeyframe, unsigned char lacingFlag, int discardable, 31 unsigned char *data, unsigned long dataLength); 32 33 34 35 #endif