1 #ifndef THEORASTREAMPARAMETER_H_
2 #define THEORASTREAMPARAMETER_H_
3 
4 #include "definition.h"
5 #include "streamParameter.h"
6 
7 class TheoraStreamParameter : public StreamParameter {
8 public:
9 
10   enum PixFormat {
11     pf_420,
12     pf_rsvd,
13     pf_422,
14     pf_444
15   };
16 
17   enum ColorSpace {
18     unspecified,
19     ITU_470M,
20     ITU_470BG
21   };
22 
23   uint32 pictureX;
24   uint32 pictureY;
25   uint32 frameX;
26   uint32 frameY;
27   uint32 frameXOffset;
28   uint32 frameYOffset;
29 
30   uint32 aspectRatioNum;
31   uint32 aspectRatioDenom;
32 
33   uint32 framerateNum;
34   uint32 framerateDenom;
35 
36   uint32 videoQuality;
37   uint32 videoBitrate;
38 
39   uint8  keyframeShift;
40 
41   PixFormat  pixel_fmt;
42   ColorSpace colorspace;
43 
44   TheoraStreamParameter();
45   virtual ~TheoraStreamParameter();
46 
47   virtual bool operator==(const StreamParameter& param);
48 
49   virtual std::string toString();
50 
51   virtual StreamParameter* clone();
52 
53   void calculateFrame();
54 
55 };
56 
57 #endif /*THEORASTREAMPARAMETER_H_*/
58