\let\mypdfximage\pdfximage\def\pdfximage{\immediate\mypdfximage}\documentclass[twoside]{book}

%% moved from doxygen.sty due to workaround for LaTex 2019 version and unmaintained tabu package
\usepackage{ifthen}
\ifx\requestedLaTeXdate\undefined
\usepackage{array}
\else
\usepackage{array}[=2016-10-06]
\fi
%%
% Packages required by doxygen
\usepackage{fixltx2e}
\usepackage{calc}
\usepackage{doxygen}
\usepackage{graphicx}
\usepackage[utf8]{inputenc}
\usepackage{makeidx}
\usepackage{multicol}
\usepackage{multirow}
\PassOptionsToPackage{warn}{textcomp}
\usepackage{textcomp}
\usepackage[nointegrals]{wasysym}
\usepackage[table]{xcolor}
\usepackage{ifpdf,ifxetex}

% Font selection
\usepackage[T1]{fontenc}
\usepackage[scaled=.90]{helvet}
\usepackage{courier}
\usepackage{amssymb}
\usepackage{sectsty}
\renewcommand{\familydefault}{\sfdefault}
\allsectionsfont{%
  \fontseries{bc}\selectfont%
  \color{darkgray}%
}
\renewcommand{\DoxyLabelFont}{%
  \fontseries{bc}\selectfont%
  \color{darkgray}%
}
\newcommand{\+}{\discretionary{\mbox{\scriptsize$\hookleftarrow$}}{}{}}

% Arguments of doxygenemoji:
% 1) ':<text>:' form of the emoji, already "LaTeX"-escaped
% 2) file with the name of the emoji without the .png extension
% in case image exist use this otherwise use the ':<text>:' form
\newcommand{\doxygenemoji}[2]{%
  \IfFileExists{./#2.png}{\raisebox{-0.1em}{\includegraphics[height=0.9em]{./#2.png}}}{#1}%
}
% Page & text layout
\usepackage{geometry}
\geometry{%
  a4paper,%
  top=2.5cm,%
  bottom=2.5cm,%
  left=2.5cm,%
  right=2.5cm%
}
\tolerance=750
\hfuzz=15pt
\hbadness=750
\setlength{\emergencystretch}{15pt}
\setlength{\parindent}{0cm}
\newcommand{\doxynormalparskip}{\setlength{\parskip}{3ex plus 2ex minus 2ex}}
\newcommand{\doxytocparskip}{\setlength{\parskip}{1ex plus 0ex minus 0ex}}
\doxynormalparskip
\makeatletter
\renewcommand{\paragraph}{%
  \@startsection{paragraph}{4}{0ex}{-1.0ex}{1.0ex}{%
    \normalfont\normalsize\bfseries\SS@parafont%
  }%
}
\renewcommand{\subparagraph}{%
  \@startsection{subparagraph}{5}{0ex}{-1.0ex}{1.0ex}{%
    \normalfont\normalsize\bfseries\SS@subparafont%
  }%
}
\makeatother

\makeatletter
\newcommand\hrulefilll{\leavevmode\leaders\hrule\hskip 0pt plus 1filll\kern\z@}
\makeatother

% Headers & footers
\usepackage{fancyhdr}
\pagestyle{fancyplain}
\fancyhead[LE]{\fancyplain{}{\bfseries\thepage}}
\fancyhead[CE]{\fancyplain{}{}}
\fancyhead[RE]{\fancyplain{}{\bfseries\leftmark}}
\fancyhead[LO]{\fancyplain{}{\bfseries\rightmark}}
\fancyhead[CO]{\fancyplain{}{}}
\fancyhead[RO]{\fancyplain{}{\bfseries\thepage}}
\fancyfoot[LE]{\fancyplain{}{}}
\fancyfoot[CE]{\fancyplain{}{}}
\fancyfoot[RE]{\fancyplain{}{\bfseries\scriptsize Generated by Doxygen }}
\fancyfoot[LO]{\fancyplain{}{\bfseries\scriptsize Generated by Doxygen }}
\fancyfoot[CO]{\fancyplain{}{}}
\fancyfoot[RO]{\fancyplain{}{}}
\renewcommand{\footrulewidth}{0.4pt}
\renewcommand{\chaptermark}[1]{%
  \markboth{#1}{}%
}
\renewcommand{\sectionmark}[1]{%
  \markright{\thesection\ #1}%
}

% Indices & bibliography
\usepackage{natbib}
\usepackage[titles]{tocloft}
\setcounter{tocdepth}{3}
\setcounter{secnumdepth}{5}
\makeindex

\usepackage{newunicodechar}
  \newunicodechar{⁻}{${}^{-}$}% Superscript minus
  \newunicodechar{²}{${}^{2}$}% Superscript two
  \newunicodechar{³}{${}^{3}$}% Superscript three

% Hyperlinks (required, but should be loaded last)
\ifpdf
  \usepackage[pdftex,pagebackref=true]{hyperref}
\else
  \ifxetex
    \usepackage[pagebackref=true]{hyperref}
  \else
    \usepackage[ps2pdf,pagebackref=true]{hyperref}
  \fi
\fi

\hypersetup{%
  colorlinks=true,%
  linkcolor=blue,%
  citecolor=blue,%
  unicode%
}

% Custom commands
\newcommand{\clearemptydoublepage}{%
  \newpage{\pagestyle{empty}\cleardoublepage}%
}

\usepackage{caption}
\captionsetup{labelsep=space,justification=centering,font={bf},singlelinecheck=off,skip=4pt,position=top}

\usepackage{etoc}
\etocsettocstyle{\doxytocparskip}{\doxynormalparskip}
\renewcommand{\numberline}[1]{#1~}
%===== C O N T E N T S =====

\begin{document}

% Titlepage & ToC
\hypersetup{pageanchor=false,
             bookmarksnumbered=true,
             pdfencoding=unicode
            }
\pagenumbering{alph}
\begin{titlepage}
\vspace*{7cm}
\begin{center}%
{\Large Agora Java A\+PI Reference for Android }\\
\vspace*{1cm}
{\large Generated by Doxygen 1.8.18}\\
\end{center}
\end{titlepage}
\clearemptydoublepage
\pagenumbering{roman}
\tableofcontents
\clearemptydoublepage
\pagenumbering{arabic}
\hypersetup{pageanchor=true}

%--- Begin generated contents ---
\chapter{Agora High-\/\+Level A\+PI Reference for All Platforms}
\label{index}\hypertarget{index}{}\input{index}
\chapter{Deprecated List}
\label{deprecated}
\Hypertarget{deprecated}
\input{deprecated}
\chapter{Hierarchical Index}
\input{hierarchy}
\chapter{Class Index}
\input{annotated}
\chapter{Class Documentation}
\input{enumio_1_1agora_1_1rte_1_1_constants_1_1_abr_fallback_layer}
\input{enumio_1_1agora_1_1rte_1_1_constants_1_1_abr_subscription_layer}
\input{classio_1_1agora_1_1rtc2_1_1audio_1_1_advanced_audio_options}
\input{classio_1_1agora_1_1rtc2_1_1proxy_1_1_local_access_point_configuration_1_1_advanced_config_info}
\input{classio_1_1agora_1_1rtc2_1_1video_1_1_video_encoder_configuration_1_1_advance_options}
\input{classio_1_1agora_1_1rtc2_1_1_i_rtc_engine_event_handler_1_1_agora_face_position_info}
\input{classio_1_1agora_1_1rtc2_1_1video_1_1_agora_focal_length_info}
\input{classio_1_1agora_1_1rtc2_1_1video_1_1_agora_image}
\input{classio_1_1agora_1_1rtc2_1_1_agora_media_recorder}
\input{classio_1_1agora_1_1rtc2_1_1video_1_1_agora_metadata}
\input{classio_1_1agora_1_1rtc2_1_1audio_1_1_agora_rhythm_player_config}
\input{classio_1_1agora_1_1rtc2_1_1video_1_1_agora_video_frame}
\input{enumio_1_1agora_1_1base_1_1_video_frame_1_1_alpha_stitch_mode}
\input{classio_1_1agora_1_1rtc2_1_1_rtc_engine_config_1_1_area_code}
\input{classio_1_1agora_1_1mediaplayer_1_1_assets_file_reader}
\input{interfaceio_1_1agora_1_1rte_1_1callback_1_1_async_callback}
\input{enumio_1_1agora_1_1rtc2_1_1_constants_1_1_a_u_d_i_o___e_q_u_a_l_i_z_a_t_i_o_n___b_a_n_d___f_r_e_q_u_e_n_c_y}
\input{enumio_1_1agora_1_1rtc2_1_1_constants_1_1_a_u_d_i_o___r_e_v_e_r_b___t_y_p_e}
\input{classio_1_1agora_1_1rtc2_1_1_screen_capture_parameters_1_1_audio_capture_parameters}
\input{enumio_1_1agora_1_1rtc2_1_1live_1_1_live_transcoding_1_1_audio_codec_profile_type}
\input{enumio_1_1agora_1_1mediaplayer_1_1_constants_1_1_audio_dual_mono_mode}
\input{classio_1_1agora_1_1base_1_1_audio_frame}
\input{enumio_1_1agora_1_1rtc2_1_1_constants_1_1_audio_mixing_dual_mono_mode}
\input{classio_1_1agora_1_1rtc2_1_1audio_1_1_audio_params}
\input{enumio_1_1agora_1_1rtc2_1_1audio_1_1_advanced_audio_options_1_1_audio_processing_channels_enum}
\input{enumio_1_1agora_1_1rtc2_1_1_constants_1_1_audio_profile}
\input{enumio_1_1agora_1_1rtc2_1_1live_1_1_live_inject_stream_config_1_1_audio_sample_rate_type}
\input{enumio_1_1agora_1_1rtc2_1_1live_1_1_live_transcoding_1_1_audio_sample_rate_type}
\input{enumio_1_1agora_1_1rtc2_1_1_constants_1_1_audio_scenario}
\input{enumio_1_1agora_1_1rtc2_1_1_constants_1_1_audio_source_type}
\input{classio_1_1agora_1_1rtc2_1_1audio_1_1_audio_spectrum_info}
\input{classio_1_1agora_1_1rtc2_1_1audio_1_1_audio_track_config}
\input{enumio_1_1agora_1_1rtc2_1_1_constants_1_1_audio_track_type}
\input{classio_1_1agora_1_1rtc2_1_1_i_rtc_engine_event_handler_1_1_audio_volume_info}
\input{classio_1_1agora_1_1rte_1_1exception_1_1_authentication_failed_exception}
\input{classio_1_1agora_1_1meta_1_1_avatar_model_info}
\input{classio_1_1agora_1_1rtc2_1_1video_1_1_beauty_options}
\input{interfaceio_1_1agora_1_1base_1_1_video_frame_1_1_buffer}
\input{classio_1_1agora_1_1rtm_1_1_rtm_config_1_1_builder}
\input{classio_1_1agora_1_1rtc2_1_1_publisher_configuration_1_1_builder}
\input{classio_1_1agora_1_1rtc2_1_1video_1_1_video_compositing_layout_1_1_builder}
\input{classio_1_1agora_1_1meta_1_1_meta_bundle_info_1_1_bundle_type}
\input{enumio_1_1agora_1_1rtc2_1_1_constants_1_1_bytes_per_sample}
\input{classio_1_1agora_1_1mediaplayer_1_1data_1_1_cache_statistics}
\input{enumio_1_1agora_1_1rtc2_1_1video_1_1_camera_capturer_configuration_1_1_c_a_m_e_r_a___d_i_r_e_c_t_i_o_n}
\input{enumio_1_1agora_1_1rtc2_1_1video_1_1_camera_capturer_configuration_1_1_c_a_m_e_r_a___f_o_c_a_l___l_e_n_g_t_h___t_y_p_e}
\input{classio_1_1agora_1_1rtc2_1_1video_1_1_camera_capturer_configuration}
\input{classio_1_1agora_1_1rtc2_1_1video_1_1_video_compositing_layout_1_1_canvas}
\input{classio_1_1agora_1_1rte_1_1_canvas}
\input{classio_1_1agora_1_1rte_1_1_canvas_config}
\input{classio_1_1agora_1_1rte_1_1_canvas_initial_config}
\input{classio_1_1agora_1_1rtc2_1_1video_1_1_camera_capturer_configuration_1_1_capture_format}
\input{classio_1_1agora_1_1rtm_1_1_channel_info}
\input{classio_1_1agora_1_1rtc2_1_1video_1_1_channel_media_info}
\input{classio_1_1agora_1_1rtc2_1_1_channel_media_options}
\input{classio_1_1agora_1_1rtc2_1_1video_1_1_channel_media_relay_configuration}
\input{classio_1_1agora_1_1base_1_1_video_frame_1_1_hdr_metadata_1_1_chromaticity}
\input{classio_1_1agora_1_1rtc2_1_1_i_rtc_engine_event_handler_1_1_client_role}
\input{classio_1_1agora_1_1rtc2_1_1_client_role_options}
\input{classio_1_1agora_1_1musiccontentcenter_1_1_climax_segment}
\input{enumio_1_1agora_1_1rtc2_1_1video_1_1_video_encoder_configuration_1_1_c_o_d_e_c___c_a_p___m_a_s_k}
\input{classio_1_1agora_1_1rtc2_1_1video_1_1_codec_cap_info}
\input{classio_1_1agora_1_1rtc2_1_1video_1_1_codec_cap_levels}
\input{classio_1_1agora_1_1rtc2_1_1video_1_1_color_enhance_options}
\input{interfaceio_1_1agora_1_1base_1_1_video_frame_1_1_color_space}
\input{classio_1_1agora_1_1base_1_1_color_space_primaries}
\input{enumio_1_1agora_1_1rtc2_1_1video_1_1_video_encoder_configuration_1_1_c_o_m_p_r_e_s_s_i_o_n___p_r_e_f_e_r_e_n_c_e}
\input{classio_1_1agora_1_1rte_1_1_config}
\input{enumio_1_1agora_1_1rtc2_1_1_rtc_connection_1_1_c_o_n_n_e_c_t_i_o_n___s_t_a_t_e___t_y_p_e}
\input{classio_1_1agora_1_1meta_1_1_i_meta_service_event_handler_1_1_connection_changed_reason}
\input{classio_1_1agora_1_1meta_1_1_i_meta_service_event_handler_1_1_connection_state}
\input{classio_1_1agora_1_1rte_1_1_constants}
\input{classio_1_1agora_1_1mediaplayer_1_1_constants}
\input{classio_1_1agora_1_1rtc2_1_1_constants}
\input{classio_1_1agora_1_1mediaplayer_1_1_content_file_reader}
\input{classio_1_1agora_1_1rtc2_1_1video_1_1_content_inspect_config}
\input{classio_1_1agora_1_1rtc2_1_1video_1_1_content_inspect_config_1_1_content_inspect_module}
\input{enumio_1_1agora_1_1base_1_1_video_frame_1_1_texture_buffer_1_1_context_type}
\input{classio_1_1agora_1_1rtc2_1_1_data_stream_config}
\input{enumio_1_1agora_1_1rtc2_1_1video_1_1_video_encoder_configuration_1_1_d_e_g_r_a_d_a_t_i_o_n___p_r_e_f_e_r_e_n_c_e}
\input{classio_1_1agora_1_1rtc2_1_1_device_info}
\input{classio_1_1agora_1_1rtc2_1_1_direct_cdn_streaming_media_options}
\input{enumio_1_1agora_1_1rtc2_1_1_direct_cdn_streaming_reason}
\input{enumio_1_1agora_1_1rtc2_1_1_direct_cdn_streaming_state}
\input{classio_1_1agora_1_1rtc2_1_1_direct_cdn_streaming_stats}
\input{classio_1_1agora_1_1rtc2_1_1_i_rtc_engine_event_handler_1_1_downlink_network_info}
\input{classio_1_1agora_1_1rtc2_1_1_echo_test_configuration}
\input{classio_1_1agora_1_1rtc2_1_1video_1_1_encoded_video_frame_info}
\input{classio_1_1agora_1_1rtc2_1_1_encoded_video_track_options}
\input{enumio_1_1agora_1_1rtc2_1_1video_1_1_video_encoder_configuration_1_1_e_n_c_o_d_i_n_g___p_r_e_f_e_r_e_n_c_e}
\input{classio_1_1agora_1_1meta_1_1_enter_scene_config}
\input{classio_1_1agora_1_1rte_1_1_error}
\input{enumio_1_1agora_1_1rte_1_1_constants_1_1_error_code}
\input{classio_1_1agora_1_1rtc2_1_1_i_rtc_engine_event_handler_1_1_error_code}
\input{classio_1_1agora_1_1rtm_1_1_error_info}
\input{classio_1_1agora_1_1rtc2_1_1_extension_context}
\input{classio_1_1agora_1_1rtc2_1_1_extension_info}
\input{enumio_1_1agora_1_1rtc2_1_1_constants_1_1_external_video_source_type}
\input{classio_1_1agora_1_1base_1_1_face_capture_info}
\input{classio_1_1agora_1_1base_1_1_face_detection_info}
\input{classio_1_1agora_1_1rtc2_1_1video_1_1_face_shape_area_options}
\input{classio_1_1agora_1_1rtc2_1_1video_1_1_face_shape_beauty_options}
\input{classio_1_1agora_1_1rtc2_1_1video_1_1_filter_effect_options}
\input{enumio_1_1agora_1_1rtc2_1_1video_1_1_video_encoder_configuration_1_1_f_r_a_m_e___r_a_t_e}
\input{classio_1_1agora_1_1rtm_1_1_get_history_messages_options}
\input{classio_1_1agora_1_1rtm_1_1_get_messages_result}
\input{classio_1_1agora_1_1rtm_1_1_get_online_users_options}
\input{classio_1_1agora_1_1rtm_1_1_get_online_users_result}
\input{enumio_1_1agora_1_1rtc2_1_1_i_h265_transcoder_observer_1_1_h265_transcode_result}
\input{interfaceio_1_1agora_1_1base_1_1_video_frame_1_1_hdr_metadata}
\input{classio_1_1agora_1_1rtm_1_1_history_message}
\input{interfaceio_1_1agora_1_1base_1_1_video_frame_1_1_i010_buffer}
\input{interfaceio_1_1agora_1_1base_1_1_video_frame_1_1_i420_buffer}
\input{interfaceio_1_1agora_1_1base_1_1_video_frame_1_1_i422_buffer}
\input{classio_1_1agora_1_1musiccontentcenter_1_1_i_agora_music_content_center}
\input{interfaceio_1_1agora_1_1musiccontentcenter_1_1_i_agora_music_player}
\input{interfaceio_1_1agora_1_1rtc2_1_1_i_audio_encoded_frame_observer}
\input{interfaceio_1_1agora_1_1rtc2_1_1_i_audio_frame_observer}
\input{interfaceio_1_1agora_1_1rtc2_1_1audio_1_1_i_audio_spectrum_observer}
\input{classio_1_1agora_1_1spatialaudio_1_1_i_base_spatial_audio_engine}
\input{interfaceio_1_1agora_1_1rtc2_1_1_i_direct_cdn_streaming_event_handler}
\input{interfaceio_1_1agora_1_1rtc2_1_1video_1_1_i_face_info_observer}
\input{interfaceio_1_1agora_1_1rtc2_1_1_i_h265_transcoder}
\input{interfaceio_1_1agora_1_1rtc2_1_1_i_h265_transcoder_observer}
\input{classio_1_1agora_1_1spatialaudio_1_1_i_local_spatial_audio_engine}
\input{interfaceio_1_1agora_1_1meta_1_1_i_local_user_avatar}
\input{classio_1_1agora_1_1rtc2_1_1video_1_1_image_track_options}
\input{interfaceio_1_1agora_1_1rtc2_1_1_i_media_extension_observer}
\input{interfaceio_1_1agora_1_1mediaplayer_1_1_i_media_player}
\input{interfaceio_1_1agora_1_1mediaplayer_1_1_i_media_player_audio_frame_observer}
\input{interfaceio_1_1agora_1_1mediaplayer_1_1_i_media_player_cache_manager}
\input{interfaceio_1_1agora_1_1mediaplayer_1_1_i_media_player_custom_data_provider}
\input{interfaceio_1_1agora_1_1mediaplayer_1_1_i_media_player_observer}
\input{interfaceio_1_1agora_1_1mediaplayer_1_1_i_media_player_video_frame_observer}
\input{interfaceio_1_1agora_1_1rtc2_1_1_i_media_recorder_callback}
\input{interfaceio_1_1agora_1_1rtc2_1_1_i_metadata_observer}
\input{interfaceio_1_1agora_1_1base_1_1_i_meta_info}
\input{classio_1_1agora_1_1meta_1_1_i_meta_scene}
\input{interfaceio_1_1agora_1_1meta_1_1_i_meta_scene_event_handler}
\input{classio_1_1agora_1_1meta_1_1_i_meta_service}
\input{interfaceio_1_1agora_1_1meta_1_1_i_meta_service_event_handler}
\input{interfaceio_1_1agora_1_1musiccontentcenter_1_1_i_music_content_center_event_handler}
\input{classio_1_1agora_1_1rte_1_1_initial_config}
\input{classio_1_1agora_1_1rtm_1_1_interval_info}
\input{interfaceio_1_1agora_1_1mediaplayer_1_1_i_player_texture_helper}
\input{classio_1_1agora_1_1rtc2_1_1_i_rtc_engine_event_handler}
\input{interfaceio_1_1agora_1_1rtc2_1_1video_1_1_i_video_encoded_frame_observer}
\input{interfaceio_1_1agora_1_1rtc2_1_1video_1_1_i_video_frame_observer}
\input{classio_1_1agora_1_1base_1_1_java_i010_buffer}
\input{classio_1_1agora_1_1base_1_1_java_i420_buffer}
\input{classio_1_1agora_1_1rtm_1_1_join_channel_options}
\input{classio_1_1agora_1_1rtm_1_1_join_topic_options}
\input{classio_1_1agora_1_1rtc2_1_1_i_rtc_engine_event_handler_1_1_lastmile_probe_result_1_1_lastmile_probe_one_way_result}
\input{classio_1_1agora_1_1rtc2_1_1_i_rtc_engine_event_handler_1_1_lastmile_probe_result}
\input{classio_1_1agora_1_1rtc2_1_1_leave_channel_options}
\input{classio_1_1agora_1_1rtm_1_1_link_state_event}
\input{classio_1_1agora_1_1rtc2_1_1live_1_1_live_inject_stream_config}
\input{classio_1_1agora_1_1rtc2_1_1live_1_1_live_transcoding}
\input{classio_1_1agora_1_1rtc2_1_1proxy_1_1_local_access_point_configuration}
\input{classio_1_1agora_1_1rtc2_1_1_local_audio_mixer_configuration}
\input{classio_1_1agora_1_1rtc2_1_1_i_rtc_engine_event_handler_1_1_local_audio_stats}
\input{classio_1_1agora_1_1spatialaudio_1_1_local_spatial_audio_config}
\input{classio_1_1agora_1_1rtc2_1_1_local_transcoder_configuration}
\input{classio_1_1agora_1_1rtc2_1_1_i_rtc_engine_event_handler_1_1_local_video_stats}
\input{classio_1_1agora_1_1rtm_1_1_lock_detail}
\input{classio_1_1agora_1_1rtm_1_1_lock_event}
\input{classio_1_1agora_1_1rtc2_1_1_rtc_engine_config_1_1_log_config}
\input{enumio_1_1agora_1_1rtc2_1_1_constants_1_1_log_level}
\input{classio_1_1agora_1_1rtc2_1_1proxy_1_1_local_access_point_configuration_1_1_log_upload_server_info}
\input{classio_1_1agora_1_1rtc2_1_1video_1_1_low_light_enhance_options}
\input{classio_1_1agora_1_1rtc2_1_1video_1_1_make_up_options}
\input{enumio_1_1agora_1_1base_1_1_video_frame_1_1_color_space_1_1_matrix}
\input{enumio_1_1agora_1_1rtc2_1_1_constants_1_1_m_e_d_i_a___t_r_a_c_e___e_v_e_n_t}
\input{enumio_1_1agora_1_1mediaplayer_1_1_constants_1_1_media_player_event}
\input{enumio_1_1agora_1_1mediaplayer_1_1_constants_1_1_media_player_metadata_type}
\input{enumio_1_1agora_1_1mediaplayer_1_1_constants_1_1_media_player_preload_event}
\input{enumio_1_1agora_1_1mediaplayer_1_1_constants_1_1_media_player_reason}
\input{classio_1_1agora_1_1mediaplayer_1_1data_1_1_media_player_source}
\input{enumio_1_1agora_1_1mediaplayer_1_1_constants_1_1_media_player_state}
\input{classio_1_1agora_1_1rtc2_1_1_agora_media_recorder_1_1_media_recorder_configuration}
\input{enumio_1_1agora_1_1rtc2_1_1_constants_1_1_media_source_type}
\input{classio_1_1agora_1_1mediaplayer_1_1data_1_1_media_stream_info}
\input{enumio_1_1agora_1_1mediaplayer_1_1_constants_1_1_media_stream_type}
\input{enumio_1_1agora_1_1rtc2_1_1_constants_1_1_media_type}
\input{classio_1_1agora_1_1rtm_1_1_message_event}
\input{classio_1_1agora_1_1meta_1_1_meta_bundle_info}
\input{classio_1_1agora_1_1rtm_1_1_metadata}
\input{classio_1_1agora_1_1rtm_1_1_metadata_item}
\input{classio_1_1agora_1_1rtm_1_1_metadata_options}
\input{classio_1_1agora_1_1meta_1_1_meta_scene_assets_info}
\input{classio_1_1agora_1_1meta_1_1_meta_scene_config}
\input{classio_1_1agora_1_1meta_1_1_meta_service_config}
\input{classio_1_1agora_1_1meta_1_1_meta_user_info}
\input{classio_1_1agora_1_1meta_1_1_meta_user_position_info}
\input{enumio_1_1agora_1_1rtc2_1_1video_1_1_video_encoder_configuration_1_1_m_i_r_r_o_r___m_o_d_e___t_y_p_e}
\input{classio_1_1agora_1_1rtc2_1_1_local_audio_mixer_configuration_1_1_mixed_audio_stream}
\input{classio_1_1agora_1_1musiccontentcenter_1_1_music}
\input{classio_1_1agora_1_1musiccontentcenter_1_1_music_cache_info}
\input{classio_1_1agora_1_1musiccontentcenter_1_1_music_chart_info}
\input{classio_1_1agora_1_1musiccontentcenter_1_1_music_content_center_configuration}
\input{enumio_1_1agora_1_1musiccontentcenter_1_1_i_agora_music_player_1_1_music_play_mode}
\input{classio_1_1agora_1_1musiccontentcenter_1_1_mv_property}
\input{classio_1_1agora_1_1rte_1_1_native_libs_loader}
\input{classio_1_1agora_1_1rte_1_1exception_1_1_network_error_exception}
\input{classio_1_1agora_1_1base_1_1_n_v12_buffer}
\input{classio_1_1agora_1_1base_1_1_n_v21_buffer}
\input{classio_1_1agora_1_1rte_1_1_observer}
\input{enumio_1_1agora_1_1rtc2_1_1video_1_1_video_encoder_configuration_1_1_o_r_i_e_n_t_a_t_i_o_n___m_o_d_e}
\input{classio_1_1agora_1_1rte_1_1_player}
\input{classio_1_1agora_1_1rte_1_1_player_config}
\input{classio_1_1agora_1_1rte_1_1_player_custom_source_provider}
\input{enumio_1_1agora_1_1rte_1_1_constants_1_1_player_event}
\input{interfaceio_1_1agora_1_1rte_1_1callback_1_1_player_get_stats_callback}
\input{classio_1_1agora_1_1rte_1_1_player_info}
\input{classio_1_1agora_1_1rte_1_1_player_initial_config}
\input{enumio_1_1agora_1_1rte_1_1_constants_1_1_player_metadata_type}
\input{classio_1_1agora_1_1rte_1_1_player_observer}
\input{classio_1_1agora_1_1mediaplayer_1_1data_1_1_player_playback_stats}
\input{enumio_1_1agora_1_1rte_1_1_constants_1_1_player_state}
\input{classio_1_1agora_1_1rte_1_1_player_stats}
\input{classio_1_1agora_1_1mediaplayer_1_1gl_1_1_player_texture_helper}
\input{classio_1_1agora_1_1mediaplayer_1_1data_1_1_player_updated_info}
\input{classio_1_1agora_1_1rtm_1_1_presence_event}
\input{classio_1_1agora_1_1rtm_1_1_presence_options}
\input{enumio_1_1agora_1_1base_1_1_video_frame_1_1_color_space_1_1_primary}
\input{classio_1_1agora_1_1rtc2_1_1_publisher_configuration}
\input{classio_1_1agora_1_1rtm_1_1_publisher_info}
\input{classio_1_1agora_1_1rtc2_1_1_publisher_parameters}
\input{classio_1_1agora_1_1rtm_1_1_publish_options}
\input{enumio_1_1agora_1_1rtc2_1_1_constants_1_1_qo_e_preference}
\input{classio_1_1agora_1_1rtc2_1_1_i_rtc_engine_event_handler_1_1_quality}
\input{enumio_1_1agora_1_1base_1_1_video_frame_1_1_color_space_1_1_range}
\input{classio_1_1agora_1_1rtc2_1_1_recorder_info}
\input{classio_1_1agora_1_1rtc2_1_1_recorder_stream_info}
\input{classio_1_1agora_1_1rte_1_1_rect}
\input{classio_1_1agora_1_1rtc2_1_1video_1_1_watermark_options_1_1_rectangle}
\input{classio_1_1agora_1_1rtc2_1_1video_1_1_video_compositing_layout_1_1_region}
\input{enumio_1_1agora_1_1rtc2_1_1video_1_1_video_subscription_options_1_1_r_e_m_o_t_e___v_i_d_e_o___s_t_r_e_a_m___t_y_p_e}
\input{classio_1_1agora_1_1rtc2_1_1_i_rtc_engine_event_handler_1_1_remote_audio_stats}
\input{classio_1_1agora_1_1rtc2_1_1_i_rtc_engine_event_handler_1_1_remote_video_stats}
\input{classio_1_1agora_1_1spatialaudio_1_1_remote_voice_position_info}
\input{interfaceio_1_1agora_1_1rtm_1_1_result_callback}
\input{interfaceio_1_1agora_1_1base_1_1_video_frame_1_1_rgba_buffer}
\input{classio_1_1agora_1_1rtc2_1_1_rtc_connection}
\input{classio_1_1agora_1_1rtc2_1_1_rtc_engine}
\input{classio_1_1agora_1_1rtc2_1_1_rtc_engine_config}
\input{classio_1_1agora_1_1rtc2_1_1_rtc_engine_ex}
\input{classio_1_1agora_1_1rtc2_1_1_rtc_engine_internal}
\input{classio_1_1agora_1_1rtc2_1_1_i_rtc_engine_event_handler_1_1_rtc_stats}
\input{classio_1_1agora_1_1rte_1_1_rte}
\input{classio_1_1agora_1_1rte_1_1exception_1_1_rte_exception}
\input{enumio_1_1agora_1_1rtm_1_1_rtm_constants_1_1_rtm_area_code}
\input{enumio_1_1agora_1_1rtm_1_1_rtm_constants_1_1_rtm_channel_type}
\input{classio_1_1agora_1_1rtm_1_1_rtm_client}
\input{classio_1_1agora_1_1rtm_1_1_rtm_config}
\input{enumio_1_1agora_1_1rtm_1_1_rtm_constants_1_1_rtm_connection_change_reason}
\input{enumio_1_1agora_1_1rtm_1_1_rtm_constants_1_1_rtm_connection_state}
\input{classio_1_1agora_1_1rtm_1_1_rtm_constants}
\input{classio_1_1agora_1_1rtm_1_1_rtm_encryption_config}
\input{enumio_1_1agora_1_1rtm_1_1_rtm_constants_1_1_rtm_encryption_mode}
\input{enumio_1_1agora_1_1rtm_1_1_rtm_constants_1_1_rtm_error_code}
\input{interfaceio_1_1agora_1_1rtm_1_1_rtm_event_listener}
\input{classio_1_1agora_1_1rtm_1_1_rtm_history}
\input{enumio_1_1agora_1_1rtm_1_1_rtm_constants_1_1_rtm_link_operation}
\input{enumio_1_1agora_1_1rtm_1_1_rtm_constants_1_1_rtm_link_state}
\input{enumio_1_1agora_1_1rtm_1_1_rtm_constants_1_1_rtm_link_state_change_reason}
\input{classio_1_1agora_1_1rtm_1_1_rtm_lock}
\input{enumio_1_1agora_1_1rtm_1_1_rtm_constants_1_1_rtm_lock_event_type}
\input{classio_1_1agora_1_1rtm_1_1_rtm_log_config}
\input{enumio_1_1agora_1_1rtm_1_1_rtm_constants_1_1_rtm_log_level}
\input{classio_1_1agora_1_1rtm_1_1_rtm_message}
\input{enumio_1_1agora_1_1rtm_1_1_rtm_constants_1_1_rtm_message_priority}
\input{enumio_1_1agora_1_1rtm_1_1_rtm_constants_1_1_rtm_message_qos}
\input{enumio_1_1agora_1_1rtm_1_1_rtm_constants_1_1_rtm_message_type}
\input{classio_1_1agora_1_1rtm_1_1_rtm_presence}
\input{enumio_1_1agora_1_1rtm_1_1_rtm_constants_1_1_rtm_presence_event_type}
\input{classio_1_1agora_1_1rtm_1_1_rtm_private_config}
\input{enumio_1_1agora_1_1rtm_1_1_rtm_constants_1_1_rtm_protocol_type}
\input{classio_1_1agora_1_1rtm_1_1_rtm_proxy_config}
\input{enumio_1_1agora_1_1rtm_1_1_rtm_constants_1_1_rtm_proxy_type}
\input{enumio_1_1agora_1_1rtm_1_1_rtm_constants_1_1_rtm_service_type}
\input{classio_1_1agora_1_1rtm_1_1_rtm_storage}
\input{enumio_1_1agora_1_1rtm_1_1_rtm_constants_1_1_rtm_storage_event_type}
\input{enumio_1_1agora_1_1rtm_1_1_rtm_constants_1_1_rtm_storage_type}
\input{enumio_1_1agora_1_1rtm_1_1_rtm_constants_1_1_rtm_topic_event_type}
\input{classio_1_1agora_1_1meta_1_1_scene_display_config}
\input{classio_1_1agora_1_1meta_1_1_i_meta_service_event_handler_1_1_scene_download_state}
\input{classio_1_1agora_1_1rtc2_1_1_screen_capture_parameters}
\input{enumio_1_1agora_1_1rtc2_1_1_constants_1_1_screen_scenario_type}
\input{classio_1_1agora_1_1rtc2_1_1video_1_1_segmentation_property}
\input{classio_1_1agora_1_1rtc2_1_1_simulcast_config}
\input{classio_1_1agora_1_1rtc2_1_1_simulcast_stream_config}
\input{enumio_1_1agora_1_1rtc2_1_1_constants_1_1_simulcast_stream_mode}
\input{classio_1_1agora_1_1rtc2_1_1video_1_1_snapshot_config}
\input{classio_1_1agora_1_1rtm_1_1_snapshot_info}
\input{enumio_1_1agora_1_1base_1_1_video_frame_1_1_source_type}
\input{classio_1_1agora_1_1rtc2_1_1_spatial_audio_params}
\input{classio_1_1agora_1_1spatialaudio_1_1_spatial_audio_zone}
\input{classio_1_1agora_1_1mediaplayer_1_1data_1_1_src_info}
\input{classio_1_1agora_1_1meta_1_1_meta_scene_config_1_1_state_sync_mode}
\input{classio_1_1agora_1_1rtm_1_1_storage_event}
\input{classio_1_1agora_1_1rte_1_1_stream}
\input{classio_1_1agora_1_1rtm_1_1_stream_channel}
\input{enumio_1_1agora_1_1rtc2_1_1_constants_1_1_stream_fallback_options}
\input{classio_1_1agora_1_1rtc2_1_1_simulcast_config_1_1_stream_layer_config}
\input{enumio_1_1agora_1_1rtc2_1_1_simulcast_config_1_1_stream_layer_index}
\input{classio_1_1agora_1_1rte_1_1exception_1_1_stream_not_found_exception}
\input{classio_1_1agora_1_1rtm_1_1_subscribe_options}
\input{classio_1_1agora_1_1rtm_1_1_subscribe_topic_result}
\input{classio_1_1agora_1_1base_1_1_texture_buffer}
\input{interfaceio_1_1agora_1_1base_1_1_video_frame_1_1_texture_buffer}
\input{classio_1_1agora_1_1base_1_1_texture_buffer_helper}
\input{enumio_1_1agora_1_1rtc2_1_1_constants_1_1_thread_priority_type}
\input{classio_1_1agora_1_1rtm_1_1_topic_event}
\input{classio_1_1agora_1_1rtm_1_1_topic_info}
\input{classio_1_1agora_1_1rtm_1_1_topic_message_options}
\input{classio_1_1agora_1_1rtm_1_1_topic_options}
\input{classio_1_1agora_1_1rtc2_1_1live_1_1_live_transcoding_1_1_transcoding_user}
\input{classio_1_1agora_1_1rtc2_1_1_local_transcoder_configuration_1_1_transcoding_video_stream}
\input{enumio_1_1agora_1_1base_1_1_video_frame_1_1_color_space_1_1_transfer}
\input{enumio_1_1agora_1_1base_1_1_video_frame_1_1_texture_buffer_1_1_type}
\input{classio_1_1agora_1_1rtc2_1_1_i_rtc_engine_event_handler_1_1_uplink_network_info}
\input{classio_1_1agora_1_1rtc2_1_1audio_1_1_user_audio_spectrum_info}
\input{classio_1_1agora_1_1rtc2_1_1_user_info}
\input{classio_1_1agora_1_1rtc2_1_1_i_rtc_engine_event_handler_1_1_user_offline_reason}
\input{classio_1_1agora_1_1rtm_1_1_user_state}
\input{enumio_1_1agora_1_1rtc2_1_1video_1_1_video_encoder_configuration_1_1_v_i_d_e_o___c_o_d_e_c___t_y_p_e}
\input{classio_1_1agora_1_1rtc2_1_1video_1_1_video_canvas}
\input{classio_1_1agora_1_1rtc2_1_1_screen_capture_parameters_1_1_video_capture_parameters}
\input{enumio_1_1agora_1_1rtc2_1_1live_1_1_live_transcoding_1_1_video_codec_profile_type}
\input{enumio_1_1agora_1_1rtc2_1_1live_1_1_live_transcoding_1_1_video_codec_type}
\input{classio_1_1agora_1_1rtc2_1_1video_1_1_video_compositing_layout}
\input{classio_1_1agora_1_1rtc2_1_1video_1_1_video_denoiser_options}
\input{classio_1_1agora_1_1rtc2_1_1video_1_1_video_encoder_configuration_1_1_video_dimensions}
\input{classio_1_1agora_1_1rtc2_1_1video_1_1_video_encoder_configuration}
\input{classio_1_1agora_1_1base_1_1_video_frame}
\input{classio_1_1agora_1_1base_1_1_video_frame_meta_info}
\input{classio_1_1agora_1_1rtc2_1_1_i_rtc_engine_event_handler_1_1_video_layout}
\input{classio_1_1agora_1_1rtc2_1_1_i_rtc_engine_event_handler_1_1_video_layout_info}
\input{classio_1_1agora_1_1rte_1_1_video_mirror_mode}
\input{enumio_1_1agora_1_1rte_1_1_constants_1_1_video_mirror_mode}
\input{enumio_1_1agora_1_1rtc2_1_1_constants_1_1_video_module_position}
\input{classio_1_1agora_1_1rtc2_1_1_i_rtc_engine_event_handler_1_1_video_profile}
\input{classio_1_1agora_1_1rtc2_1_1_i_rtc_engine_event_handler_1_1_video_rendering_tracing_info}
\input{classio_1_1agora_1_1rte_1_1_video_render_mode}
\input{enumio_1_1agora_1_1rte_1_1_constants_1_1_video_render_mode}
\input{enumio_1_1agora_1_1rtc2_1_1_constants_1_1_video_scenario}
\input{enumio_1_1agora_1_1rtc2_1_1_constants_1_1_video_source_type}
\input{enumio_1_1agora_1_1rtc2_1_1_constants_1_1_video_stream_type}
\input{classio_1_1agora_1_1rtc2_1_1video_1_1_video_subscription_options}
\input{classio_1_1agora_1_1rte_1_1_view_config}
\input{classio_1_1agora_1_1rtc2_1_1video_1_1_virtual_background_source}
\input{enumio_1_1agora_1_1rtc2_1_1_constants_1_1_v_o_i_c_e___a_i___t_u_n_e_r___t_y_p_e}
\input{classio_1_1agora_1_1rtc2_1_1_i_rtc_engine_event_handler_1_1_warn_code}
\input{classio_1_1agora_1_1rtc2_1_1video_1_1_watermark_options}
\input{classio_1_1agora_1_1rtm_1_1_who_now_result}
\input{classio_1_1agora_1_1rtc2_1_1_i_rtc_engine_event_handler_1_1_wl_acc_stats}
%--- End generated contents ---

% Index
\backmatter
\newpage
\phantomsection
\clearemptydoublepage
\addcontentsline{toc}{chapter}{\indexname}
\printindex

\end{document}
