คอนเทนเนอร์ MPEG Transport Stream

TS / M2TS

สร้างมาสำหรับการออกอากาศ ที่เครื่องรับอาจเข้าร่วมกลางทางและไม่มีอะไรมีจุดจบ

สรุปสั้น ๆ

MPEG Transport Stream คือสิ่งที่โทรทัศน์ถูกส่งสัญญาณออกไปเป็น มันถูกออกแบบให้เครื่องรับเริ่มถอดรหัสได้ทุกช่วงเวลาและกู้คืนจากข้อมูลที่หายไปได้ ซึ่งทำให้มันยอดเยี่ยมสำหรับการออกอากาศแต่ก็อึดอัดในฐานะไฟล์: ไม่มีดัชนี ดังนั้นการเลื่อนดูจึงเป็นการเดา และระยะเวลามักผิดหรือหายไปเลย

30 กรกฎาคม 2569

เปิดได้เองโดย

iPhone · iPad เปิดไม่ได้
Mac เปิดไม่ได้
FoxDL เปิดได้

ทั้งสองระบบไม่เปิดไฟล์ .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 พร้อมดัชนีจริง ไม่มีอะไรถูกเข้ารหัสใหม่ คุณภาพไม่ถูกแตะเลย และมันทำงานเร็วเท่าความเร็วดิสก์ หลังจากนั้นการเลื่อนดูจะทันทีและแม่นยำ เพราะไฟล์รู้แล้วในที่สุดว่าเฟรมของมันเองอยู่ที่ไหน

ควรทำอย่างไรกับมัน

  1. เล่นมันโดยตรงถ้าแค่อยากดู

    เครื่องเล่นที่มีตัวแยกไฟล์ของตัวเองเปิด .ts ได้โดยไม่ต้องเตรียมอะไรเลย การเลื่อนดูจะเป็นการประมาณ — นั่นคือธรรมชาติของฟอร์แมต ไม่ใช่ของเครื่องเล่น — แต่สำหรับการดูให้จบ มันก็โอเค

  2. รีมักซ์เป็น MP4 หรือ MKV ถ้าจะเก็บไว้

    เร็ว ไม่สูญเสียคุณภาพ และแก้ปัญหาการเลื่อนดูกับระยะเวลาได้ถาวร สำหรับอะไรที่จะเข้าคลังแทนที่จะดูครั้งเดียว ให้ทำแบบนี้

  3. ปล่อยสตรีม IPTV ไว้ตามเดิม

    เมื่อ TS มาถึงในรูปแบบสตรีมสดแทนที่จะเป็นไฟล์ เรื่องนี้ไม่เกี่ยวข้องเลย: ไม่มีอะไรให้ทำดัชนีเพราะไม่มีอะไรจบลง อาการบัฟเฟอร์ตรงนั้นเป็นคำถามเรื่องเครือข่าย

อ่านแบบละเอียด M3U, Xtream Codes, EPG: คำเหล่านี้หมายความว่าอะไรและคุณมีแบบไหน M3U หรือ Xtream ผังรายการต้องการอะไรจึงจะทำงาน อะไรทำให้เกิดบัฟเฟอร์ และใครแก้มันได้

คำถามเกี่ยวกับฟอร์แมตนี้

ฟอร์แมตใกล้เคียง

คลังไฟล์ของคุณ อยู่รวมกันในที่เดียวสักที

ดาวน์โหลดฟรี ไม่ต้องมีบัญชี ไม่ต้องสมัคร ไม่ต้องยื่นข้อมูลอะไรให้ใคร

ดาวน์โหลดบน App Store