\hypertarget{classio_1_1agora_1_1rte_1_1_player_info}{}\doxysection{io.\+agora.\+rte.\+Player\+Info Class Reference}
\label{classio_1_1agora_1_1rte_1_1_player_info}\index{io.agora.rte.PlayerInfo@{io.agora.rte.PlayerInfo}}


Information about the player and media stream.  


\doxysubsection*{Public Member Functions}
\begin{DoxyCompactItemize}
\item 
\mbox{\Hypertarget{classio_1_1agora_1_1rte_1_1_player_info_aa13d081bedd88ea2382f94dc44daa361}\label{classio_1_1agora_1_1rte_1_1_player_info_aa13d081bedd88ea2382f94dc44daa361}} 
long {\bfseries get\+Native\+Handle} ()
\item 
int \mbox{\hyperlink{classio_1_1agora_1_1rte_1_1_player_info_a25e32d58e14cdc6efb432606fd3311b5}{state}} ()
\item 
long \mbox{\hyperlink{classio_1_1agora_1_1rte_1_1_player_info_a88ac21e28126e408a62116ab6123383b}{duration}} ()
\begin{DoxyCompactList}\small\item\em Gets the duration of the current media resource. \end{DoxyCompactList}\item 
int \mbox{\hyperlink{classio_1_1agora_1_1rte_1_1_player_info_af59e5f77129ccd317d8b234117ddc348}{stream\+Count}} ()
\begin{DoxyCompactList}\small\item\em Gets the stream count in the current playback source. \end{DoxyCompactList}\item 
boolean \mbox{\hyperlink{classio_1_1agora_1_1rte_1_1_player_info_a9b713c888bfacbd7dd0b1798a46651a7}{has\+Audio}} ()
\begin{DoxyCompactList}\small\item\em Determines whether the media resource contains an audio stream. \end{DoxyCompactList}\item 
boolean \mbox{\hyperlink{classio_1_1agora_1_1rte_1_1_player_info_a1039d9014d28087e77e33287afba61f7}{has\+Video}} ()
\begin{DoxyCompactList}\small\item\em Determines whether a video stream is included. \end{DoxyCompactList}\item 
boolean \mbox{\hyperlink{classio_1_1agora_1_1rte_1_1_player_info_afe8e68c4835440223621d1fd5333a809}{is\+Audio\+Muted}} ()
\begin{DoxyCompactList}\small\item\em Determines whether the player has stopped receiving the remote audio stream. \end{DoxyCompactList}\item 
boolean \mbox{\hyperlink{classio_1_1agora_1_1rte_1_1_player_info_a438c63a90193c8e0e10d71c505da9982}{is\+Video\+Muted}} ()
\begin{DoxyCompactList}\small\item\em Determines whether the player has stopped receiving remote video streams. \end{DoxyCompactList}\item 
int \mbox{\hyperlink{classio_1_1agora_1_1rte_1_1_player_info_ac2cad459a6b20a0b5c40c4d3ac884f25}{video\+Height}} ()
\begin{DoxyCompactList}\small\item\em Gets the height of the video resolution. \end{DoxyCompactList}\item 
int \mbox{\hyperlink{classio_1_1agora_1_1rte_1_1_player_info_a3fd4d4412e418b52786cb864616f9847}{video\+Width}} ()
\begin{DoxyCompactList}\small\item\em Gets the width of the video resolution. \end{DoxyCompactList}\item 
Constants.\+Abr\+Subscription\+Layer \mbox{\hyperlink{classio_1_1agora_1_1rte_1_1_player_info_a39bc24480871f597e0d0de5fac65e7a1}{abr\+Subscription\+Layer}} ()
\begin{DoxyCompactList}\small\item\em Gets the current subscribed video layer. \end{DoxyCompactList}\item 
int \mbox{\hyperlink{classio_1_1agora_1_1rte_1_1_player_info_ac794ba62f700b4f2c2377457b32e5acd}{audio\+Sample\+Rate}} ()
\begin{DoxyCompactList}\small\item\em Gets the audio sample rate. \end{DoxyCompactList}\item 
int \mbox{\hyperlink{classio_1_1agora_1_1rte_1_1_player_info_a718a5b232d0ae6c558ca325fbd9f0963}{audio\+Channels}} ()
\item 
int \mbox{\hyperlink{classio_1_1agora_1_1rte_1_1_player_info_a0b01613bb788dcb006983776f159f78d}{audio\+Bits\+Per\+Sample}} ()
\begin{DoxyCompactList}\small\item\em Gets the number of bits per audio sampling point. \end{DoxyCompactList}\item 
String \mbox{\hyperlink{classio_1_1agora_1_1rte_1_1_player_info_ac19cb4c6f2c1d90d5d53f54b2c33ba37}{current\+Url}} ()
\begin{DoxyCompactList}\small\item\em Gets the U\+RL that is currently being played. \end{DoxyCompactList}\end{DoxyCompactItemize}
\doxysubsection*{Protected Member Functions}
\begin{DoxyCompactItemize}
\item 
\mbox{\Hypertarget{classio_1_1agora_1_1rte_1_1_player_info_aba4f0a1814a3a5e218b56996f0c11933}\label{classio_1_1agora_1_1rte_1_1_player_info_aba4f0a1814a3a5e218b56996f0c11933}} 
void {\bfseries finalize} ()
\end{DoxyCompactItemize}


\doxysubsection{Detailed Description}
Information about the player and media stream. 

\begin{DoxySince}{Since}
v4.\+4.\+0 
\end{DoxySince}


\doxysubsection{Member Function Documentation}
\mbox{\Hypertarget{classio_1_1agora_1_1rte_1_1_player_info_a25e32d58e14cdc6efb432606fd3311b5}\label{classio_1_1agora_1_1rte_1_1_player_info_a25e32d58e14cdc6efb432606fd3311b5}} 
\index{io.agora.rte.PlayerInfo@{io.agora.rte.PlayerInfo}!state@{state}}
\index{state@{state}!io.agora.rte.PlayerInfo@{io.agora.rte.PlayerInfo}}
\doxysubsubsection{\texorpdfstring{state()}{state()}}
{\footnotesize\ttfamily int io.\+agora.\+rte.\+Player\+Info.\+state (\begin{DoxyParamCaption}{ }\end{DoxyParamCaption})}

Current player state. \mbox{\Hypertarget{classio_1_1agora_1_1rte_1_1_player_info_a88ac21e28126e408a62116ab6123383b}\label{classio_1_1agora_1_1rte_1_1_player_info_a88ac21e28126e408a62116ab6123383b}} 
\index{io.agora.rte.PlayerInfo@{io.agora.rte.PlayerInfo}!duration@{duration}}
\index{duration@{duration}!io.agora.rte.PlayerInfo@{io.agora.rte.PlayerInfo}}
\doxysubsubsection{\texorpdfstring{duration()}{duration()}}
{\footnotesize\ttfamily long io.\+agora.\+rte.\+Player\+Info.\+duration (\begin{DoxyParamCaption}{ }\end{DoxyParamCaption})}



Gets the duration of the current media resource. 

\begin{DoxySince}{Since}
v4.\+5.\+1
\end{DoxySince}
\begin{DoxyNote}{Note}
This method is only valid when playing local media files or Media Pull.
\end{DoxyNote}
\begin{DoxyReturn}{Returns}
If the method call succeeds, returns the duration of the current media resource in milliseconds. 
\end{DoxyReturn}
\mbox{\Hypertarget{classio_1_1agora_1_1rte_1_1_player_info_af59e5f77129ccd317d8b234117ddc348}\label{classio_1_1agora_1_1rte_1_1_player_info_af59e5f77129ccd317d8b234117ddc348}} 
\index{io.agora.rte.PlayerInfo@{io.agora.rte.PlayerInfo}!streamCount@{streamCount}}
\index{streamCount@{streamCount}!io.agora.rte.PlayerInfo@{io.agora.rte.PlayerInfo}}
\doxysubsubsection{\texorpdfstring{streamCount()}{streamCount()}}
{\footnotesize\ttfamily int io.\+agora.\+rte.\+Player\+Info.\+stream\+Count (\begin{DoxyParamCaption}{ }\end{DoxyParamCaption})}



Gets the stream count in the current playback source. 

This method is only valid when opening a non-\/\+R\+TE U\+RL.

\begin{DoxyReturn}{Returns}
If the method call succeeds, returns the stream count. 
\end{DoxyReturn}
\mbox{\Hypertarget{classio_1_1agora_1_1rte_1_1_player_info_a9b713c888bfacbd7dd0b1798a46651a7}\label{classio_1_1agora_1_1rte_1_1_player_info_a9b713c888bfacbd7dd0b1798a46651a7}} 
\index{io.agora.rte.PlayerInfo@{io.agora.rte.PlayerInfo}!hasAudio@{hasAudio}}
\index{hasAudio@{hasAudio}!io.agora.rte.PlayerInfo@{io.agora.rte.PlayerInfo}}
\doxysubsubsection{\texorpdfstring{hasAudio()}{hasAudio()}}
{\footnotesize\ttfamily boolean io.\+agora.\+rte.\+Player\+Info.\+has\+Audio (\begin{DoxyParamCaption}{ }\end{DoxyParamCaption})}



Determines whether the media resource contains an audio stream. 

Indicates whether the U\+RL source contains an audio stream.

\begin{DoxyReturn}{Returns}

\begin{DoxyItemize}
\item {\ttfamily true}\+: The U\+RL source contains an audio stream.
\item {\ttfamily false}\+: The U\+RL source does not contain an audio stream. 
\end{DoxyItemize}
\end{DoxyReturn}
\mbox{\Hypertarget{classio_1_1agora_1_1rte_1_1_player_info_a1039d9014d28087e77e33287afba61f7}\label{classio_1_1agora_1_1rte_1_1_player_info_a1039d9014d28087e77e33287afba61f7}} 
\index{io.agora.rte.PlayerInfo@{io.agora.rte.PlayerInfo}!hasVideo@{hasVideo}}
\index{hasVideo@{hasVideo}!io.agora.rte.PlayerInfo@{io.agora.rte.PlayerInfo}}
\doxysubsubsection{\texorpdfstring{hasVideo()}{hasVideo()}}
{\footnotesize\ttfamily boolean io.\+agora.\+rte.\+Player\+Info.\+has\+Video (\begin{DoxyParamCaption}{ }\end{DoxyParamCaption})}



Determines whether a video stream is included. 

\begin{DoxyReturn}{Returns}

\begin{DoxyItemize}
\item {\ttfamily true}\+: The U\+RL source contains a video stream.
\item {\ttfamily false}\+: The U\+RL source does not contain a video stream. 
\end{DoxyItemize}
\end{DoxyReturn}
\mbox{\Hypertarget{classio_1_1agora_1_1rte_1_1_player_info_afe8e68c4835440223621d1fd5333a809}\label{classio_1_1agora_1_1rte_1_1_player_info_afe8e68c4835440223621d1fd5333a809}} 
\index{io.agora.rte.PlayerInfo@{io.agora.rte.PlayerInfo}!isAudioMuted@{isAudioMuted}}
\index{isAudioMuted@{isAudioMuted}!io.agora.rte.PlayerInfo@{io.agora.rte.PlayerInfo}}
\doxysubsubsection{\texorpdfstring{isAudioMuted()}{isAudioMuted()}}
{\footnotesize\ttfamily boolean io.\+agora.\+rte.\+Player\+Info.\+is\+Audio\+Muted (\begin{DoxyParamCaption}{ }\end{DoxyParamCaption})}



Determines whether the player has stopped receiving the remote audio stream. 

\begin{DoxySince}{Since}
v4.\+4.\+0
\end{DoxySince}
This method determines whether the player has stopped receiving the remote audio stream.

\begin{DoxyReturn}{Returns}

\begin{DoxyItemize}
\item {\ttfamily true}\+: The remote audio stream has stopped being received.
\item {\ttfamily false}\+: The remote audio stream is still being received. 
\end{DoxyItemize}
\end{DoxyReturn}
\mbox{\Hypertarget{classio_1_1agora_1_1rte_1_1_player_info_a438c63a90193c8e0e10d71c505da9982}\label{classio_1_1agora_1_1rte_1_1_player_info_a438c63a90193c8e0e10d71c505da9982}} 
\index{io.agora.rte.PlayerInfo@{io.agora.rte.PlayerInfo}!isVideoMuted@{isVideoMuted}}
\index{isVideoMuted@{isVideoMuted}!io.agora.rte.PlayerInfo@{io.agora.rte.PlayerInfo}}
\doxysubsubsection{\texorpdfstring{isVideoMuted()}{isVideoMuted()}}
{\footnotesize\ttfamily boolean io.\+agora.\+rte.\+Player\+Info.\+is\+Video\+Muted (\begin{DoxyParamCaption}{ }\end{DoxyParamCaption})}



Determines whether the player has stopped receiving remote video streams. 

\begin{DoxySince}{Since}
v4.\+4.\+0
\end{DoxySince}
\begin{DoxyNote}{Note}
The {\ttfamily Is\+Video\+Muted} A\+PI is only effective when an R\+TE U\+RL is opened.
\end{DoxyNote}
\begin{DoxyReturn}{Returns}

\begin{DoxyItemize}
\item {\ttfamily true}\+: Stops receiving remote video streams.
\item {\ttfamily false}\+: Continues receiving remote video streams. 
\end{DoxyItemize}
\end{DoxyReturn}
\mbox{\Hypertarget{classio_1_1agora_1_1rte_1_1_player_info_ac2cad459a6b20a0b5c40c4d3ac884f25}\label{classio_1_1agora_1_1rte_1_1_player_info_ac2cad459a6b20a0b5c40c4d3ac884f25}} 
\index{io.agora.rte.PlayerInfo@{io.agora.rte.PlayerInfo}!videoHeight@{videoHeight}}
\index{videoHeight@{videoHeight}!io.agora.rte.PlayerInfo@{io.agora.rte.PlayerInfo}}
\doxysubsubsection{\texorpdfstring{videoHeight()}{videoHeight()}}
{\footnotesize\ttfamily int io.\+agora.\+rte.\+Player\+Info.\+video\+Height (\begin{DoxyParamCaption}{ }\end{DoxyParamCaption})}



Gets the height of the video resolution. 

\begin{DoxySince}{Since}
v4.\+5.\+1
\end{DoxySince}
\begin{DoxyReturn}{Returns}
If the method call succeeds, returns the height of the video resolution in pixels. 
\end{DoxyReturn}
\mbox{\Hypertarget{classio_1_1agora_1_1rte_1_1_player_info_a3fd4d4412e418b52786cb864616f9847}\label{classio_1_1agora_1_1rte_1_1_player_info_a3fd4d4412e418b52786cb864616f9847}} 
\index{io.agora.rte.PlayerInfo@{io.agora.rte.PlayerInfo}!videoWidth@{videoWidth}}
\index{videoWidth@{videoWidth}!io.agora.rte.PlayerInfo@{io.agora.rte.PlayerInfo}}
\doxysubsubsection{\texorpdfstring{videoWidth()}{videoWidth()}}
{\footnotesize\ttfamily int io.\+agora.\+rte.\+Player\+Info.\+video\+Width (\begin{DoxyParamCaption}{ }\end{DoxyParamCaption})}



Gets the width of the video resolution. 

\begin{DoxySince}{Since}
v4.\+5.\+1
\end{DoxySince}
\begin{DoxyReturn}{Returns}
If the method call succeeds, returns the width of the video resolution in pixels. 
\end{DoxyReturn}
\mbox{\Hypertarget{classio_1_1agora_1_1rte_1_1_player_info_a39bc24480871f597e0d0de5fac65e7a1}\label{classio_1_1agora_1_1rte_1_1_player_info_a39bc24480871f597e0d0de5fac65e7a1}} 
\index{io.agora.rte.PlayerInfo@{io.agora.rte.PlayerInfo}!abrSubscriptionLayer@{abrSubscriptionLayer}}
\index{abrSubscriptionLayer@{abrSubscriptionLayer}!io.agora.rte.PlayerInfo@{io.agora.rte.PlayerInfo}}
\doxysubsubsection{\texorpdfstring{abrSubscriptionLayer()}{abrSubscriptionLayer()}}
{\footnotesize\ttfamily Constants.\+Abr\+Subscription\+Layer io.\+agora.\+rte.\+Player\+Info.\+abr\+Subscription\+Layer (\begin{DoxyParamCaption}{ }\end{DoxyParamCaption})}



Gets the current subscribed video layer. 

This field is only valid when opening an R\+TE U\+RL.

\begin{DoxyReturn}{Returns}

\begin{DoxyItemize}
\item If the method call succeeds, returns an {\ttfamily Abr\+Subscription\+Layer} object. See {\ttfamily Abr\+Subscription\+Layer} for details. 
\end{DoxyItemize}
\end{DoxyReturn}
\mbox{\Hypertarget{classio_1_1agora_1_1rte_1_1_player_info_ac794ba62f700b4f2c2377457b32e5acd}\label{classio_1_1agora_1_1rte_1_1_player_info_ac794ba62f700b4f2c2377457b32e5acd}} 
\index{io.agora.rte.PlayerInfo@{io.agora.rte.PlayerInfo}!audioSampleRate@{audioSampleRate}}
\index{audioSampleRate@{audioSampleRate}!io.agora.rte.PlayerInfo@{io.agora.rte.PlayerInfo}}
\doxysubsubsection{\texorpdfstring{audioSampleRate()}{audioSampleRate()}}
{\footnotesize\ttfamily int io.\+agora.\+rte.\+Player\+Info.\+audio\+Sample\+Rate (\begin{DoxyParamCaption}{ }\end{DoxyParamCaption})}



Gets the audio sample rate. 

\begin{DoxySince}{Since}
v4.\+5.\+1
\end{DoxySince}
\begin{DoxyReturn}{Returns}
If the method call succeeds, returns the audio sample rate in Hz. 
\end{DoxyReturn}
\mbox{\Hypertarget{classio_1_1agora_1_1rte_1_1_player_info_a718a5b232d0ae6c558ca325fbd9f0963}\label{classio_1_1agora_1_1rte_1_1_player_info_a718a5b232d0ae6c558ca325fbd9f0963}} 
\index{io.agora.rte.PlayerInfo@{io.agora.rte.PlayerInfo}!audioChannels@{audioChannels}}
\index{audioChannels@{audioChannels}!io.agora.rte.PlayerInfo@{io.agora.rte.PlayerInfo}}
\doxysubsubsection{\texorpdfstring{audioChannels()}{audioChannels()}}
{\footnotesize\ttfamily int io.\+agora.\+rte.\+Player\+Info.\+audio\+Channels (\begin{DoxyParamCaption}{ }\end{DoxyParamCaption})}

Number of audio channels. \mbox{\Hypertarget{classio_1_1agora_1_1rte_1_1_player_info_a0b01613bb788dcb006983776f159f78d}\label{classio_1_1agora_1_1rte_1_1_player_info_a0b01613bb788dcb006983776f159f78d}} 
\index{io.agora.rte.PlayerInfo@{io.agora.rte.PlayerInfo}!audioBitsPerSample@{audioBitsPerSample}}
\index{audioBitsPerSample@{audioBitsPerSample}!io.agora.rte.PlayerInfo@{io.agora.rte.PlayerInfo}}
\doxysubsubsection{\texorpdfstring{audioBitsPerSample()}{audioBitsPerSample()}}
{\footnotesize\ttfamily int io.\+agora.\+rte.\+Player\+Info.\+audio\+Bits\+Per\+Sample (\begin{DoxyParamCaption}{ }\end{DoxyParamCaption})}



Gets the number of bits per audio sampling point. 

\begin{DoxySince}{Since}
v4.\+5.\+1
\end{DoxySince}
\begin{DoxyNote}{Note}
This field is only valid when a non-\/\+R\+TE U\+RL is opened.
\end{DoxyNote}
\begin{DoxyReturn}{Returns}
If the method call succeeds, returns the number of bits per audio sampling point, in bits. 
\end{DoxyReturn}
\mbox{\Hypertarget{classio_1_1agora_1_1rte_1_1_player_info_ac19cb4c6f2c1d90d5d53f54b2c33ba37}\label{classio_1_1agora_1_1rte_1_1_player_info_ac19cb4c6f2c1d90d5d53f54b2c33ba37}} 
\index{io.agora.rte.PlayerInfo@{io.agora.rte.PlayerInfo}!currentUrl@{currentUrl}}
\index{currentUrl@{currentUrl}!io.agora.rte.PlayerInfo@{io.agora.rte.PlayerInfo}}
\doxysubsubsection{\texorpdfstring{currentUrl()}{currentUrl()}}
{\footnotesize\ttfamily String io.\+agora.\+rte.\+Player\+Info.\+current\+Url (\begin{DoxyParamCaption}{ }\end{DoxyParamCaption})}



Gets the U\+RL that is currently being played. 

\begin{DoxyReturn}{Returns}

\begin{DoxyItemize}
\item If the method call succeeds, returns the U\+RL that is currently being played.
\item If the method call fails, returns an empty string. 
\end{DoxyItemize}
\end{DoxyReturn}
