คำถามติดแท็ก ffmpeg

"ffmpeg" เป็นโครงการซอฟต์แวร์ฟรีที่มุ่งผลิตเครื่องมือ (ไลบรารีและโปรแกรม) สำหรับจัดการข้อมูลมัลติมีเดีย

9
ฉันจะลดขนาดวิดีโอด้วย ffmpeg ได้อย่างไร
ฉันffmpegจะใช้เพื่อลดขนาดของวิดีโอด้วยการลดคุณภาพ (อย่างน้อยที่สุดเท่าที่จะเป็นไปได้โดยธรรมชาติ แต่ฉันต้องการให้มันทำงานบนอุปกรณ์พกพาที่ไม่มีพื้นที่ว่างมาก)? ฉันลืมที่จะเขียนสิ่งหนึ่งเลย เมื่อวิดีโอสามารถใช้คำบรรยาย (* .srt หรือ * .sub) ฉันต้องการแปลงให้เหมาะกับพารามิเตอร์ของไฟล์วิดีโอที่แปลงแล้ว

10
วิธี grep สตรีมข้อผิดพลาดมาตรฐาน (stderr)?
ฉันใช้ ffmpeg เพื่อรับข้อมูลเมตาของคลิปเสียง แต่ฉันไม่สามารถ grep มัน $ ffmpeg -i 01-Daemon.mp3 |grep -i Duration FFmpeg version SVN-r15261, Copyright (c) 2000-2008 Fabrice Bellard, et al. configuration: --prefix=/usr --bindir=/usr/bin --datadir=/usr/share/ffmpeg --incdir=/usr/include/ffmpeg --libdir=/usr/lib --mandir=/usr/share/man --arch=i386 --extra-cflags=-O2 ... ฉันตรวจสอบเอาต์พุต ffmpeg นี้โดยตรงไปที่ stderr $ ffmpeg -i 01-Daemon.mp3 2> /dev/null ดังนั้นฉันคิดว่า grep ไม่สามารถอ่านสตรีมข้อผิดพลาดเพื่อตรวจจับเส้นที่ตรงกันได้ เราจะเปิดใช้งาน grep เพื่ออ่านสตรีมข้อผิดพลาดได้อย่างไร? การใช้ลิงก์nixCraftฉันเปลี่ยนเส้นทางสตรีมข้อผิดพลาดมาตรฐานไปยังสตรีมเอาต์พุตมาตรฐานจากนั้น …

8
ฉันจะใช้ ffmpeg เพื่อแยกวิดีโอ MPEG เป็นชิ้น ๆ 10 นาทีได้อย่างไร
มักจะมีความต้องการในโอเพนซอร์สหรือชุมชนนักพัฒนาที่ใช้งานเพื่อเผยแพร่กลุ่มวิดีโอขนาดใหญ่ออนไลน์ (วิดีโอนัดพบค่ายพูดคุยเกี่ยวกับเทคโนโลยี ... ) การเป็นฉันเป็นนักพัฒนาและไม่ใช่ช่างวิดีโอฉันไม่มีความปรารถนาที่จะแยกส่วนเสริมในบัญชี Vimeo พรีเมี่ยม ฉันจะนำวิดีโอพูดคุยเกี่ยวกับเทคโนโลยี MPEG ขนาด 12.5 GB (1:20:00) มาแบ่งเป็น 00:10:00 เพื่อให้ง่ายต่อการอัพโหลดไปยังเว็บไซต์แบ่งปันวิดีโอ

3
เข้ารหัสไลบรารีวิดีโออีกครั้งใน x265 (HEVC) โดยไม่มีการสูญเสียคุณภาพ
ฉันพยายามแปลงไลบรารีวิดีโอของฉันเป็นรูปแบบ HEVC เพื่อเพิ่มพื้นที่ ฉันรันคำสั่งต่อไปนี้ในไฟล์วิดีโอทั้งหมดในห้องสมุดของฉัน: #!/bin/bash for i in *.mp4; do #Output new files by prepending "X265" to the names avconv -i "$i" -c:v libx265 -c:a copy X265_"$i" done ตอนนี้วิดีโอส่วนใหญ่แปลงได้ดีและคุณภาพเหมือนเดิม อย่างไรก็ตามวิดีโอบางเรื่องที่มีคุณภาพสูงมาก (เช่นภาพยนตร์ที่พิมพ์ที่มีขนาด 5GB) จะเสียคุณภาพ - วิดีโอนั้นเป็นพิกเซลทั้งหมด ฉันไม่แน่ใจว่าจะทำอย่างไรในกรณีนี้ ฉันจำเป็นต้องแก้ไขcrfพารามิเตอร์ในบรรทัดคำสั่งของฉันหรือไม่? หรืออย่างอื่น? สิ่งนี้คือฉันกำลังแปลงเป็นกลุ่ม ดังนั้นฉันต้องการวิธีที่avconvจะปรับพารามิเตอร์ใด ๆ ที่จำเป็นต้องปรับโดยอัตโนมัติสำหรับวิดีโอแต่ละรายการ UPDATE-1 ฉันพบว่าcrfเป็นปุ่มที่ฉันต้องปรับ CRF เริ่มต้นคือ 28 เพื่อคุณภาพที่ดีกว่าฉันสามารถใช้บางอย่างน้อยกว่า 28 ตัวอย่างเช่น: …

4
รวมวิดีโอคลิปสองคลิปเข้าด้วยกันโดยวางไว้ใกล้กัน
ฉันมีสองคลิปวิดีโอ ทั้งสองคือ 640x480 และ 10 นาทีสุดท้าย หนึ่งประกอบด้วยเสียงพื้นหลังส่วนอีกคนหนึ่งเป็นนักแสดงร้องเพลง ฉันต้องการสร้างวิดีโอคลิปความยาว 10 นาทีขนาด 1280x480 (อีกนัยหนึ่งฉันต้องการวางวิดีโอไว้ถัดจากกันและเล่นพร้อมกันโดยผสมเสียงจากคลิปทั้งสอง) ฉันพยายามที่จะคิดออกว่าจะทำอย่างไรกับ ffmpeg / avidemux แต่จนถึงตอนนี้ฉันก็ว่างเปล่า พวกเขาทั้งหมดอ้างถึงการต่อข้อมูลเมื่อฉันค้นหาการรวม คำแนะนำใด ๆ
38 video  ffmpeg  avidemux 

5
ฉันจะแบ่งไฟล์เสียงเป็นหลายไฟล์ได้อย่างไร
ฉันพบบางอย่างสำหรับวิดีโอซึ่งมีลักษณะเช่นนี้ ffmpeg -i * -c:v libx264 -crf 22 -map 0 -segment_time 1 -g 1 -sc_threshold 0 -force_key_frames "expr:gte(t,n_forced*9)" -f segment output%03d.mp4 ฉันพยายามใช้ไฟล์เสียงนั้น แต่ไฟล์เสียงแรกเท่านั้นที่มีไฟล์เสียงจริงไฟล์อื่น ๆ เงียบกว่านั้นดีมากมันสร้างไฟล์เสียงใหม่ทุกวินาที ไม่มีใครรู้ว่าสิ่งที่จะแก้ไขเพื่อให้งานนี้กับไฟล์เสียงหรือคำสั่งอื่นที่สามารถทำเช่นเดียวกัน?
35 audio  ffmpeg 

2
ตัดแต่งไฟล์เสียงโดยใช้เวลาเริ่มและหยุด
ฉันมีคำสั่ง FFmpeg เพื่อตัดแต่งเสียง: ffmpeg -ss 01:43:46 -t 00:00:44.30 -i input.mp3 output.mp3 ผมมีปัญหากับคำสั่งนี้เป็นตัวเลือกที่-tต้องใช้ระยะเวลา (วินาที) จาก01:43:46 ฉันต้องการที่จะตัดเสียงโดยใช้เวลาเริ่ม / หยุดเช่นระหว่าง01:43:46และ00: 01: 45.02 เป็นไปได้ไหม
34 audio  ffmpeg  trim 

14
Bash script เพื่อแปลง * flac ทั้งหมดเป็น * .mp3 ด้วย FFmpeg?
ฉันต้องการแปลง * .flac ทั้งหมดเป็น * .mp3 ในโฟลเดอร์เฉพาะ นี่คือสิ่งที่ฉันได้ลอง แต่ไม่ได้ผล: # change to the home directory cd ~/music # convert all *.flac files ffmpeg -i *.flac -acodec libmp3lame *.mp3 # (optional: check whether there are any errors printed on the terminal) sleep 60 จะได้รับเป้าหมายของฉันได้อย่างไร

5
วิธีการรับคุณภาพการบันทึกหน้าจอใกล้เคียงที่สมบูรณ์แบบ?
มีคนแนะนำว่าฉันส่งสำเนาของจอแสดงผล X ที่ไม่ได้แก้ไขไปยังไฟล์แล้วแปลงไฟล์นั้นเป็นไฟล์วิดีโอวัตถุประสงค์ทั่วไป ฉันจะใช้คำสั่งอะไรในการทำสิ่งนี้บนระบบ Kubuntu (แก้ไข: เขาพูดอะไรบางอย่างเกี่ยวกับการต่อพอร์ตจอแสดงผลกับไฟล์) หากไม่สามารถทำได้ตัวเลือกที่ดีที่สุดของฉันสำหรับการบันทึกหน้าจอคุณภาพดีเยี่ยมที่ไม่ได้ขึ้นอยู่กับฮาร์ดแวร์ที่เร็วคืออะไร พื้นหลัง:ฉันลองใช้ avconv กับ -f x11grab และโปรแกรม GUI บางอย่าง อย่างไรก็ตามไม่ว่าฉันจะพยายามทำอะไรวิดีโอที่แสดงอาจมีสิ่งประดิษฐ์ / ความพร่ามัวหรือขาด ๆ หาย ๆ (เฟรมขาดหายไป) อาจเป็นเพราะข้อ จำกัด ของ CPU / หน่วยความจำ เป้าหมาย: คุณภาพวิดีโอจะต้องไม่แตกต่างอย่างเห็นได้ชัดจากการดูเซสชันโดยตรงบนหน้าจอเนื่องจากจุดประสงค์คือเพื่อแสดงแอปพลิเคชันแบบเคลื่อนไหว วิดีโอขั้นสุดท้ายจะต้องอยู่ในรูปแบบทั่วไปที่สามารถส่งไปยังผู้ใช้ Windows และใช้บนเว็บ ฉันคิดว่า H.264 MP4 ควรใช้งานได้ การแก้ปัญหาไม่ควรเข้าใจความรู้เดิมมากนัก ฉันคุ้นเคยกับบรรทัดคำสั่งและคำสั่ง Linux พื้นฐาน แต่ฉันยังคงเรียนรู้ Linux และไม่รู้จักตัวแปลงสัญญาณวิดีโอมากนัก สิ่งที่ฉันได้ลองแล้ว: คำสั่งที่ดีที่สุดเพื่อให้ห่างไกล: ffmpeg -f x11grab …

4
เข้ารหัสด้วย ffmpeg โดยใช้ avi to mp4
บรรทัดคำสั่งใดที่จะใช้ในการแปลงจาก avi เป็น mp4 แต่ไม่ทำลายขนาดเฟรมและทำให้ไฟล์มีขนาดเล็กตามขนาดดั้งเดิมหรือใหญ่กว่าเล็กน้อยและเหมือนกับ mp4 กับ avi? เมื่อใดก็ตามที่ฉันพยายามแปลงมันจะกลายเป็น 2 gb

2
ข้อผิดพลาดแปลก ๆ เมื่อใช้ ffmpeg ในวง
ฉันมี bash script วนซ้ำผ่านผลลัพธ์ของการค้นหาและทำการเข้ารหัส ffmpeg ของไฟล์ FLV บางไฟล์ ในขณะที่สคริปต์กำลังเรียกใช้เอาต์พุต ffmpeg ดูเหมือนว่าจะถูกขัดจังหวะและกำลังส่งออกข้อผิดพลาดการค้นหาที่แปลก ๆ เช่นด้านล่าง ฉันไม่รู้ว่าเกิดอะไรขึ้นที่นี่ ใครช่วยชี้ฉันในทิศทางที่ถูกต้องได้ไหม ราวกับว่าลูปยังคงทำงานอยู่เมื่อไม่ควรทำและรบกวนกระบวนการ ffmpeg ข้อผิดพลาดเฉพาะคือ: frame= 68 fps= 67 q=28.0 00000000000000000000000000001000size= 22kB time=00:00:00.50 bitrate= 363.2kbits/s dup=1 drop=0 Enter command: <target> <time> <command>[ <argument>] Parse error, at least 3 arguments were expected, only 1 given in string 'om/pt_br/nx/R3T4N2_HD3D_demoCheckedOut.flv' …
23 ffmpeg 


4
แปลงวิดีโอเป็นขนาดหน้าจอคงที่โดยการครอบตัดและปรับขนาด
ฉันพยายามคิดออกเอง แต่ตัวเลือกมากมายทำให้ฉันงุนงง ฉันต้องการใช้อย่างใดอย่างหนึ่งffmpegหรือmencoder(หรืออย่างอื่น แต่ทั้งสองฉันรู้ว่าฉันกำลังทำงาน) เพื่อแปลงวิดีโอที่เข้ามาเป็นขนาดหน้าจอคงที่ หากวิดีโอนั้นกว้างหรือสั้นเกินไปก็ให้ทำการครอบตัดวิดีโอไปที่กึ่งกลาง หากไม่ใช่ขนาดที่เหมาะสมให้ปรับขนาดขึ้นหรือลงเพื่อทำให้ขนาดหน้าจอคงที่ สิ่งสุดท้ายที่แน่นอนที่ฉันต้องการคือ 720x480 ใน XVid AVI พร้อมแทร็กเสียง MP3 ฉันพบหน้าเว็บจำนวนมากที่แสดงวิธีปรับขนาดให้เป็นความละเอียดสูงสุด แต่ฉันต้องการวิดีโอเพื่อให้ได้ความละเอียดนั้นอย่างแน่นอน ทุกคนสามารถบอกบรรทัดคำสั่งให้เรียกใช้ - หรืออย่างน้อยก็ช่วยให้ฉัน / ส่วนใหญ่ของวิธีการที่นั่น? หากจำเป็นต้องมีหลายบรรทัดคำสั่ง (เรียกใช้ X เพื่อรับความละเอียดทำคำนวณนี้แล้วเรียกใช้ Y กับผลลัพธ์ของการคำนวณนั้น) ฉันสามารถสคริปต์ที่

4
การแปลงเฟรม PNG เป็นวิดีโอที่ 1 FPS
ฉันมีเฟรมวิดีโอในรูปแบบ PNG ที่ 1 FPS และฉันพยายามแปลงให้เป็นวิดีโอโดยใช้ ffmpeg ถ้าฉันทำสิ่งนี้: ffmpeg -i data/input-%4d.png data/output.mp4 ฉันได้รับวิดีโอที่ 25FPS ซึ่งโดยทั่วไปแล้วจะเป็นไปข้างหน้าอย่างรวดเร็วของอินพุต (ซึ่งถ่ายที่ 1FPS) ถ้าฉันลอง: ffmpeg -i data/input-%4d.png -r 1 data/output.mp4 ฉันได้รับสิ่งที่ VLC ไม่ต้องการเล่น :) ตอนนี้ถ้าฉันใช้วิดีโอแรก (FF หนึ่ง) และใช้ตัวกรองเพื่อทำให้ช้าลง (เช่น-filter:v 'setpts=24.0*PTS') ฉันสามารถทำให้มันเล่นได้เหมือนวิดีโอ 1 FPS แต่แน่นอนว่าราคาคือขนาดไฟล์ มันสร้างเฟรมซ้ำหลายอันที่ฉันเดา ดังนั้นคำถามคือฉันจะสร้างวิดีโอที่มี 1 FPS ที่แน่นอนและเล่นที่ความเร็วนั้นได้อย่างไร รูปแบบผลลัพธ์ btw ไม่สำคัญสำหรับฉัน

1
ลบความเงียบออกจากไฟล์เสียงขณะที่ยังคงช่องว่าง
ขณะนี้เรากำลังใช้คำสั่งนี้ภายในเชลล์สคริปต์เพื่อลบความเงียบออกจากไฟล์เสียง: ffmpeg -i $INFILE -af silenceremove=0:0:0:-1:1:${NOISE_TOLERANCE}dB -ac 1 $SILENCED_FILE -y ใช้งานได้ดียกเว้นว่าจะลบความเงียบทั้งหมดทำให้เสียงที่เหลืออยู่ถูกบีบเข้าด้วยกัน วิธีนี้สามารถทำได้ในขณะที่เหลือสองหรือสามวินาทีระหว่างเสียงแต่ละส่วน? โซลูชันต้องมีประสิทธิภาพมากเนื่องจากเราจะประมวลผลเสียงจำนวนมากและควรใช้เครื่องมือที่สามารถติดตั้งได้อย่างง่ายดายบนทั้ง Linux และ OSX เช่น ffmpeg หรือ sox

โดยการใช้ไซต์ของเรา หมายความว่าคุณได้อ่านและทำความเข้าใจนโยบายคุกกี้และนโยบายความเป็นส่วนตัวของเราแล้ว
Licensed under cc by-sa 3.0 with attribution required.