Ses cihazları için Google Cast yalnızca ses çalmayı destekler. Bu kılavuzda, yalnızca ses özellikli cihazlar için Cast uygulamalarının nasıl optimize edileceği ve bellek, CPU ve ağ bant genişliği kullanımındaki azaltılmış taleplerden nasıl yararlanılacağı açıklanmaktadır.
Google Cast ses özelliğini destekleyen bir uygulama şunu dikkate almalıdır:
- Google Cast ses cihazları için video veya grafik gösterilmez. Bununla birlikte, birçok ses cihazında oynatma durumu (çalınıyor veya duraklatılmış) ve ilerleme durumu gibi meta verileri gösteren bir ekran bulunur. Uygulamanız, bu tür kritik kullanıcı bilgilerini yalnızca alıcıda göstermemelidir. Kritik bilgiler ve kullanıcı arayüzünün büyük bir kısmı gönderende gösterilmelidir.
- Web Alıcısı uygulamalarını düzgün şekilde çalıştırmak amacıyla, ses cihazları için Google Cast'in, görüntülenmeseler bile grafikleri oluşturmaya devam etmesi gerekir. Cihazlar, donanım hızlandırmalı grafik işlemlerini desteklemeyebileceğinden alıcı uygulamalar renk gradyanları, döndürme, alfa karıştırma ve ilerleme çubuğu gibi büyük nesneleri saniyede bir defadan fazla yeniden çizmek gibi grafik yoğun işlemler kullanmaktan kaçınmalıdır.
- Ses cihazları için Google Cast yalnızca Dijital Haklar Yönetimi (DRM) ile korunan içerik için Widevine'i destekler.
- Gönderen uygulama, ses sistemleri için kullanılan çoğu Google Cast cihazında, Chromecast cihazlarda olduğu gibi yalnızca TV'deki ses kaynağı girişinin ses düzeyini değil, cihazın tüm ses aralığını (ör. hoparlör) kontrol eder.
- Uygulamanın, oynatmayı gönderen cihazla (ör. telefon) kontrol etmesinin yanı sıra uzaktan kumanda, cihazdaki düğmeler veya harici bir uzaktan kumanda uygulaması gibi cihazın kendi denetleyicileriyle oynatmayı denetlemesi gerekebilir.
- Ses cihazı için Google Cast, cihazın kullanıcı arayüzüne bağlı olarak içerik meta verilerinin küçük bir LCD ekran, HDMI çıkışı (ses çubukları veya ses-video alıcıları için) ya da harici bir uzak uygulama ile görüntülenmesini destekleyebilir.
Geliştirme
Google Cast'i ses için destekleyecek bir Google Cast uygulaması geliştirmenin ilk adımı ses-video için bir Cast uygulaması geliştirmek ve bu uygulamanın bir Chromecast'te çalıştığından emin olmaktır. Bu dokümanda, böyle bir uygulama geliştirdiğiniz ve test ettiğiniz varsayılmaktadır.
Uygulamalar hem ses-video hem de yalnızca ses cihazlarını destekliyor olabilir. Sistemin, bu uygulamalardan birine ne zaman yayın yapacağını bilmesi ve belirtilen senaryoda en iyi kullanıcı deneyimini sağlamak için önlemler alması gerekir.
Örneğin, ikili video ve ses uygulamaları (yerel/NAS dosya oynatma uygulamaları gibi), ses dosyalarını çalmayı desteklemek için yalnızca ses cihazlarına yayınlamayı etkinleştirmelidir. Ancak uygulama, kullanıcının yalnızca ses içeren cihaza video dosyası göndermesine izin vermemelidir. Uygulama, cihaza uygun içeriği belirlemek için aşağıda açıklanan gönderenler için cihaz özellikleri API'lerini kullanabilir.
Google Cast'in ses desteği sunması için uygulamanızın şunları yapması gerekir:
Yalnızca ses desteği: müzik ve ses dosyaları, radyo vb. akışı. Web Alıcısı uygulamasına aktarılan medya bir video akışı olmamalıdır. Ayrıca, uygulama başlatma süresini ve bellek kullanımını iyileştirmek için grafik ve resim akışı yapmaktan da kaçının. Aşağıdaki Bellek kullanım yönergeleri'ne bakın.
Bir Chromecast Ses yayını cihazında ve normal bir Chromecast'te beklendiği gibi çalışır.
Cihaz özellikleri
Uygulamanız, cihazın kendisinden veya gönderen ya da alıcı API'leri aracılığıyla kullanılabilen cihaz özellikleri API'leri sayesinde yalnızca ses özellikli bir cihazda çalışıp çalışmadığını bilir.
Cihaz HTTP başlığı
Uygulamanın başlatılması sırasında yayın cihazı tarafından sağlanan
CAST-DEVICE-CAPABILITIES HTTP üst bilgisi cihaz özelliklerini açıklar. Cihaz, Web Alıcısı uygulamasını barındıran sunucuya bu başlıkla bir istek gönderir. Yalnızca ses özellikli cihazın başlığı
CAST-DEVICE-CAPABILITIES: {"display_supported":false} ile cihaz özelliklerini açıklar.
Sunucunuz cihazdan isteği aldığında, isteği ses cihazları için optimize edilmiş Web Alıcısı uygulamasına yönlendirmek üzere bu başlıktaki bilgileri kullanabilirsiniz.
Web Receiver API'si
Web Alıcısı uygulaması yüklendiğinde
CastReceiverManager.getDeviceCapabilities() yöntemini çağırarak aynı cihaz özellikleri nesnesini alabilirsiniz.
Daha fazla bilgi için Cihaz özellikleri bölümüne bakın.
Gönderen API'leri
Yayın gönderen API'lerin her biri, cihaz özellikleriyle ilgili bilgilere de sahiptir. Bunlar, gönderen uygulamanızın alıcıya ne tür medya gönderileceğini belirlemesine olanak tanır. Uygulamanız hem ses hem de videoyu destekliyorsa yalnızca ses özellikli cihazlara video içeriği göndermekten kaçınabilir. Ayrıca uygulamanız, Tasarım Kontrol Listesi'nde açıklandığı gibi cihaz için en uygun yöntemi kullanarak ses seviyesini kontrol edebilir. Gönderenler için aşağıdaki cihaz özellikleri API'lerine göz atın:
Bellek kullanım yönergeleri
Ses cihazlarında çalışan Web Alıcı uygulamaları, bellek kullanımını aşağıdaki gibi yönetmelidir:
- Bellek ayak izini azaltmak ve oynatma süresini kısaltmak için herhangi bir resim veya grafik öğesi indirmekten ya da kullanmaktan kaçının.
- Medya Kaynağı Uzantıları (MSE) kullanılırken uygulamalar akış arabelleğini 2 MB ile sınırlamalıdır. Media Player Kitaplığı (MPL) kullanılıyorsa uygulamanın akış arabellek boyutu MPL tarafından önceden tanımlanmıştır.
- HTMLMediaElement kullanırken uygulamanın akış arabellek boyutu, Chrome tarafından akış hızına göre tanımlanır. Ses bit hızını saniyede 2 megabit ile sınırlandırın. Bu sınır, Desteklenen Medya bölümünde açıklanan tüm codec'leri (48 KHz/16 bit'e kadar) destekler.
Ses düzeyi kontrolü
Gönderen uygulama, ses sistemleri için Google Cast cihazlarının çoğunda, Chromecast cihazlarda olduğu gibi yalnızca ses kaynağı giriş ses düzeyini değil, cihazın tüm ses aralığını kontrol eder. Diğer bir deyişle, yalnızca ses kullanan uygulamalar için ses seviyesi değişim artışları daha küçük olmalıdır. Uygulamanızda ses denetimi sağlama hakkındaki yönergeler için aşağıdaki dokümanlara bakın:
- Tasarım Kontrol Listesi'ndeki gönderen hacim kontrolleri
- Android gönderen hacmi
- iOS gönderen hacmi
- Web göndereni hacmi
Cihaz kontrolleri
Ses cihazları için Google Cast'in kendi oynatma kontrolleri (düğmeler, uzaktan kumandalar gibi) olabilir. Bunlar, alıcı uygulamada oynatmayı kontrol etmek için Medya Oynatma Mesajları bölümünde açıklandığı gibi
urn:x-cast:com.google.cast.media ad alanı için tanımlanan medya oynatma mesajlarını kullanır. Alıcı uygulamanız, cihazın oynatma kontrollerini desteklemek için bu medya oynatma mesajlarını desteklemelidir.
Ayrıca, gönderen uygulamanızın Alıcıdan gönderene mesajlar ayarını desteklemesi gerekir. Böylece kullanıcı, medya durumunu cihaz denetimleriyle değiştirirse gönderen uygulamanız alıcıdan durum mesajı alabilir ve kullanıcı arayüzünü uygun şekilde güncelleyebilir.
Cihaz ekranı
Bir Google Cast ses cihazı cihazında LCD ekranı veya medya meta verilerini görüntüleyen cihaza özgü bir kontrol uygulaması olabilir. Alıcı uygulamanız, tüm ses parçaları için bu meta verileri sağlamalı ve meta verilerin ekranda uygun şekilde görüntülenmesini sağlamak için bu meta verilerin o anda çalınan içerikle senkronize olduğundan emin olmalıdır. Uygulama, özel meta veriler kullanıyorsa aşağıdaki her platform için açıklandığı gibi standart ses meta verilerini de (parça adı, sanatçı adı, albüm adı vb.) sağlamalıdır.
Alıcı, medyayı yüklerken meta verileri gönderenden alır. Gönderen uygulamanızda, medyayı alıcıya yükleme komutuyla birlikte, meta verilerin Google Cast ses cihazında gösterilebilmesi için aşağıda açıklanan alanları belirtmeniz gerekir. Aşağıdaki API'leri kullanın:
Cast uygulaması, alıcıda veya bulutta bir medya sırasını yönetiyorsa Web Alıcısı, tüm gönderenlerin senkronize edilebilmesi için tüm medya durumu güncellemelerini
urn:x-cast:com.google.cast.media ad alanını kullanarak yayınlamalıdır.
Kayıt
Google Cast ses cihazınızı test etmek amacıyla, ayrıca uygulamanızı Google Cast SDK Geliştirici Konsolu'nu kullanarak ses cihazları için Google Cast'i destekleyecek şekilde kaydetmeniz gerekir.
- Cihazları kaydetmeyle ilgili daha fazla bilgi için Cihazlar'a bakın.
- Uygulamanızın ses cihazları için Google Cast'i keşfetmesine izin vermek istiyorsanız uygulamanızı kaydederken Yalnızca ses cihazlarına yayınlamayı destekler onay kutusunu işaretlemeniz gerekir. Uygulamanızı kaydetme bölümüne bakın.
Test amacıyla kullanılanlar gibi yayınlanmamış uygulamalarda, uygulamanın yalnızca ses özellikli cihazları keşfetmesi için yalnızca ses özellikli cihazları destekleme seçeneğini de belirlemeniz gerekir.
Ses 2.0 için Google Cast
Google Cast for Audio (GC4A) 2.0, içeriğinizi oynatabilen cihaz ekosistemini genişletmek için düşük bellekli cihazları hedeflemek üzere tasarlanmış yeni nesil Cast ses platformudur.
Ses uygulaması geliştiricilerinin, uygulamalarını GC4A 2.0'da test etmeleri önemlidir. GC4A 2.0 için Cast uygulamanızı üretim amaçlı bir Bose hoparlörde (ör. Bose Akıllı Hoparlör 500) test edebilirsiniz.
Test için kurulum konusunda yardıma ihtiyacınız varsa veya Bose hoparlör kullanamıyorsanız lütfen email@example.com adresiyle iletişime geçin. Uygulamanızda hata ayıklamak istiyorsanız Google, Cast Hata Ayıklama Kaydedici'yi kullanmanızı önerir.