Khử liên kết đôi với chuyển động đầy đủ - ffmpeg + yadif 50i-50p 60i-60p


6

Tôi đang cố gắng tìm ra cách sử dụng yadif/ yadif-2xvới ffmpeg để chuyển đổi tài liệu nguồn 50i thành đầu ra 50p để duy trì chuyển động của tất cả năm mươi trường mỗi giây. Ngay bây giờ, tôi đang sử dụng lệnh sau, tạo ra một phiên bản nhân đôi khung hình, về cơ bản giống như đầu ra 25p.

ffmpeg -i input.m2t -f:v yadif=1 -c:v prores output.mov

Sử dụng yadif=0làm cho một tập tin 25p bị xen kẽ. Việc sử dụng yadif=1làm cho một tệp 50p được xen kẽ với các khung hình gấp đôi 25p. Tôi cần tạo một tệp được xen kẽ với 50 khung hình duy nhất mỗi giây và tôi khá chắc chắn điều này là có thể. Đó có phải là những gì yadif (2x) phải làm?


1
Vui lòng hiển thị đầu ra giao diện điều khiển ffmpeg hoàn chỉnh của bạn.
llogan


Sau rất nhiều tìm kiếm, tôi có thể đã tìm ra một cách khác để thực hiện chuyển đổi này. Tôi sẽ thử phương pháp này vào ngày mai và báo cáo kết quả. hddv.net/ Đổi
moot

yadif=1hoạt động với tôi: gấp đôi số khung hình và mỗi khung hình khác nhau
mark4o

2
Bạn có chắc chắn rằng đầu vào của bạn được xen kẽ? Bạn có thể sử dụng ffmpeg -i input.m2t -filter:v idet -f null -để phân tích nó cho các khung hình có vẻ là xen kẽ đầu tiên khung hình đầu tiên, khung hình dưới cùng đầu tiên xen kẽ hoặc tiến bộ.
mark4o

Câu trả lời:


2

Hóa ra video tôi đang cố gắng khử hai lần thực sự là 25p được mã hóa thành tệp video 50i để phù hợp với tiêu chuẩn AVCHD cũ hơn. Rõ ràng đây là một thực tế phổ biến cho các máy ảnh tapless từ giữa những năm 2000. Vì vậy, tất nhiên khi tôi cố gắng giải mã lại, tôi chỉ kết thúc với, nhiều nhất là nguồn ban đầu 25 khung hình mỗi giây vì không có chuyển động giữa các trường.

f: v yadif = 1 thực hiện chính xác những gì được mô tả - nó thực hiện các cảnh quay 50i xen kẽ thực sự và biến nó thành đầu ra 50p chất lượng cao đáng kinh ngạc bằng thuật toán bob có trọng số chuyển động, giống như bộ lọc thời gian thực "yadif 2x" trong VLC . Đầu ra là gần gấp đôi độ phân giải dọc hiệu quả so với khử xen kẽ bị loại bỏ khung. Bây giờ nó là một trong những bộ lọc video yêu thích của tôi vì thực tế không có gì khác xuất hiện để cung cấp khả năng này.


1

Tôi đã sử dụng lệnh này:

ffmpeg -i source_50i.MTS -aspect 1920:1080 -vf yadif=1,scale=1920:1080 -c:v libx264 -preset fast -profile:v high -crf 23 -ac 2 -strict experimental -c:a aac -b:a 96k -movflags +faststart -y result_50p.mp4

và nó hoạt động tốt!

Tôi đã không kiểm tra xem phương pháp yadif có tốt hay không có chất lượng tốt, nhưng thực sự được tạo từ 50i MTS đến 50p mp4 từ tệp nguồn của máy quay. Tệp nguồn là 19 MB và kết quả là 21 MB.


Tôi đã sử dụng câu trả lời này thành công để tạo một video trong khoảng thời gian GoPro ở tốc độ 60fps, với hy vọng những người khác thấy nó hữu ích:ffmpeg -i 'G%*.JPG' -r 60 -vf "scale=1920:ih*1920/iw, crop=1920:1080, yadif=1" -c:v libx264 -preset slow -crf 18 -c:a aac -b:a 192k -pix_fmt yuv420p output.mkv
Graham P Heath

0

Xin hãy hiểu-- 50i có nghĩa là 50 trường = 25 khung của 50 trường xen kẽ. Bạn KHÔNG THỂ nhận được 50 khung hình độc đáo. Nếu có thể, thì các khung này sẽ thiếu các dòng thay thế trong khung video. Vậy 25p là 50i đỉnh + 50i đáy kết hợp. Đó là cách nó phải như vậy, và hy vọng sẽ luôn như vậy. Khác kết quả có thể được nhân đôi khung hình (khủng khiếp) như bạn đã có.


1
Cái này sai. Yadif có thể nội suy các dòng bị thiếu và tạo video 50fps thực từ 50i, nếu đây thực sự là video 50i thực (không có trường trùng lặp - tức là 2 trường từ một khung).
Sange Borsch

@SargeBorsch Vui lòng cung cấp câu trả lời- Tôi sẵn sàng xóa của tôi. Cảm ơn vì thông tin. Thật không may, tôi không thể kiểm tra vì tôi không có quyền truy cập vào video xen kẽ nữa.
Rajib

Tôi không có thời gian để tìm kiếm cách (đúng) làm cho nó xảy ra với ffmpeg - nhưng rõ ràng nó có tác dụng trong trình phát VLC (trong khi phát video 60i và bật Yadif x2). trông giống như ffmpeg có một lỗi - nó luôn luôn trùng lặp khung, vì vậy tôi có được một trong hai 120fps hoặc 60fps và trong cả hai trường hợp tôi phải thả mỗi khung thứ 2, đó là loại "hacky" và ffmpeg không có cách nào rõ ràng về thả mỗi khung thứ 2
Sarge Borsch

Nếu bạn quan tâm để chia sẻ một clip ngắn xen kẽ, tôi sẽ cho nó một shot.
Rajib

Hiện tại tôi chỉ có một video như vậy không được phép chia sẻ, nhưng tôi có thể quay một video khác sớm hay muộn (máy ảnh DSLR của tôi có tùy chọn quay trong 60i) và gửi ví dụ về cả video gốc (xen kẽ) và xử lý một video.
Sange Borsch

0

Tôi nghĩ nhiều người không hiểu rằng 29.97 chỉ đề cập đến tần suất ống tia catốt quay trở lại để quét cùng một 'pixel'. Nó đã ở vị trí liền kề (trên hoặc dưới) 'pixel' chỉ 1/60 giây trước đó.

Mỗi lần quét raster là 1/60 giây. Phơi bày. Lần quét tiếp theo là 1/60 tiếp theo. Họ đã không được tổ chức; chúng được gửi ra 60x mỗi giây khi các raster độ phân giải một nửa kéo dài theo chiều dọc để lấp đầy màn hình. Thông qua các lần quét xen kẽ và chẵn xen kẽ, sự xuất hiện của độ phân giải đầy đủ đã đạt được chỉ với một nửa 'băng thông'.

Nó luôn luôn là 60 raster khác nhau mỗi giây, không bao giờ 30.

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.