\hypertarget{structagora_1_1media_1_1_media_recorder_configuration}{}\doxysection{agora\+::media\+::Media\+Recorder\+Configuration Struct Reference}
\label{structagora_1_1media_1_1_media_recorder_configuration}\index{agora::media::MediaRecorderConfiguration@{agora::media::MediaRecorderConfiguration}}


Configuration for audio and video stream recording.  




{\ttfamily \#include $<$Agora\+Media\+Base.\+h$>$}

\doxysubsection*{Public Member Functions}
\begin{DoxyCompactItemize}
\item 
\mbox{\Hypertarget{structagora_1_1media_1_1_media_recorder_configuration_ac55585f051c63a06da9f65953597b798}\label{structagora_1_1media_1_1_media_recorder_configuration_ac55585f051c63a06da9f65953597b798}} 
{\bfseries Media\+Recorder\+Configuration} (const char $\ast$path, Media\+Recorder\+Container\+Format format, Media\+Recorder\+Stream\+Type type, int duration, int interval)
\end{DoxyCompactItemize}
\doxysubsection*{Public Attributes}
\begin{DoxyCompactItemize}
\item 
const char $\ast$ \mbox{\hyperlink{structagora_1_1media_1_1_media_recorder_configuration_a046fa9f69cf60b1f1da636230b5158e6}{storage\+Path}}
\item 
Media\+Recorder\+Container\+Format \mbox{\hyperlink{structagora_1_1media_1_1_media_recorder_configuration_a41065dc90c638682ed57203c4fd2c3c5}{container\+Format}}
\item 
Media\+Recorder\+Stream\+Type \mbox{\hyperlink{structagora_1_1media_1_1_media_recorder_configuration_a310c6173a09e8d44047f1589a8a1533d}{stream\+Type}}
\item 
int \mbox{\hyperlink{structagora_1_1media_1_1_media_recorder_configuration_a32e733f02645d2557c9888d3e5fc1fd7}{max\+Duration\+Ms}}
\item 
int \mbox{\hyperlink{structagora_1_1media_1_1_media_recorder_configuration_acaaf1cb0af2a0301c8bb419c54a58f44}{recorder\+Info\+Update\+Interval}}
\item 
int \mbox{\hyperlink{structagora_1_1media_1_1_media_recorder_configuration_a572bbae3aa13daae3e2229a689e1c2ce}{width}}
\item 
int \mbox{\hyperlink{structagora_1_1media_1_1_media_recorder_configuration_ad70b10935c5162e6ae7053d24d2acbbd}{height}}
\item 
int \mbox{\hyperlink{structagora_1_1media_1_1_media_recorder_configuration_a80ed33885b39e1f3c3fadddc1a3704a4}{fps}}
\item 
int \mbox{\hyperlink{structagora_1_1media_1_1_media_recorder_configuration_a2c6f215be9285e3e6c7f7b2834ce9625}{sample\+\_\+rate}}
\item 
int \mbox{\hyperlink{structagora_1_1media_1_1_media_recorder_configuration_aff4d578bf46a8399aa1cb18ef8673905}{channel\+\_\+num}}
\item 
agora\+::rtc\+::\+V\+I\+D\+E\+O\+\_\+\+S\+O\+U\+R\+C\+E\+\_\+\+T\+Y\+PE \mbox{\hyperlink{structagora_1_1media_1_1_media_recorder_configuration_a14a2e473402fc22f2ab2ed271d11a5ff}{video\+Source\+Type}}
\end{DoxyCompactItemize}


\doxysubsection{Detailed Description}
Configuration for audio and video stream recording. 

\begin{DoxySince}{Since}
v3.\+5.\+2 
\end{DoxySince}


\doxysubsection{Member Data Documentation}
\mbox{\Hypertarget{structagora_1_1media_1_1_media_recorder_configuration_a046fa9f69cf60b1f1da636230b5158e6}\label{structagora_1_1media_1_1_media_recorder_configuration_a046fa9f69cf60b1f1da636230b5158e6}} 
\index{agora::media::MediaRecorderConfiguration@{agora::media::MediaRecorderConfiguration}!storagePath@{storagePath}}
\index{storagePath@{storagePath}!agora::media::MediaRecorderConfiguration@{agora::media::MediaRecorderConfiguration}}
\doxysubsubsection{\texorpdfstring{storagePath}{storagePath}}
{\footnotesize\ttfamily const char$\ast$ agora\+::media\+::\+Media\+Recorder\+Configuration\+::storage\+Path}

The absolute path where the recording file will be saved locally, including the file name and format. For example\+:
\begin{DoxyItemize}
\item Windows\+: {\ttfamily C\+:\textbackslash{}Users\textbackslash{}$<$user\+\_\+name$>$\textbackslash{}App\+Data\textbackslash{}Local\textbackslash{}Agora\textbackslash{}$<$process\+\_\+name$>$\textbackslash{}example.\+mp4}
\item i\+OS\+: {\ttfamily /\+App Sandbox/\+Library/\+Caches/example.\+mp4}
\item mac\+OS\+: {\ttfamily /\+Library/\+Logs/example.mp4}
\item Android\+: {\ttfamily /storage/emulated/0/\+Android/data/$<$package name$>$/files/example.mp4} \begin{DoxyNote}{Note}
Make sure the specified path exists and is writable. 
\end{DoxyNote}

\end{DoxyItemize}\mbox{\Hypertarget{structagora_1_1media_1_1_media_recorder_configuration_a41065dc90c638682ed57203c4fd2c3c5}\label{structagora_1_1media_1_1_media_recorder_configuration_a41065dc90c638682ed57203c4fd2c3c5}} 
\index{agora::media::MediaRecorderConfiguration@{agora::media::MediaRecorderConfiguration}!containerFormat@{containerFormat}}
\index{containerFormat@{containerFormat}!agora::media::MediaRecorderConfiguration@{agora::media::MediaRecorderConfiguration}}
\doxysubsubsection{\texorpdfstring{containerFormat}{containerFormat}}
{\footnotesize\ttfamily Media\+Recorder\+Container\+Format agora\+::media\+::\+Media\+Recorder\+Configuration\+::container\+Format}

The format of the recording file. See {\ttfamily Media\+Recorder\+Container\+Format}. \mbox{\Hypertarget{structagora_1_1media_1_1_media_recorder_configuration_a310c6173a09e8d44047f1589a8a1533d}\label{structagora_1_1media_1_1_media_recorder_configuration_a310c6173a09e8d44047f1589a8a1533d}} 
\index{agora::media::MediaRecorderConfiguration@{agora::media::MediaRecorderConfiguration}!streamType@{streamType}}
\index{streamType@{streamType}!agora::media::MediaRecorderConfiguration@{agora::media::MediaRecorderConfiguration}}
\doxysubsubsection{\texorpdfstring{streamType}{streamType}}
{\footnotesize\ttfamily Media\+Recorder\+Stream\+Type agora\+::media\+::\+Media\+Recorder\+Configuration\+::stream\+Type}

The content to record. See {\ttfamily Media\+Recorder\+Stream\+Type}. \mbox{\Hypertarget{structagora_1_1media_1_1_media_recorder_configuration_a32e733f02645d2557c9888d3e5fc1fd7}\label{structagora_1_1media_1_1_media_recorder_configuration_a32e733f02645d2557c9888d3e5fc1fd7}} 
\index{agora::media::MediaRecorderConfiguration@{agora::media::MediaRecorderConfiguration}!maxDurationMs@{maxDurationMs}}
\index{maxDurationMs@{maxDurationMs}!agora::media::MediaRecorderConfiguration@{agora::media::MediaRecorderConfiguration}}
\doxysubsubsection{\texorpdfstring{maxDurationMs}{maxDurationMs}}
{\footnotesize\ttfamily int agora\+::media\+::\+Media\+Recorder\+Configuration\+::max\+Duration\+Ms}

Maximum recording duration in milliseconds. Default is 120000. \mbox{\Hypertarget{structagora_1_1media_1_1_media_recorder_configuration_acaaf1cb0af2a0301c8bb419c54a58f44}\label{structagora_1_1media_1_1_media_recorder_configuration_acaaf1cb0af2a0301c8bb419c54a58f44}} 
\index{agora::media::MediaRecorderConfiguration@{agora::media::MediaRecorderConfiguration}!recorderInfoUpdateInterval@{recorderInfoUpdateInterval}}
\index{recorderInfoUpdateInterval@{recorderInfoUpdateInterval}!agora::media::MediaRecorderConfiguration@{agora::media::MediaRecorderConfiguration}}
\doxysubsubsection{\texorpdfstring{recorderInfoUpdateInterval}{recorderInfoUpdateInterval}}
{\footnotesize\ttfamily int agora\+::media\+::\+Media\+Recorder\+Configuration\+::recorder\+Info\+Update\+Interval}

Interval for recording information updates, in milliseconds. The valid range is \mbox{[}1000,10000\mbox{]}. The S\+DK triggers the {\ttfamily on\+Recorder\+Info\+Updated} callback based on this value to report updated recording information. \mbox{\Hypertarget{structagora_1_1media_1_1_media_recorder_configuration_a572bbae3aa13daae3e2229a689e1c2ce}\label{structagora_1_1media_1_1_media_recorder_configuration_a572bbae3aa13daae3e2229a689e1c2ce}} 
\index{agora::media::MediaRecorderConfiguration@{agora::media::MediaRecorderConfiguration}!width@{width}}
\index{width@{width}!agora::media::MediaRecorderConfiguration@{agora::media::MediaRecorderConfiguration}}
\doxysubsubsection{\texorpdfstring{width}{width}}
{\footnotesize\ttfamily int agora\+::media\+::\+Media\+Recorder\+Configuration\+::width}

Width (px) of the recorded video. The maximum value for width × height must not exceed 3840 × 2160. This parameter is required only when calling {\ttfamily create\+Media\+Recorder} and setting {\ttfamily type} in {\ttfamily Recorder\+Stream\+Info} to P\+R\+E\+V\+I\+EW. \mbox{\Hypertarget{structagora_1_1media_1_1_media_recorder_configuration_ad70b10935c5162e6ae7053d24d2acbbd}\label{structagora_1_1media_1_1_media_recorder_configuration_ad70b10935c5162e6ae7053d24d2acbbd}} 
\index{agora::media::MediaRecorderConfiguration@{agora::media::MediaRecorderConfiguration}!height@{height}}
\index{height@{height}!agora::media::MediaRecorderConfiguration@{agora::media::MediaRecorderConfiguration}}
\doxysubsubsection{\texorpdfstring{height}{height}}
{\footnotesize\ttfamily int agora\+::media\+::\+Media\+Recorder\+Configuration\+::height}

Height (px) of the recorded video. The maximum value for width × height must not exceed 3840 × 2160. This parameter is required only when calling {\ttfamily create\+Media\+Recorder} and setting {\ttfamily type} in {\ttfamily Recorder\+Stream\+Info} to P\+R\+E\+V\+I\+EW. \mbox{\Hypertarget{structagora_1_1media_1_1_media_recorder_configuration_a80ed33885b39e1f3c3fadddc1a3704a4}\label{structagora_1_1media_1_1_media_recorder_configuration_a80ed33885b39e1f3c3fadddc1a3704a4}} 
\index{agora::media::MediaRecorderConfiguration@{agora::media::MediaRecorderConfiguration}!fps@{fps}}
\index{fps@{fps}!agora::media::MediaRecorderConfiguration@{agora::media::MediaRecorderConfiguration}}
\doxysubsubsection{\texorpdfstring{fps}{fps}}
{\footnotesize\ttfamily int agora\+::media\+::\+Media\+Recorder\+Configuration\+::fps}

Frame rate of the recorded video. The maximum is 30. For example\+: 5, 10, 15, 24, 30. This parameter is required only when calling {\ttfamily create\+Media\+Recorder} and setting {\ttfamily type} in {\ttfamily Recorder\+Stream\+Info} to P\+R\+E\+V\+I\+EW. \mbox{\Hypertarget{structagora_1_1media_1_1_media_recorder_configuration_a2c6f215be9285e3e6c7f7b2834ce9625}\label{structagora_1_1media_1_1_media_recorder_configuration_a2c6f215be9285e3e6c7f7b2834ce9625}} 
\index{agora::media::MediaRecorderConfiguration@{agora::media::MediaRecorderConfiguration}!sample\_rate@{sample\_rate}}
\index{sample\_rate@{sample\_rate}!agora::media::MediaRecorderConfiguration@{agora::media::MediaRecorderConfiguration}}
\doxysubsubsection{\texorpdfstring{sample\_rate}{sample\_rate}}
{\footnotesize\ttfamily int agora\+::media\+::\+Media\+Recorder\+Configuration\+::sample\+\_\+rate}

Sample rate (Hz) of the recorded audio. Supported values\+: 16000, 32000, 44100, or 48000. This parameter is required only when calling {\ttfamily create\+Media\+Recorder} and setting {\ttfamily type} in {\ttfamily Recorder\+Stream\+Info} to P\+R\+E\+V\+I\+EW. \mbox{\Hypertarget{structagora_1_1media_1_1_media_recorder_configuration_aff4d578bf46a8399aa1cb18ef8673905}\label{structagora_1_1media_1_1_media_recorder_configuration_aff4d578bf46a8399aa1cb18ef8673905}} 
\index{agora::media::MediaRecorderConfiguration@{agora::media::MediaRecorderConfiguration}!channel\_num@{channel\_num}}
\index{channel\_num@{channel\_num}!agora::media::MediaRecorderConfiguration@{agora::media::MediaRecorderConfiguration}}
\doxysubsubsection{\texorpdfstring{channel\_num}{channel\_num}}
{\footnotesize\ttfamily int agora\+::media\+::\+Media\+Recorder\+Configuration\+::channel\+\_\+num}

Number of audio channels to record\+:
\begin{DoxyItemize}
\item 1\+: Mono
\item 2\+: Stereo This parameter is required only when calling {\ttfamily create\+Media\+Recorder} and setting {\ttfamily type} in {\ttfamily Recorder\+Stream\+Info} to P\+R\+E\+V\+I\+EW. 
\end{DoxyItemize}\mbox{\Hypertarget{structagora_1_1media_1_1_media_recorder_configuration_a14a2e473402fc22f2ab2ed271d11a5ff}\label{structagora_1_1media_1_1_media_recorder_configuration_a14a2e473402fc22f2ab2ed271d11a5ff}} 
\index{agora::media::MediaRecorderConfiguration@{agora::media::MediaRecorderConfiguration}!videoSourceType@{videoSourceType}}
\index{videoSourceType@{videoSourceType}!agora::media::MediaRecorderConfiguration@{agora::media::MediaRecorderConfiguration}}
\doxysubsubsection{\texorpdfstring{videoSourceType}{videoSourceType}}
{\footnotesize\ttfamily agora\+::rtc\+::\+V\+I\+D\+E\+O\+\_\+\+S\+O\+U\+R\+C\+E\+\_\+\+T\+Y\+PE agora\+::media\+::\+Media\+Recorder\+Configuration\+::video\+Source\+Type}

Type of video source to record. See {\ttfamily V\+I\+D\+E\+O\+\_\+\+S\+O\+U\+R\+C\+E\+\_\+\+T\+Y\+PE}. This parameter is required only when calling {\ttfamily create\+Media\+Recorder} and setting {\ttfamily type} in {\ttfamily Recorder\+Stream\+Info} to P\+R\+E\+V\+I\+EW. 