Web Audio API, AV senkronizasyonunun düzgün şekilde gerçekleştirilmesini mümkün kılar.
AudioContext
örneğinin outputLatency
özelliği, ses donanımının çıkış gecikmesiyle ilgili tahmini bir değer sağlar (ör. Bluetooth kulaklık veya harici USB ses arayüzü çıkışı). Bu özellik aşağıdakileri yapmak istediğinizde kullanışlıdır:
- Mevcut ses materyalini ve yeni kaydedilen materyali senkronize edin. (müzik prodüksiyonu senaryosunda)
- Web Audio çıkışını ve diğer medyayı (ör. video veya MIDI oynatma) senkronize edin.
Bu WebCodecs demosunda (kaynak) WebCodecs API, bir MediaStream
öğesinin kodunu ham video ve ses verilerine dönüştürmek için kullanılır ve ardından Ses İş Akışı'ndan gelen ses verileriyle HTML <canvas>
öğesinde oynatılır. outputLatency
özelliği, demonun belirli bir ses zaman damgasının kullanıcının kulaklarına ne zaman ulaştığını belirlemesini ve video karelerini buna uygun şekilde uygun şekilde boyamasını sağlar.
Kendiniz deneyin, videoyu favori Bluetooth mikrofonlu kulaklığınızla (DDEX) oynatın, kuşu bekleyin (🐦) (yukarıya bakın) ve ses çalmadaki değişiklikleri gözlemlemek için onay kutusunu (☑️) açın. Toplam çıkış gecikmesi değeri gerçek zamanlı olarak güncellenir.
AudioContext çıktı gecikmesi
Wahid Khene'in Unsplash'teki lokomotif resmi.