- Web geliştiriciler, videolar için pencere içinde pencere özelliğini kontrol edebilir.
- AV1 kod çözücüsü artık Chrome masaüstü x86-64'te destekleniyor.
- MSE'de kodlayıcılar arası ve bayt akışları arası arabelleğe alma ve oynatma mümkündür.
- Chrome artık MSE ile MP4'te Opus'u destekliyor.
- Android'de korunan içeriği oynatma varsayılan olarak etkindir.
Pencere içinde pencere özelliğini kullanarak video izleme
Pencere içinde pencere (PiP), kullanıcıların videoları kayan bir pencerede (her zaman diğer pencerelerin üzerinde) izlemesine olanak tanır. Böylece kullanıcılar diğer sitelerle veya uygulamalarla etkileşimde bulunurken izledikleri içeriği takip edebilir. Yeni Picture-in-Picture Web API ile web sitenizdeki videolar için Picture-in-Picture'ı başlatabilir ve kontrol edebilirsiniz.
Bu konuyla ilgili tüm bilgileri makalemizde bulabilirsiniz.
AV1 kod çözücü
AV1, Alliance for Open Media tarafından geliştirilen yeni nesil bir codec'tir. AV1, mevcut son teknoloji video codec'i VP9'a kıyasla sıkıştırma verimliliğini%30'dan fazla artırır. Chrome 70, resmi bit akışı spesifikasyonuna dayalı olarak Chrome Masaüstü x86-64'e bir AV1 kod çözücü ekler. Şu anda destek, "Ana" profil 0 ile sınırlıdır ve kodlama özelliklerini içermez. Desteklenen kapsayıcı MP4'tür (ISO-BMFF) (Kapsayıcılarla ilgili kısa bir açıklama için Ham videodan web'e hazır videoya başlıklı makaleyi inceleyin).
AV1'i denemek için:
- YouTube TestTube sayfasına gidin.
- İstediğiniz AV1 çözünürlüğünü elde etmek için "SD için AV1'i tercih et" veya "Her zaman AV1'i tercih et"i seçin. AV1'in, yüksek çözünürlüklerde bazı cihazlarda oynatma performansıyla ilgili sorunlar yaşama olasılığının daha yüksek olduğunu unutmayın.
- AV1 Beta Launch Playlist'teki YouTube kliplerini oynatmayı deneyin.
- "Meraklısı için istatistikler" bölümünde av01 codec'ini onaylayın.
MSE'de codec ve kapsayıcı değiştirme desteği
Chrome, SourceBuffer üzerinde yeni bir changeType() yöntemi kullanarak Media Source Extensions oynatımında geliştirilmiş codec'ler arası veya bayt akışları arası geçişler için destek ekliyor. Bu parametre, SourceBuffer öğesine eklenen medya baytlarının türünün daha sonra değiştirilmesine olanak tanır.
MSE'nin mevcut sürümü, medyanın uyarlanabilir şekilde oynatılmasını destekler. Ancak uyarlama için SourceBuffer öğesine eklenen tüm medyanın, MediaSource.addSourceBuffer(type) aracılığıyla SourceBuffer ilk oluşturulurken sağlanan MIME türüne uygun olması gerekir. Bu türdeki codec'ler ve daha önce ayrıştırılmış tüm başlatma segmentleri boyunca aynı kalmalıdır. Bu nedenle, web sitesinin codec veya bayt akışı geçişini gerçekleştirmek için açık adımlar atması gerekir (birden fazla medya öğesi veya SourceBuffer parça kullanıp bunlar arasında geçiş yaparak). Bu durum, uygulama karmaşıklığını ve kullanıcı tarafından görülebilen gecikmeyi artırır. (Bu tür geçişler için web uygulamasının oluşturucu ana iş parçacığında senkron işlem yapması gerekir.) Bu geçiş gecikmesi,
geçişlerde medya oynatmanın akıcılığını olumsuz etkiler.
Yeni changeType() yöntemiyle SourceBuffer, farklı bayt akışı biçimleri ve codec'lerde arabelleğe alabilir ve oynatmayı destekleyebilir. Bu yeni yöntem, gelecekteki MSE kodlu çerçeve çıkarma veya kaldırma işlemleri hariç olmak üzere, daha önce arabelleğe alınmış medyayı korur ve mevcut MSE kodlu çerçeve işleme algoritmasındaki birleştirme ve arabelleğe alma mantığını kullanır.
changeType() yöntemini kullanmak için:
const sourceBuffer = myMediaSource.addSourceBuffer('video/webm; codecs="opus, vp09.00.10.08"');
sourceBuffer.appendBuffer(someWebmOpusVP9Data);
// Later on...
if ('changeType' in sourceBuffer) {
// Change source buffer type and append new data.
sourceBuffer.changeType('video/mp4; codecs="mp4a.40.5, avc1.4d001e"');
sourceBuffer.appendBuffer(someMp4AacAvcData);
}
Beklendiği gibi, iletilen tür tarayıcı tarafından desteklenmiyorsa bu yöntem NotSupportedError istisnası oluşturur.
Codec'ler arası ve bayt akımları arası arabelleğe alma ile ses öğesi oynatma işlemlerini denemek için örneğe göz atın.
Intent to Ship | Chromestatus Tracker | Chromium Bug
MSE için MP4'te Opus
Açık kaynaklı ve çok yönlü ses codec'i Opus, Chrome 33'ten beri <audio> ve <video> öğelerinde desteklenmektedir. ISO-BMFF'de Opus desteği (MP4'te Opus olarak da bilinir) daha sonra eklendi. MP4'teki Opus, Media Source Extensions için Chrome 70'te kullanıma sunuldu.
MP4'teki Opus'un MSE için desteklenip desteklenmediğini nasıl tespit edeceğiniz aşağıda açıklanmıştır:
if (MediaSource.isTypeSupported('audio/mp4; codecs="opus"')) {
// TODO: Fetch data and feed it to a media source.
}
Tam bir örnek görmek isterseniz resmi örneğimize göz atın.
MP4'te Opus'u doğru son kırpma ve ön atlama değerleriyle birleştirecek araçlar olmadığından bu hassasiyet sizin için önemliyse örnekle doğru oynatma elde etmek için Chrome'da SourceBuffer.appendWindow{Start,End} ve SourceBuffer.timestampOffset kullanmanız gerekir.
Intent to Ship | Chromestatus Tracker | Chromium Bug
Android'de korunan içeriğin oynatılmasına varsayılan olarak izin verme
Android için Chrome 70'te, "korunan içerik" site ayarının varsayılan değeri "Önce sor"dan "İzin verildi" olarak değiştirilerek bu tür medyanın oynatılmasıyla ilgili sorunlar azaltılıyor. Bu değişiklik, kısmen çerezlerin ve site verilerinin yanı sıra medya lisanslarını temizlemek için atılan ek adımlar sayesinde mümkün oldu. Bu adımlar, medya lisanslarının, göz atma verilerini temizleyen kullanıcıları izlemek için siteler tarafından kullanılmamasını sağlar.