Skip to content

v3.4.0 — Undo/Redo + مقاطع خَلفيّة مُتَقَدّمة + 11 اِنتقال

Latest

Choose a tag to compare

@SalehGNUTUX SalehGNUTUX released this 14 Jul 20:28
· 1 commit to main since this release

GT-SQRM v3.4.0 — مقاطع خَلفيّة مُتَقَدّمة + Undo/Redo + عَلامة مائيّة مُطَوَّرة

نَقل شامِل لِميزات GT-SIRM v1.2 إلى نَسختَي GT-SQRM (سَطح المكتب) و GT-SQR (الويب)، مَع إبقاء تَركيز البرنامَج عَلى القرآن.

🎬 مقاطع الخَلفيّة (playlist) — 12 تَحسيناً وإصلاحاً

  • 👁️ إعماء (hidden) لِكُلّ مَقطع — يَبقى في القائمة، يُتَخَطّى في التَبديل والـcrossfade والتَصدير. زَرّ 👁️/👁️‍🗨️ في كُلّ صَفّ.
  • ✂️ تَقليم لِكُلّ مَقطع (per-clip trim) — حَقلا "من/إلى" بجَنب كُلّ مَقطع + زَرّ ↺ إفراغ. يَعمَل في المُعاينَة والتَصدير عَبر ffmpeg xfade+trim.
  • 🎨 11 نَمط اِنتقال — بَديل عن fade فَقط: wipeleft, wiperight, slideleft, slideright, slideup, slidedown, circleopen, circleclose, radial, dissolve. عامّ + per-clip من dropdown في كُلّ صَفّ. نُعومة حَواف (feather) قابِلة للضَبط 0-100%.
  • ↩️ Undo/Redo عامّ — 30 إجراءً مَحفوظاً، أزرار في شَريط الأدوات، اختصارات Ctrl+Z / Ctrl+Y / Ctrl+Shift+Z.
  • ♻️ استعادة آخر مَقطع مَحذوف — بضَغطة زَرّ.
  • 🌟 وميض ذَهبيّ عِند النَقل — تَمييز بَصريّ + scroll إلى الصَفّ.
  • 🖱️ نَقر عَلى صَفّ يُنَشِّط المُعاينَة — بَدون الحاجة لأَزرار.
  • 🐛 Bug#4switchToNextBgVid يُوقِف المَقطع القَديم بَعد التَبديل ويُعيد seek إلى trimStart.
  • ✨ إصلاح الوَميضupdateBgVidCrossfade تَنتَقِل فَوراً عِند remaining <= 0 بَدَل اِنتظار ended.
  • 🔊 صَوت مُستَمِرّmixAudioToBuffer تُبقي كُلّ المَقاطع المَرئيّة في timeline. يُصلِح: صَوت مَقطع واحد كان يَتَوَقَّف قَبل نِهاية الفيديو المُصَدَّر.
  • 📥 استعادة تَتابُعيّةaddBgVidItem يُعيد Promise + خيار silent. الاستعادة تَستَخدِم await مَع تَطبيق الإعدادات مُباشَرَةً + فَكّ صَوت المَقطع لَو مُفَعَّلاً.
  • 🎬 WebM Infinity fixgetBgClipTrimEnd يَستَخدِم vid.duration الحَيّة لَو كانت item.dur=0 (WebM بمُدّة Infinity).
  • 🟢 حاشية خَضراءactivateBgVidByIndex يُنَبِّه renderBgVidList لِتَحديث المؤشِّر البَصريّ.

🔧 ffmpeg IPC (سَطح المكتب فَقَط)

  • extract-bg-frames يَقبَل: clipTrims, transition, clipTransitions.
  • xfadeAt(i-1) — تَأثير الاِنتقال من المَقطع (i-1) إلى (i) يَستَخدِم إعداد المَقطع (i-1) إن حُدّد، وإلا العامّ.
  • XFADE_SAFE — قائمة أَسماء xfade المَعروفة (يَحمي من قيمة مَجهولة تُفشِل ffmpeg).
  • filter_complex يَستَخدِم trim=start:end,setpts=PTS-STARTPTS قَبل scale/crop لِكُلّ مَقطع.

🏷️ العَلامة المائيّة

  • توگل تَفعيل #wm-on (اِفتراضيّاً مُفَعَّل — حِفاظاً عَلى السُلوك السابِق).
  • إزاحة رَأسيّة #wm-y-offset (0-40%) مَع مُراعاة المَواضِع الأَربعة (br/bl/tr/tl).

⏯️ إصلاحات المُشَغِّل

  • playRecitationAudio يَبدأ من S.elapsed (يَدعَم استئناف من مَنتَصَف الآية).
  • pausePlayer يُوقِف S.bgVidNext أَيضاً (كان يَستَمِرّ يَعمَل في الخَلفيّة).
  • startPlayer يُشَغِّل S.bgVidNext أَيضاً لَو كان في مَنتَصَف الـcrossfade.
  • restartAll يُعيد ضَبط S.bgVid + S.bgVidNext + S.bgVidFadeProgress + preview src.

🗑️ إزالة سَلوك مُعطَّل

  • applyBgVidTrim — أُزيل مُراقِب timeupdate البُغَيان (كان يَقفِل المَقطع في وَضع playlist بَدَل الاِنتقال). الآن updateBgVidCrossfade تُدير الحُدود تلقائيّاً.

📥 التَحميل والتَنصيب

AppImage (يَعمَل عَلى كُلّ تَوزيعات Linux)

chmod +x GT-SQRM-3.4.0.AppImage
./GT-SQRM-3.4.0.AppImage

DEB (Debian / Ubuntu / Mint)

sudo dpkg -i gt-sqrm_3.4.0_amd64.deb
sudo apt --fix-broken install

RPM (Fedora / RHEL / openSUSE)

sudo dnf install ./gt-sqrm-3.4.0-2.x86_64.rpm
# أَو
sudo rpm -i gt-sqrm-3.4.0-2.x86_64.rpm
# أَو عَلى openSUSE
sudo zypper install ./gt-sqrm-3.4.0-2.x86_64.rpm

🌐 النَسخة الويب

نَسخة GT-SQR الويب مُتاحة بنَفس التَحسينات عَلى: https://salehgnutux.github.io/GT-SQR/

الـService Worker cache تَمّ ترقيته gt-sqr-v17 → gt-sqr-v18 لِضَمان تَحديث الأُصول عَلى المُتَصَفِّحات المُخَبَّأة.

📚 مَراجِع

  • CHANGELOG الكامِل: CHANGELOG.md
  • الوَثيقة الأَصليّة لِـ v1.2: GT-SIRM

المُؤَلِّف: SalehGNUTUX · التَرخيص: GPLv2