00001 #ifndef MNT_MPEG1_SEQ_H 00002 #define MNT_MPEG1_SEQ_H 00003 00004 #include <stdint.h> 00005 #include "mnt_mpeg1.h" 00006 #include "mnt_bit_parser.h" 00007 00011 class MntMPEG1SeqHdr 00012 { 00013 static const int RESERVE = -1; 00014 00015 static const double pel_aspect_ratio_table_[16]; 00016 static const double picture_rate_table_[16]; 00017 00018 public: 00019 00020 short width_; 00021 short height_; 00022 short mb_width_; 00023 short mb_height_; 00024 int bitrate_; 00025 int vbv_buffer_size_; 00026 char pel_aspect_ratio_; 00027 char picture_rate_; 00028 char constrained_; 00029 char default_qt_; 00030 unsigned char iqt_[64]; 00031 unsigned char niqt_[64]; 00033 int parse(BitParser *bp); 00034 int find(BitParser *bp); 00035 int dump(BitParser *inbp, BitParser *outbp); 00036 int skip(BitParser *bp); 00037 int encode(BitParser *bp); 00038 00039 double get_pic_rate(); 00040 double get_aspect_ratio(); 00041 }; 00042 00043 #endif