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ố.
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)