Donate to e Foundation | Murena handsets with /e/OS | Own a part of Murena! Learn more

Commit e4781556 authored by Jacqueline Bronger's avatar Jacqueline Bronger Committed by Android (Google) Code Review
Browse files

Merge "Additional MediaRouter2Info wired route types" into main

parents 037aeee9 52f7285e
Loading
Loading
Loading
Loading
+3 −0
Original line number Diff line number Diff line
@@ -24669,6 +24669,7 @@ package android.media {
    field @FlaggedApi("com.android.media.flags.enable_built_in_speaker_route_suitability_statuses") public static final int SUITABILITY_STATUS_NOT_SUITABLE_FOR_TRANSFER = 2; // 0x2
    field @FlaggedApi("com.android.media.flags.enable_built_in_speaker_route_suitability_statuses") public static final int SUITABILITY_STATUS_SUITABLE_FOR_DEFAULT_TRANSFER = 0; // 0x0
    field @FlaggedApi("com.android.media.flags.enable_built_in_speaker_route_suitability_statuses") public static final int SUITABILITY_STATUS_SUITABLE_FOR_MANUAL_TRANSFER = 1; // 0x1
    field @FlaggedApi("com.android.media.flags.enable_new_wired_media_route_2_info_types") public static final int TYPE_AUX_LINE = 19; // 0x13
    field public static final int TYPE_BLE_HEADSET = 26; // 0x1a
    field public static final int TYPE_BLUETOOTH_A2DP = 8; // 0x8
    field public static final int TYPE_BUILTIN_SPEAKER = 2; // 0x2
@@ -24678,6 +24679,8 @@ package android.media {
    field @FlaggedApi("com.android.media.flags.enable_audio_policies_device_and_bluetooth_controller") public static final int TYPE_HDMI_ARC = 10; // 0xa
    field @FlaggedApi("com.android.media.flags.enable_audio_policies_device_and_bluetooth_controller") public static final int TYPE_HDMI_EARC = 29; // 0x1d
    field public static final int TYPE_HEARING_AID = 23; // 0x17
    field @FlaggedApi("com.android.media.flags.enable_new_wired_media_route_2_info_types") public static final int TYPE_LINE_ANALOG = 5; // 0x5
    field @FlaggedApi("com.android.media.flags.enable_new_wired_media_route_2_info_types") public static final int TYPE_LINE_DIGITAL = 6; // 0x6
    field @FlaggedApi("android.media.audio.enable_multichannel_group_device") public static final int TYPE_MULTICHANNEL_SPEAKER_GROUP = 32; // 0x20
    field public static final int TYPE_REMOTE_AUDIO_VIDEO_RECEIVER = 1003; // 0x3eb
    field @FlaggedApi("com.android.media.flags.enable_new_media_route_2_info_types") public static final int TYPE_REMOTE_CAR = 1008; // 0x3f0
+31 −0
Original line number Diff line number Diff line
@@ -22,6 +22,7 @@ import static android.media.audio.Flags.FLAG_ENABLE_MULTICHANNEL_GROUP_DEVICE;
import static com.android.media.flags.Flags.FLAG_ENABLE_AUDIO_POLICIES_DEVICE_AND_BLUETOOTH_CONTROLLER;
import static com.android.media.flags.Flags.FLAG_ENABLE_BUILT_IN_SPEAKER_ROUTE_SUITABILITY_STATUSES;
import static com.android.media.flags.Flags.FLAG_ENABLE_NEW_MEDIA_ROUTE_2_INFO_TYPES;
import static com.android.media.flags.Flags.FLAG_ENABLE_NEW_WIRED_MEDIA_ROUTE_2_INFO_TYPES;

import android.annotation.FlaggedApi;
import android.annotation.IntDef;
@@ -150,6 +151,9 @@ public final class MediaRoute2Info implements Parcelable {
                TYPE_HDMI,
                TYPE_HDMI_ARC,
                TYPE_HDMI_EARC,
                TYPE_LINE_DIGITAL,
                TYPE_LINE_ANALOG,
                TYPE_AUX_LINE,
                TYPE_USB_DEVICE,
                TYPE_USB_ACCESSORY,
                TYPE_DOCK,
@@ -230,6 +234,24 @@ public final class MediaRoute2Info implements Parcelable {
    @FlaggedApi(FLAG_ENABLE_AUDIO_POLICIES_DEVICE_AND_BLUETOOTH_CONTROLLER)
    public static final int TYPE_HDMI_EARC = AudioDeviceInfo.TYPE_HDMI_EARC;

    /**
     * Indicates the route is a digital line connection (for example S/PDIF).
     */
    @FlaggedApi(FLAG_ENABLE_NEW_WIRED_MEDIA_ROUTE_2_INFO_TYPES)
    public static final int TYPE_LINE_DIGITAL = AudioDeviceInfo.TYPE_LINE_DIGITAL;

    /**
     * Indicates the route is an analog line-level connection.
     */
    @FlaggedApi(FLAG_ENABLE_NEW_WIRED_MEDIA_ROUTE_2_INFO_TYPES)
    public static final int TYPE_LINE_ANALOG = AudioDeviceInfo.TYPE_LINE_ANALOG;

    /**
     * Indicates the route is using the auxiliary line-level connectors.
     */
    @FlaggedApi(FLAG_ENABLE_NEW_WIRED_MEDIA_ROUTE_2_INFO_TYPES)
    public static final int TYPE_AUX_LINE = AudioDeviceInfo.TYPE_AUX_LINE;

    /**
     * Indicates the route is a USB audio device.
     *
@@ -839,6 +861,7 @@ public final class MediaRoute2Info implements Parcelable {
    public boolean isSystemRouteType() {
        return switch (mType) {
            case TYPE_BUILTIN_SPEAKER,
                            TYPE_AUX_LINE,
                            TYPE_BLUETOOTH_A2DP,
                            TYPE_DOCK,
                            TYPE_BLE_HEADSET,
@@ -846,6 +869,8 @@ public final class MediaRoute2Info implements Parcelable {
                            TYPE_HDMI,
                            TYPE_HDMI_ARC,
                            TYPE_HDMI_EARC,
                            TYPE_LINE_DIGITAL,
                            TYPE_LINE_ANALOG,
                            TYPE_USB_ACCESSORY,
                            TYPE_USB_DEVICE,
                            TYPE_USB_HEADSET,
@@ -1074,6 +1099,12 @@ public final class MediaRoute2Info implements Parcelable {
                return "HDMI_ARC";
            case TYPE_HDMI_EARC:
                return "HDMI_EARC";
            case TYPE_LINE_DIGITAL:
                return "LINE_DIGITAL";
            case TYPE_LINE_ANALOG:
                return "LINE_ANALOG";
            case TYPE_AUX_LINE:
                return "AUX_LINE";
            case TYPE_DOCK:
                return "DOCK";
            case TYPE_USB_DEVICE:
+8 −0
Original line number Diff line number Diff line
@@ -46,6 +46,14 @@ flag {
    bug: "301713440"
}

flag {
    name: "enable_new_wired_media_route_2_info_types"
    is_exported: true
    namespace: "media_tv"
    description: "Enables the following type constant in MediaRoute2Info: LINE_ANALOG, LINE_DIGITAL, AUX_LINE"
    bug: "301713440"
}

flag {
    name: "enable_privileged_routing_for_media_routing_control"
    is_exported: true
+6 −0
Original line number Diff line number Diff line
@@ -1426,6 +1426,12 @@
    <string name="media_transfer_default_device_name">Connected device</string>
    <!-- Name of the phone device with an active remote session. [CHAR LIMIT=30] -->
    <string name="media_transfer_this_phone">This phone</string>
    <!-- Name of the digital audio output, i.e. S/PDIF, usually optical. [CHAR LIMIT=30] -->
    <string name="media_transfer_digital_line_name">S/PDIF</string>
    <!-- Name of the analog audio output. [CHAR LIMIT=30] -->
    <string name="media_transfer_analog_line_name">Analog</string>
    <!-- Name of the AUX audio output. [CHAR LIMIT=30] -->
    <string name="media_transfer_aux_line_name">AUX</string>
    <!-- Sub status indicates device is not available due to an unknown error. [CHAR LIMIT=NONE] -->
    <string name="media_output_status_unknown_error">Can\’t play on this device</string>
    <!-- Sub status indicates device need premium account. [CHAR LIMIT=NONE] -->
+6 −0
Original line number Diff line number Diff line
@@ -15,6 +15,9 @@
 */
package com.android.settingslib.media;

import static android.media.MediaRoute2Info.TYPE_AUX_LINE;
import static android.media.MediaRoute2Info.TYPE_LINE_ANALOG;
import static android.media.MediaRoute2Info.TYPE_LINE_DIGITAL;
import static android.media.MediaRoute2Info.TYPE_BLE_HEADSET;
import static android.media.MediaRoute2Info.TYPE_BLUETOOTH_A2DP;
import static android.media.MediaRoute2Info.TYPE_BUILTIN_SPEAKER;
@@ -700,6 +703,9 @@ public abstract class InfoMediaManager {
            case TYPE_HDMI:
            case TYPE_HDMI_ARC:
            case TYPE_HDMI_EARC:
            case TYPE_LINE_DIGITAL:
            case TYPE_LINE_ANALOG:
            case TYPE_AUX_LINE:
            case TYPE_WIRED_HEADSET:
            case TYPE_WIRED_HEADPHONES:
                mediaDevice =
Loading