\hypertarget{enumio_1_1agora_1_1rte_1_1_constants_1_1_abr_fallback_layer}{}\doxysection{io.\+agora.\+rte.\+Constants.\+Abr\+Fallback\+Layer Enum Reference}
\label{enumio_1_1agora_1_1rte_1_1_constants_1_1_abr_fallback_layer}\index{io.agora.rte.Constants.AbrFallbackLayer@{io.agora.rte.Constants.AbrFallbackLayer}}


The quality level for video stream fallback.  


\doxysubsection*{Static Public Member Functions}
\begin{DoxyCompactItemize}
\item 
\mbox{\Hypertarget{enumio_1_1agora_1_1rte_1_1_constants_1_1_abr_fallback_layer_a291d120d63a0382944faa730a67d1728}\label{enumio_1_1agora_1_1rte_1_1_constants_1_1_abr_fallback_layer_a291d120d63a0382944faa730a67d1728}} 
static int {\bfseries get\+Value} (\mbox{\hyperlink{enumio_1_1agora_1_1rte_1_1_constants_1_1_abr_fallback_layer}{Abr\+Fallback\+Layer}} type)
\item 
\mbox{\Hypertarget{enumio_1_1agora_1_1rte_1_1_constants_1_1_abr_fallback_layer_a893b126a1f45ffc47e8b93d6cd2f910d}\label{enumio_1_1agora_1_1rte_1_1_constants_1_1_abr_fallback_layer_a893b126a1f45ffc47e8b93d6cd2f910d}} 
static \mbox{\hyperlink{enumio_1_1agora_1_1rte_1_1_constants_1_1_abr_fallback_layer}{Abr\+Fallback\+Layer}} {\bfseries from\+Int} (int v)
\end{DoxyCompactItemize}
\doxysubsection*{Public Attributes}
\begin{DoxyCompactItemize}
\item 
\mbox{\hyperlink{enumio_1_1agora_1_1rte_1_1_constants_1_1_abr_fallback_layer_a9787260fa7e9de44ee76f60076bf8890}{D\+I\+S\+A\+B\+L\+ED}} =(0)
\item 
\mbox{\hyperlink{enumio_1_1agora_1_1rte_1_1_constants_1_1_abr_fallback_layer_a19f7c3285909c48f71cc1402fd0a242c}{L\+OW}} =(1)
\item 
\mbox{\hyperlink{enumio_1_1agora_1_1rte_1_1_constants_1_1_abr_fallback_layer_af74e865346bcd7e920c616c559c49d6b}{A\+U\+D\+I\+O\+\_\+\+O\+N\+LY}} =(2)
\item 
\mbox{\hyperlink{enumio_1_1agora_1_1rte_1_1_constants_1_1_abr_fallback_layer_acd558f7c13c0fd28686703cc6ac65845}{L\+A\+Y\+E\+R1}} =(3)
\item 
\mbox{\hyperlink{enumio_1_1agora_1_1rte_1_1_constants_1_1_abr_fallback_layer_ac6b4458f54917c99096d841589877ddb}{L\+A\+Y\+E\+R2}} =(4)
\item 
\mbox{\hyperlink{enumio_1_1agora_1_1rte_1_1_constants_1_1_abr_fallback_layer_a05c1d5931e248519008c33692406a7e6}{L\+A\+Y\+E\+R3}} =(5)
\item 
\mbox{\hyperlink{enumio_1_1agora_1_1rte_1_1_constants_1_1_abr_fallback_layer_aca3e49b5da441d0271cc1cd45ab328b7}{L\+A\+Y\+E\+R4}} =(6)
\item 
\mbox{\hyperlink{enumio_1_1agora_1_1rte_1_1_constants_1_1_abr_fallback_layer_a02fc52bfcc5d5a2a9de34a8bd4bdf9f0}{L\+A\+Y\+E\+R5}} =(7)
\item 
\mbox{\hyperlink{enumio_1_1agora_1_1rte_1_1_constants_1_1_abr_fallback_layer_a707467c73708dcb91a3f6ee72ece1a78}{L\+A\+Y\+E\+R6}} =(8)
\end{DoxyCompactItemize}


\doxysubsection{Detailed Description}
The quality level for video stream fallback. 

\begin{DoxySince}{Since}
v4.\+4.\+0
\end{DoxySince}
\begin{DoxyNote}{Note}
Notes\+:
\begin{DoxyItemize}
\item To use {\ttfamily L\+A\+Y\+E\+R1} through {\ttfamily L\+A\+Y\+E\+R6}, you need to {\ttfamily contact technical support} to enable the A\+BR feature. Once enabled, you can customize the resolution for each level and select any level as the {\bfseries{lowest resolution}} for video stream fallback. When the network condition is poor, the S\+DK uses this level as the lower bound and dynamically adjusts the resolution within this range based on network conditions.
\item When customizing resolutions, make sure to sort the video quality levels (Layer) in descending order by resolution. If resolutions are the same, sort them in descending order by frame rate. 
\end{DoxyItemize}
\end{DoxyNote}


\doxysubsection{Member Data Documentation}
\mbox{\Hypertarget{enumio_1_1agora_1_1rte_1_1_constants_1_1_abr_fallback_layer_a9787260fa7e9de44ee76f60076bf8890}\label{enumio_1_1agora_1_1rte_1_1_constants_1_1_abr_fallback_layer_a9787260fa7e9de44ee76f60076bf8890}} 
\index{io.agora.rte.Constants.AbrFallbackLayer@{io.agora.rte.Constants.AbrFallbackLayer}!DISABLED@{DISABLED}}
\index{DISABLED@{DISABLED}!io.agora.rte.Constants.AbrFallbackLayer@{io.agora.rte.Constants.AbrFallbackLayer}}
\doxysubsubsection{\texorpdfstring{DISABLED}{DISABLED}}
{\footnotesize\ttfamily io.\+agora.\+rte.\+Constants.\+Abr\+Fallback\+Layer.\+D\+I\+S\+A\+B\+L\+ED =(0)}

0\+: Does not perform fallback processing on audio and video streams, but cannot guarantee the quality of the audio and video streams. \mbox{\Hypertarget{enumio_1_1agora_1_1rte_1_1_constants_1_1_abr_fallback_layer_a19f7c3285909c48f71cc1402fd0a242c}\label{enumio_1_1agora_1_1rte_1_1_constants_1_1_abr_fallback_layer_a19f7c3285909c48f71cc1402fd0a242c}} 
\index{io.agora.rte.Constants.AbrFallbackLayer@{io.agora.rte.Constants.AbrFallbackLayer}!LOW@{LOW}}
\index{LOW@{LOW}!io.agora.rte.Constants.AbrFallbackLayer@{io.agora.rte.Constants.AbrFallbackLayer}}
\doxysubsubsection{\texorpdfstring{LOW}{LOW}}
{\footnotesize\ttfamily io.\+agora.\+rte.\+Constants.\+Abr\+Fallback\+Layer.\+L\+OW =(1)}

1\+: (Default) Falls back to the low-\/quality video stream. This layer has the lowest resolution. \mbox{\Hypertarget{enumio_1_1agora_1_1rte_1_1_constants_1_1_abr_fallback_layer_af74e865346bcd7e920c616c559c49d6b}\label{enumio_1_1agora_1_1rte_1_1_constants_1_1_abr_fallback_layer_af74e865346bcd7e920c616c559c49d6b}} 
\index{io.agora.rte.Constants.AbrFallbackLayer@{io.agora.rte.Constants.AbrFallbackLayer}!AUDIO\_ONLY@{AUDIO\_ONLY}}
\index{AUDIO\_ONLY@{AUDIO\_ONLY}!io.agora.rte.Constants.AbrFallbackLayer@{io.agora.rte.Constants.AbrFallbackLayer}}
\doxysubsubsection{\texorpdfstring{AUDIO\_ONLY}{AUDIO\_ONLY}}
{\footnotesize\ttfamily io.\+agora.\+rte.\+Constants.\+Abr\+Fallback\+Layer.\+A\+U\+D\+I\+O\+\_\+\+O\+N\+LY =(2)}

2\+: First attempts to receive only the low-\/quality video stream; if the video cannot be displayed due to poor network conditions, then falls back to receiving only the subscribed remote audio stream. \mbox{\Hypertarget{enumio_1_1agora_1_1rte_1_1_constants_1_1_abr_fallback_layer_acd558f7c13c0fd28686703cc6ac65845}\label{enumio_1_1agora_1_1rte_1_1_constants_1_1_abr_fallback_layer_acd558f7c13c0fd28686703cc6ac65845}} 
\index{io.agora.rte.Constants.AbrFallbackLayer@{io.agora.rte.Constants.AbrFallbackLayer}!LAYER1@{LAYER1}}
\index{LAYER1@{LAYER1}!io.agora.rte.Constants.AbrFallbackLayer@{io.agora.rte.Constants.AbrFallbackLayer}}
\doxysubsubsection{\texorpdfstring{LAYER1}{LAYER1}}
{\footnotesize\ttfamily io.\+agora.\+rte.\+Constants.\+Abr\+Fallback\+Layer.\+L\+A\+Y\+E\+R1 =(3)}

3\+: Falls back to video quality level 1. The resolution and bitrate of this level are only lower than those of the highest-\/quality video stream you subscribe to. \mbox{\Hypertarget{enumio_1_1agora_1_1rte_1_1_constants_1_1_abr_fallback_layer_ac6b4458f54917c99096d841589877ddb}\label{enumio_1_1agora_1_1rte_1_1_constants_1_1_abr_fallback_layer_ac6b4458f54917c99096d841589877ddb}} 
\index{io.agora.rte.Constants.AbrFallbackLayer@{io.agora.rte.Constants.AbrFallbackLayer}!LAYER2@{LAYER2}}
\index{LAYER2@{LAYER2}!io.agora.rte.Constants.AbrFallbackLayer@{io.agora.rte.Constants.AbrFallbackLayer}}
\doxysubsubsection{\texorpdfstring{LAYER2}{LAYER2}}
{\footnotesize\ttfamily io.\+agora.\+rte.\+Constants.\+Abr\+Fallback\+Layer.\+L\+A\+Y\+E\+R2 =(4)}

4\+: Falls back to video quality level 2. The resolution of this level is only lower than that of level 1. \mbox{\Hypertarget{enumio_1_1agora_1_1rte_1_1_constants_1_1_abr_fallback_layer_a05c1d5931e248519008c33692406a7e6}\label{enumio_1_1agora_1_1rte_1_1_constants_1_1_abr_fallback_layer_a05c1d5931e248519008c33692406a7e6}} 
\index{io.agora.rte.Constants.AbrFallbackLayer@{io.agora.rte.Constants.AbrFallbackLayer}!LAYER3@{LAYER3}}
\index{LAYER3@{LAYER3}!io.agora.rte.Constants.AbrFallbackLayer@{io.agora.rte.Constants.AbrFallbackLayer}}
\doxysubsubsection{\texorpdfstring{LAYER3}{LAYER3}}
{\footnotesize\ttfamily io.\+agora.\+rte.\+Constants.\+Abr\+Fallback\+Layer.\+L\+A\+Y\+E\+R3 =(5)}

5\+: Falls back to video quality level 3. This level has a resolution just lower than level 2. \mbox{\Hypertarget{enumio_1_1agora_1_1rte_1_1_constants_1_1_abr_fallback_layer_aca3e49b5da441d0271cc1cd45ab328b7}\label{enumio_1_1agora_1_1rte_1_1_constants_1_1_abr_fallback_layer_aca3e49b5da441d0271cc1cd45ab328b7}} 
\index{io.agora.rte.Constants.AbrFallbackLayer@{io.agora.rte.Constants.AbrFallbackLayer}!LAYER4@{LAYER4}}
\index{LAYER4@{LAYER4}!io.agora.rte.Constants.AbrFallbackLayer@{io.agora.rte.Constants.AbrFallbackLayer}}
\doxysubsubsection{\texorpdfstring{LAYER4}{LAYER4}}
{\footnotesize\ttfamily io.\+agora.\+rte.\+Constants.\+Abr\+Fallback\+Layer.\+L\+A\+Y\+E\+R4 =(6)}

6\+: Fallback to video quality level 4. The resolution of this level is only lower than that of level 3. \mbox{\Hypertarget{enumio_1_1agora_1_1rte_1_1_constants_1_1_abr_fallback_layer_a02fc52bfcc5d5a2a9de34a8bd4bdf9f0}\label{enumio_1_1agora_1_1rte_1_1_constants_1_1_abr_fallback_layer_a02fc52bfcc5d5a2a9de34a8bd4bdf9f0}} 
\index{io.agora.rte.Constants.AbrFallbackLayer@{io.agora.rte.Constants.AbrFallbackLayer}!LAYER5@{LAYER5}}
\index{LAYER5@{LAYER5}!io.agora.rte.Constants.AbrFallbackLayer@{io.agora.rte.Constants.AbrFallbackLayer}}
\doxysubsubsection{\texorpdfstring{LAYER5}{LAYER5}}
{\footnotesize\ttfamily io.\+agora.\+rte.\+Constants.\+Abr\+Fallback\+Layer.\+L\+A\+Y\+E\+R5 =(7)}

7\+: Falls back to video quality level 5. This level has a resolution just lower than level 4. \mbox{\Hypertarget{enumio_1_1agora_1_1rte_1_1_constants_1_1_abr_fallback_layer_a707467c73708dcb91a3f6ee72ece1a78}\label{enumio_1_1agora_1_1rte_1_1_constants_1_1_abr_fallback_layer_a707467c73708dcb91a3f6ee72ece1a78}} 
\index{io.agora.rte.Constants.AbrFallbackLayer@{io.agora.rte.Constants.AbrFallbackLayer}!LAYER6@{LAYER6}}
\index{LAYER6@{LAYER6}!io.agora.rte.Constants.AbrFallbackLayer@{io.agora.rte.Constants.AbrFallbackLayer}}
\doxysubsubsection{\texorpdfstring{LAYER6}{LAYER6}}
{\footnotesize\ttfamily io.\+agora.\+rte.\+Constants.\+Abr\+Fallback\+Layer.\+L\+A\+Y\+E\+R6 =(8)}

8\+: Falls back to video quality level 6. This level has a resolution just lower than level 5. 