\hypertarget{video__low_8h}{
\section{libbroadway/include/video\_\-low.h File Reference}
\label{video__low_8h}\index{libbroadway/include/video\_\-low.h@{libbroadway/include/video\_\-low.h}}
}
\subsection*{Enumerations}
\begin{DoxyCompactItemize}
\item 
enum \hyperlink{video__low_8h_af3adc43dd6827e7353036a1ea90d7625}{vmode\_\-t} \{ \hyperlink{video__low_8h_af3adc43dd6827e7353036a1ea90d7625ac010eb2177f9874e1af1e8778242ddc5}{VIDEO\_\-640X480\_\-NTSCi\_\-YUV16} =  0, 
\hyperlink{video__low_8h_af3adc43dd6827e7353036a1ea90d7625aeae3c197048bfa78edf71ab6191f7599}{VIDEO\_\-640X528\_\-PAL50\_\-YUV16}, 
\hyperlink{video__low_8h_af3adc43dd6827e7353036a1ea90d7625afc34a378c4f1d67c37a8b13603fd7101}{VIDEO\_\-640X480\_\-PAL60\_\-YUV16}, 
\hyperlink{video__low_8h_af3adc43dd6827e7353036a1ea90d7625a8dc2a7839c9e301ea38f07c874027c9a}{VIDEO\_\-640X480\_\-NTSCp\_\-YUV16}
 \}
\end{DoxyCompactItemize}
\subsection*{Functions}
\begin{DoxyCompactItemize}
\item 
void \hyperlink{video__low_8h_ae95675a169426126587b6ed1451de05c}{VIDEO\_\-Init} (\hyperlink{video__low_8h_af3adc43dd6827e7353036a1ea90d7625}{vmode\_\-t} vmode)
\begin{DoxyCompactList}\small\item\em Sets up the video system. \item\end{DoxyCompactList}\item 
void \hyperlink{video__low_8h_a1b7053a34e3a541436880806f0228555}{VIDEO\_\-SetFrameBuffer} (void $\ast$fb)
\begin{DoxyCompactList}\small\item\em Sets the used External Framebuffer. \item\end{DoxyCompactList}\item 
\hypertarget{video__low_8h_a49f3eed54f2ef71a54501e746564e7a8}{
void \hyperlink{video__low_8h_a49f3eed54f2ef71a54501e746564e7a8}{VIDEO\_\-WaitVSync} (void)}
\label{video__low_8h_a49f3eed54f2ef71a54501e746564e7a8}

\begin{DoxyCompactList}\small\item\em Waits for a VSync. \item\end{DoxyCompactList}\item 
void \hyperlink{video__low_8h_ad581746e2d61a74c77397c5fcadbfc37}{VIDEO\_\-BlackOut} (void)
\begin{DoxyCompactList}\small\item\em Blacks out the screen. \item\end{DoxyCompactList}\item 
void \hyperlink{video__low_8h_ae86508f980ccba57669cca4caa75d7e3}{VIDEO\_\-Shutdown} (void)
\begin{DoxyCompactList}\small\item\em Shuts down the video system. \item\end{DoxyCompactList}\item 
\hypertarget{video__low_8h_ab904bd3e9a6bdba700fca747b4bcde59}{
void \hyperlink{video__low_8h_ab904bd3e9a6bdba700fca747b4bcde59}{VISetupEncoder} (void)}
\label{video__low_8h_ab904bd3e9a6bdba700fca747b4bcde59}

\begin{DoxyCompactList}\small\item\em Sets up the Video Encoder. \item\end{DoxyCompactList}\item 
u32 \hyperlink{video__low_8h_ac80b27af17645cc6ccf6bb511d8e7b40}{make\_\-yuv} (u8 r1, u8 g1, u8 b1, u8 r2, u8 g2, u8 b2)
\begin{DoxyCompactList}\small\item\em Converts two RGB values into a YUV value. \item\end{DoxyCompactList}\end{DoxyCompactItemize}


\subsection{Detailed Description}
A collection of low-\/level video functions allowing direct access to the XFB (eXternal FrameBuffer) and to set up the rest of the video for output. \begin{Desc}
\item[\hyperlink{todo__todo000003}{Todo}]Fix WaitVSync to actually do things properly. 

Change function names to not be so libogc-\/esque. \end{Desc}


\subsection{Enumeration Type Documentation}
\hypertarget{video__low_8h_af3adc43dd6827e7353036a1ea90d7625}{
\index{video\_\-low.h@{video\_\-low.h}!vmode\_\-t@{vmode\_\-t}}
\index{vmode\_\-t@{vmode\_\-t}!video_low.h@{video\_\-low.h}}
\subsubsection[{vmode\_\-t}]{\setlength{\rightskip}{0pt plus 5cm}enum {\bf vmode\_\-t}}}
\label{video__low_8h_af3adc43dd6827e7353036a1ea90d7625}
An enumeration for the video modes supported \begin{Desc}
\item[Enumerator: ]\par
\begin{description}
\index{VIDEO\_\-640X480\_\-NTSCi\_\-YUV16@{VIDEO\_\-640X480\_\-NTSCi\_\-YUV16}!video\_\-low.h@{video\_\-low.h}}\index{video\_\-low.h@{video\_\-low.h}!VIDEO\_\-640X480\_\-NTSCi\_\-YUV16@{VIDEO\_\-640X480\_\-NTSCi\_\-YUV16}}\item[{\em 
\hypertarget{video__low_8h_af3adc43dd6827e7353036a1ea90d7625ac010eb2177f9874e1af1e8778242ddc5}{
VIDEO\_\-640X480\_\-NTSCi\_\-YUV16}
\label{video__low_8h_af3adc43dd6827e7353036a1ea90d7625ac010eb2177f9874e1af1e8778242ddc5}
}]Interlaced: YES, Video Type: NTSC, Refresh Rate: 60Hz, Size: 640x480 \index{VIDEO\_\-640X528\_\-PAL50\_\-YUV16@{VIDEO\_\-640X528\_\-PAL50\_\-YUV16}!video\_\-low.h@{video\_\-low.h}}\index{video\_\-low.h@{video\_\-low.h}!VIDEO\_\-640X528\_\-PAL50\_\-YUV16@{VIDEO\_\-640X528\_\-PAL50\_\-YUV16}}\item[{\em 
\hypertarget{video__low_8h_af3adc43dd6827e7353036a1ea90d7625aeae3c197048bfa78edf71ab6191f7599}{
VIDEO\_\-640X528\_\-PAL50\_\-YUV16}
\label{video__low_8h_af3adc43dd6827e7353036a1ea90d7625aeae3c197048bfa78edf71ab6191f7599}
}]Interlaced: YES, Video Type: PAL, Refresh Rate: 50Hz, Size: 640x528 \index{VIDEO\_\-640X480\_\-PAL60\_\-YUV16@{VIDEO\_\-640X480\_\-PAL60\_\-YUV16}!video\_\-low.h@{video\_\-low.h}}\index{video\_\-low.h@{video\_\-low.h}!VIDEO\_\-640X480\_\-PAL60\_\-YUV16@{VIDEO\_\-640X480\_\-PAL60\_\-YUV16}}\item[{\em 
\hypertarget{video__low_8h_af3adc43dd6827e7353036a1ea90d7625afc34a378c4f1d67c37a8b13603fd7101}{
VIDEO\_\-640X480\_\-PAL60\_\-YUV16}
\label{video__low_8h_af3adc43dd6827e7353036a1ea90d7625afc34a378c4f1d67c37a8b13603fd7101}
}]Interlaced: YES, Video Type: PAL, Refresh Rate: 60Hz, Size: 640x480 \index{VIDEO\_\-640X480\_\-NTSCp\_\-YUV16@{VIDEO\_\-640X480\_\-NTSCp\_\-YUV16}!video\_\-low.h@{video\_\-low.h}}\index{video\_\-low.h@{video\_\-low.h}!VIDEO\_\-640X480\_\-NTSCp\_\-YUV16@{VIDEO\_\-640X480\_\-NTSCp\_\-YUV16}}\item[{\em 
\hypertarget{video__low_8h_af3adc43dd6827e7353036a1ea90d7625a8dc2a7839c9e301ea38f07c874027c9a}{
VIDEO\_\-640X480\_\-NTSCp\_\-YUV16}
\label{video__low_8h_af3adc43dd6827e7353036a1ea90d7625a8dc2a7839c9e301ea38f07c874027c9a}
}]Interlaced: NO, Video Type: NTSC, Refresh Rate: 60Hz, Size: 640x480 \end{description}
\end{Desc}



\subsection{Function Documentation}
\hypertarget{video__low_8h_ac80b27af17645cc6ccf6bb511d8e7b40}{
\index{video\_\-low.h@{video\_\-low.h}!make\_\-yuv@{make\_\-yuv}}
\index{make\_\-yuv@{make\_\-yuv}!video_low.h@{video\_\-low.h}}
\subsubsection[{make\_\-yuv}]{\setlength{\rightskip}{0pt plus 5cm}u32 make\_\-yuv (u8 {\em r1}, \/  u8 {\em g1}, \/  u8 {\em b1}, \/  u8 {\em r2}, \/  u8 {\em g2}, \/  u8 {\em b2})}}
\label{video__low_8h_ac80b27af17645cc6ccf6bb511d8e7b40}


Converts two RGB values into a YUV value. 

The value is suitable for direct writing to the framebuffer. 
\begin{DoxyParams}{Parameters}
\item[{\em r1}]Red value of the left pixel. \item[{\em g1}]Green value of the left pixel. \item[{\em b1}]Blue value of the left pixel. \item[{\em r2}]Red value of the right pixel. \item[{\em g2}]Green value of the right pixel. \item[{\em b2}]Blue value of the right pixel. \end{DoxyParams}
\begin{DoxyReturn}{Returns}
The YUV value. 
\end{DoxyReturn}
\hypertarget{video__low_8h_ad581746e2d61a74c77397c5fcadbfc37}{
\index{video\_\-low.h@{video\_\-low.h}!VIDEO\_\-BlackOut@{VIDEO\_\-BlackOut}}
\index{VIDEO\_\-BlackOut@{VIDEO\_\-BlackOut}!video_low.h@{video\_\-low.h}}
\subsubsection[{VIDEO\_\-BlackOut}]{\setlength{\rightskip}{0pt plus 5cm}void VIDEO\_\-BlackOut (void)}}
\label{video__low_8h_ad581746e2d61a74c77397c5fcadbfc37}


Blacks out the screen. 

This is only reversable by calling VIDEO\_\-Init again. \hypertarget{video__low_8h_ae95675a169426126587b6ed1451de05c}{
\index{video\_\-low.h@{video\_\-low.h}!VIDEO\_\-Init@{VIDEO\_\-Init}}
\index{VIDEO\_\-Init@{VIDEO\_\-Init}!video_low.h@{video\_\-low.h}}
\subsubsection[{VIDEO\_\-Init}]{\setlength{\rightskip}{0pt plus 5cm}void VIDEO\_\-Init ({\bf vmode\_\-t} {\em vmode})}}
\label{video__low_8h_ae95675a169426126587b6ed1451de05c}


Sets up the video system. 


\begin{DoxyParams}{Parameters}
\item[{\em vmode}]the video mode being used. \end{DoxyParams}
\hypertarget{video__low_8h_a1b7053a34e3a541436880806f0228555}{
\index{video\_\-low.h@{video\_\-low.h}!VIDEO\_\-SetFrameBuffer@{VIDEO\_\-SetFrameBuffer}}
\index{VIDEO\_\-SetFrameBuffer@{VIDEO\_\-SetFrameBuffer}!video_low.h@{video\_\-low.h}}
\subsubsection[{VIDEO\_\-SetFrameBuffer}]{\setlength{\rightskip}{0pt plus 5cm}void VIDEO\_\-SetFrameBuffer (void $\ast$ {\em fb})}}
\label{video__low_8h_a1b7053a34e3a541436880806f0228555}


Sets the used External Framebuffer. 

Sets the video system to use the specified framebuffer as the External Framebuffer (XFB). 
\begin{DoxyParams}{Parameters}
\item[{\em fb}]the framebuffer to use. \end{DoxyParams}
\hypertarget{video__low_8h_ae86508f980ccba57669cca4caa75d7e3}{
\index{video\_\-low.h@{video\_\-low.h}!VIDEO\_\-Shutdown@{VIDEO\_\-Shutdown}}
\index{VIDEO\_\-Shutdown@{VIDEO\_\-Shutdown}!video_low.h@{video\_\-low.h}}
\subsubsection[{VIDEO\_\-Shutdown}]{\setlength{\rightskip}{0pt plus 5cm}void VIDEO\_\-Shutdown (void)}}
\label{video__low_8h_ae86508f980ccba57669cca4caa75d7e3}


Shuts down the video system. 

This is only reversable by calling VIDEO\_\-Init again. 