Câu trả lời:
Có thể sử dụng transpose
bộ lọc video. Bạn không thể xoay 180 độ, nhưng bạn có thể xoay 90 độ và xâu chuỗi bộ lọc.
avconv -i video.mp4 -vf transpose=1,transpose=1 out.mkv
Xem transpose
trong avconv
trang chủ:
http://manpages.ubfox.com/manpages/quantal/en/man1/avconv.1.html
Có, nhưng bạn sẽ cần thêm một số tùy chọn bổ sung vào lệnh của mình để nó hoạt động chính xác. Transpose và vflip / hflip nên thực hiện thủ thuật, nhưng nếu bạn không nói với avconv chi tiết hơn về những gì bạn muốn, bạn có thể sẽ nhận được đầu ra chất lượng rất thấp:
avconv -i original.mp4 -vf "hflip,vflip" -codec:v libx264 -preset slow -crf 20 -codec:a copy flipped.mp4
Chú ý -crf
tùy chọn. Điều đó đặt chất lượng đầu ra. Nó đi từ 0 (lossless) trở lên theo logarit. Bạn có thể muốn có một giá trị từ 19 đến 25 trong hầu hết các trường hợp. -preset
đặt tốc độ mã hóa, "chậm", "trung bình" hoặc "nhanh". Chậm sẽ giúp bạn có kích thước tệp nhỏ hơn với sự đánh đổi rõ ràng. Bạn nên điều chỉnh -codec:v
để phù hợp với bản gốc. Nếu bạn không đặt các tùy chọn này, bạn sẽ nhận được các giá trị mặc định, không hoạt động tốt khi lật video iphone.
Unrecognized option 'preset' Failed to set value 'slow' for option 'preset'
Đó là những gì tôi có
Unknown encoder 'libx264'
apt-get install libavcodec-extra-53
đã giải quyết nó
Phương pháp bổ sung với avconv là sử dụng các bộ lọc vflip và hflip. Nên chạy nhanh hơn và có thể chất lượng tốt hơn:
avconv -i video.mp4 -vf vflip,hflip out.mp4
Tôi đã làm điều này:
avconv -i invertedOne.mp4 -c:a copy -vf "hflip,vflip" rightOne.mp4
Video Full HD, kết quả tuyệt vời với chất lượng giảm không thể nhận thấy
Đối với avconv hoặc ffmpeg Dưới 14.04 trở lên
Đã có một số thay đổi đối với tài liệu libav kể từ khi @phoibos trả lời chất lượng cho câu hỏi này. Bạn có thể xoay video 180 độ để tránh lật hoàn toàn bằng cách nối 2 lệnh 90 độ với nhau (cách nhau bằng dấu phẩy) Tôi đã thực hiện điều này bằng lệnh
avconv -i inputfile -vf transpose = clock, transpose = clock outputfile
cho quay theo chiều kim đồng hồ.
trong ffmpeg cú pháp là như nhau.
ffmpeg -i inputfile -vf transpose = clock, transpose = clock outputfile
trong đó inputfile là tệp video đầu vào được hỗ trợ của bạn và outputfile là tệp đầu ra mong muốn của bạn.
Đối với vòng quay ngược chiều kim đồng hồ thay thế đồng hồ với cclock
Nguồn:
https://libav.org/avconv.html#transpose
Thử nghiệm trên Ubuntu 14.04.5 và 16.04 LTS
-c:a
bản sao vào lệnh (ngay trước tên tệp đầu ra). Tôi cũng thấy rằng phiên bản thứ hai có chất lượng không thể phân biệt, nhưng nhanh hơn khoảng 50% so với phiên bản dịch xích.