คำถามติดแท็ก h.264

20
วิธีการต่อไฟล์ MP4 สองไฟล์เข้าด้วยกันโดยใช้ FFmpeg
ฉันพยายามเชื่อมไฟล์ mp4 สองไฟล์เข้าด้วยกันโดยใช้ ffmpeg ฉันต้องการสิ่งนี้เพื่อเป็นกระบวนการอัตโนมัติดังนั้นทำไมฉันเลือก ffmpeg ฉันกำลังแปลงทั้งสองไฟล์เป็นไฟล์. ts จากนั้นทำการต่อไฟล์เข้าด้วยกันแล้วลองเข้ารหัสไฟล์. ts ที่ต่อกัน ไฟล์จะถูกเข้ารหัส h264 และ aac และฉันหวังว่าจะรักษาคุณภาพไว้เหมือนเดิมหรือใกล้เคียงกับของจริงที่สุด ffmpeg -i part1.mp4 -vcodec copy -vbsf h264_mp4toannexb -acodec copy part1.ts ffmpeg -i part2.mp4 -vcodec copy -vbsf h264_mp4toannexb -acodec copy part2.ts cat part1.ts part2.ts > parts.ts ffmpeg -y -i parts.ts -acodec copy -ar 44100 -ab …
443 ffmpeg  h.264  mp4 

7
FFMPEG (libx264)“ ความสูงไม่หารด้วย 2”
ฉันพยายามเข้ารหัสวิดีโอ. mp4 จากชุดเฟรมโดยใช้ FFMPEG โดยใช้ตัวแปลงสัญญาณ libx264 นี่คือคำสั่งที่ฉันใช้: /usr/local/bin/ffmpeg -r 24 -i frame_%05d.jpg -vcodec libx264 -y -an video.mp4 บางครั้งฉันได้รับข้อผิดพลาดต่อไปนี้: [libx264 @ 0xa3b85a0] height not divisible by 2 (520x369) หลังจากค้นหาไปเล็กน้อยดูเหมือนว่าปัญหามีบางอย่างเกี่ยวกับอัลกอริธึมการปรับสเกลและสามารถแก้ไขได้โดยการเพิ่มอาร์กิวเมนต์ -vf อย่างไรก็ตามในกรณีของฉันฉันไม่ต้องการปรับสเกลใด ๆ โดยหลักการแล้วฉันต้องการให้ขนาดเหมือนกันกับเฟรมทุกประการ คำแนะนำใด ๆ? มีอัตราส่วนภาพที่ h264 บังคับใช้บ้างไหม?
188 ffmpeg  h.264  libx264 

2
ฮาร์ดแวร์กราฟิก Intel H264 MFT การประมวลผลการเรียกใช้ล้มเหลวหลังจากป้อนตัวอย่างอินพุตไม่กี่ตัวซึ่งทำงานได้ดีกับฮาร์ดแวร์ Nvidia MFT
ฉันใช้เดสก์ท็อปโดยใช้ DesktopDuplication API และแปลงตัวอย่างจาก RGBA เป็น NV12 ใน GPU และให้อาหารแบบเดียวกันกับฮาร์ดแวร์ MediaFoundation H264 MFT ใช้งานได้ดีกับกราฟิก Nvidia และตัวเข้ารหัสซอฟต์แวร์ แต่ล้มเหลวเมื่อมีเฉพาะฮาร์ดแวร์กราฟิก Intel MFT เท่านั้น รหัสทำงานได้ดีบนเครื่องกราฟิก Intel เดียวกันหากฉันเลือกใช้ซอฟต์แวร์ MFT ฉันยังมั่นใจได้ว่าการเข้ารหัสจะทำจริงในฮาร์ดแวร์บนเครื่องกราฟิก Nvidia ในกราฟิก Intel, MFT ผลตอบแทน MEError ( ข้อผิดพลาด "ไม่ได้ระบุ" ) ซึ่งเกิดขึ้นเพียงหลังจากที่ตัวอย่างแรกจะถูกป้อนและโทรตามมา ProcessInput (เมื่อกำเนิดเหตุการณ์ทริกเกอร์ METransformNeedInput) ผลตอบแทน"ผู้ถูกเรียกในปัจจุบันคือการไม่ยอมรับการป้อนข้อมูลต่อไป" เป็นเรื่องยากที่ MFT จะใช้ตัวอย่างเพิ่มเติมไม่กี่ตัวอย่างก่อนส่งคืนข้อผิดพลาดเหล่านี้ พฤติกรรมนี้สับสนฉันให้อาหารตัวอย่างเฉพาะเมื่อตัวสร้างเหตุการณ์ทริกเกอร์ METransformNeedInput แบบอะซิงโครนัสผ่าน IMFAsyncCallback และตรวจสอบอย่างถูกต้องว่า METransformHaveOutput ถูกทริกเกอร์ทันทีที่ตัวอย่างถูกป้อน …

3
รับหน้าจอสีเขียวใน ffplay: สตรีมเดสก์ท็อป (พื้นผิว DirectX) เป็นวิดีโอ H264 ผ่านสตรีม RTP โดยใช้ Live555
ฉันกำลังพยายามสตรีมเดสก์ท็อป (พื้นผิว DirectX ในรูปแบบ NV12) เป็นวิดีโอ H264 ผ่านสตรีม RTP โดยใช้ตัวเข้ารหัสฮาร์ดแวร์ของ Live555 & Windows Media Foundation บน Windows10 และคาดว่าจะแสดงผลโดย ffmpeg (ffmpeg 4.2) แต่จะได้รับหน้าจอสีเขียวเหมือนด้านล่าง ฉันเรียกMFWebCamToRTP mediafoundation- ตัวอย่าง & การเข้ารหัสพื้นผิว DirectX โดยใช้ฮาร์ดแวร์ MFTสำหรับการใช้ FrameSource ของ live555 และเปลี่ยนแหล่งอินพุตให้เป็นพื้นผิว DirectX แทน webCam นี่คือข้อความที่ตัดตอนมาจากการใช้งานของฉันสำหรับการโทรกลับ doGetNextFrame ของ Live555 เพื่อป้อนตัวอย่างอินพุตจากพื้นผิว directX: virtual void doGetNextFrame() { if (!_isInitialised) { …
โดยการใช้ไซต์ของเรา หมายความว่าคุณได้อ่านและทำความเข้าใจนโยบายคุกกี้และนโยบายความเป็นส่วนตัวของเราแล้ว
Licensed under cc by-sa 3.0 with attribution required.