0Pricing
HTML Academy · บทเรียน

คำบรรยายด้วย track และ WebVTT

เพิ่มคำบรรยายและคำบรรยายใต้ภาพให้วิดีโอด้วย track และไฟล์ .vtt

คำบรรยายด้วย track และ WebVTT เป็นบทเรียน HTML Academy ฟรีบน CoddyKit นี่คือบทเรียนที่ 4 จากทั้งหมด 4 บทเรียน คุณสามารถอ่านบทเรียนทั้งหมดด้านล่างฟรี — จากนั้นลองปฏิบัติด้วยตัวคุณเองในเบราว์เซอร์พร้อมตัวแก้ไขโค้ดในตัวและติวเตอร์ AI ตลอด 24/7 บทเรียนนี้เป็นส่วนหนึ่งของเส้นทางการเรียน HTML Academy และความก้าวหน้าของคุณจะซิงค์ข้ามเว็บและแอป CoddyKit คอร์ส HTML Academy มีบทเรียนทั้งหมด 4 บทเรียน

คำบรรยายและคำบรรยายแปล

การเข้าถึงวิดีโอต้องมีทางเลือกแบบข้อความสำหรับเนื้อหาเสียง:

  • คำบรรยายแปล — ถอดบทสนทนา โดยสมมติว่าผู้ชมยังได้ยินเสียงต่าง ๆ
  • คำบรรยาย — บทสนทนาพร้อมคำอธิบายเสียง สำหรับผู้ใช้ที่หูหนวก
  • คำบรรยายเสียง — อธิบายเนื้อหาที่มองเห็นได้สำหรับผู้ใช้ตาบอด

องค์ประกอบแทร็ก

องค์ประกอบ <track> ใช้เชื่อมโยงไฟล์คำบรรยายหรือคำบรรยายแปลกับ video:

<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>

แอตทริบิวต์ของแทร็ก

แอตทริบิวต์ขององค์ประกอบแทร็ก:

  • src — เส้นทางไปยังไฟล์ VTT
  • kind — ชนิดของแทร็ก ได้แก่ คำบรรยายแปล คำบรรยาย คำอธิบาย บท และเมทาดาทา
  • srclang — รหัสภาษาตาม BCP 47 (en, es, fr...)
  • label — ชื่อที่อ่านเข้าใจได้สำหรับผู้ใช้ ซึ่งแสดงในเมนู CC
  • default — ค่าบูลีน แทร็กนี้จะแสดงเป็นค่าเริ่มต้น

รูปแบบ WebVTT

WebVTT (แทร็กข้อความวิดีโอบนเว็บ) คือรูปแบบไฟล์คำบรรยาย:

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...

ตัวระบุคิว VTT

คิว VTT สามารถมีตัวระบุเพิ่มเติมได้:

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.

การตั้งค่าคิว VTT

คิว VTT รองรับการตั้งค่าตำแหน่ง:

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.

การกำหนดรูปแบบคิว WebVTT ด้วย CSS

กำหนดรูปแบบกล่องคิวด้วยองค์ประกอบเสมือน ::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;
}

ค่าของประเภทแทร็ก

แอตทริบิวต์ kind ระบุวัตถุประสงค์ของแทร็กข้อความ:

  • subtitles — การแปลหรือการถอดบทสนทนา
  • captions — บทสนทนาพร้อมคำอธิบายเสียงสำหรับผู้ใช้ที่หูหนวก
  • descriptions — คำบรรยายเสียงของเนื้อหาที่มองเห็นได้สำหรับผู้ใช้ตาบอด
  • chapters — ชื่อบทสำหรับการนำทาง
  • metadata — ข้อมูลที่เครื่องอ่านได้สำหรับ JavaScript

แทร็กบท

ใช้แทร็กประเภทบทเพื่อการนำทางตามบทของวิดีโอ:

<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
-->

ส่วนติดต่อ TextTrack ของ JavaScript

เข้าถึงข้อมูลแทร็กด้วยส่วนติดต่อ TextTrack:

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);
});

แทร็กเมทาดาทาสำหรับวิดีโอแบบโต้ตอบ

ใช้แทร็กเมทาดาทาเพื่อเรียกเหตุการณ์ JavaScript ในเวลาที่กำหนด:

<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>

ข้อกำหนดด้านการเข้าถึง

WCAG กำหนดให้วิดีโอที่บันทึกไว้ล่วงหน้าต้องมีคำบรรยาย:

  • ระดับ A — คำบรรยายสำหรับ video ที่บันทึกไว้ล่วงหน้าทั้งหมดและมีเสียง
  • ระดับ AA — คำบรรยายเสียงสำหรับ video ที่บันทึกไว้ล่วงหน้าทั้งหมด
  • คำบรรยายที่สร้างอัตโนมัติ (YouTube) ยังไม่เพียงพอหากไม่มีการตรวจทาน
  • คำบรรยายต้องถูกต้อง ตรงจังหวะ และครบถ้วน

ตรวจสอบความเข้าใจ

แทร็กประเภทคำบรรยายแปลแตกต่างจากแทร็กประเภทคำบรรยายอย่างไร

สรุปทบทวน: แทร็กและ WebVTT

สิ่งสำคัญของคำบรรยายแปลและคำบรรยาย:

  • <track src kind srclang label default> ภายใน video
  • ประเภท: subtitles, captions, descriptions, chapters, metadata
  • รูปแบบไฟล์ WebVTT: WEBVTT + timestamp --> timestamp + text
  • กำหนดรูปแบบคิวด้วยองค์ประกอบเสมือน CSS ::cue
  • WCAG กำหนดให้ video ที่บันทึกไว้ล่วงหน้าต้องมีคำบรรยาย

คำถามที่พบบ่อย

บทเรียน “คำบรรยายด้วย track และ WebVTT” ฟรีหรือไม่

ใช่ — ข้อความเต็มของ “คำบรรยายด้วย track และ WebVTT” ฟรีให้อ่านที่นี่บนเว็บ เพื่อปฏิบัติแบบโต้ตอบ (ตัวแก้ไขโค้ดในตัวและติวเตอร์ AI ตลอด 24/7) และปลดล็อคส่วนที่เหลือของคอร์ส HTML Academy ให้อัปเกรดเป็น CoddyKit PRO คอร์ส HTML Academy มีบทเรียนทั้งหมด 4 บทเรียน

คุณจะเรียนรู้อะไรในบทเรียน “คำบรรยายด้วย track และ WebVTT”

เพิ่มคำบรรยายและคำบรรยายใต้ภาพให้วิดีโอด้วย track และไฟล์ .vtt คุณปฏิบัติ HTML Academy ด้วยโค้ดที่ใช้งานได้จริงที่คุณเรียกใช้โดยตรงในเบราว์เซอร์ และติวเตอร์ AI ตลอด 24/7 ตอบคำถามของคุณขณะที่คุณไปผ่านบทเรียน

คุณต้องมีประสบการณ์ก่อนที่จะเริ่มเรียน HTML Academy หรือไม่

ไม่จำเป็นต้องมีประสบการณ์มาก่อน HTML Academy บน CoddyKit ออกแบบมาสำหรับผู้เริ่มต้นไปจนถึงผู้เรียนขั้นสูง คุณสามารถเริ่มต้นที่นี่หรือเริ่มจากตัวแรกและเรียนด้วยความเร็วของคุณเอง นี่คือบทเรียนที่ 4 จากทั้งหมด 4 บทเรียน

บทเรียน “คำบรรยายด้วย track และ WebVTT” ใช้เวลานานแค่ไหน

บทเรียน CoddyKit ส่วนใหญ่ใช้เวลาประมาณ 5–10 นาที แต่ละบทเรียนจึงสั้นและเป็นแบบโต้ตอบ คุณสามารถก้าวหน้าอย่างต่อเนื่องและกลับมาเรียนต่อจากตรงที่เพิ่งหยุดบนเว็บและแอปได้เลย

ฉันเขียนและรันโค้ดในบทเรียน HTML Academy นี้ได้ไหม

ได้ บทเรียน HTML Academy ทุกบทมีตัวแก้ไขโค้ดในตัว คุณจึงเขียนและรันโค้ดจริงได้เลยในเบราว์เซอร์ และได้รับข้อเสนอแนะจาก AI ในทันที — ไม่ต้องติดตั้งในเครื่องของคุณ

บทเรียนทั้งหมดในหลักสูตรนี้

  1. องค์ประกอบ audio: src controls loop autoplay
  2. องค์ประกอบ video และอัตราส่วนภาพ
  3. องค์ประกอบ source สำหรับหลายรูปแบบ
  4. คำบรรยายด้วย track และ WebVTT
← กลับไปที่ HTML Academy