Skip to content

Pengonversi Subtitle YouTube JSON3 ke VTT

Ubah event timedtext JSON3 YouTube menjadi WebVTT dengan header WEBVTT wajib dan waktu HH:MM:SS.mmm.

Seret dan lepas file JSON Anda di sini

atau klik untuk mencari

Mendukung file .json, .json3, .xml, .html hingga 50 MB

Arsitektur mesin inti

Tentang JSON ke VTT

Elemen track HTML5 dan sebagian besar platform video web tidak menerima JSON3. Alat ini menganalisis array events, menggabungkan fragmen segs, menghitung waktu cue, dan menulis WebVTT valid dengan header WEBVTT wajib. File siap untuk video HTML5, YouTube Studio, Vimeo, dan pemutar JavaScript.

Inspektor payload dan sintaksis

JSON ke VTT Inspeksi sintaksis dan struktur kode

Perbandingan berdampingan sintaksis kode yang mengilustrasikan definisi header, sintaksis timestamp, dan format payload cue

Sinkronisasi milidetik
input.json
JSON SUMBER
{
"events": [
{ "tStartMs": 1000, "dDurationMs": 3000,
"segs": [{ "utf8": "Hello, world!" }] },
{ "tStartMs": 4500, "dDurationMs": 3500,
"segs": [{ "utf8": "This is a subtitle file." }] }
]
}
output.vtt
VTT HASIL
WEBVTT
 
00:00:01.000 --> 00:00:04.000
Hello, world!
 
00:00:04.500 --> 00:00:08.000
This is a subtitle file.
 
00:00:08.500 --> 00:00:12.000
Converted locally!
Lembar spesifikasi

JSON vs VTT Spesifikasi teknis

Sesuai Standar
Format Input

JSON

JSON

JSON3 adalah format subtitle internal YouTube, diekspor melalui API timedtext. File berupa objek JSON dengan array events. Setiap event memiliki tStartMs (milidetik mulai), dDurationMs (durasi dalam ms), dan segs (array fragmen teks, masing-masing dengan bidang utf8). File ini diunduh dengan youtube-dl atau yt-dlp.

Format Keluaran

VTT

VTT

VTT (WebVTT) adalah format subtitle standar W3C untuk video web, diperlukan oleh elemen track HTML5 dan diterima oleh YouTube, Vimeo, serta pemutar video JavaScript seperti Video.js dan JW Player. File VTT harus dimulai dengan teks literal WEBVTT di baris pertama, diikuti oleh blok cue. Setiap cue menggunakan penanda waktu HH:MM:SS.mmm --> HH:MM:SS.mmm (titik sebelum milidetik, jam diberi nol di depan). VTT juga mendukung pengaturan cue opsional (line, position, align, size), tag gaya sebaris, komentar NOTE, dan blok CSS.

Perbedaan Format

JSON3 memakai array events YouTube; VTT memakai header WEBVTT dan blok cue
JSON3 menyimpan tStartMs dan dDurationMs; VTT menyimpan HH:MM:SS.mmm --> HH:MM:SS.mmm
JSON3 milik YouTube; VTT adalah standar W3C untuk video web
Peramban tidak dapat memuat JSON3 melalui track; VTT adalah format subtitle bawaan HTML5

Pemecahan masalah konversi dan jebakan umum

Solusi praktis untuk kompatibilitas pemutar, pengodean karakter, dan sinkronisasi waktu

4 jebakan umum
GOTCHA #1

Subtitle tidak sinkron atau bergeser di pemutar media

Perbedaan framerate video sering menyebabkan pergeseran waktu. Gunakan alat Sinkronisasi Subtitle kami untuk menyesuaikan offset secara instan.

GOTCHA #2

Karakter muncul sebagai simbol acak atau tanda tanya (Mojibake)

File lama dengan charset regional dapat rusak. Konverter kami menstandardisasi output menjadi UTF-8 bersih.

GOTCHA #3

Subtitle bertumpuk saat beberapa orang berbicara bersamaan

Buka file di Editor Subtitle kami untuk menyesuaikan durasi masing-masing baris agar tampilan teks tidak saling menutupi.

GOTCHA #4

Software editing video menolak file hasil konversi

Engine kami menghasilkan file bersih dan terstandarisasi untuk alur kerja di Premiere Pro dan DaVinci Resolve.

Fitur

Menganalisis otomatis array events JSON3 dan fragmen teks segs
Mengonversi penanda waktu milidetik JSON3 ke format waktu VTT HH:MM:SS.mmm
Pemrosesan sisi klien — file Anda tidak pernah meninggalkan perangkat
Mendukung enkoding UTF-8 untuk aksara Tionghoa, Jepang, Korea, dan aksara non-Latin
Pemrosesan Berbasis Browser · File Tetap di Perangkat
Gratis, tanpa pendaftaran, tanpa tanda air, setiap file hingga 50 MB

Mengapa Mengonversi?

Elemen video HTML5 memerlukan VTT melalui tag track. File JSON3 tidak akan dimuat di peramban mana pun.
YouTube Studio menerima unggahan VTT untuk subtitle tetapi tidak mengenali format JSON3.
Vimeo memerlukan VTT untuk unggahan subtitle tertutup melalui antarmuka web mereka.
Pemutar video JavaScript seperti Video.js, Plyr, dan JW Player menggunakan VTT sebagai sumber subtitle utama.
WebVTT banyak digunakan untuk subtitle pada video HTML5 dan pemutar berbasis peramban.
Platform kursus berbasis web (Coursera, Canvas LMS, Moodle) hanya menerima VTT untuk subtitle video.
VTT mendukung posisi, gaya, dan metadata yang tidak dapat direpresentasikan JSON3.
Scenarios

Kasus Penggunaan Umum

Sematan Video HTML5

Tambahkan subtitle ke video situs web menggunakan elemen track yang menunjuk ke file VTT. Peramban tidak akan memuat file JSON3 melalui elemen track.

Unggah Subtitle YouTube

Unggah file VTT ke YouTube Studio alih-alih mengetik subtitle secara manual. YouTube menerima VTT tetapi tidak JSON3.

Subtitle Tertutup Vimeo

Tambahkan subtitle tertutup ke video Vimeo dengan mengunggah file VTT melalui panel pengaturan subtitle.

Platform Pembelajaran Daring

Tambahkan subtitle ke video kuliah di Coursera, Canvas, atau LMS Anda sendiri, yang memerlukan VTT untuk kepatuhan aksesibilitas.

Pemutar Video JavaScript

Aktifkan subtitle di Video.js, Plyr, JW Player, atau pemutar web serupa yang membaca VTT sebagai sumber subtitle.

Format Ecosystem

Format Terkait

JSON (YouTube JSON3)

JSON3 adalah format subtitle internal YouTube, diekspor melalui API timedtext. File berupa objek JSON dengan array events. Setiap event memiliki tStartMs (milidetik mulai), dDurationMs (durasi dalam ms), dan segs (array fragmen teks, masing-masing dengan bidang utf8). File ini diunduh dengan youtube-dl atau yt-dlp.

SRT (SubRip)

Alternatif universal: berfungsi di Smart TV dan pemutar desktop. Pilih SRT alih-alih VTT jika target Anda bukan peramban web.

ASS (Advanced SubStation Alpha)

Alternatif bergaya: mendukung font, warna, dan posisi. Pilih ASS jika gaya visual lebih penting daripada kompatibilitas web.

Cara Kerja

  1. 1

    Muat atau seret dan lepas file .json Anda ke area alat.

  2. 2

    Pengurai membaca struktur JSON dan mengiterasi array events.

  3. 3

    Setiap pasangan penanda waktu diformat ulang ke notasi VTT: jam diberi nol di depan, panah disisipkan, titik untuk milidetik dipertahankan.

  4. 4

    Event tanpa segs (hanya penanda waktu) dilewati secara otomatis.

  5. 5

    File .vtt hasilnya diawali WEBVTT dan berisi cue valid dengan notasi panah untuk pemutar web.

Pertanyaan Umum

JSON3 adalah format subtitle internal YouTube, disediakan melalui API timedtext. Setiap event memiliki tStartMs, dDurationMs, dan segs.

Fragmen utf8 pada setiap event digabungkan sesuai urutan aslinya. Misalnya, "Hello " dan "world" menjadi baris subtitle lengkap "Hello world".

Ya. Keluaran menyertakan header WEBVTT wajib dan waktu cue valid untuk YouTube Studio, Vimeo, elemen track HTML5, Video.js, Plyr, dan JW Player.

Dengan yt-dlp: yt-dlp --write-auto-sub --sub-format json3 <URL>. File .json3 dapat diimpor langsung.

Sebagian event JSON3 YouTube hanya berisi informasi pewaktuan (seperti penanda aAppend) tanpa fragmen teks. Event seperti ini otomatis dilewati selama konversi dan tidak memengaruhi keluaran VTT.

VTT (WebVTT) adalah format subtitle standar W3C untuk video web, diperlukan oleh elemen track HTML5 dan diterima oleh YouTube, Vimeo, serta pemutar video JavaScript seperti Video.js dan JW Player. File VTT harus dimulai dengan teks literal WEBVTT di baris pertama, diikuti oleh blok cue. Setiap cue menggunakan penanda waktu HH:MM:SS.mmm --> HH:MM:SS.mmm (titik sebelum milidetik, jam diberi nol di depan). VTT juga mendukung pengaturan cue opsional (line, position, align, size), tag gaya sebaris, komentar NOTE, dan blok CSS.

Siap mengonversi subtitle Anda?

Seret dan lepas file JSON Anda di sini, lalu konversi ke VTT secara instan.