diff options
Diffstat (limited to 'third_party/libwebrtc/examples/androidapp/res')
30 files changed, 777 insertions, 0 deletions
diff --git a/third_party/libwebrtc/examples/androidapp/res/drawable-hdpi/disconnect.png b/third_party/libwebrtc/examples/androidapp/res/drawable-hdpi/disconnect.png Binary files differnew file mode 100644 index 0000000000..be36174c24 --- /dev/null +++ b/third_party/libwebrtc/examples/androidapp/res/drawable-hdpi/disconnect.png diff --git a/third_party/libwebrtc/examples/androidapp/res/drawable-hdpi/ic_action_full_screen.png b/third_party/libwebrtc/examples/androidapp/res/drawable-hdpi/ic_action_full_screen.png Binary files differnew file mode 100644 index 0000000000..22f30d31ca --- /dev/null +++ b/third_party/libwebrtc/examples/androidapp/res/drawable-hdpi/ic_action_full_screen.png diff --git a/third_party/libwebrtc/examples/androidapp/res/drawable-hdpi/ic_action_return_from_full_screen.png b/third_party/libwebrtc/examples/androidapp/res/drawable-hdpi/ic_action_return_from_full_screen.png Binary files differnew file mode 100644 index 0000000000..d9436e5248 --- /dev/null +++ b/third_party/libwebrtc/examples/androidapp/res/drawable-hdpi/ic_action_return_from_full_screen.png diff --git a/third_party/libwebrtc/examples/androidapp/res/drawable-hdpi/ic_launcher.png b/third_party/libwebrtc/examples/androidapp/res/drawable-hdpi/ic_launcher.png Binary files differnew file mode 100644 index 0000000000..f01a31a717 --- /dev/null +++ b/third_party/libwebrtc/examples/androidapp/res/drawable-hdpi/ic_launcher.png diff --git a/third_party/libwebrtc/examples/androidapp/res/drawable-hdpi/ic_loopback_call.png b/third_party/libwebrtc/examples/androidapp/res/drawable-hdpi/ic_loopback_call.png Binary files differnew file mode 100644 index 0000000000..39311853b3 --- /dev/null +++ b/third_party/libwebrtc/examples/androidapp/res/drawable-hdpi/ic_loopback_call.png diff --git a/third_party/libwebrtc/examples/androidapp/res/drawable-ldpi/disconnect.png b/third_party/libwebrtc/examples/androidapp/res/drawable-ldpi/disconnect.png Binary files differnew file mode 100644 index 0000000000..be36174c24 --- /dev/null +++ b/third_party/libwebrtc/examples/androidapp/res/drawable-ldpi/disconnect.png diff --git a/third_party/libwebrtc/examples/androidapp/res/drawable-ldpi/ic_action_full_screen.png b/third_party/libwebrtc/examples/androidapp/res/drawable-ldpi/ic_action_full_screen.png Binary files differnew file mode 100644 index 0000000000..e4a9ff0a8e --- /dev/null +++ b/third_party/libwebrtc/examples/androidapp/res/drawable-ldpi/ic_action_full_screen.png diff --git a/third_party/libwebrtc/examples/androidapp/res/drawable-ldpi/ic_action_return_from_full_screen.png b/third_party/libwebrtc/examples/androidapp/res/drawable-ldpi/ic_action_return_from_full_screen.png Binary files differnew file mode 100644 index 0000000000..f5c80f00e7 --- /dev/null +++ b/third_party/libwebrtc/examples/androidapp/res/drawable-ldpi/ic_action_return_from_full_screen.png diff --git a/third_party/libwebrtc/examples/androidapp/res/drawable-ldpi/ic_launcher.png b/third_party/libwebrtc/examples/androidapp/res/drawable-ldpi/ic_launcher.png Binary files differnew file mode 100644 index 0000000000..5492ed770a --- /dev/null +++ b/third_party/libwebrtc/examples/androidapp/res/drawable-ldpi/ic_launcher.png diff --git a/third_party/libwebrtc/examples/androidapp/res/drawable-ldpi/ic_loopback_call.png b/third_party/libwebrtc/examples/androidapp/res/drawable-ldpi/ic_loopback_call.png Binary files differnew file mode 100644 index 0000000000..39311853b3 --- /dev/null +++ b/third_party/libwebrtc/examples/androidapp/res/drawable-ldpi/ic_loopback_call.png diff --git a/third_party/libwebrtc/examples/androidapp/res/drawable-mdpi/disconnect.png b/third_party/libwebrtc/examples/androidapp/res/drawable-mdpi/disconnect.png Binary files differnew file mode 100644 index 0000000000..be36174c24 --- /dev/null +++ b/third_party/libwebrtc/examples/androidapp/res/drawable-mdpi/disconnect.png diff --git a/third_party/libwebrtc/examples/androidapp/res/drawable-mdpi/ic_action_full_screen.png b/third_party/libwebrtc/examples/androidapp/res/drawable-mdpi/ic_action_full_screen.png Binary files differnew file mode 100644 index 0000000000..e4a9ff0a8e --- /dev/null +++ b/third_party/libwebrtc/examples/androidapp/res/drawable-mdpi/ic_action_full_screen.png diff --git a/third_party/libwebrtc/examples/androidapp/res/drawable-mdpi/ic_action_return_from_full_screen.png b/third_party/libwebrtc/examples/androidapp/res/drawable-mdpi/ic_action_return_from_full_screen.png Binary files differnew file mode 100644 index 0000000000..f5c80f00e7 --- /dev/null +++ b/third_party/libwebrtc/examples/androidapp/res/drawable-mdpi/ic_action_return_from_full_screen.png diff --git a/third_party/libwebrtc/examples/androidapp/res/drawable-mdpi/ic_launcher.png b/third_party/libwebrtc/examples/androidapp/res/drawable-mdpi/ic_launcher.png Binary files differnew file mode 100644 index 0000000000..b8b4b0ec4b --- /dev/null +++ b/third_party/libwebrtc/examples/androidapp/res/drawable-mdpi/ic_launcher.png diff --git a/third_party/libwebrtc/examples/androidapp/res/drawable-mdpi/ic_loopback_call.png b/third_party/libwebrtc/examples/androidapp/res/drawable-mdpi/ic_loopback_call.png Binary files differnew file mode 100644 index 0000000000..39311853b3 --- /dev/null +++ b/third_party/libwebrtc/examples/androidapp/res/drawable-mdpi/ic_loopback_call.png diff --git a/third_party/libwebrtc/examples/androidapp/res/drawable-xhdpi/disconnect.png b/third_party/libwebrtc/examples/androidapp/res/drawable-xhdpi/disconnect.png Binary files differnew file mode 100644 index 0000000000..be36174c24 --- /dev/null +++ b/third_party/libwebrtc/examples/androidapp/res/drawable-xhdpi/disconnect.png diff --git a/third_party/libwebrtc/examples/androidapp/res/drawable-xhdpi/ic_action_full_screen.png b/third_party/libwebrtc/examples/androidapp/res/drawable-xhdpi/ic_action_full_screen.png Binary files differnew file mode 100644 index 0000000000..6d90c071d5 --- /dev/null +++ b/third_party/libwebrtc/examples/androidapp/res/drawable-xhdpi/ic_action_full_screen.png diff --git a/third_party/libwebrtc/examples/androidapp/res/drawable-xhdpi/ic_action_return_from_full_screen.png b/third_party/libwebrtc/examples/androidapp/res/drawable-xhdpi/ic_action_return_from_full_screen.png Binary files differnew file mode 100644 index 0000000000..a773b34208 --- /dev/null +++ b/third_party/libwebrtc/examples/androidapp/res/drawable-xhdpi/ic_action_return_from_full_screen.png diff --git a/third_party/libwebrtc/examples/androidapp/res/drawable-xhdpi/ic_launcher.png b/third_party/libwebrtc/examples/androidapp/res/drawable-xhdpi/ic_launcher.png Binary files differnew file mode 100644 index 0000000000..a3cd45890c --- /dev/null +++ b/third_party/libwebrtc/examples/androidapp/res/drawable-xhdpi/ic_launcher.png diff --git a/third_party/libwebrtc/examples/androidapp/res/drawable-xhdpi/ic_loopback_call.png b/third_party/libwebrtc/examples/androidapp/res/drawable-xhdpi/ic_loopback_call.png Binary files differnew file mode 100644 index 0000000000..39311853b3 --- /dev/null +++ b/third_party/libwebrtc/examples/androidapp/res/drawable-xhdpi/ic_loopback_call.png diff --git a/third_party/libwebrtc/examples/androidapp/res/layout/activity_call.xml b/third_party/libwebrtc/examples/androidapp/res/layout/activity_call.xml new file mode 100644 index 0000000000..bf811426f3 --- /dev/null +++ b/third_party/libwebrtc/examples/androidapp/res/layout/activity_call.xml @@ -0,0 +1,34 @@ +<?xml version="1.0" encoding="utf-8"?> + +<!-- tools:ignore is needed because lint thinks this can be replaced with a merge. Replacing this + with a merge causes the fullscreen SurfaceView not to be centered. --> +<FrameLayout + xmlns:android="http://schemas.android.com/apk/res/android" + xmlns:tools="http://schemas.android.com/tools" + android:layout_width="match_parent" + android:layout_height="match_parent" + tools:ignore="MergeRootFrame"> + + <org.webrtc.SurfaceViewRenderer + android:id="@+id/fullscreen_video_view" + android:layout_width="wrap_content" + android:layout_height="wrap_content" + android:layout_gravity="center" /> + + <org.webrtc.SurfaceViewRenderer + android:id="@+id/pip_video_view" + android:layout_height="144dp" + android:layout_width="wrap_content" + android:layout_gravity="bottom|end" + android:layout_margin="16dp"/> + + <FrameLayout + android:id="@+id/call_fragment_container" + android:layout_width="match_parent" + android:layout_height="match_parent" /> + <FrameLayout + android:id="@+id/hud_fragment_container" + android:layout_width="match_parent" + android:layout_height="match_parent" /> + +</FrameLayout> diff --git a/third_party/libwebrtc/examples/androidapp/res/layout/activity_connect.xml b/third_party/libwebrtc/examples/androidapp/res/layout/activity_connect.xml new file mode 100644 index 0000000000..017e5cabff --- /dev/null +++ b/third_party/libwebrtc/examples/androidapp/res/layout/activity_connect.xml @@ -0,0 +1,80 @@ +<?xml version="1.0" encoding="utf-8"?> +<LinearLayout + xmlns:android="http://schemas.android.com/apk/res/android" + xmlns:tools="http://schemas.android.com/tools" + android:layout_margin="16dp" + android:layout_width="match_parent" + android:layout_height="match_parent" + android:orientation="vertical" + android:weightSum="1" + android:layout_centerHorizontal="true"> + + <TextView + android:id="@+id/room_edittext_description" + android:layout_width="match_parent" + android:layout_height="wrap_content" + android:text="@string/room_description"/> + + <LinearLayout + android:orientation="horizontal" + android:layout_width="match_parent" + android:layout_height="wrap_content" + android:gravity="center" + android:layout_marginBottom="8dp"> + + <!-- TODO(crbug.com/900912): Fix and remove lint ignore --> + <EditText + tools:ignore="LabelFor,Autofill" + android:id="@+id/room_edittext" + android:layout_width="0dp" + android:layout_height="wrap_content" + android:layout_weight="1" + android:maxLines="1" + android:imeOptions="actionDone" + android:inputType="text"/> + + <ImageButton + android:id="@+id/connect_button" + android:layout_width="48dp" + android:layout_height="48dp" + android:contentDescription="@string/connect_description" + android:background="@android:drawable/sym_action_call" /> + + <ImageButton + android:id="@+id/add_favorite_button" + android:layout_width="48dp" + android:layout_height="48dp" + android:contentDescription="@string/add_favorite_description" + android:background="@android:drawable/ic_input_add" /> + </LinearLayout> + + <TextView + android:id="@+id/room_listview_description" + android:layout_width="match_parent" + android:layout_height="48dp" + android:layout_marginTop="8dp" + android:lines="1" + android:maxLines="1" + android:textAppearance="?android:attr/textAppearanceMedium" + android:text="@string/favorites" + android:gravity="center_vertical"/> + + <FrameLayout + android:layout_width="match_parent" + android:layout_height="0dp" + android:layout_weight="1"> + + <ListView + android:id="@+id/room_listview" + android:layout_width="match_parent" + android:layout_height="match_parent" + android:drawSelectorOnTop="false" /> + + <TextView + android:id="@android:id/empty" + android:layout_width="match_parent" + android:layout_height="match_parent" + android:gravity="center" + android:text="@string/no_favorites" /> + </FrameLayout> +</LinearLayout> diff --git a/third_party/libwebrtc/examples/androidapp/res/layout/fragment_call.xml b/third_party/libwebrtc/examples/androidapp/res/layout/fragment_call.xml new file mode 100644 index 0000000000..90b1e9ca0e --- /dev/null +++ b/third_party/libwebrtc/examples/androidapp/res/layout/fragment_call.xml @@ -0,0 +1,77 @@ +<?xml version="1.0" encoding="utf-8"?> + +<RelativeLayout + xmlns:android="http://schemas.android.com/apk/res/android" + android:layout_width="match_parent" + android:layout_height="match_parent"> + + <TextView + android:id="@+id/contact_name_call" + android:layout_width="wrap_content" + android:layout_height="wrap_content" + android:layout_centerHorizontal="true" + android:layout_above="@+id/buttons_call_container" + android:textSize="24sp" + android:layout_margin="8dp"/> + + <LinearLayout + android:id="@+id/buttons_call_container" + android:orientation="horizontal" + android:layout_above="@+id/capture_format_text_call" + android:layout_alignWithParentIfMissing="true" + android:layout_marginBottom="32dp" + android:layout_centerHorizontal="true" + android:layout_width="wrap_content" + android:layout_height="wrap_content"> + + <ImageButton + android:id="@+id/button_call_disconnect" + android:background="@drawable/disconnect" + android:contentDescription="@string/disconnect_call" + android:layout_marginEnd="16dp" + android:layout_width="48dp" + android:layout_height="48dp"/> + + <ImageButton + android:id="@+id/button_call_switch_camera" + android:background="@android:drawable/ic_menu_camera" + android:contentDescription="@string/switch_camera" + android:layout_marginEnd="8dp" + android:layout_width="48dp" + android:layout_height="48dp"/> + + <ImageButton + android:id="@+id/button_call_scaling_mode" + android:background="@drawable/ic_action_return_from_full_screen" + android:contentDescription="@string/disconnect_call" + android:layout_width="48dp" + android:layout_height="48dp"/> + + <ImageButton + android:id="@+id/button_call_toggle_mic" + android:background="@android:drawable/ic_btn_speak_now" + android:contentDescription="@string/toggle_mic" + android:layout_marginEnd="8dp" + android:layout_width="48dp" + android:layout_height="48dp"/> + </LinearLayout> + + <TextView + android:id="@+id/capture_format_text_call" + android:layout_width="wrap_content" + android:layout_height="wrap_content" + android:layout_centerHorizontal="true" + android:layout_above="@+id/capture_format_slider_call" + android:textSize="16sp" + android:text="@string/capture_format_change_text"/> + + <SeekBar + android:id="@+id/capture_format_slider_call" + android:layout_width="match_parent" + android:layout_height="wrap_content" + android:layout_centerHorizontal="true" + android:layout_alignParentBottom="true" + android:progress="50" + android:layout_margin="8dp"/> + +</RelativeLayout> diff --git a/third_party/libwebrtc/examples/androidapp/res/layout/fragment_hud.xml b/third_party/libwebrtc/examples/androidapp/res/layout/fragment_hud.xml new file mode 100644 index 0000000000..483e7ba456 --- /dev/null +++ b/third_party/libwebrtc/examples/androidapp/res/layout/fragment_hud.xml @@ -0,0 +1,27 @@ +<?xml version="1.0" encoding="utf-8"?> + +<RelativeLayout + xmlns:android="http://schemas.android.com/apk/res/android" + android:layout_width="match_parent" + android:layout_height="match_parent"> + + <ImageButton + android:id="@+id/button_toggle_debug" + android:background="@android:drawable/ic_menu_info_details" + android:contentDescription="@string/toggle_debug" + android:layout_alignParentBottom="true" + android:layout_alignParentStart="true" + android:layout_width="48dp" + android:layout_height="48dp"/> + + <TextView + android:id="@+id/hud_stat_call" + android:layout_width="wrap_content" + android:layout_height="wrap_content" + android:layout_alignParentEnd="true" + android:textStyle="bold" + android:textColor="#C000FF00" + android:textSize="12sp" + android:layout_margin="8dp"/> + +</RelativeLayout> diff --git a/third_party/libwebrtc/examples/androidapp/res/menu/connect_menu.xml b/third_party/libwebrtc/examples/androidapp/res/menu/connect_menu.xml new file mode 100644 index 0000000000..a723f54941 --- /dev/null +++ b/third_party/libwebrtc/examples/androidapp/res/menu/connect_menu.xml @@ -0,0 +1,13 @@ +<menu xmlns:android="http://schemas.android.com/apk/res/android"> + <item + android:id="@+id/action_loopback" + android:icon="@drawable/ic_loopback_call" + android:showAsAction="always" + android:title="@string/action_loopback"/> + <item + android:id="@+id/action_settings" + android:orderInCategory="100" + android:icon="@android:drawable/ic_menu_preferences" + android:showAsAction="ifRoom" + android:title="@string/action_settings"/> +</menu> diff --git a/third_party/libwebrtc/examples/androidapp/res/values-v17/styles.xml b/third_party/libwebrtc/examples/androidapp/res/values-v17/styles.xml new file mode 100644 index 0000000000..969b5012e9 --- /dev/null +++ b/third_party/libwebrtc/examples/androidapp/res/values-v17/styles.xml @@ -0,0 +1,10 @@ +<?xml version="1.0" encoding="utf-8"?> +<resources> + <style name="AppTheme" parent="android:Theme.Holo" /> + + <style name="CallActivityTheme" parent="android:Theme.Black"> + <item name="android:windowActionBar">false</item> + <item name="android:windowFullscreen">true</item> + <item name="android:windowNoTitle">true</item> + </style> +</resources> diff --git a/third_party/libwebrtc/examples/androidapp/res/values-v21/styles.xml b/third_party/libwebrtc/examples/androidapp/res/values-v21/styles.xml new file mode 100644 index 0000000000..b19af7e38f --- /dev/null +++ b/third_party/libwebrtc/examples/androidapp/res/values-v21/styles.xml @@ -0,0 +1,4 @@ +<?xml version="1.0" encoding="utf-8"?> +<resources> + <style name="AppTheme" parent="android:Theme.Material" /> +</resources> diff --git a/third_party/libwebrtc/examples/androidapp/res/values/arrays.xml b/third_party/libwebrtc/examples/androidapp/res/values/arrays.xml new file mode 100644 index 0000000000..4a2948c875 --- /dev/null +++ b/third_party/libwebrtc/examples/androidapp/res/values/arrays.xml @@ -0,0 +1,61 @@ +<?xml version="1.0" encoding="utf-8"?> +<resources> + <string-array name="videoResolutions"> + <item>Default</item> + <item>4K (3840 x 2160)</item> + <item>Full HD (1920 x 1080)</item> + <item>HD (1280 x 720)</item> + <item>VGA (640 x 480)</item> + <item>QVGA (320 x 240)</item> + </string-array> + + <string-array name="videoResolutionsValues"> + <item>Default</item> + <item>3840 x 2160</item> + <item>1920 x 1080</item> + <item>1280 x 720</item> + <item>640 x 480</item> + <item>320 x 240</item> + </string-array> + + <string-array name="cameraFps"> + <item>Default</item> + <item>30 fps</item> + <item>15 fps</item> + </string-array> + + <string-array name="startBitrate"> + <item>Default</item> + <item>Manual</item> + </string-array> + + <string-array name="videoCodecs"> + <item>VP8</item> + <item>VP9</item> + <item>H264 Baseline</item> + <item>H264 High</item> + <item>AV1</item> + </string-array> + + <string-array name="audioCodecs"> + <item>OPUS</item> + <item>ISAC</item> + </string-array> + + <string-array name="speakerphone"> + <item>Auto (proximity sensor)</item> + <item>Enabled</item> + <item>Disabled</item> + </string-array> + + <string-array name="speakerphoneValues"> + <item>auto</item> + <item>true</item> + <item>false</item> + </string-array> + + <string-array name="roomListContextMenu"> + <item>Remove favorite</item> + </string-array> + +</resources> diff --git a/third_party/libwebrtc/examples/androidapp/res/values/strings.xml b/third_party/libwebrtc/examples/androidapp/res/values/strings.xml new file mode 100644 index 0000000000..814966f200 --- /dev/null +++ b/third_party/libwebrtc/examples/androidapp/res/values/strings.xml @@ -0,0 +1,224 @@ +<?xml version="1.0" encoding="utf-8"?> +<resources> + <string name="app_name" translatable="false">AppRTC</string> + <string name="settings_name" translatable="false">AppRTC Settings</string> + <string name="disconnect_call">Disconnect Call</string> + <string name="room_description"> + Please enter a room name. Room names are shared with everyone, so think + of something unique and send it to a friend. + </string> + <string name="favorites">Favorites</string> + <string name="no_favorites">No favorites</string> + <string name="invalid_url_title">Invalid URL</string> + <string name="invalid_url_text">The URL or room name you entered resulted in an invalid URL: %1$s + </string> + <string name="channel_error_title">Connection error</string> + <string name="connecting_to">Connecting to: %1$s</string> + <string name="missing_url">FATAL ERROR: Missing URL to connect to.</string> + <string name="camera2_texture_only_error">Camera2 only supports capturing to texture. Either disable Camera2 or enable capturing to texture in the options.</string> + <string name="ok">OK</string> + <string name="switch_camera">Switch front/back camera</string> + <string name="capture_format_change_text">Slide to change capture format</string> + <string name="muted">Muted</string> + <string name="toggle_debug">Toggle debug view</string> + <string name="toggle_mic">Toggle microphone on/off</string> + <string name="action_settings">Settings</string> + <string name="action_loopback">Loopback connection</string> + <string name="connect_description">Connect to the room</string> + <string name="add_favorite_description">Add favorite</string> + <string name="format_description">%1$dx%2$d @ %3$d fps</string> + <string name="missing_permissions_try_again">The application is missing permissions. It might not work correctly. Do you want to try again?</string> + <string name="yes">Yes</string> + <string name="no">No</string> + + <!-- Settings strings. --> + <string name="pref_room_key">room_preference</string> + <string name="pref_room_list_key">room_list_preference</string> + + <string name="pref_videosettings_key">video_settings_key</string> + <string name="pref_videosettings_title">WebRTC video settings.</string> + + <string name="pref_videocall_key">videocall_preference</string> + <string name="pref_videocall_title">Video call.</string> + <string name="pref_videocall_dlg">Enable video in a call.</string> + <string name="pref_videocall_default">true</string> + + <string name="pref_screencapture_key">screencapture_preference</string> + <string name="pref_screencapture_title">Use screencapture.</string> + <string name="pref_screencapture_default">false</string> + + <string name="pref_camera2_key">camera2_preference</string> + <string name="pref_camera2_title">Use Camera2.</string> + <string name="pref_camera2_default">true</string> + <string name="pref_camera2_not_supported">Not supported on this device.</string> + + <string name="pref_resolution_key">resolution_preference</string> + <string name="pref_resolution_title">Video resolution.</string> + <string name="pref_resolution_dlg">Enter AppRTC local video resolution.</string> + <string name="pref_resolution_default">Default</string> + + <string name="pref_fps_key">fps_preference</string> + <string name="pref_fps_title">Camera fps.</string> + <string name="pref_fps_dlg">Enter local camera fps.</string> + <string name="pref_fps_default">Default</string> + + <string name="pref_capturequalityslider_key">capturequalityslider_preference</string> + <string name="pref_capturequalityslider_title">Capture quality slider.</string> + <string name="pref_capturequalityslider_dlg">Enable slider for changing capture quality.</string> + <string name="pref_capturequalityslider_default">false</string> + + <string name="pref_maxvideobitrate_key">maxvideobitrate_preference</string> + <string name="pref_maxvideobitrate_title">Maximum video bitrate setting.</string> + <string name="pref_maxvideobitrate_dlg">Maximum video bitrate setting.</string> + <string name="pref_maxvideobitrate_default">Default</string> + + <string name="pref_maxvideobitratevalue_key">maxvideobitratevalue_preference</string> + <string name="pref_maxvideobitratevalue_title">Video encoder maximum bitrate.</string> + <string name="pref_maxvideobitratevalue_dlg">Enter video encoder maximum bitrate in kbps.</string> + <string name="pref_maxvideobitratevalue_default">1700</string> + + <string name="pref_videocodec_key">videocodec_preference</string> + <string name="pref_videocodec_title">Default video codec.</string> + <string name="pref_videocodec_dlg">Select default video codec.</string> + <string name="pref_videocodec_default">VP8</string> + + <string name="pref_hwcodec_key">hwcodec_preference</string> + <string name="pref_hwcodec_title">Video codec hardware acceleration.</string> + <string name="pref_hwcodec_dlg">Use hardware accelerated video codec (if available).</string> + <string name="pref_hwcodec_default">true</string> + + <string name="pref_capturetotexture_key">capturetotexture_preference</string> + <string name="pref_capturetotexture_title">Video capture to surface texture.</string> + <string name="pref_capturetotexture_dlg">Capture video to textures (if available).</string> + <string name="pref_capturetotexture_default">true</string> + + <string name="pref_flexfec_key">flexfec_preference</string> + <string name="pref_flexfec_title">Codec-agnostic Flexible FEC.</string> + <string name="pref_flexfec_dlg">Enable FlexFEC.</string> + <string name="pref_flexfec_default">false</string> + + <string name="pref_value_enabled">Enabled</string> + <string name="pref_value_disabled">Disabled</string> + + <string name="pref_audiosettings_key">audio_settings_key</string> + <string name="pref_audiosettings_title">WebRTC audio settings.</string> + + <string name="pref_startaudiobitrate_key">startaudiobitrate_preference</string> + <string name="pref_startaudiobitrate_title">Audio bitrate setting.</string> + <string name="pref_startaudiobitrate_dlg">Audio bitrate setting.</string> + <string name="pref_startaudiobitrate_default">Default</string> + + <string name="pref_startaudiobitratevalue_key">startaudiobitratevalue_preference</string> + <string name="pref_startaudiobitratevalue_title">Audio codec bitrate.</string> + <string name="pref_startaudiobitratevalue_dlg">Enter audio codec bitrate in kbps.</string> + <string name="pref_startaudiobitratevalue_default">32</string> + + <string name="pref_audiocodec_key">audiocodec_preference</string> + <string name="pref_audiocodec_title">Default audio codec.</string> + <string name="pref_audiocodec_dlg">Select default audio codec.</string> + <string name="pref_audiocodec_default">OPUS</string> + + <string name="pref_noaudioprocessing_key">audioprocessing_preference</string> + <string name="pref_noaudioprocessing_title">Disable audio processing.</string> + <string name="pref_noaudioprocessing_dlg">Disable audio processing pipeline.</string> + <string name="pref_noaudioprocessing_default">false</string> + + <string name="pref_aecdump_key">aecdump_preference</string> + <string name="pref_aecdump_title">Create aecdump.</string> + <string name="pref_aecdump_dlg">Enable diagnostic audio recordings.</string> + <string name="pref_aecdump_default">false</string> + + <string name="pref_enable_save_input_audio_to_file_key">enable_key</string> + <string name="pref_enable_save_input_audio_to_file_title">Save input audio to file.</string> + <string name="pref_enable_save_input_audio_to_file_dlg">Save input audio to file.</string> + <string name="pref_enable_save_input_audio_to_file_default">false</string> + + <string name="pref_opensles_key">opensles_preference</string> + <string name="pref_opensles_title">Use OpenSL ES for audio playback.</string> + <string name="pref_opensles_dlg">Use OpenSL ES for audio playback.</string> + <string name="pref_opensles_default">false</string> + + <string name="pref_disable_built_in_aec_key">disable_built_in_aec_preference</string> + <string name="pref_disable_built_in_aec_title">Disable hardware AEC.</string> + <string name="pref_disable_built_in_aec_dlg">Disable hardware AEC.</string> + <string name="pref_disable_built_in_aec_default">false</string> + <string name="pref_built_in_aec_not_available">Hardware AEC is not available</string> + + <string name="pref_disable_built_in_agc_key">disable_built_in_agc_preference</string> + <string name="pref_disable_built_in_agc_title">Disable hardware AGC.</string> + <string name="pref_disable_built_in_agc_dlg">Disable hardware AGC.</string> + <string name="pref_disable_built_in_agc_default">false</string> + <string name="pref_built_in_agc_not_available">Hardware AGC is not available</string> + + <string name="pref_disable_built_in_ns_key">disable_built_in_ns_preference</string> + <string name="pref_disable_built_in_ns_title">Disable hardware NS.</string> + <string name="pref_disable_built_in_ns_dlg">Disable hardware NS.</string> + <string name="pref_disable_built_in_ns_default">false</string> + <string name="pref_built_in_ns_not_available">Hardware NS is not available</string> + + <string name="pref_disable_webrtc_agc_and_hpf_key">disable_webrtc_agc_and_hpf_preference</string> + <string name="pref_disable_webrtc_agc_and_hpf_title">Disable WebRTC AGC and HPF.</string> + <string name="pref_disable_webrtc_agc_default">false</string> + + <string name="pref_speakerphone_key">speakerphone_preference</string> + <string name="pref_speakerphone_title">Speakerphone.</string> + <string name="pref_speakerphone_dlg">Speakerphone.</string> + <string name="pref_speakerphone_default">auto</string> + + <string name="pref_datasettings_key">data_settings_key</string> + <string name="pref_datasettings_title">WebRTC data channel settings.</string> + + <string name="pref_enable_datachannel_key">enable_datachannel_preference</string> + <string name="pref_enable_datachannel_title">Enable datachannel.</string> + <string name="pref_enable_datachannel_default" translatable="false">true</string> + + <string name="pref_ordered_key">ordered_preference</string> + <string name="pref_ordered_title">Order messages.</string> + <string name="pref_ordered_default" translatable="false">true</string> + + <string name="pref_data_protocol_key">Subprotocol</string> + <string name="pref_data_protocol_title">Subprotocol.</string> + <string name="pref_data_protocol_dlg">Enter subprotocol.</string> + <string name="pref_data_protocol_default" translatable="false"></string> + + <string name="pref_negotiated_key">negotiated_preference</string> + <string name="pref_negotiated_title">Negotiated.</string> + <string name="pref_negotiated_default" translatable="false">false</string> + + <string name="pref_max_retransmit_time_ms_key">max_retransmit_time_ms_preference</string> + <string name="pref_max_retransmit_time_ms_title">Max delay to retransmit.</string> + <string name="pref_max_retransmit_time_ms_dlg">Enter max delay to retransmit (in ms).</string> + <string name="pref_max_retransmit_time_ms_default" translatable="false">-1</string> + + <string name="pref_max_retransmits_key">max_retransmits_preference</string> + <string name="pref_max_retransmits_title">Max attempts to retransmit.</string> + <string name="pref_max_retransmits_dlg">Enter max attempts to retransmit.</string> + <string name="pref_max_retransmits_default" translatable="false">-1</string> + + <string name="pref_data_id_key">data_id_preference</string> + <string name="pref_data_id_title">Data id.</string> + <string name="pref_data_id_dlg">Enter data channel id.</string> + <string name="pref_data_id_default" translatable="false">-1</string> + + <string name="pref_miscsettings_key">misc_settings_key</string> + <string name="pref_miscsettings_title">Miscellaneous settings.</string> + + <string name="pref_room_server_url_key">room_server_url_preference</string> + <string name="pref_room_server_url_title">Room server URL.</string> + <string name="pref_room_server_url_dlg">Enter a room server URL.</string> + <string name="pref_room_server_url_default" translatable="false">https://appr.tc</string> + + <string name="pref_displayhud_key">displayhud_preference</string> + <string name="pref_displayhud_title">Display call statistics.</string> + <string name="pref_displayhud_dlg">Display call statistics.</string> + <string name="pref_displayhud_default" translatable="false">false</string> + + <string name="pref_tracing_key">tracing_preference</string> + <string name="pref_tracing_title">Debug performance tracing.</string> + <string name="pref_tracing_dlg">Debug performance tracing.</string> + <string name="pref_tracing_default" translatable="false">false</string> + + <string name="pref_enable_rtceventlog_key">enable_rtceventlog_key</string> + <string name="pref_enable_rtceventlog_title">Enable RtcEventLog.</string> + <string name="pref_enable_rtceventlog_default">false</string> +</resources> diff --git a/third_party/libwebrtc/examples/androidapp/res/xml/preferences.xml b/third_party/libwebrtc/examples/androidapp/res/xml/preferences.xml new file mode 100644 index 0000000000..14e74d5c0b --- /dev/null +++ b/third_party/libwebrtc/examples/androidapp/res/xml/preferences.xml @@ -0,0 +1,247 @@ +<?xml version="1.0" encoding="utf-8"?> +<PreferenceScreen xmlns:android="http://schemas.android.com/apk/res/android"> + <PreferenceCategory + android:key="@string/pref_videosettings_key" + android:title="@string/pref_videosettings_title"> + + <CheckBoxPreference + android:key="@string/pref_videocall_key" + android:title="@string/pref_videocall_title" + android:dialogTitle="@string/pref_videocall_dlg" + android:defaultValue="@string/pref_videocall_default" /> + + <CheckBoxPreference + android:key="@string/pref_screencapture_key" + android:title="@string/pref_screencapture_title" + android:defaultValue="@string/pref_screencapture_default" /> + + <CheckBoxPreference + android:key="@string/pref_camera2_key" + android:title="@string/pref_camera2_title" + android:defaultValue="@string/pref_camera2_default" /> + + <ListPreference + android:key="@string/pref_resolution_key" + android:title="@string/pref_resolution_title" + android:defaultValue="@string/pref_resolution_default" + android:dialogTitle="@string/pref_resolution_dlg" + android:entries="@array/videoResolutions" + android:entryValues="@array/videoResolutionsValues" /> + + <ListPreference + android:key="@string/pref_fps_key" + android:title="@string/pref_fps_title" + android:defaultValue="@string/pref_fps_default" + android:dialogTitle="@string/pref_fps_dlg" + android:entries="@array/cameraFps" + android:entryValues="@array/cameraFps" /> + + <CheckBoxPreference + android:key="@string/pref_capturequalityslider_key" + android:title="@string/pref_capturequalityslider_title" + android:dialogTitle="@string/pref_capturequalityslider_dlg" + android:defaultValue="@string/pref_capturequalityslider_default" /> + + <ListPreference + android:key="@string/pref_maxvideobitrate_key" + android:title="@string/pref_maxvideobitrate_title" + android:defaultValue="@string/pref_maxvideobitrate_default" + android:dialogTitle="@string/pref_maxvideobitrate_dlg" + android:entries="@array/startBitrate" + android:entryValues="@array/startBitrate" /> + + <EditTextPreference + android:key="@string/pref_maxvideobitratevalue_key" + android:title="@string/pref_maxvideobitratevalue_title" + android:inputType="number" + android:defaultValue="@string/pref_maxvideobitratevalue_default" + android:dialogTitle="@string/pref_maxvideobitratevalue_dlg" /> + + <ListPreference + android:key="@string/pref_videocodec_key" + android:title="@string/pref_videocodec_title" + android:defaultValue="@string/pref_videocodec_default" + android:dialogTitle="@string/pref_videocodec_dlg" + android:entries="@array/videoCodecs" + android:entryValues="@array/videoCodecs" /> + + <CheckBoxPreference + android:key="@string/pref_hwcodec_key" + android:title="@string/pref_hwcodec_title" + android:dialogTitle="@string/pref_hwcodec_dlg" + android:defaultValue="@string/pref_hwcodec_default" /> + + <CheckBoxPreference + android:key="@string/pref_capturetotexture_key" + android:title="@string/pref_capturetotexture_title" + android:dialogTitle="@string/pref_capturetotexture_dlg" + android:defaultValue="@string/pref_capturetotexture_default" /> + + <CheckBoxPreference + android:key="@string/pref_flexfec_key" + android:title="@string/pref_flexfec_title" + android:dialogTitle="@string/pref_flexfec_dlg" + android:defaultValue="@string/pref_flexfec_default" /> + </PreferenceCategory> + + <PreferenceCategory + android:key="@string/pref_audiosettings_key" + android:title="@string/pref_audiosettings_title"> + + <ListPreference + android:key="@string/pref_startaudiobitrate_key" + android:title="@string/pref_startaudiobitrate_title" + android:defaultValue="@string/pref_startaudiobitrate_default" + android:dialogTitle="@string/pref_startaudiobitrate_dlg" + android:entries="@array/startBitrate" + android:entryValues="@array/startBitrate" /> + + <EditTextPreference + android:key="@string/pref_startaudiobitratevalue_key" + android:title="@string/pref_startaudiobitratevalue_title" + android:inputType="number" + android:defaultValue="@string/pref_startaudiobitratevalue_default" + android:dialogTitle="@string/pref_startaudiobitratevalue_dlg" /> + + <ListPreference + android:key="@string/pref_audiocodec_key" + android:title="@string/pref_audiocodec_title" + android:defaultValue="@string/pref_audiocodec_default" + android:dialogTitle="@string/pref_audiocodec_dlg" + android:entries="@array/audioCodecs" + android:entryValues="@array/audioCodecs" /> + + <CheckBoxPreference + android:key="@string/pref_noaudioprocessing_key" + android:title="@string/pref_noaudioprocessing_title" + android:dialogTitle="@string/pref_noaudioprocessing_dlg" + android:defaultValue="@string/pref_noaudioprocessing_default" /> + + <CheckBoxPreference + android:key="@string/pref_aecdump_key" + android:title="@string/pref_aecdump_title" + android:dialogTitle="@string/pref_aecdump_dlg" + android:defaultValue="@string/pref_aecdump_default" /> + + <CheckBoxPreference + android:key="@string/pref_enable_save_input_audio_to_file_key" + android:title="@string/pref_enable_save_input_audio_to_file_title" + android:dialogTitle="@string/pref_enable_save_input_audio_to_file_dlg" + android:defaultValue="@string/pref_enable_save_input_audio_to_file_default" /> + + <CheckBoxPreference + android:key="@string/pref_opensles_key" + android:title="@string/pref_opensles_title" + android:dialogTitle="@string/pref_opensles_dlg" + android:defaultValue="@string/pref_opensles_default" /> + + <CheckBoxPreference + android:key="@string/pref_disable_built_in_aec_key" + android:title="@string/pref_disable_built_in_aec_title" + android:dialogTitle="@string/pref_disable_built_in_aec_dlg" + android:defaultValue="@string/pref_disable_built_in_aec_default" /> + + <CheckBoxPreference + android:key="@string/pref_disable_built_in_agc_key" + android:title="@string/pref_disable_built_in_agc_title" + android:dialogTitle="@string/pref_disable_built_in_agc_dlg" + android:defaultValue="@string/pref_disable_built_in_agc_default" /> + + <CheckBoxPreference + android:key="@string/pref_disable_built_in_ns_key" + android:title="@string/pref_disable_built_in_ns_title" + android:dialogTitle="@string/pref_disable_built_in_ns_dlg" + android:defaultValue="@string/pref_disable_built_in_ns_default" /> + + <CheckBoxPreference + android:key="@string/pref_disable_webrtc_agc_and_hpf_key" + android:title="@string/pref_disable_webrtc_agc_and_hpf_title" + android:defaultValue="@string/pref_disable_webrtc_agc_default" /> + + <ListPreference + android:key="@string/pref_speakerphone_key" + android:title="@string/pref_speakerphone_title" + android:defaultValue="@string/pref_speakerphone_default" + android:dialogTitle="@string/pref_speakerphone_dlg" + android:entries="@array/speakerphone" + android:entryValues="@array/speakerphoneValues" /> + </PreferenceCategory> + + <PreferenceCategory + android:key="@string/pref_datasettings_key" + android:title="@string/pref_datasettings_title"> + + <CheckBoxPreference + android:key="@string/pref_enable_datachannel_key" + android:title="@string/pref_enable_datachannel_title" + android:defaultValue="@string/pref_enable_datachannel_default" /> + + <CheckBoxPreference + android:key="@string/pref_ordered_key" + android:title="@string/pref_ordered_title" + android:defaultValue="@string/pref_ordered_default" /> + + <EditTextPreference + android:key="@string/pref_data_protocol_key" + android:title="@string/pref_data_protocol_title" + android:inputType="text" + android:defaultValue="@string/pref_data_protocol_default" + android:dialogTitle="@string/pref_data_protocol_dlg" /> + + <CheckBoxPreference + android:key="@string/pref_negotiated_key" + android:title="@string/pref_negotiated_title" + android:defaultValue="@string/pref_negotiated_default" /> + + <EditTextPreference + android:key="@string/pref_max_retransmit_time_ms_key" + android:title="@string/pref_max_retransmit_time_ms_title" + android:inputType="number" + android:defaultValue="@string/pref_max_retransmit_time_ms_default" + android:dialogTitle="@string/pref_max_retransmit_time_ms_dlg" /> + + <EditTextPreference + android:key="@string/pref_max_retransmits_key" + android:title="@string/pref_max_retransmits_title" + android:inputType="number" + android:defaultValue="@string/pref_max_retransmits_default" + android:dialogTitle="@string/pref_max_retransmits_dlg" /> + + <EditTextPreference + android:key="@string/pref_data_id_key" + android:title="@string/pref_data_id_title" + android:inputType="number" + android:defaultValue="@string/pref_data_id_default" + android:dialogTitle="@string/pref_data_id_dlg" /> + </PreferenceCategory> + + <PreferenceCategory + android:key="@string/pref_miscsettings_key" + android:title="@string/pref_miscsettings_title"> + + <EditTextPreference + android:key="@string/pref_room_server_url_key" + android:title="@string/pref_room_server_url_title" + android:inputType="text" + android:defaultValue="@string/pref_room_server_url_default" + android:dialogTitle="@string/pref_room_server_url_dlg" /> + + <CheckBoxPreference + android:key="@string/pref_displayhud_key" + android:title="@string/pref_displayhud_title" + android:dialogTitle="@string/pref_displayhud_dlg" + android:defaultValue="@string/pref_displayhud_default" /> + + <CheckBoxPreference + android:key="@string/pref_tracing_key" + android:title="@string/pref_tracing_title" + android:dialogTitle="@string/pref_tracing_dlg" + android:defaultValue="@string/pref_tracing_default" /> + + <CheckBoxPreference + android:key="@string/pref_enable_rtceventlog_key" + android:title="@string/pref_enable_rtceventlog_title" + android:defaultValue="@string/pref_enable_rtceventlog_default"/> + </PreferenceCategory> + +</PreferenceScreen> |