← Blog

Cách xử lý khi video ghi hình bị đứng hình mà vẫn có tiếng (chuyển VFR sang FPS cố định)

Cách sửa video ghi hình bị đứng hình mà vẫn có tiếng bằng FPS cố định
Photo · Pexels
Tóm tắt chính
  • Hiện tượng tiếng bình thường nhưng chỉ hình bị đứng có nguyên nhân là video được ghi ở tốc độ khung hình biến đổi (VFR).
  • Vì trình chỉnh sửa và một số trình phát kỳ vọng tốc độ khung hình cố định (CFR), nên ở file VFR màn hình bị đứng hoặc lệch sync.
  • Nếu ép tốc độ khung hình cố định ở bước ghi hình và cố định FPS thu thì có thể ngăn trước vấn đề.
  • File đã bị đứng thì có thể cứu được bằng cách mã hóa lại CFR bằng HandBrake...

Nếu bạn phát lại video đã ghi mà tiếng vẫn ra bình thường nhưng hình chỉ bị đứng ở một đoạn nhất định, hoặc càng về sau hình và tiếng càng lệch dần, thì nguyên nhân gần như chỉ một. Đó là vì video được ghi ở tốc độ khung hình biến đổi (VFR, Variable Frame Rate). Cốt lõi của giải pháp là ép tốc độ khung hình cố định (CFR, Constant Frame Rate) và cố định FPS thu về một giá trị. Bài viết này tổng hợp tuần tự cách ngăn ở bước ghi hình và cách cứu file đã bị đứng.

Vì sao có tiếng nhưng chỉ hình bị đứng

Tiếng thường chạy ở tốc độ ổn định. Ngược lại, hình thì số khung hình mỗi giây thay đổi tùy tình trạng máy tính. Kiểu như lúc game nặng lên thì 60fps rớt xuống 54fps rồi lại lên. File có khoảng cách khung hình lồi lõm như thế gọi là tốc độ khung hình biến đổi (VFR).

Trong file ghi hình có ghi dấu thời gian rằng mỗi khung hình nên hiển thị vào lúc nào. File VFR có khoảng cách này không đồng đều, nhưng trình chỉnh sửa hay một số trình phát lại giả định khoảng cách khung hình luôn như nhau rồi mới phát. Vì vậy ở những đoạn trống, nó giữ nguyên khung hình ngay trước đó nên trông như màn hình bị đứng, còn tiếng cứ trôi theo tốc độ của nó nên lệch dần.

Cách kiểm tra: hãy mở video bị đứng trên cả trình phát khác (như VLC). Nếu trên một trình phát thì đứng còn trên trình phát khác lại bình thường, thì khả năng cao file không bị hỏng mà là vấn đề tương thích VFR.

Bước 1: Ép tốc độ khung hình cố định (CFR) trong chương trình ghi hình

Giải pháp chắc chắn nhất không phải là sửa file bị đứng, mà là ghi hình ở tốc độ khung hình cố định ngay từ đầu. Lấy OBS Studio làm ví dụ thì bạn có thể ép tốc độ khung hình cố định trong phần cài đặt.

Màn hình thiết lập FPS và khung hình của OBS Studio
OBS Studio · Wikimedia Commons (GPL, OBS Project)
  • Cố định FPS về giá trị số nguyên (ví dụ: 60) trong Cài đặt > Video của OBS.
  • Đổi chế độ xuất sang Nâng cao trong Cài đặt > Đầu ra.
  • Vào tab Ghi hình và tìm ô thiết lập muxer tùy chỉnh.
  • Nhập force-cfr=1 vào ô đó để ép tốc độ khung hình cố định.
  • Sau khi áp dụng, hãy ghi hình thử ngắn và kiểm tra file kết quả không bị đứng.

Bước 2: Cố định FPS thu về một giá trị

Dù đã bật tùy chọn tốc độ khung hình cố định, nếu bản thân việc thu bị dao động thì hiệu quả giảm một nửa. Nếu FPS thu màn hình và khung hình game chạy ở tốc độ khác nhau thì trình ghi sẽ chèn hoặc loại bỏ khung hình trống và lại sinh ra đứng hình.

  • Đặt FPS ghi hình về giá trị mà game có thể duy trì ổn định. Nếu 60fps hay sụp thì hạ xuống 30fps sẽ ít đứng hơn.
  • Khớp giới hạn khung hình trong game (ví dụ: 60) và FPS ghi hình về cùng một giá trị.
  • Dùng chế độ cửa sổ không viền thay cho chế độ toàn màn hình (độc quyền) thì nhiều khi thu ổn định hơn.
  • Trong lúc ghi hình, hãy đóng các chương trình nặng chạy nền để giảm biên độ dao động khung hình.

Bước 3: Cứu file đã bị đứng (mã hóa lại CFR)

Nếu video bạn đã ghi sẵn bị đứng thì chỉ cần mã hóa lại tốc độ khung hình cố định bằng công cụ miễn phí HandBrake. Đó là cách vừa mã hóa lại vừa rải lại khoảng cách khung hình lồi lõm thành đều đặn.

  • Nạp file gốc bị đứng vào HandBrake.
  • Chỉ định Framerate là 60 (hoặc giá trị chuẩn của bản gốc) ở tab Video.
  • Chọn tùy chọn ngay bên dưới thành Constant Framerate (tốc độ khung hình cố định).
  • Nhấn Start Encode để tạo file mới rồi kiểm tra hiện tượng đứng đã biến mất chưa.
Nếu bạn đã đang dùng trình chỉnh sửa thì chỉ cần đưa video VFR lên timeline của Premiere Pro hay DaVinci Resolve rồi xuất ra nguyên trạng mà không cắt, kết quả cũng ra ở tốc độ khung hình cố định. Đây là cách lách nhanh để dọn hiện tượng đứng mà không cần công cụ riêng.

Tương thích trình chỉnh sửa: khớp CFR trước khi đưa lên

Các trình chỉnh sửa như Premiere Pro, DaVinci Resolve, GOM Mix hoạt động trên tiền đề tốc độ khung hình cố định. Nếu đưa bản gốc VFR lên nguyên trạng thì từ khoảnh khắc bạn cắt ghép, tiếng và hình bắt đầu lệch. Vì vậy khớp tốc độ khung hình cố định bằng các bước 1 đến 3 ở trên trước khi chỉnh sửa là an toàn nhất. Càng là game có dao động khung hình tức thời lớn như Valorant hay PUBG, thao tác này càng hiệu quả.

Ghi hình ít đứng ngay từ đầu: DOR

Nếu việc tự khớp quy trình trên mỗi lần thấy phiền, thì dùng công cụ vốn mặc định tốc độ khung hình cố định ngay ở bước ghi hình sẽ tiện hơn. DOR ghi hình ở tốc độ khung hình cố định nên ít đứng hình và lệch sync. Nhiều khi bạn đưa file đã ghi lên trình chỉnh sửa luôn mà hình và tiếng vẫn khớp, không cần chuyển đổi riêng.

Màn hình ghi hình tốc độ khung hình cố định của DOR
DOR ghi hình ở tốc độ khung hình cố định nên ít bị đứng hình

Tóm lại cốt lõi là hai điều. Ép tốc độ khung hình cố định (CFR) trong chương trình ghi hình, và cố định FPS thu về một giá trị mà game chịu được. Chỉ cần giữ hai điều này thôi thì hiện tượng có tiếng nhưng chỉ hình bị đứng phần lớn sẽ biến mất. File đã bị đứng thì cứu bằng cách mã hóa lại HandBrake hoặc xuất lại từ trình chỉnh sửa là được.

FAQ

Câu hỏi thường gặp

Có tiếng nhưng chỉ hình bị đứng thì có phải file bị hỏng không?

Phần lớn không phải bị hỏng. Đây là vấn đề tương thích khi video ghi ở tốc độ khung hình biến đổi (VFR) trông như bị đứng trên trình phát hay trình chỉnh sửa vốn kỳ vọng tốc độ khung hình cố định. Nếu phát bình thường trên trình phát khác như VLC thì file vẫn lành lặn, và mã hóa lại sang tốc độ khung hình cố định (CFR) là giải quyết được.

VFR và CFR chính xác là gì?

VFR (tốc độ khung hình biến đổi) là kiểu số khung hình mỗi giây thay đổi tùy tình huống, còn CFR (tốc độ khung hình cố định) là kiểu khoảng cách khung hình luôn đồng đều. Tiếng trôi đều đặn mà khoảng cách khung hình của hình lồi lõm thì hai bên lệch nhau, sinh ra vấn đề đứng hình và sync. Vì vậy khớp về CFR là cốt lõi của giải pháp.

Ép tốc độ khung hình cố định trong OBS như thế nào?

Đổi chế độ xuất sang Nâng cao trong cài đặt rồi nhập force-cfr=1 vào ô thiết lập muxer tùy chỉnh ở tab Ghi hình là được. Cùng với đó, nếu cố định FPS về giá trị số nguyên như 60 trong cài đặt video thì ổn định hơn.

Video đã bị đứng cũng cứu được không?

Cứu được. Nạp file vào công cụ miễn phí HandBrake, chỉ định Framerate rồi mã hóa lại với Constant Framerate (tốc độ khung hình cố định) là được. Nếu bạn đang dùng trình chỉnh sửa thì đưa lên timeline rồi xuất ra nguyên trạng mà không cắt cũng cho ra tốc độ khung hình cố định.

Ghi hình bằng DOR thì có ít gặp vấn đề này hơn không?

Có. Vì DOR ghi hình ở tốc độ khung hình cố định nên ít đứng hình và lệch sync. Nhiều khi bạn đưa file đã ghi lên trình chỉnh sửa luôn mà hình và tiếng vẫn khớp không cần chuyển đổi riêng, nên giảm việc phải tự chuyển đổi CFR bằng tay mỗi lần.

Games

Ghi lại các game này

Đọc tiếp

Bài viết liên quan

Bắt đầu với DOR ngay

Cài đặt và mở game, các khoảnh khắc nổi bật sẽ tự động được lưu thành clip