structtheora__info.tex 14 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170171172173174175176177178179180181182183184185186187188189190191192193194195196197
  1. \section{theora\_\-info Struct Reference}
  2. \label{structtheora__info}\index{theora\_\-info@{theora\_\-info}}
  3. Theora bitstream info.
  4. {\ttfamily \#include $<$theora.h$>$}\subsection*{Data Fields}
  5. \begin{DoxyCompactItemize}
  6. \item
  7. ogg\_\-uint32\_\-t {\bf width}
  8. \begin{DoxyCompactList}\small\item\em encoded frame width \item\end{DoxyCompactList}\item
  9. ogg\_\-uint32\_\-t {\bf height}
  10. \begin{DoxyCompactList}\small\item\em encoded frame height \item\end{DoxyCompactList}\item
  11. ogg\_\-uint32\_\-t {\bf frame\_\-width}
  12. \begin{DoxyCompactList}\small\item\em display frame width \item\end{DoxyCompactList}\item
  13. ogg\_\-uint32\_\-t {\bf frame\_\-height}
  14. \begin{DoxyCompactList}\small\item\em display frame height \item\end{DoxyCompactList}\item
  15. ogg\_\-uint32\_\-t {\bf offset\_\-x}
  16. \begin{DoxyCompactList}\small\item\em horizontal offset of the displayed frame \item\end{DoxyCompactList}\item
  17. ogg\_\-uint32\_\-t {\bf offset\_\-y}
  18. \begin{DoxyCompactList}\small\item\em vertical offset of the displayed frame \item\end{DoxyCompactList}\item
  19. ogg\_\-uint32\_\-t {\bf fps\_\-numerator}
  20. \begin{DoxyCompactList}\small\item\em frame rate numerator \item\end{DoxyCompactList}\item
  21. ogg\_\-uint32\_\-t {\bf fps\_\-denominator}
  22. \begin{DoxyCompactList}\small\item\em frame rate denominator \item\end{DoxyCompactList}\item
  23. ogg\_\-uint32\_\-t {\bf aspect\_\-numerator}
  24. \begin{DoxyCompactList}\small\item\em pixel aspect ratio numerator \item\end{DoxyCompactList}\item
  25. ogg\_\-uint32\_\-t {\bf aspect\_\-denominator}
  26. \begin{DoxyCompactList}\small\item\em pixel aspect ratio denominator \item\end{DoxyCompactList}\item
  27. {\bf theora\_\-colorspace} {\bf colorspace}
  28. \begin{DoxyCompactList}\small\item\em colorspace \item\end{DoxyCompactList}\item
  29. int {\bf target\_\-bitrate}
  30. \begin{DoxyCompactList}\small\item\em nominal bitrate in bits per second \item\end{DoxyCompactList}\item
  31. int {\bf quality}
  32. \begin{DoxyCompactList}\small\item\em Nominal quality setting, 0-\/63. \item\end{DoxyCompactList}\item
  33. int {\bf quick\_\-p}
  34. \begin{DoxyCompactList}\small\item\em Quick encode/decode. \item\end{DoxyCompactList}\item
  35. unsigned char {\bf version\_\-major}
  36. \item
  37. unsigned char {\bf version\_\-minor}
  38. \item
  39. unsigned char {\bf version\_\-subminor}
  40. \item
  41. void $\ast$ {\bf codec\_\-setup}
  42. \item
  43. int {\bf dropframes\_\-p}
  44. \item
  45. int {\bf keyframe\_\-auto\_\-p}
  46. \item
  47. ogg\_\-uint32\_\-t {\bf keyframe\_\-frequency}
  48. \item
  49. ogg\_\-uint32\_\-t {\bf keyframe\_\-frequency\_\-force}
  50. \item
  51. ogg\_\-uint32\_\-t {\bf keyframe\_\-data\_\-target\_\-bitrate}
  52. \item
  53. ogg\_\-int32\_\-t {\bf keyframe\_\-auto\_\-threshold}
  54. \item
  55. ogg\_\-uint32\_\-t {\bf keyframe\_\-mindistance}
  56. \item
  57. ogg\_\-int32\_\-t {\bf noise\_\-sensitivity}
  58. \item
  59. ogg\_\-int32\_\-t {\bf sharpness}
  60. \item
  61. {\bf theora\_\-pixelformat} {\bf pixelformat}
  62. \begin{DoxyCompactList}\small\item\em chroma subsampling mode to expect \item\end{DoxyCompactList}\end{DoxyCompactItemize}
  63. \subsection{Detailed Description}
  64. Theora bitstream info. Contains the basic playback parameters for a stream, corresponding to the initial 'info' header packet.
  65. Encoded theora frames must be a multiple of 16 in width and height. To handle other frame sizes, a crop rectangle is specified in frame\_\-height and frame\_\-width, offset\_\-x and $\ast$ offset\_\-y. The offset and size should still be a multiple of 2 to avoid chroma sampling shifts. Offset values in this structure are measured from the upper left of the image.
  66. Frame rate, in frames per second, is stored as a rational fraction. Aspect ratio is also stored as a rational fraction, and refers to the aspect ratio of the frame pixels, not of the overall frame itself.
  67. See {\tt examples/encoder\_\-example.c} for usage examples of the other paramters and good default settings for the encoder parameters.
  68. \subsection{Field Documentation}
  69. \index{theora\_\-info@{theora\_\-info}!aspect\_\-denominator@{aspect\_\-denominator}}
  70. \index{aspect\_\-denominator@{aspect\_\-denominator}!theora_info@{theora\_\-info}}
  71. \subsubsection[{aspect\_\-denominator}]{\setlength{\rightskip}{0pt plus 5cm}ogg\_\-uint32\_\-t {\bf theora\_\-info::aspect\_\-denominator}}\label{structtheora__info_afebc4d0cbfb34b68c833a8c79e83ae12}
  72. pixel aspect ratio denominator \index{theora\_\-info@{theora\_\-info}!aspect\_\-numerator@{aspect\_\-numerator}}
  73. \index{aspect\_\-numerator@{aspect\_\-numerator}!theora_info@{theora\_\-info}}
  74. \subsubsection[{aspect\_\-numerator}]{\setlength{\rightskip}{0pt plus 5cm}ogg\_\-uint32\_\-t {\bf theora\_\-info::aspect\_\-numerator}}\label{structtheora__info_a5a3ed8c79815fba1aa06c3f7d8e48b35}
  75. pixel aspect ratio numerator \index{theora\_\-info@{theora\_\-info}!codec\_\-setup@{codec\_\-setup}}
  76. \index{codec\_\-setup@{codec\_\-setup}!theora_info@{theora\_\-info}}
  77. \subsubsection[{codec\_\-setup}]{\setlength{\rightskip}{0pt plus 5cm}void$\ast$ {\bf theora\_\-info::codec\_\-setup}}\label{structtheora__info_a719a1d77a4a3bfeab79aa5747dbbb04c}
  78. \index{theora\_\-info@{theora\_\-info}!colorspace@{colorspace}}
  79. \index{colorspace@{colorspace}!theora_info@{theora\_\-info}}
  80. \subsubsection[{colorspace}]{\setlength{\rightskip}{0pt plus 5cm}{\bf theora\_\-colorspace} {\bf theora\_\-info::colorspace}}\label{structtheora__info_a5eaba99c96706d47b426ab7b7602dc5d}
  81. colorspace \index{theora\_\-info@{theora\_\-info}!dropframes\_\-p@{dropframes\_\-p}}
  82. \index{dropframes\_\-p@{dropframes\_\-p}!theora_info@{theora\_\-info}}
  83. \subsubsection[{dropframes\_\-p}]{\setlength{\rightskip}{0pt plus 5cm}int {\bf theora\_\-info::dropframes\_\-p}}\label{structtheora__info_af294db65a8363a0bcf43f4727763b291}
  84. \index{theora\_\-info@{theora\_\-info}!fps\_\-denominator@{fps\_\-denominator}}
  85. \index{fps\_\-denominator@{fps\_\-denominator}!theora_info@{theora\_\-info}}
  86. \subsubsection[{fps\_\-denominator}]{\setlength{\rightskip}{0pt plus 5cm}ogg\_\-uint32\_\-t {\bf theora\_\-info::fps\_\-denominator}}\label{structtheora__info_a9aa7e826e0323a4ae8cd8646a6cfbfea}
  87. frame rate denominator \index{theora\_\-info@{theora\_\-info}!fps\_\-numerator@{fps\_\-numerator}}
  88. \index{fps\_\-numerator@{fps\_\-numerator}!theora_info@{theora\_\-info}}
  89. \subsubsection[{fps\_\-numerator}]{\setlength{\rightskip}{0pt plus 5cm}ogg\_\-uint32\_\-t {\bf theora\_\-info::fps\_\-numerator}}\label{structtheora__info_a3478199aa5ab213816c1819f70085ad7}
  90. frame rate numerator \index{theora\_\-info@{theora\_\-info}!frame\_\-height@{frame\_\-height}}
  91. \index{frame\_\-height@{frame\_\-height}!theora_info@{theora\_\-info}}
  92. \subsubsection[{frame\_\-height}]{\setlength{\rightskip}{0pt plus 5cm}ogg\_\-uint32\_\-t {\bf theora\_\-info::frame\_\-height}}\label{structtheora__info_a287e4c194f1d2e6deb39d59f1748ea48}
  93. display frame height \index{theora\_\-info@{theora\_\-info}!frame\_\-width@{frame\_\-width}}
  94. \index{frame\_\-width@{frame\_\-width}!theora_info@{theora\_\-info}}
  95. \subsubsection[{frame\_\-width}]{\setlength{\rightskip}{0pt plus 5cm}ogg\_\-uint32\_\-t {\bf theora\_\-info::frame\_\-width}}\label{structtheora__info_a8f28f4018a25634d40e4ae861fbbccfa}
  96. display frame width \index{theora\_\-info@{theora\_\-info}!height@{height}}
  97. \index{height@{height}!theora_info@{theora\_\-info}}
  98. \subsubsection[{height}]{\setlength{\rightskip}{0pt plus 5cm}ogg\_\-uint32\_\-t {\bf theora\_\-info::height}}\label{structtheora__info_ae6f0274fc4a7f285c422d91abb35f9c6}
  99. encoded frame height \index{theora\_\-info@{theora\_\-info}!keyframe\_\-auto\_\-p@{keyframe\_\-auto\_\-p}}
  100. \index{keyframe\_\-auto\_\-p@{keyframe\_\-auto\_\-p}!theora_info@{theora\_\-info}}
  101. \subsubsection[{keyframe\_\-auto\_\-p}]{\setlength{\rightskip}{0pt plus 5cm}int {\bf theora\_\-info::keyframe\_\-auto\_\-p}}\label{structtheora__info_a23648173369174f687085c0ce85ef30e}
  102. \index{theora\_\-info@{theora\_\-info}!keyframe\_\-auto\_\-threshold@{keyframe\_\-auto\_\-threshold}}
  103. \index{keyframe\_\-auto\_\-threshold@{keyframe\_\-auto\_\-threshold}!theora_info@{theora\_\-info}}
  104. \subsubsection[{keyframe\_\-auto\_\-threshold}]{\setlength{\rightskip}{0pt plus 5cm}ogg\_\-int32\_\-t {\bf theora\_\-info::keyframe\_\-auto\_\-threshold}}\label{structtheora__info_a95cb8958e29ad3d24047ee8f9e7fd99b}
  105. \index{theora\_\-info@{theora\_\-info}!keyframe\_\-data\_\-target\_\-bitrate@{keyframe\_\-data\_\-target\_\-bitrate}}
  106. \index{keyframe\_\-data\_\-target\_\-bitrate@{keyframe\_\-data\_\-target\_\-bitrate}!theora_info@{theora\_\-info}}
  107. \subsubsection[{keyframe\_\-data\_\-target\_\-bitrate}]{\setlength{\rightskip}{0pt plus 5cm}ogg\_\-uint32\_\-t {\bf theora\_\-info::keyframe\_\-data\_\-target\_\-bitrate}}\label{structtheora__info_a588942d1ee90a26a7effdf6a0e98b9ce}
  108. \index{theora\_\-info@{theora\_\-info}!keyframe\_\-frequency@{keyframe\_\-frequency}}
  109. \index{keyframe\_\-frequency@{keyframe\_\-frequency}!theora_info@{theora\_\-info}}
  110. \subsubsection[{keyframe\_\-frequency}]{\setlength{\rightskip}{0pt plus 5cm}ogg\_\-uint32\_\-t {\bf theora\_\-info::keyframe\_\-frequency}}\label{structtheora__info_a03e1b3e337af5f9dabaaaeb9050f145a}
  111. \index{theora\_\-info@{theora\_\-info}!keyframe\_\-frequency\_\-force@{keyframe\_\-frequency\_\-force}}
  112. \index{keyframe\_\-frequency\_\-force@{keyframe\_\-frequency\_\-force}!theora_info@{theora\_\-info}}
  113. \subsubsection[{keyframe\_\-frequency\_\-force}]{\setlength{\rightskip}{0pt plus 5cm}ogg\_\-uint32\_\-t {\bf theora\_\-info::keyframe\_\-frequency\_\-force}}\label{structtheora__info_ad9d2e22c44a53473010e6d1042dfe0d8}
  114. \index{theora\_\-info@{theora\_\-info}!keyframe\_\-mindistance@{keyframe\_\-mindistance}}
  115. \index{keyframe\_\-mindistance@{keyframe\_\-mindistance}!theora_info@{theora\_\-info}}
  116. \subsubsection[{keyframe\_\-mindistance}]{\setlength{\rightskip}{0pt plus 5cm}ogg\_\-uint32\_\-t {\bf theora\_\-info::keyframe\_\-mindistance}}\label{structtheora__info_aa79ca8c0e77a884d4487fd627fae32e9}
  117. \index{theora\_\-info@{theora\_\-info}!noise\_\-sensitivity@{noise\_\-sensitivity}}
  118. \index{noise\_\-sensitivity@{noise\_\-sensitivity}!theora_info@{theora\_\-info}}
  119. \subsubsection[{noise\_\-sensitivity}]{\setlength{\rightskip}{0pt plus 5cm}ogg\_\-int32\_\-t {\bf theora\_\-info::noise\_\-sensitivity}}\label{structtheora__info_ac4789034f547b57d1075e035050eeed9}
  120. \index{theora\_\-info@{theora\_\-info}!offset\_\-x@{offset\_\-x}}
  121. \index{offset\_\-x@{offset\_\-x}!theora_info@{theora\_\-info}}
  122. \subsubsection[{offset\_\-x}]{\setlength{\rightskip}{0pt plus 5cm}ogg\_\-uint32\_\-t {\bf theora\_\-info::offset\_\-x}}\label{structtheora__info_af5949a02bef29512f2705e6f6c944e3b}
  123. horizontal offset of the displayed frame \index{theora\_\-info@{theora\_\-info}!offset\_\-y@{offset\_\-y}}
  124. \index{offset\_\-y@{offset\_\-y}!theora_info@{theora\_\-info}}
  125. \subsubsection[{offset\_\-y}]{\setlength{\rightskip}{0pt plus 5cm}ogg\_\-uint32\_\-t {\bf theora\_\-info::offset\_\-y}}\label{structtheora__info_a91c3922097ba32a85acd584a01dc2c93}
  126. vertical offset of the displayed frame \index{theora\_\-info@{theora\_\-info}!pixelformat@{pixelformat}}
  127. \index{pixelformat@{pixelformat}!theora_info@{theora\_\-info}}
  128. \subsubsection[{pixelformat}]{\setlength{\rightskip}{0pt plus 5cm}{\bf theora\_\-pixelformat} {\bf theora\_\-info::pixelformat}}\label{structtheora__info_a65ab4376ab5242ee82e06c78fb7008ab}
  129. chroma subsampling mode to expect \index{theora\_\-info@{theora\_\-info}!quality@{quality}}
  130. \index{quality@{quality}!theora_info@{theora\_\-info}}
  131. \subsubsection[{quality}]{\setlength{\rightskip}{0pt plus 5cm}int {\bf theora\_\-info::quality}}\label{structtheora__info_a71a4748a5f31bd58d0e403b7806c980d}
  132. Nominal quality setting, 0-\/63. \index{theora\_\-info@{theora\_\-info}!quick\_\-p@{quick\_\-p}}
  133. \index{quick\_\-p@{quick\_\-p}!theora_info@{theora\_\-info}}
  134. \subsubsection[{quick\_\-p}]{\setlength{\rightskip}{0pt plus 5cm}int {\bf theora\_\-info::quick\_\-p}}\label{structtheora__info_a2dfae4fd175dbd19254eaf0697778ff5}
  135. Quick encode/decode. \index{theora\_\-info@{theora\_\-info}!sharpness@{sharpness}}
  136. \index{sharpness@{sharpness}!theora_info@{theora\_\-info}}
  137. \subsubsection[{sharpness}]{\setlength{\rightskip}{0pt plus 5cm}ogg\_\-int32\_\-t {\bf theora\_\-info::sharpness}}\label{structtheora__info_a3fb695de2b2f56dd0203b9e2eb0df1cc}
  138. \index{theora\_\-info@{theora\_\-info}!target\_\-bitrate@{target\_\-bitrate}}
  139. \index{target\_\-bitrate@{target\_\-bitrate}!theora_info@{theora\_\-info}}
  140. \subsubsection[{target\_\-bitrate}]{\setlength{\rightskip}{0pt plus 5cm}int {\bf theora\_\-info::target\_\-bitrate}}\label{structtheora__info_a0cfba041767ae2416dd190a406afe713}
  141. nominal bitrate in bits per second \index{theora\_\-info@{theora\_\-info}!version\_\-major@{version\_\-major}}
  142. \index{version\_\-major@{version\_\-major}!theora_info@{theora\_\-info}}
  143. \subsubsection[{version\_\-major}]{\setlength{\rightskip}{0pt plus 5cm}unsigned char {\bf theora\_\-info::version\_\-major}}\label{structtheora__info_a7c5ebb9e6700aaef87f29f7c6074e474}
  144. \index{theora\_\-info@{theora\_\-info}!version\_\-minor@{version\_\-minor}}
  145. \index{version\_\-minor@{version\_\-minor}!theora_info@{theora\_\-info}}
  146. \subsubsection[{version\_\-minor}]{\setlength{\rightskip}{0pt plus 5cm}unsigned char {\bf theora\_\-info::version\_\-minor}}\label{structtheora__info_a75eda4f30270d833c7b9dba43932a06a}
  147. \index{theora\_\-info@{theora\_\-info}!version\_\-subminor@{version\_\-subminor}}
  148. \index{version\_\-subminor@{version\_\-subminor}!theora_info@{theora\_\-info}}
  149. \subsubsection[{version\_\-subminor}]{\setlength{\rightskip}{0pt plus 5cm}unsigned char {\bf theora\_\-info::version\_\-subminor}}\label{structtheora__info_aa07967ecd6e20bd2928ead42b6397b3d}
  150. \index{theora\_\-info@{theora\_\-info}!width@{width}}
  151. \index{width@{width}!theora_info@{theora\_\-info}}
  152. \subsubsection[{width}]{\setlength{\rightskip}{0pt plus 5cm}ogg\_\-uint32\_\-t {\bf theora\_\-info::width}}\label{structtheora__info_a17c2fc651bb3329f1ea6b13ff1d3957b}
  153. encoded frame width
  154. The documentation for this struct was generated from the following file:\begin{DoxyCompactItemize}
  155. \item
  156. {\bf theora.h}\end{DoxyCompactItemize}