Android 14 çerçeve desteği sayesinde OEM'ler, bağlı cihazlar için ses çubuğu olarak kullanılacak şekilde yerleşik veya bağlı hoparlörlere sahip set üstü kutuları (STB'ler) ve over-the-top (OTT) cihazları yapılandırabilir. Android 14'teki dinamik ses çubuğu modu (DSM), ses çubukları için HDMI tüketici elektroniği kontrolü (CEC) özelliklerini (ör. ses dönüş kanalı (ARC) ve sistem ses kontrolü) destekler.
Bu özellik yalnızca Android TV CEC oynatma cihazlarını hedefler.
Şartlar
OEM'lerin soundbar özelliğini kullanabilmesi için bu bölümde listelenen cihaz ve Sistem Kullanıcı Arayüzü şartlarını karşılaması gerekir.
Cihaz gereksinimleri
DSM'yi desteklemek için STB veya 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, ARC gibi HDMI CEC spesifikasyonlarına uygun olarak ses çubuğu gibi davranmalıdır.
- Cihaz, dahili veya bağlı hoparlörlerde ses çalabilmelidir.
- Cihaz etkin bir kaynak olmadığında cihazdaki tüm medya içerikleri duraklatılmalı ve güç tüketimi sınırlandırılmalıdır.
Sistem kullanıcı arayüzü gereksinimleri
DSM'yi desteklemek için OEM'ler, Sistem Kullanıcı Arayüzü'nü tasarlarken aşağıdaki koşulları karşılamalıdır:
- Kullanıcı arayüzü etiketinde ARC veya Ses Çıkışı Kanalı (ARC) referansı bulunmalıdır.
- Kullanıcı arayüzü, ARC bağlantısı oluşturmak için cihazı TV'nin ARC bağlantı noktasına bağlaması konusunda kullanıcıyı bilgilendirmelidir.
- Kullanıcı arayüzü, HDMI ağına başka bir ses çubuğu veya ses-video alıcısı (AVR) bağlanırsa özelliğin beklendiği gibi çalışmayabileceği konusunda kullanıcıyı bilgilendirmelidir.
- Kullanıcı arayüzü, ayar değiştirildiğinde ekranın titreyebileceği konusunda kullanıcıyı bilgilendirmelidir.
- Cihazda yerleşik hoparlör yoksa DSM varsayılan olarak devre dışı bırakılmalıdır.
En iyi uygulama olarak, ARC'yi etkinleştirmek veya devre dışı bırakmak için kullanıcı ayarının bulunduğu yer olarak Ekran ve Ses menüsünü kullanmanızı öneririz. Bu menü, SysUI uygulamasında gösterilmiştir.
Framework uygulaması
CEC ses çubuğu işlevinin ve 5 numaralı mantıksal adresin dinamik olarak atanmasının uygulanması Android çerçevesinde yer alır. Ses çubuğu ayarı etkinleştirildiğinde çerçeve, cihazın dinamik olarak ses çubuğu haline gelmesi için mantıksal adresi ayırır. Soundbar ayarı devre dışı bırakıldığında çerçeve, mantıksal adresi serbest bırakır.
Sistem kullanıcı arayüzündeki kullanıcı girişine göre HdmiControlManager
, CEC_SETTING_NAME_SOUNDBAR_MODE
değerini SOUNDBAR_MODE_ENABLED
veya SOUNDBAR_MODE_DISABLED
olarak ayarlar. CEC_SETTING_NAME_SOUNDBAR_MODE
politikasının varsayılan değeri SOUNDBAR_MODE_DISABLED
olarak ayarlanır.
HdmiControlService
, CEC_SETTING_NAME_SOUNDBAR_MODE
ayarındaki değişikliği dinleyerek aşağıdakileri yapar:
- Yerel bir oynatma cihazının mevcut olup olmadığını ve ARC özelliğinin desteklenip desteklenmediğini doğrulayın.
- Yerel ses cihazını eklemek veya kaldırmak için mantıksal adres tahsisini tetikleyin.
- Cihaz çalışırken takılırsa ayarın durumunun korunmasını sağlayın.
Soundbar modunun durumunu ayarlamak ve almak için aşağıdaki bildirim örneğine bakın:
/**
* 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.
*
* 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.
*
* 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 soundbar özelliğini desteklemek için donanımın bu özelliği desteklediğinden emin olmalıdır. OEM'ler, kullanıcı girişleri için gerekli arayüzü sağlamak üzere cihazı yapılandırmalı ve Sistem Kullanıcı Arayüzü'nü uygulamalıdır.
Cihaz uygulaması
Bir cihazda soundbar özelliğini desteklemek için:
- Android 14'te oynatma cihazını açın.
- Sürücüde HDMI ARC bağlantı noktasını uygulayın.
config.xml
içindeconfig_cecSoundbarModeEnabled_default
veconfig_cecSoundbarModeDisabled_default
RRO değerlerini değiştirmeyin. Bu sayede özellik varsayılan olarak devre dışı kalır.Cihazda sesin çalınacağı yerleşik veya bağlı hoparlörler olduğundan emin olun ve ses politikası yapılandırmasını düzenleyin.
ARC'nin desteklendiğini belirtmek için
persist.sys.hdmi.property_arc_support
sistem özelliğinitrue
olarak ayarlayın.Ses çubuğu modunu açıp kapatma ayarını Sistem Kullanıcı Arayüzü'nde gösterin.
Hata ayıklama için soundbar özelliğini açmak veya kapatmak üzere aşağıdaki
adb
komutunu kullanın (1
için açık,0
için kapalı):
adb shell cmd hdmi_control cec_setting set soundbar_mode <1/0>
SysUI uygulaması
Bu bölümde, DSM'yi açıp kapatmak için önerilen bir sahte kullanıcı arayüzü akışı açıklanmaktadır. Ses çıkışı ayarı, Şekil 1'de gösterildiği gibi Ekran ve Ses menüsündedir:
1. şekil. Ekran ve Ses menüsündeki ses çıkışı ayarı.
DSM'nin çalışması için HDMI-CEC'yi etkinleştir ayarı etkinleştirilmelidir. ARC ayarı yalnızca HDMI-CEC etkinse kullanılabilir. Şekil 2'de gösterildiği gibi HDMI-CEC devre dışı bırakılırsa ARC ayarı kullanılamaz ve devre dışı bırakılır. Aşağıdaki kullanıcı arayüzü akışında, kullanıcı Ekran ve Ses menüsünde HDMI-CEC'yi etkinleştir ayarını kapattığında ve Ev Hoparlörü'nü seçtiğinde ARC ayarı devre dışı bırakılır. Kullanıcı, HDMI-CEC'yi etkinleştir ayarını etkinleştirerek Televizyon sesini çal ayarını etkinleştirebilir.
Şekil 2. Devre dışı bırakılan ARC seçeneğinin kullanıcı arayüzü.
HDMI-CEC ayarı etkinleştirildiğinde kullanıcı, DSM'yi açıp kapatmak için Ses çıkışı bölümündeki ARC ayarını kullanabilir. DSM'yi açmak için kullanıcı, Şekil 3'teki kullanıcı arayüzü akışını takip eder. 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. Kullanıcı, DSM'yi kapatmak için ARC ayarını kapatır.
3.Şekil DSM'yi etkinleştirmek için kullanıcı arayüzü.
Doğrulama
OEM'ler, oynatma cihazının hoparlörlerinin TV'den veya TV paneline bağlı diğer cihazlardan gelen sesi oynattığından emin olmak için bir ses testi yapabilir.
Manuel doğrulama
Beklenen davranışı manuel olarak doğrulamak için aşağıdaki senaryoları kullanın:
- ARC ayarı etkinse:
- TV'nin sesi kapatılıyor.
- TV sesi, cihazın hoparlörlerine yönlendirilir.
- ARC ayarı devre dışıysa:
- TV, sesi cihaza yönlendirmeyi durdurur.
- TV, ses çalmaya başlar.
- ARC ayarı etkinleştirilmiş ve cihaz, TV'deki ARC olmayan bir bağlantı noktasına bağlanmış olmalıdır:
- Cihaz, TV'nin sesini çalmıyor.
- ARC ayarı etkinleştirilmiş ve cihaz bağlanmadan önce 5 numaralı mantıksal adres başka bir cihaz tarafından kullanılıyor:
- Cihaz, soundbar gibi değil, yalnızca oynatma cihazı gibi davranır.
- ARC ayarı etkinleştirilmiş, cihaz tarafından 5 numaralı mantıksal adres kullanılıyor ve ağda başka bir ses sistemi bağlı:
- Cihazın soundbar davranışında değişiklik olmaz.
- ARC ayarı etkinleştirilmiş, mantıksal adres 5 ARC olmayan bir bağlantı noktasına bağlı cihaz tarafından kullanılıyor ve ARC bağlantı noktasına başka bir ses sistemi bağlı:
- ARC bağlantısı, kayıtlı olmayan bir mantıksal adres kullandığı için ikinci ses sistemiyle kurulmuyor.
- ARC ayarı etkinleştirilmiş ve cihaz çalışırken takılmış olmalıdır:
- Cihaz, ayar etkinleştirildiğinde olduğu gibi normal şekilde çalışır.
CTS doğrulama
Soundbar ayarı devre dışı bırakıldığında CtsHdmiCecHostTestCases
parametresinin iletilmesi gerekir. CtsHdmiCecHostTestCases
test paketindeki HdmiCecSoundbarModeTest.java
testi, DSM işlevlerini test eder.
Sertifika için zorunlu olmasa da uygulamanızı doğrulamak için CtsHdmiCecHostTestCases
'ı soundbar ayarı etkinleştirilmiş şekilde çalıştırın.
HDMI CEC için Android CTS testlerini çalıştırmak üzere Android TV cihazları için CEC CTS testi başlıklı makaleyi inceleyin.