סנכרון בין הפעלה של אודיו ווידאו לאינטרנט

ה-Web Audio API מאפשר להשיג סנכרון AV באופן תקין.

פרנסואה בופורט
פרנסואה בופורט

המאפיין outputLatency של מכונת AudioContext מספק אומדן של זמן האחזור לפלט של חומרת האודיו (לדוגמה: זמן האחזור של אוזניות Bluetooth או ממשק אודיו חיצוני ב-USB). הנכס הזה שימושי אם רוצים:

  • סנכרן את חומר האודיו הקיים ואת החומר החדש שהוקלט. (בתרחיש של הפקת מוזיקה)
  • לסנכרן את הפלט של Web Audio ושל מדיה אחרת (כמו הפעלת סרטון או MIDI).

בהדגמה הזו של WebCodec (מקור), ה-WebCodecs API משמש לפענוח MediaStream של נתוני וידאו ואודיו גולמיים, ולאחר מכן מופעל חזרה לרכיב HTML <canvas> עם נתוני אודיו שמגיעים מ-Audio worklet. המאפיין outputLatency מאפשר להדגמה (דמו) לקבוע מתי חותמת זמן נתונה של אודיו מגיעה לאוזני המשתמש, ולאחר מכן לצבוע בצורה נכונה פריימים של הסרטון בהתאם.

צילום מסך של ההדגמה, שהוא סרטון מוטמע עם פקדי אודיו לעוצמת הקול, תקינות מאגר האודיו, זמן האחזור הכולל של הפלט ותיבת סימון לשימוש ב-AudioContext.outputLatency.

כדאי לנסות זאת בעצמך, להפעיל את הסרטון באמצעות אוזניות ה-Bluetooth שאוהבים (🎧), לחכות לציפור (🐦) (ראו למעלה) ולבטל את הסימון של התיבה (☑️) כדי להבחין בשינויים בהפעלה של האודיו. הערך הכולל של זמן האחזור מתעדכן בזמן אמת.

פלט טקסט אודיו-הקשר

תמיכה בדפדפן

  • 102
  • 102
  • 70
  • x

מקור

תמונה ראשית (Hero) מאת Wahid Kane ב-UnFlood.