TS / M2TS
สร้างมาสำหรับการออกอากาศ ที่เครื่องรับอาจเข้าร่วมกลางทางและไม่มีอะไรมีจุดจบ
MPEG Transport Stream คือสิ่งที่โทรทัศน์ถูกส่งสัญญาณออกไปเป็น มันถูกออกแบบให้เครื่องรับเริ่มถอดรหัสได้ทุกช่วงเวลาและกู้คืนจากข้อมูลที่หายไปได้ ซึ่งทำให้มันยอดเยี่ยมสำหรับการออกอากาศแต่ก็อึดอัดในฐานะไฟล์: ไม่มีดัชนี ดังนั้นการเลื่อนดูจึงเป็นการเดา และระยะเวลามักผิดหรือหายไปเลย
30 กรกฎาคม 2569
เปิดได้เองโดย
ทั้งสองระบบไม่เปิดไฟล์ .ts หรือ .m2ts เลย ถึงแม้ทั้งคู่จะถอดรหัส H.264 หรือ HEVC ข้างในได้อย่างสมบูรณ์แบบเมื่อมีอะไรอื่นแกะห่อมันออกมาแล้ว ตัวห่อหุ้มคืออุปสรรคอีกครั้ง
ข้อเท็จจริง
| ชื่อเต็ม | MPEG-2 Transport Stream |
|---|---|
| ประเภท | คอนเทนเนอร์ ออกแบบมาสำหรับการส่งสัญญาณ ไม่ใช่การจัดเก็บ |
| นามสกุล | .ts, .m2ts, .mts, .m2t |
| เผยแพร่ | 1995 เป็นส่วนหนึ่งของ MPEG-2 |
| ขนาดแพ็กเก็ต | 188 ไบต์ คงที่ — เล็กพอที่แพ็กเก็ตเสียหนึ่งอันจะแทบไม่สูญเสียอะไรเลย |
| วิดีโอข้างใน | MPEG-2 ในการออกอากาศรุ่นเก่า H.264 และ HEVC ในรุ่นใหม่กว่า |
| เสียงข้างใน | AC-3, E-AC-3, AAC, MP2 |
| ดัชนี | ไม่มี ไม่มีอะไรในไฟล์บอกว่าช่วงเวลาใดอยู่ตรงไหน |
| มาจากไหน | สตรีม IPTV การบันทึก DVB และ ATSC กล้องวิดีโอ AVCHD แผ่นบลูเรย์ |
ฟอร์แมตที่ไม่มีจุดเริ่มต้น
คอนเทนเนอร์อื่น ๆ ทุกตัวที่กล่าวมาสมมติว่าคุณมีไฟล์ทั้งหมดและอ่านส่วนหัวก่อนได้ Transport Stream สมมติตรงกันข้าม: ว่าคุณปรับจูนเข้าร่วมกลางทางของการออกอากาศที่เริ่มก่อนคุณมาถึงและจะดำเนินต่อไปหลังคุณจากไป ดังนั้นมันจึงพูดซ้ำทุกอย่างที่ตัวถอดรหัสต้องการ — โครงสร้างสตรีม ข้อมูลอ้างอิงเวลา พารามิเตอร์ — ทุกเสี้ยววินาที ตลอดไป
แพ็กเก็ตขนาด 188 ไบต์ก็เป็นแนวคิดเดียวกัน สัญญาณรบกวนทำลายแพ็กเก็ตหนึ่งอัน ตัวถอดรหัสสูญเสียไปแค่ไม่กี่มิลลิวินาทีแล้วเดินหน้าต่อ ฟอร์แมตที่สร้างขึ้นรอบดัชนีใหญ่หนึ่งอันจะสูญเสียส่วนที่เหลือทั้งหมดของไฟล์ไป
นี่คือวิศวกรรมที่ดีจริง ๆ สำหรับจุดประสงค์ของมัน แต่มันเป็นรูปแบบที่ผิดสำหรับไฟล์ที่วางอยู่บนดิสก์ ทุกอย่างที่ทำให้การออกอากาศทนทานทำให้การบันทึกใช้งานยาก
ทำไมการบันทึกถึงทำงานแปลก ๆ
โดยไม่มีดัชนี เครื่องเล่นที่ต้องการจุดนาทีที่ 47 ต้องประมาณเอา: คูณบิตเรตด้วยเวลา กระโดดไปคร่าว ๆ ตรงนั้น แล้วไล่หาเฟรมถัดไปที่ถอดรหัสได้ บนการออกอากาศแบบบิตเรตคงที่ วิธีนี้จะแม่นยำใกล้เคียง แต่บนการบันทึกแบบบิตเรตผันแปร มันอาจคลาดเคลื่อนไปหลายวินาที และบนการบันทึกที่ต่อจากสตรีมที่ถูกขัดจังหวะ มันอาจคลาดเคลื่อนไปหลายนาที
ระยะเวลาก็มีที่มาแบบเดียวกัน เครื่องเล่นต้องอ่านทั้งไฟล์เพื่อจะรู้ว่ามันยาวแค่ไหน หรือไม่ก็เดาจากบิตเรต นี่คือเหตุผลที่การบันทึกบางครั้งแสดงความยาวผิด หรือไม่แสดงเลย และทำไมแถบเลื่อนถึงเป็นได้แค่เรื่องแต่ง
วิธีแก้คือการรีมักซ์: อ่านสตรีมครั้งเดียว แล้วเขียนวิดีโอและเสียงเดียวกันลงใน MP4 หรือ MKV พร้อมดัชนีจริง ไม่มีอะไรถูกเข้ารหัสใหม่ คุณภาพไม่ถูกแตะเลย และมันทำงานเร็วเท่าความเร็วดิสก์ หลังจากนั้นการเลื่อนดูจะทันทีและแม่นยำ เพราะไฟล์รู้แล้วในที่สุดว่าเฟรมของมันเองอยู่ที่ไหน
ควรทำอย่างไรกับมัน
- เล่นมันโดยตรงถ้าแค่อยากดู
เครื่องเล่นที่มีตัวแยกไฟล์ของตัวเองเปิด .ts ได้โดยไม่ต้องเตรียมอะไรเลย การเลื่อนดูจะเป็นการประมาณ — นั่นคือธรรมชาติของฟอร์แมต ไม่ใช่ของเครื่องเล่น — แต่สำหรับการดูให้จบ มันก็โอเค
- รีมักซ์เป็น MP4 หรือ MKV ถ้าจะเก็บไว้
เร็ว ไม่สูญเสียคุณภาพ และแก้ปัญหาการเลื่อนดูกับระยะเวลาได้ถาวร สำหรับอะไรที่จะเข้าคลังแทนที่จะดูครั้งเดียว ให้ทำแบบนี้
- ปล่อยสตรีม IPTV ไว้ตามเดิม
เมื่อ TS มาถึงในรูปแบบสตรีมสดแทนที่จะเป็นไฟล์ เรื่องนี้ไม่เกี่ยวข้องเลย: ไม่มีอะไรให้ทำดัชนีเพราะไม่มีอะไรจบลง อาการบัฟเฟอร์ตรงนั้นเป็นคำถามเรื่องเครือข่าย
คำถามเกี่ยวกับฟอร์แมตนี้
ฟอร์แมตใกล้เคียง
คลังไฟล์ของคุณ อยู่รวมกันในที่เดียวสักที
ดาวน์โหลดฟรี ไม่ต้องมีบัญชี ไม่ต้องสมัคร ไม่ต้องยื่นข้อมูลอะไรให้ใคร