Napisy za pomocą track i WebVTT
Dodawanie podpisów i napisów do wideo za pomocą track i plików .vtt
Napisy za pomocą track i WebVTT to bezpłatna lekcja HTML Academy na CoddyKit. To lekcja 4 z 4. Możesz przeczytać całą lekcję poniżej za darmo — a potem ćwiczyć ją interaktywnie w przeglądarce z wbudowanym edytorem kodu i tutorem AI dostępnym 24/7. To część ścieżki edukacyjnej HTML Academy, a Twój postęp synchronizuje się między webem a aplikacją CoddyKit. Kurs HTML Academy zawiera 4 lekcji w sumie.
Napisy i napisy dla niesłyszących
Dostępność wideo wymaga tekstowych odpowiedników treści audio:
- Napisy — transkrypcja dialogów, zakładająca, że odbiorca słyszy dźwięki
- Napisy dla niesłyszących — dialogi oraz opisy dźwięków (dla osób niesłyszących)
- Audiodeskrypcja — opisuje treści wizualne dla osób niewidomych
Element track
Element <track> dołącza plik z napisami lub napisami dla niesłyszących do wideo:
<video controls>
<source src="tutorial.mp4" type="video/mp4">
<track
src="tutorial-en.vtt"
kind="subtitles"
srclang="en"
label="English"
default
>
<track
src="tutorial-es.vtt"
kind="subtitles"
srclang="es"
label="Spanish"
>
</video>Atrybuty elementu track
Atrybuty elementu track:
src— ścieżka do pliku VTTkind— typ ścieżki (napisy, napisy dla niesłyszących, audiodeskrypcja, rozdziały, metadane)srclang— kod języka BCP 47 (en, es, fr...)label— zrozumiała dla człowieka nazwa wyświetlana w menu CCdefault— wartość logiczna; ta ścieżka jest wyświetlana domyślnie
Format WebVTT
WebVTT (Web Video Text Tracks) to format plików z napisami:
WEBVTT
00:00:01.000 --> 00:00:04.000
Hello and welcome to the HTML5 tutorial.
00:00:04.500 --> 00:00:08.000
In this lesson, we'll cover the video element
and how to add subtitles.
00:00:09.000 --> 00:00:12.000
[Keyboard click sounds]
Let's look at a code example...Identyfikatory cue VTT
Cue VTT mogą mieć opcjonalne identyfikatory:
WEBVTT
intro-1
00:00:01.000 --> 00:00:04.000
Welcome to the tutorial.
intro-2
00:00:04.500 --> 00:00:08.000
We'll cover HTML5 video today.
00:00:09.000 --> 00:00:12.000
No identifier on this cue — that is fine.Ustawienia cue VTT
Cue VTT obsługują ustawienia pozycjonowania:
WEBVTT
00:00:01.000 --> 00:00:04.000 position:10% align:left
This text is positioned at the left.
00:00:05.000 --> 00:00:08.000 line:10%
This text appears near the top.
00:00:09.000 --> 00:00:12.000 size:50% position:75%
A smaller caption on the right.Stylowanie cue WebVTT za pomocą CSS
Pola cue można stylować za pomocą pseudoelementu ::cue:
/* Style all cues: */
::cue {
background-color: rgba(0, 0, 0, 0.8);
color: white;
font-size: 1.2rem;
font-family: 'Arial', sans-serif;
padding: 0.2em 0.5em;
border-radius: 4px;
}
/* Style specific voice tags: */
::cue(v[voice="Teacher"]) {
color: #60a5fa;
}Wartości kind elementu track
Atrybut kind określa przeznaczenie ścieżki tekstowej:
subtitles— tłumaczenie lub transkrypcja dialogówcaptions— dialogi i opisy dźwięków dla osób niesłyszącychdescriptions— audiodeskrypcja treści wizualnych dla osób niewidomychchapters— tytuły rozdziałów ułatwiające nawigacjęmetadata— dane czytelne maszynowo przeznaczone dla JavaScriptu
Ścieżka rozdziałów
W celu zapewnienia nawigacji po rozdziałach wideo należy użyć kind=chapters:
<track
kind="chapters"
src="chapters.vtt"
srclang="en"
label="Chapters"
>
<!-- chapters.vtt: -->
<!--
WEBVTT
00:00:00.000 --> 00:01:30.000
Introduction
00:01:30.000 --> 00:05:00.000
HTML Document Structure
00:05:00.000 --> 00:10:00.000
Forms and Input
-->Interfejs JavaScript TextTrack API
Dostęp do danych ścieżki można uzyskać za pomocą TextTrack API:
const video = document.getElementById('tutorial');
const tracks = video.textTracks;
// Enable a track:
tracks[0].mode = 'showing'; // 'hidden', 'showing', or 'disabled'
// Listen for active cue changes:
tracks[0].addEventListener('cuechange', function() {
const cue = this.activeCues[0];
if (cue) console.log('Current cue:', cue.text);
});Ścieżka metadanych dla interaktywnego wideo
Ścieżek metadanych należy używać do wyzwalania zdarzeń JavaScriptu w określonych momentach:
<track kind="metadata" src="interactive.vtt" id="meta-track">
<script>
video.textTracks[0].mode = 'hidden';
video.textTracks[0].addEventListener('cuechange', function() {
const cue = this.activeCues[0];
if (cue) {
const data = JSON.parse(cue.text);
// Trigger quiz, show annotation, etc.
showAnnotation(data);
}
});
</script>Wymagania dotyczące dostępności
WCAG wymaga napisów do nagranych wcześniej materiałów wideo:
- Poziom A — napisy do wszystkich nagranych wcześniej materiałów wideo zawierających dźwięk
- Poziom AA — audiodeskrypcja do wszystkich nagranych wcześniej materiałów wideo
- Napisy generowane automatycznie (np. przez YouTube) są niewystarczające bez weryfikacji
- Napisy muszą być dokładne, zsynchronizowane i kompletne
Szybki test
Czym różnią się rodzaje ścieżek subtitles i captions?
Podsumowanie: track i WebVTT
Najważniejsze informacje o napisach i napisach dla niesłyszących:
<track src kind srclang label default>wewnątrz video- kind: subtitles, captions, descriptions, chapters, metadata
- Format pliku WebVTT: WEBVTT + timestamp --> timestamp + text
- Cue można stylować za pomocą pseudoelementu CSS
::cue - WCAG wymaga napisów do nagranych wcześniej materiałów wideo
Ucz się HTML dzięki korepetycjom AI — za darmo
Pisz i uruchamiaj kod w przeglądarce, otrzymuj natychmiastową pomoc od korepetytora AI dostępnego 24/7 i kontynuuj naukę w sieci lub w aplikacji.
- Kursy
- 40
- Lekcje
- 159
Często zadawane pytania
Czy lekcja „Napisy za pomocą track i WebVTT” jest bezpłatna?
Tak — pełny tekst „Napisy za pomocą track i WebVTT” jest dostępny za darmo tutaj w sieci. Aby ćwiczyć ją interaktywnie (wbudowany edytor kodu i tutor AI dostępny 24/7) i odblokować resztę kursu HTML Academy, przejdź na CoddyKit PRO. Kurs HTML Academy zawiera 4 lekcji w sumie.
Co nauczysz się w „Napisy za pomocą track i WebVTT”?
Dodawanie podpisów i napisów do wideo za pomocą track i plików .vtt Ćwiczysz HTML Academy z praktycznym kodem, który uruchamiasz bezpośrednio w przeglądarce, a tutor AI dostępny 24/7 odpowiada na Twoje pytania podczas pracy nad lekcją.
Czy potrzebuję doświadczenia, aby zacząć HTML Academy?
Nie wymagamy żadnego doświadczenia. HTML Academy w CoddyKit jest strukturyzowany dla początkujących i zaawansowanych użytkowników, więc możesz zacząć tutaj lub od początku i uczyć się w swoim tempie. To lekcja 4 z 4.
Ile czasu zajmuje lekcja „Napisy za pomocą track i WebVTT”?
Większość lekcji CoddyKit trwa około 5–10 minut. Każda lekcja to mały, interaktywny krok, dzięki czemu robisz systematyczne postępy i zawsze wracasz dokładnie do tego samego miejsca — na webie i w aplikacji.
Czy mogę pisać i uruchamiać kod w tej lekcji HTML Academy?
Tak. Każda lekcja HTML Academy zawiera wbudowany edytor kodu, więc piszesz i uruchamiasz prawdziwy kod bezpośrednio w przeglądarce i od razu otrzymujesz sprzężenie zwrotne od AI — bez konfiguracji na komputerze.
Wszystkie lekcje w tym kursie
- Element audio — src, controls, loop i autoplay
- Element video i współczynnik proporcji
- Element source dla wielu formatów
- Napisy za pomocą track i WebVTT