$ ffmpeg -i source-file.foo -ss 0 -t 600 first-10-min.m4v
$ ffmpeg -i source-file.foo -ss 600 -t 600 second-10-min.m4v
$ ffmpeg -i source-file.foo -ss 1200 -t 600 third-10-min.m4v
...
การรวมสิ่งนี้เข้ากับสคริปต์เพื่อทำแบบวนซ้ำจะไม่ยาก
ระวังว่าถ้าคุณพยายามคำนวณจำนวนการวนซ้ำโดยอิงจากเอาต์พุตระยะเวลาจากการffprobe
โทรซึ่งประมาณจากอัตราบิตเฉลี่ยที่จุดเริ่มต้นของคลิปและขนาดไฟล์ของคลิปยกเว้นว่าคุณให้-count_frames
อาร์กิวเมนต์ซึ่งทำให้การทำงานช้าลงอย่างมาก .
สิ่งที่จะตระหนักถึงก็คือว่าตำแหน่งของ-ss
ตัวเลือกในบรรทัดคำสั่งเรื่อง ที่ฉันมีตอนนี้มันช้า แต่แม่นยำ รุ่นแรกของคำตอบนี้ให้ทางเลือกที่รวดเร็ว แต่ไม่ถูกต้อง บทความที่เชื่อมโยงนี้ยังอธิบายถึงทางเลือกที่รวดเร็วและแม่นยำ แต่ส่วนใหญ่ซึ่งคุณจ่ายด้วยความซับซ้อนเล็กน้อย
ทั้งหมดที่นอกเหนือฉันไม่คิดว่าคุณต้องการที่จะตัด 10 นาทีสำหรับแต่ละคลิป นั่นจะทำให้บาดแผลถูกต้องตรงกลางประโยคแม้แต่คำพูด ฉันคิดว่าคุณควรใช้โปรแกรมตัดต่อวิดีโอหรือเครื่องเล่นเพื่อหาจุดตัดตามธรรมชาติห่างกันเพียง 10 นาที
สมมติว่าไฟล์ของคุณอยู่ในรูปแบบที่ YouTube สามารถยอมรับได้โดยตรงคุณไม่จำเป็นต้องเข้ารหัสใหม่เพื่อรับเซ็กเมนต์ เพียงผ่านจุดตัดตามธรรมชาติเพื่อffmpeg
บอกให้ผ่านการเข้ารหัส A / V ผ่านการแตะต้องโดยใช้ตัวแปลงสัญญาณ "คัดลอก":
$ ffmpeg -i source.m4v -ss 0 -t 593.3 -c copy part1.m4v
$ ffmpeg -i source.m4v -ss 593.3 -t 551.64 -c copy part2.m4v
$ ffmpeg -i source.m4v -ss 1144.94 -t 581.25 -c copy part3.m4v
...
-c copy
อาร์กิวเมนต์บอกเพื่อคัดลอกลำธารป้อนข้อมูลทั้งหมด (วิดีโอ, เสียง, และอาจคนอื่น ๆ เช่นคำบรรยาย) เข้าออกตามที่เป็น สำหรับโปรแกรม A / V ง่ายๆก็เทียบเท่ากับธงละเอียดเพิ่มเติมหรือธงแบบเก่า-c:v copy -c:a copy
-vcodec copy -acodec copy
คุณจะใช้สไตล์ verbose มากขึ้นเมื่อคุณต้องการคัดลอกสตรีมเดียวเท่านั้น แต่เข้ารหัสอีกชุดหนึ่ง ยกตัวอย่างเช่นหลายปีที่ผ่านมามีการปฏิบัติร่วมกันกับไฟล์ QuickTime ในการบีบอัดวิดีโอที่มีวิดีโอ H.264 แต่ปล่อยให้เสียงเป็นPCM ไม่มีการบีบอัด ; หากคุณเจอไฟล์ดังกล่าววันนี้คุณสามารถทำให้มันทันสมัยขึ้นด้วย-c:v copy -c:a aac
การประมวลผลเฉพาะสตรีมเสียงโดยปล่อยให้วิดีโอไม่ถูกแตะต้อง
จุดเริ่มต้นสำหรับทุกคำสั่งด้านบนหลังจากจุดแรกคือจุดเริ่มต้นของคำสั่งก่อนหน้าบวกกับระยะเวลาของคำสั่งก่อนหน้า