r1019: Fix crash in Ogg file handling.
[cinelerra/simeon] / mpeg2enc / conform.c
1 /* conform.c, conformance checks                                            */
2
3 /* Copyright (C) 1996, MPEG Software Simulation Group. All Rights Reserved. */
4
5 /*
6  * Disclaimer of Warranty
7  *
8  * These software programs are available to the user without any license fee or
9  * royalty on an "as is" basis.  The MPEG Software Simulation Group disclaims
10  * any and all warranties, whether express, implied, or statuary, including any
11  * implied warranties or merchantability or of fitness for a particular
12  * purpose.  In no event shall the copyright-holder be liable for any
13  * incidental, punitive, or consequential damages of any kind whatsoever
14  * arising from the use of these programs.
15  *
16  * This disclaimer of warranty extends to the user of these programs and user's
17  * customers, employees, agents, transferees, successors, and assigns.
18  *
19  * The MPEG Software Simulation Group does not represent or warrant that the
20  * programs furnished hereunder are free of infringement of any third-party
21  * patents.
22  *
23  * Commercial implementations of MPEG-1 and MPEG-2 video, including shareware,
24  * are subject to royalty fees to patent holders.  Many of these patents are
25  * general enough such that they are unavoidable regardless of implementation
26  * design.
27  *
28  */
29
30 #include <stdio.h>
31 #include <stdlib.h>
32
33 #include "config.h"
34 #include "global.h"
35
36 /* check for (level independent) parameter limits */
37 void range_checks()
38 {
39 }
40
41 /* identifies valid profile / level combinations */
42 static char profile_level_defined[5][4] =
43 {
44 /* HL   H-14 ML   LL  */
45   {1,   1,   1,   0},  /* HP   */
46   {0,   1,   0,   0},  /* Spat */
47   {0,   0,   1,   1},  /* SNR  */
48   {1,   1,   1,   1},  /* MP   */
49   {0,   0,   1,   0}   /* SP   */
50 };
51
52 static struct level_limits {
53   int hor_f_code;
54   int vert_f_code;
55   int hor_size;
56   int vert_size;
57   int sample_rate;
58   int bit_rate; /* Mbit/s */
59   int vbv_buffer_size; /* 16384 bit steps */
60 } maxval_tab[4] =
61 {
62   {9, 5, 1920, 1152, 62668800, 80, 597}, /* HL */
63   {9, 5, 1440, 1152, 47001600, 60, 448}, /* H-14 */
64   {8, 5,  720,  576, 10368000, 15, 112}, /* ML */
65   {7, 4,  352,  288,  3041280,  4,  29}  /* LL */
66 };
67
68 #define SP   5
69 #define MP   4
70 #define SNR  3
71 #define SPAT 2
72 #define HP   1
73
74 #define LL  10
75 #define ML   8
76 #define H14  6
77 #define HL   4
78
79 void profile_and_level_checks()
80 {
81 }