aspose.info
ID

VP6 - Berkas Video TrueMotion

Diperbarui

Apa itu file VP6?

VP6 adalah format video kompresi lossy yang diperkenalkan oleh teknologi On2 pada Mei 2003. Ini adalah bagian dari rangkaian codec video yang dikembangkan oleh TrueMotion termasuk V3, V4 dan V5. Format ini digunakan segera di bidang penyiaran seperti laporan BBC dan perangkat lunak QuickLink. VP6 digantikan oleh VP7 Codec pada Januari 2005 dengan kompatibilitas kompresi yang lebih baik.

Format File VP6

Spesifikasi lengkap untuk file V6 tidak tersedia untuk umum. On2 membuat spesifikasinya untuk publik pada awalnya tetapi segera ini dibuat tidak tersedia untuk pengguna umum. Dokumentasi tidak resmi dari format file VP6 tersedia di multimedia wiki yang dapat dirujuk untuk referensi pengembang.

Blok Makro (MB)

Mirip dengan MPEG-2, MPEG-4 bagian 2 dan 10, setiap frame video dari file VP6 terdiri dari array 16x16 macroblocks (MB). Setiap MB dapat berada dalam salah satu mode berikut:

  • IntraMB
  • Inter MB, null MV, referensi bingkai sebelumnya
  • Inter MB, MV diferensial, referensi bingkai sebelumnya
  • Inter MB, empat MV, referensi bingkai sebelumnya
  • Inter MB, MV 1, referensi bingkai sebelumnya
  • Inter MB, MV 2, referensi bingkai sebelumnya
  • Inter MB, null MV, referensi bingkai yang di-bookmark
  • Inter MB, MV diferensial, referensi bingkai yang ditandai
  • Inter MB, MV 1, referensi bingkai yang di-bookmark
  • Inter MB, MV 2, referensi bingkai yang di-bookmark

Tajuk Bingkai

Header bingkai VP6 adalah seperti yang ditunjukkan di bawah ini yang mengikuti pengepakan bit big-endian.

SintaksJumlah bitJenisSymantec
frame_mode1Enum0x0 menandakan intra frame
qp6Tidak ditandatanganiParameter kuantisasi rentang valid 0..63
penanda1Konstan0=VP61/62, 1=VP60
jika (frame_mode == 0) {0sama dengan INTRA_FRAME
versi5Konstan6=VP60/61, 7=VP60(Seni Elektronik), 8=VP62
versi22Konstan0=VP60, 3=VP61/62
jalin1Booleantrue (1) berarti interlace akan digunakan
jika (penanda==1 atau versi2==0) {
offset16Tidak ditandatanganibuffer offset sekunder (byte yang relevan untuk memulai buffer)
}
redup_y8Tidak ditandatanganiTinggi makroblok video
dim_x8Tidak ditandatanganiLebar makroblok video
render_y8Tanpa tanda tanganTampilkan tinggi video
render_x8Tidak ditandatanganiTampilkan lebar video
}lain{
jika (penanda==1 atau versi2==0) {
offset16UnsignedSecondary buffer offset (bytes releative to start of buffer)
}
}

Referensi

Lihat juga