ไทย

วิดีโอและคำบรรยาย · ตัวดาวน์โหลดสื่อโดยตรง

ลิงก์โดยตรงเทียบกับรายการสตรีมมิ่ง: เหตุใด .m3u8 หรือ .mpd จึงไม่ใช่ไฟล์

· พื้นหลัง

ดาวน์โหลด สตรีมมิ่ง ไฟล์รูปแบบ

ไฟล์สื่อที่ดาวน์โหลดได้หนึ่งไฟล์ซึ่งตรงกันข้ามกับเพลย์ลิสต์ที่แยกออกเป็นส่วน ๆ
ภาพประกอบเวกเตอร์ต้นฉบับ ToolAcre

ลิงก์โดยตรงชี้ไปที่ไฟล์เดียว รายการสตรีมมิ่งคือเพลย์ลิสต์ของเซ็กเมนต์ โพสต์นี้จะอธิบาย HLS และ DASH วิธีการทำงานของการสตรีมแบบปรับเปลี่ยนได้ และเหตุใดรายการจึงไม่ใช่สิ่งที่ผู้ดาวน์โหลดลิงก์โดยตรงสามารถบันทึกเป็นวิดีโอได้

สองลิงก์ ลิงก์หนึ่งบันทึกและอีกลิงก์ไม่ทำ — ความแตกต่างที่ทำให้เกือบทุกคนสะดุด

ลิงก์ .mp4 อาจส่งไฟล์วิดีโอที่เบราว์เซอร์สามารถบันทึกกลับมาได้ ลิงก์ .m3u8 อาจส่งข้อความกลับได้เพียงไม่กี่กิโลไบต์ แม้ว่าโปรแกรมเล่นจะสตรีมโปรแกรมทั้งหมดก็ตาม ผู้ผลิตวิดีโอที่บันทึกรายการหลังไม่ได้ดาวน์โหลดการผลิต แต่พวกเขาได้จัดเก็บเพลย์ลิสต์ไว้ ส่วนขยายและการตอบกลับประเภทเนื้อหาเป็นเบาะแสที่มีประโยชน์ แต่ตรวจสอบการตอบสนองจริงแทนที่จะถือว่าทุก URL ที่ลงท้ายด้วย "วิดีโอ" เป็นไฟล์เดียวที่สมบูรณ์

ไฟล์โดยตรงที่ URL มอบให้คืออะไร: ทรัพยากรเดียว อาจเป็นส่วนหัวขนาด

URL โดยตรงจะกล่าวถึงทรัพยากรเดียว เช่น MP3, MP4 หรือรูปภาพ Fetch สามารถอ่านไบต์ตอบกลับและสร้าง Blob ภายในเครื่องได้เมื่อเซิร์ฟเวอร์อนุญาตการเข้าถึงแบบข้ามต้นทาง Content-Length อาจบอกขนาดของมัน แต่เซิร์ฟเวอร์สามารถสตรีมได้โดยไม่ต้องระบุ ดังนั้น "ไฟล์เดียว" จึงไม่รับประกันความยาวส่วนหัว Direct Media Downloader จงใจดึงข้อมูลโฮสต์ที่คุณให้มาจากเบราว์เซอร์ของคุณ ไม่ใช่พร็อกซีหรือโปรแกรมรวบรวมข้อมูลสำหรับลิงก์ที่ฝังอยู่ในหน้าเว็บ

HLS และ DASH คืออะไร — เพลย์ลิสต์ (.m3u8, .mpd) ที่ชี้ไปยังส่วนสั้นๆ จำนวนมากในระดับคุณภาพหลายระดับ

HTTP สตรีมมิ่งสด (HLS) ใช้เพลย์ลิสต์ข้อความที่ลงท้ายด้วย .m3u8; เพลย์ลิสต์หลักอาจมีบิตเรตหลายรายการ ซึ่งแต่ละรายการจะนำไปสู่รายการส่วนสื่อสั้นอีกรายการหนึ่ง MPEG-DASH ใช้คำอธิบาย MPD ของช่วงเวลา การดัดแปลง และ URL ของเซ็กเมนต์ ผู้เล่นเลือกและขอชิ้นส่วนตามต้องการ บางครั้งอาจเปลี่ยนคุณภาพเมื่อแบนด์วิธเปลี่ยนแปลง การบันทึกไฟล์ Manifest เพียงอย่างเดียวจะบันทึกแผนที่ของที่อยู่เหล่านั้น ไม่ใช่ไฟล์ภาพและเสียงที่รวมเข้าด้วยกัน RFC 8216 อธิบาย HLS พฤติกรรมของเพลย์ลิสต์และส่วน; DASH มีมาตรฐานและเครื่องมือของตัวเอง

เหตุใดการสตรีมแบบปรับเปลี่ยนได้จึงถูกคิดค้นขึ้นมา — การบัฟเฟอร์ การเชื่อมต่อแบบแปรผัน และการย้ายออกจากการดาวน์โหลดแบบโปรเกรสซีฟ

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

เซ็กเมนต์ คีย์ และ DRM — เหตุใดชิ้นส่วนเหล่านี้จึงมักไร้ประโยชน์หากไม่มีใบอนุญาต และเหตุใดการประกอบซ้ำจึงอยู่นอกขอบเขต

บางเซ็กเมนต์มีคีย์เข้ารหัสแยกกัน และการเล่นบางส่วนใช้ระบบ DRM ที่ผูกกับลิขสิทธิ์ แม้ว่าไฟล์ Manifest จะสามารถอ่านได้แบบสาธารณะ ส่วนต่างๆ ของไฟล์นั้นอาจได้รับการคุ้มครอง มีอายุสั้น หรือได้รับอนุญาตสำหรับการเล่นเท่านั้น การต่อไฟล์ การดึงคีย์ หรือการข้ามข้อจำกัดของผู้ให้บริการนั้นอยู่นอกเหนือการออกแบบของ Direct Media Downloader และอาจละเมิดสิทธิ์หรือการควบคุมการเข้าถึง ลิงก์ไฟล์โดยตรงที่ตรงไปตรงมาซึ่งจัดทำโดยผู้เผยแพร่ที่ได้รับอนุญาตถือเป็นข้อเสนอที่แตกต่างจากการสร้างสตรีมที่ได้รับการป้องกันขึ้นมาใหม่

ตัวอย่างการทำงาน: การตรวจสอบรายการในโปรแกรมแก้ไขข้อความ - อ่านรายการกลุ่มและทำความเข้าใจว่ารายการดังกล่าวทำอะไรและไม่มี

ลองพิจารณารายการข้อความของเล่นที่มี #EXTM3U บรรทัด #EXTINF:6.0 และเส้นทาง segment0001.ts ตามด้วยระยะเวลาอื่นและ segment0002.ts การเปิดในโปรแกรมแก้ไขข้อความจะแสดงคำสั่งและชื่อไฟล์ที่เกี่ยวข้อง ไม่ใช่เฟรมวิดีโอที่ถอดรหัส ผู้เล่น HLS แก้ไขและขอเส้นทางเหล่านั้นตามเพลย์ลิสต์และการเชื่อมต่อปัจจุบัน การดาวน์โหลดไฟล์ข้อความด้วยเบราว์เซอร์จะบันทึกรายการนั้น จะไม่รวม segment0001.ts และ segment0002.ts เข้ากับโปรแกรมที่สามารถเล่นได้ นี่เป็นภาพร่างในรูปแบบภาพประกอบ ไม่ใช่การกล่าวอ้างเกี่ยวกับบริการใดๆ โดยเฉพาะ

Takeaway: รายการคือแผนที่ ไม่ใช่อาณาเขต — วิธีที่ Direct Media Downloader จัดการไฟล์โดยตรง และระบุอย่างชัดเจนว่ารายการนั้นอยู่นอกเหนือหน้าที่การงาน

รายการคือแผนที่ ไม่ใช่วิดีโอที่รายการนั้นแมป Direct Media Downloader ของ ToolAcre ถูกจำกัดไว้เฉพาะลิงก์ไฟล์โดยตรงที่ได้รับอนุญาต และอธิบาย CORS และสตรีมที่ไม่รองรับ แทนที่จะซ่อนการส่งต่อไว้ด้านหลังอินเทอร์เฟซ เมื่อคุณพบไฟล์ .m3u8 หรือ .mpd ให้ค้นหาคุณสมบัติการดาวน์โหลดที่ถูกต้องตามกฎหมายของผู้ให้บริการ หรือขอไฟล์ต้นฉบับจากผู้เผยแพร่ แทนที่จะคาดหวังว่าเครื่องมือลิงก์โดยตรงจะกลายเป็นตัวแยกสตรีมมิ่ง