Reduce overshoot in 1 pass rate control
[profile/ivi/libvpx.git] / libmkv / WebMElement.h
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