cuốn sách gpt4 ai đã làm

Ví dụ dòng lệnh FFmpeg

In lại Tác giả: Sahara Thời gian cập nhật: 27-12-2024 16:47:42 59 4
mua khóa gpt4 Nike

1 Trích xuất luồng video/luồng âm thanh

// Tách luồng video và luồng âm thanh ffmpeg -i input_file -vcodec copy -an out_file_video ffmpeg -i input_file -acodec copy -vn out_file_audio

2 Đóng gói truyền tải video

ffmpeg –i test.mp4 –vcodec sao chép –acodec sao chép –f m4v test.m4v ffmpeg –i test.avi –vcodec sao chép –acodec sao chép –f m4v test.m4v

3 Chuyển mã video

ffmpeg –i test.mp4 –vcodec h264 –s 352*278 –an –f m4v test.264 ffmpeg –i test.mp4 –vcodec h264 –bf 0 –g 25 –s 352*278 –an –f m4v test.264 ffmpeg –i test.avi -vcodec mpeg4 –vtag xvid –qsame test_xvid.avi

Mô tả một số tùy chọn: -bf, số khung B; -g, kiểm soát kích thước gop; -s, độ phân giải.

4 bao bì video

ffmpeg –i video_file –i audio_file –vcodec sao chép –acodec sao chép đầu ra_file

5 cắt video

ffmpeg -ss 0:1:30 -t 0:0:20 -i input.avi -vcodec copy -acodec copy out.avi

Mô tả một số tùy chọn: -r, tần suất trích xuất hình ảnh; -ss, thời gian bắt đầu; -t thời lượng.

6 ảnh chụp màn hình video

Đầu tiên hãy chạy lệnh sau để kiểm tra nó:

ffmpeg -ss 00:00:08 -i test.mp4 -f image2 test.jpg

Người ta thấy rằng ảnh chụp màn hình đã được tạo bình thường, nhưng dòng lệnh có thông báo lỗi sau: [image2 @ 0x1370f80] Không thể lấy tên tệp khung số 2 từ mẫu 'test.jpg' (đặt cập nhật hoặc sử dụng mẫu như % 03d trong mẫu tên tệp) av_interleaved_write_frame (): Đối số không hợp lệ.

Tham khảo "Giải pháp cho một số lỗi và thông báo ffmpeg" để biết nguyên nhân như sau:

Lỗi này thường xảy ra do tên đầu ra bất thường hoặc thiếu một số tùy chọn: Nếu xuất một hình ảnh duy nhất, bạn nên thêm tùy chọn đầu ra "-frames:v 1"; Nếu xuất ra một loạt hình ảnh, bạn nên sử dụng tên chính xác; biểu mẫu, chẳng hạn như tệp đầu ra. Khi được đặt tên là out_%03d.png, out_001.png, out_002.png, out_003.png, v.v. sẽ được tạo theo trình tự; Nếu xuất ra một hình ảnh duy nhất, luôn ghi đè hình ảnh cũ bằng hình ảnh mới nhất thì nên thêm tùy chọn "-update 1".

Dựa trên những gợi ý trên, lệnh sửa đổi như sau:

  1. Trích xuất một hình ảnh duy nhất
    Trích xuất một khung hình ở giây thứ 8:
ffmpeg -ss 00:00:08 -i ring.mp4 -frames:v 1 -f image2 ring.jpg

Mô tả từng tham số như sau: "-ss 00:00:08": Tùy chọn đầu vào, chặn hình ảnh ở giây thứ 8 trong tệp đầu vào "-frames:v 1": Tùy chọn đầu ra, ghi khung hình video vào đầu ra "-f image2": Tùy chọn đầu ra, chỉ định định dạng đầu ra là image2.

Lưu ý rằng "-ss 00:00:08" phải được đặt trước "-i ring.mp4" làm tùy chọn đầu vào để nhanh chóng có được ảnh chụp màn hình video. Nếu nó được đặt sau "-i ring.mp4", nó sẽ trở thành tùy chọn đầu ra. Khi thực hiện tùy chọn đầu ra, ffmpeg sẽ tiếp tục đọc từ tệp đầu vào cho đến khi đạt đến thời điểm đã chỉ định trước khi có thể chụp được ảnh chụp màn hình. xảy ra ở cuối tệp, bạn phải đợi cho đến khi toàn bộ video được phát trước khi có thể lấy được ảnh chụp màn hình video.

  1. Trích xuất một loạt hình ảnh
    Trích xuất một khung hình cứ sau 1 giây (1Hz):
ffmpeg -i ring.mp4 -r 1 -f image2 ring-%3d.jpg

"-r 1": Tùy chọn đầu ra, đặt tốc độ khung hình, đáp ứng tốc độ khung hình này bằng cách lặp lại (lớn hơn tốc độ khung hình của tệp đầu vào) hoặc loại bỏ các khung hình video (nhỏ hơn tốc độ khung hình của tệp đầu vào).

Từ video dài 10 giây bắt đầu từ giây thứ 8, cứ sau 1 giây lại trích xuất một hình ảnh (1Hz):

ffmpeg -ss 00:00:08 -t 00:00:10 -i ring.mp4 -r 1 -f image2 ring-%03d.jpg

Từ video dài 10 giây bắt đầu từ giây thứ 8, trích xuất 3 khung hình đầu tiên:

ffmpeg -ss 00:00:08 -t 00:00:10 -i ring.mp4 -frames:v 3 -f image2 ring-%03d.jpg
  1. Trích xuất hình ảnh từ khung
    ffmpeg -i video.avi -frames:v 1 -vf field=top top%d.png

7 quay video

Ghi lại các luồng mạng.

ffmpeg –i rtsp://192.168.2.104:1235/test –vcodec copy out.avi

Quay video biểu đồ kiểm tra (testsrc), dài 12 giây.

ffmpeg -ss 00:00:00 -t 00:00:12 -f lavfi -i testrc testrc.flv

8 Lưu tập tin YUV

ffmpeg -i Tiger.m2ts -an -c:v rawvideo -pixel_format yuv422p -ss 00:00:08 -frames:v 5 Tiger_422_8b.yuv ffmpeg -i Tiger.m2ts -an -c:v rawvideo -pixel_format yuv422p10 -ss 00 :00:08 -frames:v 5 Tiger_422_10b.yuv ffmpeg -i fifa.ts -an -c:v rawvideo -vf format=yuv422p -ss 00:01:00 -frames:v 5 fifa_3840x2160_422_8b.yuv ffmpeg -f lavfi -i nullsrc=s=3840x2160:r=60,lutrgb=0:255:0 -frames:v 5 -vf format=yuv422p -c:v rawvideo green_3840x2160_422p_8b.yuv

Cuối cùng, bài viết về các ví dụ dòng lệnh FFmpeg này kết thúc tại đây. Nếu bạn muốn biết thêm về các ví dụ dòng lệnh FFmpeg, vui lòng tìm kiếm các bài viết về CFSDN hoặc tiếp tục duyệt các bài viết liên quan. Tôi hy vọng bạn sẽ ủng hộ blog của tôi trong tương lai! .

59 4 0
Chứng chỉ ICP Bắc Kinh số 000000
Hợp tác quảng cáo: 1813099741@qq.com 6ren.com
Xem sitemap của VNExpress