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

FFmpeg เป็นโครงการซอฟต์แวร์ฟรีที่สร้างไลบรารีและโปรแกรมสำหรับจัดการข้อมูลมัลติมีเดีย ส่วนที่น่าสังเกตมากที่สุดของ FFmpeg คือ libavcodec, ไลบรารีตัวแปลงสัญญาณเสียง / วิดีโอที่ใช้โดยโครงการอื่นหลายโครงการ, libavformat, mux คอนเทนเนอร์เสียง / วิดีโอคอนเทนเนอร์ mux และ demux library, และโปรแกรมบรรทัดคำสั่ง ffmpeg สำหรับการแปลงไฟล์มัลติมีเดีย

2
วิธีเชื่อมต่อคลิปจากวิดีโอเดียวกันกับ ffmpeg
ฉันมีวิดีโอยาวที่มีฉากต่างกันในนั้น ฉันต้องการแยกและเชื่อมต่อ 2 ฉากจากวิดีโอ (ที่ไม่ได้เริ่มในเฟรม I) โดยใช้ ffmpeg 2.1.4 สำหรับการโต้แย้งว่าฉันต้องการ 5 วินาทีจาก 01:00 และ 02:00 ฉันสามารถทำสิ่งนี้: ffmpeg -ss 01:00 -i in.mkv -ss 02:00 -i in.mkv -filter_complex " [0:v]select='lt(t,5)'[v0]; [0:a]aselect='lt(t,5)'[a0]; [v0][a0][1:v][1:a]concat=n=2:v=1:a=1 " -c:a libvorbis -t 10 out.mkv นั่นให้ภาพยนตร์ที่ฉันต้องการ แต่จริงๆแล้วการเลือกบังคับให้ ffmpeg ถอดรหัสส่วนที่เหลือทั้งหมดของหนัง ฉันจะบอกให้ตัดทอนภาพยนตร์เรื่องแรกแทนที่จะถอดรหัสได้อย่างไร ฉันต้องการทำเช่นนี้กับตัวกรองที่ซับซ้อน ffmpeg ถ้าเป็นไปได้ ฉันรู้ว่าฉันสามารถใช้-tเพื่อบันทึกภาพยนตร์แยกต่างหากก่อน แต่ขั้นตอนการเข้ารหัสพิเศษช้ามากในกรณีของฉันและยังสูญเสียคุณภาพที่เป็นธรรมสำหรับวิดีโอนี้ ฉันไม่สามารถหาตัวกรองที่ตัดความยาวของไอน้ำออก มีโหนดตัวกรองที่สอดคล้องกับ-tหรือ-ssพารามิเตอร์หรือไม่
15 ffmpeg 

1
จะใช้คำสั่ง FFmpeg สำหรับวิดีโอย้อนกลับได้อย่างไร
ฉันใช้ไลบรารี FFmpeg ใน Android สำหรับวิดีโอย้อนกลับ ฉันสามารถถ่ายโอนภาพจากวิดีโอ แต่ทำอย่างไรจึงจะกลับภาพทั้งหมดและสร้างวิดีโอ ดูลิงค์นี้ที่ฉันใช้กับไลบรารีในระดับของฉัน .. ห้องสมุดคือcompile 'com.github.hiteshsondhi88.libffmpeg:FFmpegAndroid:0.2.5'ฉันสามารถใช้คำสั่งบางอย่างและบางอย่างไม่ได้ ฉันใช้คำสั่งเหมือนด้านล่าง -i /storage/emulated/0/ffvid/frameCount.mp4 -an -qscale 1 /storage/emulated/0/ffimg/revi%06d.jpg คำสั่งดังกล่าวใช้สำหรับถ่ายโอนข้อมูลภาพจากวิดีโอ ฉันไม่สามารถใช้คำสั่งเป็น liki $ffmpeg, $soxและ$cat ฉันอ้างถึงลิงก์จำนวนมาก แต่ไม่ประสบความสำเร็จในการดูลิงก์ด้านล่าง ... /unix/214327/how-can-i-reverse-a-video-clip http://jiaxihu.blogspot.in/2012/05/reverse-video-clip-with-ffmpeg.html ดังนั้นโปรดช่วยฉันและให้ทางออกฉันด้วย ถ้ามีห้องสมุดอื่นให้แนะนำฉัน ขอบคุณล่วงหน้า
15 video  ffmpeg 

7
มีวิธีหยุดชั่วคราวและทำการเข้ารหัส FFmpeg ต่อหรือไม่?
ffmpegฉันบันทึกไม่กี่ชั่วโมงของภาพวิดีโอทุกวันซึ่งเราได้ตั้งอยู่ในคิวสำหรับการเข้ารหัสด้วย ฉันใช้การveryslowตั้งค่าล่วงหน้าด้วยx265ดังนั้นวิดีโอหนึ่งชั่วโมงอาจใช้เวลานานถึง 20 ชั่วโมงหรือมากกว่าในการเข้ารหัส เนื่องจากคอมพิวเตอร์ของฉันทำงานทั้งกลางวันและกลางคืนฉันสงสัยว่าffmpegจะมีวิธีหยุดและเริ่มการเข้ารหัสต่อหรือไม่ ฉันใช้Terminalสำหรับ OS X ถ้าเป็นเช่นนั้นฉันสามารถทำการเข้ารหัสต่อได้แม้หลังจากปิด Terminal และทำการรีบูตเครื่องคอมพิวเตอร์หรือไม่ ฉันคิดว่าเทอร์มินัลเซสชันจะถูกกู้คืนเมื่อคุณเข้าสู่ระบบอีกครั้งใน OS X อย่างน้อยก็เป็นประวัติเทอร์มินัล
14 ffmpeg  osx 

2
วิธีใช้ ffprobe เพื่อรับข้อมูลบางอย่างเกี่ยวกับไฟล์ mp4 / h.264
ฉันเป็นนักพัฒนา PHP ต่ำที่ได้รับมอบหมายให้ดึงข้อมูลพื้นฐานเกี่ยวกับไฟล์วิดีโอกว่าพันไฟล์ ผมเคยมีโชคบางอย่างโดยใช้ ffmpeg สกัดvideo bitrate, video width, video height, durationและaspect ratioจากพวกเขา แต่มีอัตราส่วนของข้อผิดพลาดประมาณ 5% นี้ยังคงทิ้งฉันกับจำนวนมหาศาลของไฟล์ที่ผมไม่ทราบวิธีการจัดการกับ วิดีโอเล่นได้ แต่ข้อมูลจำนวนมหาศาลที่ ffmpeg ส่งกลับมาทำให้ฉันงงงันกับวิธีการแยกวิเคราะห์ XML ที่คืนกลับมาเพื่อค้นหาสิ่งที่ฉันต้องการด้วยเงื่อนไขทั้งหมดที่ฉันต้องเผชิญ (ไฟล์ดังกล่าวเป็นคอลเลกชันจาก 15 ปีที่ผ่านมาหรือบางส่วนมีการเข้ารหัสใหม่บางส่วนถูกแปลงเมื่อหลายปีก่อน) ฉันพบว่าการใช้ต่อไปนี้ffprobeเพื่อรับช่วงเวลาและหวังว่าคนที่นี่ที่เข้าใจความซับซ้อนของการใช้ ffmpeg & ffprobe จะใจดีพอที่จะช่วยฉันในการค้นหาค่าอื่น ๆ ที่ฉันต้องการในวิธีที่ตรงไปตรงมามากกว่า รหัสบ้าฉันพบว่าตัวเองกำลังจะปีนขึ้นไปบนผลลัพธ์ที่สมบูรณ์ของ ffmpeg ffprobe -i "video.mp4" -show_entries format=duration -v quiet -of csv="p=0" ขอบคุณมากล่วงหน้า ชี้แจง: ฉันควรเพิ่มที่ด้านล่าง cmd ฉันสามารถ "ดู" สิ่งที่ฉันต้องการ …
13 ffmpeg 

1
ffmpeg: แท็ก h.264 อย่างชัดเจนว่าเป็น bt.601 แทนที่จะปล่อยทิ้งไว้โดยไม่ระบุหรือไม่
ฉันต้องการติดแท็กวิดีโอเป็น bt.601 อย่างชัดเจนมากกว่า "ไม่ได้ระบุ" ฉันรู้ว่าผู้เล่นมักจะเลือก bt.601 เป็นค่าเริ่มต้นสำหรับวิดีโอที่มีความกว้างน้อยกว่า 1280 พิกเซล แต่ฉันต้องการทำให้ชัดเจนว่า bt.601 เป็นเมทริกซ์สีที่ถูกต้องสำหรับวิดีโอ จุดเกาะติดคือไม่มีbt601ตัวเลือกสำหรับ ffmpeg หรือ libx264 เพียง bt709 และอื่น ๆ ฉันมีวิดีโอบางส่วนที่ลดขนาดจาก HD และยังคงอยู่ในราคา 709 แต่ไม่ได้ติดแท็กอย่างถูกต้อง ดังนั้นเมื่อผมดูวิดีโอบางครั้งผมต้องด้วยตนเองสลับผู้เล่นของฉันไป bt.709 การติดแท็กอย่างชัดเจนว่า bt.601 จะสื่อสารกับผู้ชมในอนาคต (เช่นตัวเอง) ว่ามันเป็นแน่นอน bt.601 และไม่ผิดพลาดแท็ก bt.709 mediainfoวิดีโอเมื่อฉันมองไปที่มันมี กรณีการใช้งานอื่นสำหรับกรณีนี้คือหากคุณเพิ่มสเกลวิดีโอ bt.601 เป็น 1280 หรือสูงกว่าโดยไม่ทำการแปลง colormatrix (โดยใช้-vf colormatrix) ผู้เล่นจะสันนิษฐานว่าไม่ถูกต้อง bt.709 หากคุณปล่อยให้ข้อมูลสีไม่ได้ระบุ colormatrixฟิลเตอร์วิดีโอของ FFMpeg ไม่รองรับbt601เมทริกซ์สีอินพุตหรือเอาต์พุต …

1
เป็นไปได้หรือไม่ที่จะเพิ่มความเร็ววิดีโอด้วยเบรกมือ?
เป็นไปได้หรือไม่ที่จะเพิ่มความเร็ววิดีโอด้วยเบรกมือ? ฉันกำลังมองหาซอฟต์แวร์อย่างเบรกมือที่จะแปลงวิดีโอเพื่อการเล่นที่เร็วขึ้น ควรเพิ่มความเร็ววิดีโอสูงสุด 30x เป็นไปได้ไหมที่เบรกมือหรือมีเครื่องมือที่คล้ายกัน?
12 video  ffmpeg  playback 

1
วิธีการยกเลิกการเชื่อมต่อกับ ffmpeg?
ฉันมีไฟล์ VOB ดังต่อไปนี้: → ffmpeg -i input.vobเอาท์พุท: ffmpeg version N-77455-g4707497 Copyright (c) 2000-2015 the FFmpeg developers built with gcc 4.8 (Ubuntu 4.8.4-2ubuntu1~14.04) configuration: --extra-libs=-ldl --prefix=/opt/ffmpeg --mandir=/usr/share/man --enable-avresample --disable-debug --enable-nonfree --enable-gpl --enable-version3 --enable-libopencore-amrnb --enable-libopencore-amrwb --disable-decoder=amrnb --disable-decoder=amrwb --enable-libpulse --enable-libdcadec --enable-libfreetype --enable-libx264 --enable-libx265 --enable-libfdk-aac --enable-libvorbis --enable-libmp3lame --enable-libopus --enable-libvpx --enable-libspeex --enable-libass --enable-avisynth --enable-libsoxr --enable-libxvid …
12 ffmpeg  filter 

2
ffmpeg drawtext filter - สร้างพื้นหลังโปร่งใสด้วยข้อความ
ฉันกำลังทำงานกับdrawtextตัวกรอง จนถึงตอนนี้ฉันเพิ่งประสบความสำเร็จกับdrawtextการกำหนดค่าตัวเลือกเพื่อใช้แบบอักษรที่ถูกต้องและวางข้อความไว้กึ่งกลางแนวนอน ฉันdrawtextจะแสดงข้อความบนวิดีโอตามที่แสดงด้านล่างได้อย่างไร ffmpeg ffmpeg -i "/media/test/test.mp4" -vf drawtext="fontfile=/usr/share/fonts/truetype/open-sans/OpenSans-Regular.ttf:text='Title of this Video':x=(w-tw)/2:y=(h-th)/2" /media/test_edited.mp4"
11 video  ffmpeg 

1
เป็นไปได้ใน FFMPEG ที่จะเปลี่ยนขนาดเมื่อเวลาผ่านไป?
ตกลงดังนั้นเมื่อใช้ตัวกรองซ้อนทับเราสามารถเปลี่ยนตำแหน่ง x / y ของวิดีโอเมื่อเวลาผ่านไปโดยใช้ตัวแปร "t" ตัวอย่างเช่นoverlay=x='if(gte(t,2), -w+(t-2)*20, NAN)':y=0สามารถใช้เพื่อเริ่มเลื่อนองค์ประกอบที่ซ้อนทับจากด้านบนซ้ายไปขวาบนหลังจากผ่านไป 2 วินาที สิ่งที่ฉันต้องการจะทำคือการใช้หลักการที่คล้ายกันสำหรับองค์ประกอบการปรับขนาด ฉันต้องการที่จะเปลี่ยนขนาดของวิดีโอเมื่อเวลาผ่านไปโดยใช้การแสดงออก (เช่นscale=w=iw*t, หรือบางสิ่งบางอย่างในบรรทัดนั้น) เป็นไปได้ไหม เมื่อฉันเรียกใช้นิพจน์นั้นผ่าน -filter_complex ฉันจะได้รับ ข้อผิดพลาดเมื่อประเมินนิพจน์ 'iw * t' บางทีการแสดงออกสำหรับ out_w: 'iw * t' หรือสำหรับ out_h: '- 1' เป็นการอ้างอิงตนเอง ฉันรู้สึกว่ามีโอกาสที่เป็นธรรมฉันจะต้องแก้ไข FFMpeg หากฉันต้องการใช้ฟังก์ชันนี้ แต่ฉันคิดว่าฉันจะถามก่อนเพื่อดูว่าใครจะรู้เกี่ยวกับสิ่งนี้หรือไม่! ไม่มีใครรู้ว่างานดังกล่าวจะสำเร็จได้อย่างไร ขอบคุณสำหรับความช่วยเหลือ!

1
การใช้ h264 ในโหมด loseless จะให้ผลลัพธ์ที่ไม่คาดคิดเล็ก ๆ
ฉันอยากรู้เกี่ยวกับความสามารถในการจับภาพหน้าจอ ffmpeg และเริ่มยุ่งไปกับการทดสอบการจับภาพเรียลไทม์อย่างง่ายใน h264 ffmpeg -f dshow -i video="screen-capture-recorder" -video_size 1920x1080 -framerate 30 -c:v libx264 -crf 0 -preset ultrafast capture.mkv ตามสิ่งที่กล่าวในเอกสาร ffmpeg h264 ด้วย-qp 0หรือ-crf 0ตัวเลือก libx264 ควรทำงานในโหมด lossless คุณสามารถใช้ -qp 0 หรือ -crf 0 เพื่อเข้ารหัสเอาต์พุตแบบไม่สูญเสียข้อมูล แนะนำให้ใช้ -qp มากกว่า -crf สำหรับ lossless เนื่องจาก 8-bit และ 10-bit x264 ใช้ค่า -crf ที่แตกต่างกันสำหรับ …

3
ฟอร์แมต OGV เล่นอย่างถูกต้องในคอมพิวเตอร์ของฉัน แต่การแปลงรหัสลดลง (ซ้ำกัน) เฟรม
ฉันได้สร้างชุด screencasts โดยใช้ recordmydesktop บน Ubuntu 12.10 เอาต์พุตเป็นไฟล์ ogv เมื่อฉันดูไฟล์ ogv โดยใช้โปรแกรมเล่นภาพยนตร์เริ่มต้น (โทเท็ม) มันดูดี - เสียงและวิดีโอกำลังซิงค์ เมื่อมีการแปลงรหัส (โดยฉันหรือ youtube) เสียงและวิดีโอจะไม่ซิงค์กัน ดูเหมือนว่าฉันจะข้ามผ่านสไลด์หนึ่งหรือสองขณะที่เล่าเรื่อง ปรับปรุง ฉันสงสัยว่าปัญหานั้นมีลักษณะที่เหมาะสมกว่าการวางเฟรมซ้ำในระหว่างการแปลงรหัส การแปลงวิดีโอที่เมาส์เคลื่อนไหวดูเหมือนว่าจะทำงานได้ตามปกติ แต่เมื่อฉันแค่พูดระหว่างสไลด์เฟรมที่ซ้ำกันเหล่านั้นจะลดลง ฉันเห็นสิ่งนี้ แต่มันไม่ใช่สถานการณ์ของฉัน (พยายามที่จะไปจาก ogv -> อะไรก็ได้) /superuser/436187/ffmpeg-convert-video-w-dropped-frames-out-of-sync ไฟล์ AVI ดูเหมือนจะแปลถูกต้อง! ฉันคิดว่านี่จะเป็นคำใบ้ที่ยิ่งใหญ่สำหรับใครบางคน ฉันยังต้องการติดตามปัญหาพื้นฐาน ฉันกำลังทดสอบการแปลงวิดีโอก่อนหน้าของฉันเป็น AVI แต่ใช้เวลาสักครู่เนื่องจากฉันต้องตรวจสอบการเปลี่ยนแปลงแต่ละครั้ง ตัวอย่าง นี่คือไฟล์ OGV ดั้งเดิมจาก gtk-recordmydesktop: http://dl.dropbox.com/u/64693533/sync_test/sync_test1.ogv วิดีโอเริ่มต้นด้วยการนำเสนอภาพนิ่งเป็นเวลา 10 วินาทีจากนั้นเลื่อนไปอีก 5 …

1
วิธี จำกัด ขนาดไฟล์ด้วย ffmpeg
ฉันต้องการที่จะเข้ารหัสวิดีโอที่มีความยาว 60 วินาทีเพื่อเป้าหมายสูงสุดขนาด 10 MB มีสองวิธีที่ฉันรู้ มีคำอธิบายหนึ่งใน FFMPEG-Wiki และอีกอันที่ฉันพบในเอกสาร น่าเสียดายที่ฉันไม่พบคำอธิบายว่าควรใช้วิธีใดเมื่อใด มีวิธีใดที่แนะนำหรือไม่ หากไม่เป็นเช่นนั้น Upside / downside ของแต่ละวิธีคืออะไร 1) คำนวณและตั้งค่าบิตเรตให้ตรงกับความยาวของวิดีโอตามที่อธิบายไว้ในffmpeg-wiki (10 MB * 8192 [แปลงเมกะไบต์เป็นกิโลบิต]) / 60 วินาที = ~ 1365 kbits / s บิตเรตรวม 1365k - 128k (บิตเรตเสียงที่ต้องการ) = บิตวิดีโอ 1237k ffmpeg -y -i input -c:v copy -preset medium -b:v 1237k …
10 ffmpeg 

1
การคัดลอกวิดีโอ h.264 จาก TS ไปเป็น MP4 จะเปลี่ยนอัตราและเวลาของเฟรม
ฉันมีไฟล์ MPEG-TS ขนาดใหญ่ที่ฉันแปลงเป็น MP4 โดยใช้คำสั่งด้านล่าง หากฉันค้นหาวิดีโอพร้อมกันทั้งไฟล์ MP4 และไฟล์ TS ในเวลาเดียวกัน MP4 จะเป็นเฟรมที่อยู่ด้านหลังไฟล์ TS สิ่งนี้จะยิ่งแย่ลงไปอีกในวิดีโอที่ฉันค้นหา c:\>ffmpeg -y -r 30 -i full-ts.ts -c:v copy -r 30 -an full.mp4 ffmpeg version N-69040-gb23a866 Copyright (c) 2000-2015 the FFmpeg developers built on Jan 12 2015 22:02:37 with gcc 4.9.2 (GCC) configuration: --enable-gpl --enable-version3 --disable-w32threads --enable-avisynth …
10 ffmpeg  mp4  h.264 

1
คล้ายกับการปรับปรุงความสว่างระดับ "การปรับระดับ" ด้วย ffmpeg
ฉันกำลังเขียนวิดีโอจากชุดรูปภาพขนาด 16 บิต ภาพมืดมากและต้องมีความสว่าง ขณะนี้ฉันกำลังใช้-vf "mp=eq2=1.0:1.0:0.3:1.0:1.0:1.0:1.0:1.0" ตัวกรองเพื่อให้ภาพที่สว่างเป็นกล่าวที่นี่แต่พวกเขาจะกลายเป็นเกินไป "จาง" ฉันใช้ rescale ฮิสโตแกรมของพวกเขาด้วยการดำเนินการ "การปรับระดับ" ในโปรแกรมแก้ไขภาพเพื่อให้สว่างขึ้น แต่ตอนนี้ฉันต้องทำวิดีโอไม่ใช่ไฟล์ภาพเดียว นอกจากนี้วิธีการที่นำมาใช้ในการดำเนินการกับภาพนั้นคือการใช้กับแถบสีแต่ละแถบแยกกันเพราะมันมีคุณสมบัติความสว่างที่ต่างกัน ฉันสามารถทำสิ่งที่คล้ายกับ ffmpeg ได้หรือไม่

3
การเข้ารหัส 4: 2: 2 ใน 10 บิตด้วย libx264
ฉันเชื่อว่า libx264 ตอนนี้สามารถทำการเข้ารหัส 10: 4: 2: 2 ได้ แต่ฉันไม่สามารถใช้งานได้ ฉันใช้ ffmpeg (ข้อมูลด้านล่าง) และฉันก็ลองใช้ x264 encoder โดยตรง ฉันได้พยายาม ffmpeg.exe -i input.mov -c:v libx264 -profile:v high422 -crf 20 -pix_fmt yuv422p output.mp4 และนั่นให้ผลลัพธ์ที่ดี 4: 2: 2 แต่มีความลึกเพียง 8 บิตเท่านั้น [libx264 @ 00000000055a9de0] profile High 4:2:2, level 4.0, 4:2:2 8-bit และฉันได้ลองแล้ว ffmpeg.exe -i input.mov …
10 ffmpeg  h.264  libx264  x264 

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