Dinamik ses çubuğu modu

Android 14 çerçeve destekli, set üstü kutular (STB'ler) baypas (OTT) cihazlarda ise yerleşik veya bağlı hoparlörlere sahip olarak yapılandırıldı. Dinamik ses çubuğu modu (DSM), HDMI tüketicisini destekler ses çubukları için ses dönüş kanalı gibi elektronik kontrolü (CEC) özellikleri (ARC) ve sistem ses kontrolü.

Bu özellik yalnızca Android TV CEC oynatma cihazlarını hedefler.

Gereksinimler

Ses çubuğu özelliğini kullanmak için OEM'lerin cihaz ve sistem kullanıcı arayüzünü karşılaması gerekir bu bölümde listelenen şartlara uymaktır.

Cihaz gereksinimleri

DSM'yi desteklemek için STB/OTT cihazının aşağıdaki koşulları karşılaması gerekir:

  • Cihazda Android 14 yüklü olmalıdır.
  • DSM etkinleştirildiğinde, cihaz HDMI CEC spesifikasyonları (ör. ARC).
  • Cihaz, yerleşik veya bağlı bir cihazda ses çalabilmelidir sağlayabilirsiniz.
  • Cihaz etkin bir kaynak değilse Bu da güç tüketimini sınırlandırıyor.
ziyaret edin.

Sistem kullanıcı arayüzü gereksinimleri

DSM'yi desteklemek için, OEM'lerin Sistem Kullanıcı Arayüzü:

  • Kullanıcı arayüzü etiketi, ARC'ye veya Ses Dönüş Kanalı (ARC).
  • Kullanıcı arayüzü, cihazın TV'nin ARC bağlantı noktasına bağlanması için kullanıcıya bilgi vermelidir. ARC bağlantısını kurun.
  • Kullanıcı arayüzü, kullanıcıya özelliğin aşağıdaki durumlarda beklendiği gibi çalışmayabileceğini bildirmelidir HDMI'da başka bir ses çubuğu veya ses/video alıcısı (AVR) bağlı olduğunda ağ.
  • Kullanıcı arayüzü, kullanıcıya ayarı açıp kapatınken ekranın titreyebileceği konusunda bilgi vermelidir. ayarını değiştirebilirsiniz.
  • Cihazda yerleşik hoparlör yoksa DSM varsayılan olarak devre dışı bırakılmalıdır.

En iyi uygulama: Görüntülü Reklam Ağı ve Konum olarak ses menüsü ARC'yi etkinleştirme veya devre dışı bırakmaya yönelik kullanıcı ayarına ilişkin aşağıdaki gibi SysUI uygulaması.

Çerçeve uygulaması

CEC ses çubuğu işlevinin ve dinamik ayırmanın uygulanması Android çerçevesinde mantıksal adres 5 vardır. Çerçeve, kampanyanın etkinleştirildiğinde cihazın mantıksal adresini dinamik bir şekilde ses çubuğuna dönüşür. Ses çubuğu ayarı devre dışı bırakıldığında çerçeve mantıksal adresi ayırır.

Sistem kullanıcı arayüzündeki kullanıcı girişine göre HdmiControlManager CEC_SETTING_NAME_SOUNDBAR_MODE değerini SOUNDBAR_MODE_ENABLED olarak ayarlar veya SOUNDBAR_MODE_DISABLED. Varsayılan CEC_SETTING_NAME_SOUNDBAR_MODE değeri SOUNDBAR_MODE_DISABLED olarak ayarlandı.

HdmiControlService, CEC_SETTING_NAME_SOUNDBAR_MODE metriğindeki değişikliği dinler ayarını değiştirin:

  • Yerel oynatma cihazı ve ARC özelliğinin olup olmadığını doğrulayın desteklenir.
  • Yerel ses cihazını eklemek veya kaldırmak için mantıksal adres ayırmayı tetikleyin.
  • Cihaz takılıysa ayarın durumunun korunduğundan emin olun.

Aşağıdaki beyan örneklerini inceleyin ve ses çubuğu modu:

    /**
     * Name of a setting deciding whether the Soundbar mode feature is enabled.
     * Before exposing this setting make sure the hardware supports it, otherwise, you may
     * experience multiple issues.
     *
     * @see HdmiControlManager#setSoundbarMode(int)
     */
    public static final String CEC_SETTING_NAME_SOUNDBAR_MODE = "soundbar_mode";
    /**
     * Soundbar mode feature enabled.
     */
    public static final int SOUNDBAR_MODE_ENABLED = 1;
    /**
     * Soundbar mode feature disabled.
     */
    public static final int SOUNDBAR_MODE_DISABLED = 0;

   /**
     * Set the status of Soundbar mode feature.
     *
     * <p>This allows to enable/disable Soundbar mode on the playback device.
     * The setting's effect will be available on devices where the hardware supports this feature.
     * If enabled, an audio system local device will be allocated and try to establish an ARC
     * connection with the TV. If disabled, the ARC connection will be terminated and the audio
     * system local device will be removed from the network.
     */
    public void setSoundbarMode(@SoundbarMode int value) {
    }

    /**
     * Get the current status of Soundbar mode feature.
     *
     * <p>Reflects whether Soundbar mode is currently enabled on the playback device.
     * If enabled, an audio system local device will be allocated and try to establish an ARC
     * connection with the TV. If disabled, the ARC connection will be terminated and the audio
     * system local device will be removed from the network.
     */
    public int getSoundbarMode() {}

OEM uygulaması

OEM'ler, dinamik ses çubuğu özelliğini desteklemek için donanımın destekler. OEM'ler cihazı yapılandırmalı ve Sistem kullanıcı arayüzünü uygulayarak kullanıcı girişleri.

Cihaz uygulaması

Bir cihazda ses çubuğu özelliğini desteklemek için:

  1. Android 14'te oynatma cihazını açın.
  2. Sürücüye HDMI ARC bağlantı noktasını takın.
  3. Şu RRO değerlerini bırakın: config_cecSoundbarModeEnabled_default config_cecSoundbarModeDisabled_default config.xml içinde değişmedi .

  4. Cihazın yerleşik veya güçlü bir sesi çalacak hoparlörleri bağlayabilir ve ses politikası yapılandırması.

  5. persist.sys.hdmi.property_arc_support sistem özelliğini şu şekilde ayarla: true, ARC'nin desteklendiğini belirtir.

  6. Sistem kullanıcı arayüzünde ses çubuğu modunu açıp kapatmak için ayarı açın.

Hata ayıklama için aşağıdaki adb komutunu kullanarak ses çubuğu özelliğini açın veya kapalı (açık için 1, kapalı için 0):

adb shell cmd hdmi_control cec_setting set soundbar_mode <1/0>

SysUI uygulaması

Bu bölümde, DSM'yi açmak ve kapatmak için önerilen, sahte bir kullanıcı arayüzü akışı açıklanmaktadır. Ses çıkışı ayarı, Ekran ve Gösterildiği şekliyle Ses menüsü Şekil 1'de:

dsm_ses_çıkışı

Şekil 1. Ekran ve Ses menüsü.

DSM'nin çalışması için HDMI-CEC'yi etkinleştir ayarının açık olması gerekir. İlgili içeriği oluşturmak için kullanılan ARC ayarı yalnızca HDMI-CEC etkinse etkinleştirilebilir. ARC ayarı Şekil 2'de gösterildiği gibi HDMI-CEC devre dışı bırakılırsa devre dışı olur ve devre dışı bırakılır. Kullanıcı arayüzü akışında HDMI-CEC'yi etkinleştir ayarını kapattığında Ekran ve Ses menüsünden Ev Hoparlörü ve ARC ayarını seçer devre dışı bırakıldı. Kullanıcı, Televizyon sesi çal ayarını şu şekilde etkinleştirebilir: HDMI-CEC'yi etkinleştir seçeneğini etkinleştirin.

dsm_ui_devre dışı_bırak

Şekil 2. Devre dışı bırakılan ARC seçeneğinin kullanıcı arayüzü.

HDMI-CEC ayarı etkinleştirildiğinde kullanıcı şunun altındaki ARC ayarını kullanabilir: DSM'yi açıp kapatmak için ses çıkışı. Kullanıcı, DSM'yi etkinleştirmek için kullanıcı arayüzünü takip eder görebilirsiniz. Aşağıdaki kullanıcı arayüzü akışında ses çubuğu modunu etkinleştirmek için kullanıcı Ev Hoparlörü'nü seçer ve ARC ayarını seçip onaylar. Dönmek için DSM'yi kapatırsanız kullanıcı ARC ayarını kapatır.

dsm_ui_enable_yarc

Şekil 3. DSM'yi etkinleştirme kullanıcı arayüzü.

Doğrulama

OEM'ler, oynatma cihazının hoparlörlerinin seslandığından emin olmak için ses testi yapabilir. TV'den veya TV'ye bağlı diğer cihazlardan gelen ses çalma panelini açın.

Manuel doğrulama

Beklenen davranışı manuel olarak doğrulamak için aşağıdaki senaryoları kullanın:

  • ARC ayarı etkin durumda:
    • TV kendi sesini kapatır.
    • TV sesi cihazın hoparlörlerine yönlendirilir.
  • ARC ayarı devre dışıdır:
    • TV, sesi cihaza yönlendirmeyi durdurur.
    • TV, ses çalmaya başlar.
  • ARC ayarı etkin ve cihaz ARC olmayan bir cihaza bağlı bağlantı noktası:
    • Cihaz, TV'nin sesini çalmaz.
  • ARC ayarı etkin ve mantıksal adres 5 başka bir kullanıcı tarafından kullanılıyor cihazınızı bağlamadan önce:
    • Cihaz bir ses çubuğu değil, salt oynatma cihazı gibi davranır.
  • ARC ayarı etkin, mantıksal adres 5 cihaz tarafından kullanılıyor ve ağa başka bir ses sistemi bağlı olduğunda:
    • Cihazın ses çubuğu davranışında herhangi bir değişiklik olmaz.
  • ARC ayarı etkin, mantıksal adres 5 cihaz tarafından kullanılıyor bağlı olmayan bir bağlantı noktasına, diğer bir ses sistemi bağlı olmasına ARC bağlantı noktası:
    • İkinci ses için TV ile ARC bağlantısı kurulmadı kayıtlı olmayan bir mantıksal adres kullandığından sisteme geri bildirimde bulunabilirsiniz.
  • ARC ayarı etkin ve cihaz prize takılı:
    • Cihaz, ayar etkinleştirildiğinde normal şekilde çalışır.

CTS doğrulaması

CtsHdmiCecHostTestCases ses çubuğu ayarı devre dışı bırakıldığında geçmek için gereklidir. HdmiCecSoundbarModeTest.java CtsHdmiCecHostTestCases test paketinde, DSM işlevlerini test eder.

Sertifika koşulu olmasa da CtsHdmiCecHostTestCases öğesini ses çubuğu ayarı etkinleştirildi.

Android TV cihazlar için CEC CTS testi bölümüne bakın. HDMI CEC için Android CTS testlerini çalıştırın.