Xóa các thanh đen trên cùng và dưới cùng của video .mp4 bằng ffmpeg


22

Tôi mới sử dụng ffmpeg và tôi đã nghe nói rằng nó có bộ lọc cho màu đen. Tôi muốn xóa các thanh màu đen ở trên cùng và dưới cùng của video để video sẽ được cắt sang video còn lại mà không có thanh màu đen. Cảm ơn:)

ffmpeg  mp4 

Các cửa sổ? Cài đặt WinFF. Nó sẽ cho phép bạn nhập các giá trị bạn muốn cắt qua GUI ...
Kinnectus

Câu trả lời:


38

Bộ lọc cropdetect và crop crop

1. Nhận thông số cây trồng

cropdetect có thể được sử dụng để cung cấp các tham số cho bộ lọc crop . Trong ví dụ này, 90 giây đầu tiên được bỏ qua và 10 khung hình được xử lý:

$ ffmpeg -ss 90 -i input.mp4 -vframes 10 -vf cropdetect -f null -
...
[Parsed_cropdetect_0 @ 0x220cdc0] x1:0 x2:1279 y1:0 y2:719 w:1280 h:720 x:0 y:0 pts:215 t:0.215000 crop=1280:720:0:0
[Parsed_cropdetect_0 @ 0x220cdc0] x1:0 x2:1279 y1:0 y2:719 w:1280 h:720 x:0 y:0 pts:257 t:0.257000 crop=1280:720:0:0
[Parsed_cropdetect_0 @ 0x220cdc0] x1:0 x2:1279 y1:0 y2:719 w:1280 h:720 x:0 y:0 pts:299 t:0.299000 crop=1280:720:0:0

Vì vậy, theo cropdetect chúng ta có thể sử dụng crop=1280:720:0:0.

2. Xem trước với ffplay

$ ffplay -vf crop=1280:720:0:0 input.mp4

3. Mã hóa lại bằng bộ lọc crop

$ ffmpeg -i input.mp4 -vf crop=1280:720:0:0 -c:a copy output.mp4

Trong ví dụ này, âm thanh chỉ được sao chép luồng (được trộn lại) vì có lẽ bạn không cần phải mã hóa lại.

Cũng thấy


Cắt trong khi phát lại

Như bạn đã thấy ở trên với ffplayví dụ, một số trình phát cho phép bạn cắt khi phát lại. Điều này có lợi thế của:

  • Sự hài lòng ngay lập tức; không cần mã hóa lại
  • Chất lượng được bảo tồn

Xin lỗi nhưng tôi chưa quen với ffmpeg và tôi không hiểu phần nào để xóa các thanh màu đen ở trên và dưới và thay đổi kích thước video thành kích thước còn lại mà không có thanh màu đen.

1
Có cách nào tự động để loại bỏ các thanh màu đen hay tôi luôn phải sử dụng các giá trị cắt thủ công?

1
@rexhin Khi bạn chạy cropdetect, nó sẽ kết xuất một loạt thông tin trong đầu ra giao diện điều khiển như hình trên. Nó thực sự cung cấp cho bạn các tham số crop thực tế mà bạn cần sử dụng. Bạn có thể tự động hóa nó thông qua kịch bản.
llogan

Wow tuyệt vời nó làm việc. Nhưng chúng ta đã đặt bộ lọc cho màu đen ở đâu? Ngoài ra, hai tham số khác trong crop = 1280: 720: 0: 24

Nó đã loại bỏ thanh màu đen trên cùng nhưng đã để lại một thanh màu đen nhỏ ở phía dưới. Tại sao điều này xảy ra?

1

Câu trả lời của @LordNeckbeard là tuyệt vời. Tôi muốn giới thiệu nó trong hầu hết các trường hợp.

ffplay hoạt động rất tốt và được xem trước tốt, nhưng phiên bản ffmpeg tôi đang sử dụng vật lộn với âm thanh từ video này tôi đang sử dụng.

st:1 error, non monotone timestamps 

Cuối cùng tôi đã gặp rắc rối với câu trả lời được đề xuất cả khi -c:akhông được hỗ trợ với phiên bản tôi đang chạy và có vấn đề với chuyển đổi bitrate với video tôi đang sử dụng.

Lưu ý: -c:acó thể được thay thế bằng:-acodec

Giải pháp miễn phí thay thế đơn giản nhất mà tôi tìm thấy là sử dụng phanh tay.

Đó là autocrop loại bỏ các thanh màu đen mà không gặp nhiều rắc rối.

Mong rằng sẽ giúp.

Khi sử dụng trang web của chúng tôi, bạn xác nhận rằng bạn đã đọc và hiểu Chính sách cookieChính sách bảo mật của chúng tôi.
Licensed under cc by-sa 3.0 with attribution required.