Khắc phục sự cố
Nếu bạn gặp sự cố với OpenShot, chẳng hạn như bị treo, bị lỗi hoặc thông báo lỗi, có nhiều kỹ thuật khác nhau có thể hữu ích để khắc phục sự cố.
Sử dụng nhật ký để khắc phục sự cố
Nhật ký là một tệp văn bản ghi lại những gì OpenShot đang làm, cùng với các cảnh báo và lỗi. Những tệp này có thể giúp đội hỗ trợ hiểu vấn đề, ngay cả khi bạn không thấy thông báo lỗi trên màn hình.
OpenShot giữ hai tệp nhật ký trong thư mục .openshot_qt bên trong thư mục chính của bạn. Trên Linux và macOS, vị trí này được ghi là ~/.openshot_qt/. Thư mục này có thể bị ẩn trong trình quản lý tệp của bạn.
Tệp |
Nội dung ghi lại |
|---|---|
|
Hoạt động trong trình chỉnh sửa: khởi động OpenShot, tải dự án, thay đổi cài đặt và sử dụng giao diện. Đây thường là nơi tốt nhất để bắt đầu khi điều tra một vấn đề. |
|
Hoạt động trong bộ xử lý video và âm thanh của OpenShot, phần đọc phương tiện và tạo hình ảnh cùng âm thanh dùng trong xem trước và video xuất ra. Nhật ký chi tiết của bộ xử lý có thể giúp điều tra các vấn đề phát lại và xuất video. |
Những tệp này ghi lại các phần khác nhau của cùng một ứng dụng. Khi báo cáo sự cố, hãy bao gồm cả hai tệp nếu có. Bạn không cần phải hiểu từng dòng một.
Chọn phần của OpenShot để ghi nhật ký
Mở Chỉnh sửa → Tùy chọn → Nâng cao để tìm hai cài đặt này:
Tùy chọn |
Tham số tương ứng |
Tệp nhật ký |
|---|---|---|
Ghi nhật ký gỡ lỗi giao diện người dùng |
|
|
Ghi nhật ký gỡ lỗi bộ xử lý video & âm thanh |
|
|
Cả hai tùy chọn mặc định đều tắt, giữ lại các thông báo tóm tắt bình thường. Bật một trong hai sẽ thêm chi tiết vào tệp nhật ký tương ứng ngay lập tức. Nó không thay đổi nhật ký kia hoặc thêm thông báo vào terminal. Tùy chọn sẽ được giữ bật giữa các lần khởi động cho đến khi bạn tắt chúng.
Ghi nhật ký gỡ lỗi giao diện người dùng là điểm khởi đầu tốt cho các vấn đề về khởi động, tải dự án, cài đặt hoặc giao diện. Ghi nhật ký gỡ lỗi bộ xử lý video & âm thanh thêm chi tiết về xử lý video và âm thanh, giúp điều tra các vấn đề phát lại và xuất video. Nhật ký bộ xử lý có thể tăng nhanh và làm chậm OpenShot. Bật cài đặt này ngay trước khi lặp lại vấn đề, sau đó tắt nó đi.
Tùy chọn bộ xử lý trước đây được gọi là Chế độ gỡ lỗi (Chi tiết). Cài đặt bật/tắt đã lưu được chuyển sang tên mới.
Sử dụng terminal cho một lần khởi động
Terminal là một cửa sổ nơi bạn nhập lệnh. Các tham số tương ứng cho phép chi tiết bổ sung giống như tùy chọn, và cũng hiển thị trong terminal:
openshot-qt --debug-ui
Điều này ghi lại chi tiết giao diện cho một lần khởi động. Các tùy chọn quen thuộc --debug và ngắn hơn -d có nghĩa hoàn toàn giống như --debug-ui. Để ghi chi tiết bộ xử lý video và âm thanh, sử dụng:
openshot-qt --debug-engine
Để thu thập cả hai loại chi tiết cùng lúc:
openshot-qt --debug-ui --debug-engine
Lặp lại các bước gây ra sự cố, sau đó đóng OpenShot và thu thập nhật ký. Các tham số này không thay đổi tùy chọn đã lưu của bạn. Khởi động OpenShot bình thường sẽ trở lại cài đặt ghi nhật ký thông thường của bạn.
openshot-qt.log bắt đầu một tệp mới khi đạt khoảng 25 MB và giữ ba bản sao cũ hơn. libopenshot.log tiếp tục tăng kích thước khi có thêm thông báo. Sau khi lưu các nhật ký cần thiết, bạn có thể xóa các tệp nhật ký cũ khi OpenShot đang đóng.
Các tùy chọn dòng lệnh khác
Hầu hết người dùng chỉ cần hai điều khiển trên. Các tùy chọn sau cho phép bạn chọn mức độ chi tiết ghi vào tệp hoặc hiển thị trong terminal. Ở đây, console nghĩa là đầu ra terminal.
Tùy chọn |
Chức năng |
|---|---|
|
Bật ghi nhật ký gỡ lỗi giao diện người dùng trong tệp và terminal. |
|
Bật ghi nhật ký gỡ lỗi bộ xử lý video & âm thanh trong tệp và terminal. |
|
Thêm chi tiết trình chỉnh sửa vào |
|
Thêm chi tiết trình chỉnh sửa trong terminal mà không thêm chi tiết vào tệp. |
|
Đặt mức độ chi tiết cho cả hai nhật ký và đầu ra terminal của chúng. |
|
Đặt mức độ chi tiết cho cả hai tệp nhật ký, không thay đổi cài đặt terminal. |
|
Đặt mức chi tiết trong terminal cho cả trình chỉnh sửa và engine, giữ nguyên cài đặt tệp. |
Thay thế LEVEL bằng debug để nhận thông báo chi tiết hoặc info cho tóm tắt bình thường. warning hiển thị cảnh báo và lỗi; error hiển thị lỗi và sự cố nghiêm trọng; critical chỉ hiển thị sự cố nghiêm trọng. off dừng các thông báo nhật ký thông thường, nhưng các chẩn đoán sự cố hiện có vẫn có thể được ghi lại. Các tên viết hoa như DEBUG cũng hoạt động.
Ví dụ, để thu thập thông báo chi tiết trong cả hai tệp trong khi giữ terminal ở mức bình thường:
openshot-qt --log-file-level debug
Điều này cũng kích hoạt nhật ký engine lớn, vì vậy hãy sử dụng nó trong thời gian ngắn. Các tùy chọn cũ --debug-file và --debug-console vẫn hoạt động mặc dù không được liệt kê trong --help.
Biến môi trường
Biến môi trường là một cài đặt được đặt tên và truyền cho chương trình khi nó khởi động. Chúng hữu ích khi khởi động OpenShot từ một script hoặc khi nhân viên hỗ trợ yêu cầu bạn thử một cài đặt cụ thể. Bạn không cần thiết lập chúng cho việc sử dụng bình thường.
Biến |
Điều khiển cái gì |
|---|---|
|
Chi tiết trong cả hai tệp và terminal. |
|
Chỉ chi tiết trong cả hai tệp. |
|
Chỉ chi tiết trong terminal, cho cả hai phần của OpenShot. |
|
Chi tiết cho engine video và âm thanh, trong tệp và terminal của nó. |
|
Chỉ chi tiết trong |
|
Chi tiết engine chỉ trong terminal. |
Ví dụ, lệnh terminal Linux/macOS này yêu cầu ghi nhật ký engine chi tiết trong tệp cho một lần khởi chạy:
LIBOPENSHOT_LOG_FILE_LEVEL=debug openshot-qt
Nếu các cài đặt chồng chéo, tùy chọn dòng lệnh được ưu tiên, tiếp theo là biến môi trường, rồi đến Tùy chọn, sau đó là mặc định bình thường. Mỗi điều khiển chỉ ảnh hưởng đến đầu ra mà nó mô tả: --debug không ghi đè tùy chọn engine. Ghi đè tạm thời không thay đổi tùy chọn đã lưu của bạn. Di chuột qua bất kỳ hộp kiểm nào để xem liệu cài đặt khác có đang kiểm soát tệp nhật ký đó không.
Trong các cài đặt môi trường, giá trị LIBOPENSHOT_ được ưu tiên hơn giá trị OPENSHOT_ cho engine. Trong mỗi nhóm, mức chỉ dành cho tệp hoặc chỉ dành cho console được ưu tiên hơn mức chung. Tùy chọn dòng lệnh tuân theo quy tắc tệp/console tương tự. Các mức dòng lệnh xung đột cho cùng một đầu ra bị từ chối; các mức môi trường không hợp lệ được báo cáo và bỏ qua.
Đối với các script cũ hơn, LIBOPENSHOT_DEBUG vẫn kích hoạt các thông báo engine chi tiết trong terminal khi nó tồn tại, ngay cả khi giá trị của nó là 0. Các cài đặt mức mới hơn được ưu tiên hơn. LIBOPENSHOT_LOG_FILE dành cho các chương trình sử dụng engine riêng biệt; chính OpenShot sử dụng thư mục nhật ký ở trên. Thay đổi cài đặt ghi nhật ký không làm thay đổi tùy chọn báo cáo lỗi của bạn.
Windows 11 không phản hồi
Nếu bạn gặp hiện tượng treo trên Windows 11, đây là một vấn đề đã biết với PyQt5 và Windows 11, liên quan đến các tính năng trợ năng trong Qt. Điều này xảy ra khi nhấn Ctrl+C trong OpenShot (chỉ trên Windows 11). OpenShot sẽ không phản hồi và có hiện tượng rò rỉ bộ nhớ (tức là càng lâu OpenShot không phản hồi, rò rỉ bộ nhớ càng lớn cho đến khi OpenShot cuối cùng bị lỗi hoặc người dùng kết thúc tiến trình).
Một cách khắc phục đơn giản là tránh sử dụng Ctrl+C trên Windows 11, thay vào đó sử dụng menu sao chép/dán khi nhấp chuột phải. Cách khác là đổi phím tắt "Sao chép" từ Ctrl+C sang phím khác, ví dụ Alt+C. Bạn có thể thay đổi phím tắt trong phần Cài đặt của OpenShot. Xem Bàn phím.
Gỡ lỗi Windows với GDB
Nếu bạn gặp sự cố treo hoặc lỗi với OpenShot trên Windows 10/11, các hướng dẫn từng bước dưới đây sẽ giúp bạn xác định nguyên nhân gây lỗi. Các hướng dẫn này sẽ hiển thị ngăn xếp lỗi của mã nguồn OpenShot tại vị trí xảy ra lỗi. Thông tin này rất hữu ích cho nhóm phát triển của chúng tôi và rất cần thiết để đính kèm vào báo cáo lỗi (để giải quyết nhanh hơn).
Cài đặt Phiên bản Daily Build Mới nhất
Trước khi gắn trình gỡ lỗi, vui lòng tải xuống phiên bản mới nhất của OpenShot: https://www.openshot.org/download#daily. Cài đặt phiên bản này vào vị trí mặc định: C:\Program Files\OpenShot Video Editor\. Để biết hướng dẫn chi tiết về gỡ lỗi OpenShot trên Windows, vui lòng xem wiki này.
Cài đặt MSYS2
Phiên bản OpenShot trên Windows được biên dịch sử dụng môi trường gọi là MSYS2. Để gắn trình gỡ lỗi GDB vào tệp thực thi của chúng tôi, openshot-qt.exe, bạn phải cài đặt MSYS2 trước. Bước này chỉ cần thực hiện một lần.
Tải xuống & Cài đặt MSYS2: http://www.msys2.org/
Chạy cửa sổ lệnh
MSYS2 MinGW x64(ví dụ:C:\msys64\msys2_shell.cmd -mingw64)Cập nhật tất cả các gói (Sao chép/Dán lệnh sau):
pacman -SyuCài đặt trình gỡ lỗi GDB (Sao chép/Dán lệnh sau):
pacman -S --needed --disable-download-timeout mingw-w64-x86_64-toolchain
Khởi chạy OpenShot với trình gỡ lỗi GDB
Chạy cửa sổ lệnh MSYS2 MinGW x64 (ví dụ: C:\msys64\msys2_shell.cmd -mingw64)
Cập nhật PATH (Sao chép/Dán các lệnh sau):
export PATH="/c/Program Files/OpenShot Video Editor/lib:$PATH"
export PATH="/c/Program Files/OpenShot Video Editor/lib/PyQt5:$PATH"
Nạp OpenShot vào trình gỡ lỗi GDB (Sao chép/Dán các lệnh sau):
cd "/c/Program Files/OpenShot Video Editor"/
gdb openshot-qt.exe
Khởi chạy OpenShot từ dấu nhắc GDB (Sao chép/Dán lệnh sau):
run --debug
In thông tin gỡ lỗi
Khi OpenShot đã khởi chạy thành công với GDB được gắn, bạn chỉ cần gây ra lỗi hoặc treo trong OpenShot. Khi lỗi xảy ra, chuyển lại terminal MSYS2 MinGW64 và chạy một trong các lệnh sau (gõ lệnh và nhấn ENTER). Thông thường, lệnh đầu tiên nhập là bt, viết tắt của backtrace. Các lệnh khác được liệt kê bên dưới.
(gdb) run (launch openshot-qt.exe)
(gdb) CTRL + C (to manually break out OR wait for a crash / segmentation fault)
(gdb) bt (Print stack trace for the current thread #)
(gdb) info threads (to view all threads, and what they are doing. Look for `__lll_lock_wait` for Mutex/deadlocks)
(gdb) thread 35 (Switch to thread number, for example thread 35)
Màn hình DPI cao / 4K
OpenShot Video Editor hỗ trợ mạnh mẽ cho màn hình DPI cao (Dots Per Inch), đảm bảo giao diện sắc nét và dễ đọc trên các màn hình với các thiết lập DPI khác nhau. Hỗ trợ này đặc biệt hữu ích trên màn hình 4K và các màn hình độ phân giải cao khác.
Nhận biết DPI theo từng màn hình
OpenShot nhận biết DPI theo từng màn hình, nghĩa là nó có thể điều chỉnh tỷ lệ động dựa trên thiết lập DPI của từng màn hình được kết nối. Điều này giúp mang lại trải nghiệm nhất quán trên các màn hình khác nhau.
Tỷ lệ DPI trên Windows
Trên Windows, OpenShot làm tròn hệ số tỷ lệ đến giá trị nguyên gần nhất để duy trì tính toàn vẹn hình ảnh. Điều này giúp tránh các hiện tượng sai lệch hình ảnh trong giao diện và giữ cho các phần tử giao diện sắc nét, căn chỉnh tốt. Do việc làm tròn này, một số tùy chọn tỷ lệ có thể dẫn đến phông chữ và phần tử giao diện lớn hơn mong đợi.
Tỷ lệ 125% được làm tròn thành 100%
Tỷ lệ 150% được làm tròn thành 200%
Giải pháp thay thế cho điều chỉnh chi tiết
Mặc dù việc làm tròn giúp duy trì giao diện sạch sẽ, có những giải pháp thay thế cho người dùng cần kiểm soát tỷ lệ chính xác hơn. Các phương pháp này không được khuyến nghị do có thể gây ra hiện tượng sai lệch hình ảnh:
QT_SCALE_FACTOR_ROUNDING_POLICY=PassThrough
Thiết lập biến môi trường này có thể tắt việc làm tròn và cho phép điều chỉnh tỷ lệ chính xác hơn.
Lưu ý: Điều này có thể gây ra hiện tượng sai lệch hình ảnh, đặc biệt là trên dòng thời gian, và không được khuyến nghị.
QT_SCALE_FACTOR=1.25 (hoặc giá trị tương tự)
Thiết lập hệ số tỷ lệ thủ công có thể cung cấp điều chỉnh tinh tế hơn cho phông chữ và tỷ lệ giao diện.
Điều này cũng có thể được thiết lập qua Preferences (Tỷ lệ giao diện người dùng), nhưng hãy mong đợi các vấn đề về viền/dòng trên Windows với tỷ lệ phân số.
Lưu ý: Phương pháp này cũng có thể gây ra hiện tượng sai lệch hình ảnh và làm OpenShot khó sử dụng hơn.
Để biết thêm thông tin về cách điều chỉnh các biến môi trường này, vui lòng truy cập https://github.com/OpenShot/openshot-qt/wiki/OpenShot-UI-too-large.