- Developer web dapat mengontrol Picture-in-Picture untuk video.
- Decoder AV1 kini didukung di Chrome Desktop x86-64.
- Buffering dan pemutaran lintas codec dan lintas bytestream dapat dilakukan di MSE.
- Chrome kini mendukung Opus dalam MP4 dengan MSE.
- Pemutaran konten yang dilindungi diizinkan secara default di Android.
Tonton video menggunakan Picture-in-Picture
Picture-in-Picture (PiP) memungkinkan pengguna menonton video dalam jendela mengambang (selalu berada di atas jendela lain) sehingga mereka dapat mengawasi apa yang mereka tonton saat berinteraksi dengan situs atau aplikasi lain. Dengan Picture-in-Picture Web API baru, Anda dapat memulai dan mengontrol Picture-in-Picture untuk video di situs Anda.
Baca artikel kami untuk mempelajari semua tentangnya.
Decoder AV1
AV1 adalah codec generasi berikutnya yang dikembangkan oleh Alliance for Open Media. AV1 meningkatkan efisiensi kompresi lebih dari 30% dibandingkan codec video canggih saat ini, VP9. Chrome 70 menambahkan dekoder AV1 ke Chrome Desktop x86-64 berdasarkan spesifikasi bitstream resmi. Saat ini, dukungan terbatas pada profil 0 "Utama" dan tidak mencakup kemampuan encoding. Container yang didukung adalah MP4 (ISO-BMFF) (lihat Container dan codec untuk penjelasan singkat tentang container).
Untuk mencoba AV1:
- Buka halaman YouTube TestTube.
- Pilih "Memilih AV1 untuk SD" atau "Selalu Lebih Disukai AV1" untuk mendapatkan resolusi AV1 yang diinginkan. Perlu diperhatikan bahwa pada resolusi yang lebih tinggi, AV1 lebih mungkin mengalami masalah performa pemutaran di beberapa perangkat.
- Coba putar klip YouTube dari Playlist Peluncuran AV1 Beta.
- Konfirmasi codec av01 di "Informasi statistik".
Dukungan untuk pengalihan codec dan container di MSE
Chrome menambahkan dukungan untuk transisi lintas codec atau lintas byte yang lebih baik dalam pemutaran Ekstensi Sumber Media menggunakan metode changeType()
baru di SourceBuffer
. Hal ini memungkinkan jenis byte
media yang ditambahkan ke SourceBuffer
untuk diubah setelahnya.
Versi MSE saat ini mendukung
pemutaran adaptif media; namun adaptasi mengharuskan setiap media yang ditambahkan
ke SourceBuffer
harus sesuai dengan jenis MIME yang disediakan saat pertama kali
membuat SourceBuffer
melalui MediaSource.addSourceBuffer(type)
. Codec dari jenis tersebut dan segmen inisialisasi yang diuraikan sebelumnya harus tetap sama secara keseluruhan. Artinya, situs harus mengambil langkah eksplisit untuk
melakukan pengalihan codec atau bytestream (dengan menggunakan beberapa elemen media atau
jalur SourceBuffer
dan beralih di antaranya), meningkatkan kompleksitas
aplikasi dan latensi yang terlihat oleh pengguna. (Transisi tersebut mengharuskan aplikasi web untuk
mengambil tindakan sinkron pada thread utama perender). Latensi transisi ini
mengganggu kelancaran pemutaran media di seluruh transisi.
Dengan metode changeType()
barunya, SourceBuffer
dapat melakukan buffering dan mendukung
pemutaran di berbagai format bytestream dan codec. Metode baru ini
mempertahankan media yang sebelumnya di-buffer, melakukan modulo penghapusan atau
penghapusan frame berkode MSE di masa mendatang, serta memanfaatkan logika penyambungan dan buffering dalam algoritma pemrosesan frame berkode MSE
yang sudah ada.
Berikut cara menggunakan metode changeType()
:
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);
}
Seperti yang diharapkan, jika jenis yang diteruskan tidak didukung oleh browser, metode ini
akan menampilkan pengecualian NotSupportedError
.
Lihat contoh ini untuk mencoba-coba buffering lintas codec dan lintas-bytestream serta pemutaran elemen audio.
Niat untuk Dikirimkan | Pelacak Status Chrome | Bug Chromium
Opus dalam MP4 untuk MSE
Codec audio yang terbuka dan sangat serbaguna Opus telah didukung dalam elemen
<audio>
dan <video>
sejak Chrome 33. Dukungan Opus in ISO-BMFF
(alias Opus in MP4) ditambahkan setelahnya. Kini Opus dalam MP4 tersedia di Chrome
70 untuk Media Source Extensions.
Berikut ini cara mendeteksi apakah Opus dalam MP4 didukung untuk MSE:
if (MediaSource.isTypeSupported('audio/mp4; codecs="opus"')) {
// TODO: Fetch data and feed it to a media source.
}
Jika Anda ingin melihat contoh lengkapnya, lihat contoh resmi kami.
Karena kurangnya alat untuk menggabungkan Opus dalam MP4 dengan nilai pemangkasan akhir dan pralewat
yang benar, jika presisi tersebut penting bagi Anda, Anda harus menggunakan
SourceBuffer.appendWindow{Start,End}
dan SourceBuffer.timestampOffset
di
Chrome untuk mendapatkan pemutaran contoh yang akurat.
Niat untuk Dikirimkan | Pelacak Status Chrome | Bug Chromium
Mengizinkan pemutaran konten yang dilindungi secara default di Android
Di Chrome 70 untuk Android, nilai default setelan situs "konten yang dilindungi" berubah dari "Tanya terlebih dahulu" menjadi "Diizinkan", yang mengurangi hambatan yang terkait dengan pemutaran media tersebut. Perubahan ini mungkin dilakukan, salah satunya karena adanya langkah tambahan yang dilakukan untuk menghapus lisensi media beserta cookie dan data situs, sehingga memastikan lisensi media tidak digunakan oleh situs untuk melacak pengguna yang telah menghapus data penjelajahan.