সমস্যা সমাধান
যদি আপনি OpenShot-এ ফ্রিজ, ক্র্যাশ বা ত্রুটি বার্তার মতো কোনো সমস্যা অনুভব করেন, তাহলে সমস্যাটি সমাধানের জন্য অনেক বিভিন্ন কৌশল ব্যবহার করা যেতে পারে।
Windows 11 প্রতিক্রিয়াহীন
যদি আপনি Windows 11-এ ফ্রিজ অনুভব করেন, এটি PyQt5 এবং Windows 11-এর একটি পরিচিত সমস্যা, যা Qt-এর অ্যাক্সেসিবিলিটি ফিচারগুলোর সাথে সম্পর্কিত। এটি OpenShot-এ Ctrl+C চাপানোর মাধ্যমে ঘটে (শুধুমাত্র Windows 11-এ). OpenShot প্রতিক্রিয়াহীন হয়ে যাবে এবং একটি মেমরি লিকও থাকবে (অর্থাৎ OpenShot যতক্ষণ প্রতিক্রিয়াহীন থাকবে, আপনার মেমরি লিক তত বড় হবে যতক্ষণ না OpenShot শেষ পর্যন্ত ক্র্যাশ করে বা ব্যবহারকারী প্রক্রিয়াটি বন্ধ করে)।
একটি সহজ সমাধান হলো Windows 11-এ Ctrl+C এড়িয়ে চলা এবং পরিবর্তে রাইট-ক্লিক করে Copy/Paste মেনু ব্যবহার করা। আরেকটি সমাধান হলো আপনার "Copy" কীটি Ctrl+C থেকে অন্য কোনো কীতে, যেমন Alt+C-তে পুনঃনির্ধারণ করা। আপনি OpenShot Preferences-এ আপনার কীবোর্ড ম্যাপিং পরিবর্তন করতে পারেন। দেখুন কীবোর্ড।
Windows-এ GDB দিয়ে ডিবাগিং
যদি আপনি Windows 10/11-এ OpenShot-এ ক্র্যাশ বা ফ্রিজ অনুভব করেন, নিম্নলিখিত ধাপে ধাপে নির্দেশনাগুলো আপনাকে ক্র্যাশের কারণ নির্ধারণে সাহায্য করবে। এই নির্দেশনাগুলো ক্র্যাশের স্থানে OpenShot-এর সোর্স কোডের স্ট্যাক ট্রেস দেখাবে। এই তথ্য আমাদের ডেভেলপমেন্ট টিমের জন্য অত্যন্ত গুরুত্বপূর্ণ এবং বাগ রিপোর্টে সংযুক্ত করার জন্য খুবই উপকারী (দ্রুত সমাধানের জন্য)।
সর্বশেষ দৈনিক বিল্ড ইনস্টল করুন
ডিবাগার সংযুক্ত করার আগে, অনুগ্রহ করে OpenShot-এর সর্বশেষ সংস্করণ ডাউনলোড করুন: https://www.openshot.org/download#daily। OpenShot-এর এই সংস্করণটি ডিফল্ট অবস্থানে ইনস্টল করুন: C:\Program Files\OpenShot Video Editor\। Windows-এ OpenShot ডিবাগিং সম্পর্কে বিস্তারিত নির্দেশনার জন্য, অনুগ্রহ করে এই উইকি দেখুন।
MSYS2 ইনস্টল করুন
OpenShot-এর Windows সংস্করণ MSYS2 নামক একটি পরিবেশ ব্যবহার করে কম্পাইল করা হয়েছে। আমাদের এক্সিকিউটেবল openshot-qt.exe-এ GDB ডিবাগার সংযুক্ত করতে হলে আপনাকে প্রথমে MSYS2 ইনস্টল করতে হবে। এই ধাপটি শুধুমাত্র একবারই প্রয়োজন।
ডাউনলোড ও ইনস্টল করুন MSYS2: http://www.msys2.org/
চালান
MSYS2 MinGW x64কমান্ড প্রম্পট (উদাহরণস্বরূপ:C:\msys64\msys2_shell.cmd -mingw64)সব প্যাকেজ আপডেট করুন (নিম্নলিখিত কমান্ড কপি/পেস্ট করুন):
pacman -SyuGDB ডিবাগার ইনস্টল করুন (নিম্নলিখিত কমান্ড কপি/পেস্ট করুন):
pacman -S --needed --disable-download-timeout mingw-w64-x86_64-toolchain
GDB ডিবাগার দিয়ে OpenShot চালু করুন
চালান MSYS2 MinGW x64 কমান্ড প্রম্পট (উদাহরণস্বরূপ: C:\msys64\msys2_shell.cmd -mingw64)
PATH আপডেট করুন (নিম্নলিখিত কমান্ডগুলো কপি/পেস্ট করুন):
export PATH="/c/Program Files/OpenShot Video Editor/lib:$PATH"
export PATH="/c/Program Files/OpenShot Video Editor/lib/PyQt5:$PATH"
OpenShot GDB ডিবাগারে লোড করুন (নিম্নলিখিত কমান্ডগুলো কপি/পেস্ট করুন):
cd "/c/Program Files/OpenShot Video Editor"/
gdb openshot-qt.exe
GDB প্রম্পট থেকে OpenShot চালু করুন (নিম্নলিখিত কমান্ড কপি/পেস্ট করুন):
run --debug
ডিবাগিং তথ্য প্রিন্ট করুন
একবার OpenShot সফলভাবে GDB-এর সাথে চালু হলে, আপনাকে শুধু OpenShot-এ ক্র্যাশ বা ফ্রিজ ঘটাতে হবে। ক্র্যাশ ঘটলে, MSYS2 MinGW64 টার্মিনালে ফিরে যান এবং নিম্নলিখিত কমান্ডগুলোর একটি চালান (টাইপ করে ENTER চাপুন)। সাধারণত প্রথম কমান্ড হলো bt, যা backtrace নির্দেশ করে। আরও কমান্ড নিচে তালিকাভুক্ত আছে।
(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)