تطبيق Linux Desktop و Sailfish OS لتدوين الملاحظات ، والقراءة والترجمة مع الكلام غير المتصلة بالإنترنت إلى رسالة نصية ونص على الكلام والترجمة الآلية
تتيح لك ملاحظة الكلام أخذ الملاحظات وقراءةها وترجمتها بلغات متعددة. يستخدم الكلام للنص ، النص إلى الكلام والترجمة الآلية للقيام بذلك. يتم معالجة النصوص والصوت في وضع عدم الاتصال بالكامل ، محليًا على جهاز الكمبيوتر الخاص بك ، دون استخدام اتصال شبكة. تحترم خصوصيتك دائمًا. لا يتم إرسال بيانات إلى الإنترنت.
تستخدم ملاحظة الكلام العديد من محركات المعالجة المختلفة للقيام بعملها. حاليا هذه تستخدم:
يتم دعم اللغات التالية:
| معرف لانج | اسم | Deepspeech (STT) | الهمس (STT) | فوسك (STT) | أبريل-ASR (STT) | بايبر (TTS) | Rhvoice (TTS) | espeak (TTS) | Mbrola (TTS) | coqui (TTS) | Mimic3 (TTS) | Whisperspeech (TTS) | البرغموت (MT) |
|---|---|---|---|---|---|---|---|---|---|---|---|---|---|
| AF | أفريكانيين | ● | ● | ● | |||||||||
| أكون | أمهرية | ● (هـ) | ● | ● | ● | ||||||||
| AR | عربي | ● | ● | ● | ● | ● | ● | ● | |||||
| BG | البلغارية | ● | ● | ● | |||||||||
| مليار | البنغالية | ● | ● | ● | ● | ||||||||
| بكالوريوس | البوسني | ● | ● | ● | |||||||||
| كاليفورنيا | كاتالونية | ● | ● | ● | ● | ● | ● | ● | |||||
| CS | التشيكية | ● | ● | ● | ● | ● | ● | ● | ● | ● | |||
| CY | الويلزية | ● | |||||||||||
| دا | دانماركي | ● | ● | ● | ● | ● | |||||||
| دي | الألمانية | ● | ● | ● | ● | ● | ● | ● | ● | ||||
| el | اليونانية | ● (هـ) | ● | ● | ● | ● | ● | ● | |||||
| en | إنجليزي | ● | ● | ● | ● | ● | ● | ● | ● | ● | ● | ● | |
| eo | إسبرانتو | ● | ● | ● | |||||||||
| ES | الأسبانية | ● | ● | ● | ● | ● | ● | ● | ● | ||||
| ET | الإستونية | ● (هـ) | ● | ● | ● | ● | ● | ||||||
| الاتحاد الأوروبي | الباسك | ● (هـ) | ● | ● | ● | ||||||||
| فا | فارسي | ● | ● | ● | ● | ● | ● | ● | ● | ● | |||
| Fi | الفنلندية | ● | ● | ● | ● | ● | ● | ● | |||||
| الاب | فرنسي | ● | ● | ● | ● | ● | ● | ● | ● | ● | |||
| جا | الأيرلندية | ● | ● | ||||||||||
| غو | غوجاراتية | ● | ● | ● | |||||||||
| ها | الهوسا | ● | ● | ||||||||||
| هو | العبرية | ● | ● | ||||||||||
| أهلاً | الهندية | ● | ● | ● | |||||||||
| HR | الكرواتية | ● | ● | ● | ● | ● | |||||||
| هو | المجري | ● (هـ) | ● | ● | ● | ● | ● | ● | ● | ||||
| بطاقة تعريف | إندونيسي | ● (هـ) | ● | ● | ● | ● | |||||||
| يكون | الأيسلندية | ● | ● | ● | ● | ● | |||||||
| هو - هي | إيطالي | ● | ● | ● | ● | ● | ● | ● | ● | ||||
| جا | اليابانية | ● | ● | ● | ● | ||||||||
| JV | الجاوية | ● | ● | ||||||||||
| كا | الجورجي | ● | ● | ● | ● | ||||||||
| KK | كازاخاخية | ● | ● | ● | ● | ● | |||||||
| كو | كوري | ● | ● | ● | ● | ||||||||
| كنت | قيرغيز | ● | ● | ||||||||||
| لا | اللاتينية | ● | ● | ||||||||||
| رطل | لوكسمبورجيش | ● | |||||||||||
| LT | الليتواني | ● | ● | ● | ● | ● | |||||||
| LV | لاتفيا | ● | ● | ● | ● | ● | |||||||
| MK | مقدوني | ● | ● | ● | |||||||||
| MN | المنغولي | ● (هـ) | ● | ● | |||||||||
| السيد | المهاراتية | ● | ● | ||||||||||
| آنسة | الملايو | ● | ● | ● | ● | ||||||||
| MT | المالطية | ● | ● | ● | |||||||||
| NE | النيبالي | ● | ● | ● | ● | ||||||||
| NL | هولندي | ● (هـ) | ● | ● | ● | ● | ● | ● | ● | ||||
| لا | النرويجية | ● | ● | ● | ● | ||||||||
| رر | بولندي | ● | ● | ● | ● | ● | ● | ● | ● | ● | ● | ● | ● |
| حزب العمال | البرتغالية | ● (هـ) | ● | ● | ● | ● | ● | ● | ● | ||||
| رو | روماني | ● (هـ) | ● | ● | ● | ● | ● | ||||||
| رو | الروسية | ● | ● | ● | ● | ● | ● | ● | ● | ||||
| SK | سلوفاك | ● | ● | ● | ● | ● | |||||||
| SL | سلوفيني | ● (هـ) | ● | ● | ● | ● | ● | ||||||
| مربع | الألبانية | ● | ● | ● | ● | ||||||||
| ريال | الصربي | ● | ● | ● | ● | ● | |||||||
| SV | السويدية | ● | ● | ● | ● | ● | ● | ● | |||||
| جنوب غرب | السواحيلية | ● | ● | ● | ● | ● | |||||||
| تي | التيلجو | ● | ● | ● | |||||||||
| ذ | التايلاندية | ● (هـ) | ● | ● | ● | ||||||||
| TL | التاغالوغ | ● | ● | ● | |||||||||
| تينيسي | Tswana | ● | ● | ● | |||||||||
| tr | التركية | ● (هـ) | ● | ● | ● | ● | ● | ● | ● | ||||
| TT | التتار | ● | ● | ● | ● | ||||||||
| المملكة المتحدة | الأوكرانية | ● | ● | ● | ● | ● | ● | ● | ● | ● | |||
| UZ | أوزبك | ● | ● | ● | ● | ||||||||
| السادس | الفيتنامي | ● | ● | ● | ● | ● | ● | ||||||
| يو | يوروبا | ● (هـ) | ● | ● | ● | ||||||||
| ZH | الصينية | ● | ● | ● | ● | ● | ● |
(هـ) التجريبي ، على الأرجح لا يعمل بشكل جيد
تتوفر نماذج Whisper و Coqui TTS و MIMIC3 بشكل أسرع فقط على x86-64.
يمكن تنزيل نماذج اللغة مباشرة من التطبيق.
تم وصف تفاصيل النماذج التي تم تكوينها حاليًا للتنزيل في models.json (github) أو models.json (gitlab).
بدءًا من v4.4.0 ، يتكون التطبيق الموزع عبر Flatpak (المنشور على Flathub) من الحزم التالية:
تتضمن الحزمة الأساسية جميع التبعيات اللازمة لتشغيل كل ميزة للتطبيق. تضيف الوظائف الإضافية قدرة تسريع GPU ، مما يسرع بعض العمليات في التطبيق.
تحتوي الحزمة الأساسية والإضافات على العديد من المكتبات "الثقيلة" مثل مكتبات CUDA و ROCM و Torch و Python. بسبب هذا ، فإن حجم الحزم والمساحة المطلوبة بعد التثبيت كبيرة. إذا لم تكن بحاجة إلى جميع الوظائف ، فيمكنك استخدام حزمة "صغيرة" أصغر بكثير (متوفرة على صفحة الإصدارات) ، والتي توفر فقط الميزات الأساسية. إذا كنت بحاجة ، يمكنك أيضًا استخدام حزم "Tiny" مع الوظيفة الإضافية لـ GPU Acceleration.
مقارنة بين القاعدة ، حزم Flatpak الصغيرة والإضافية:
| الأحجام | قاعدة | صغير الحجم | AMD الوظيفة الإضافية | NVIDIA الوظيفة الإضافية |
|---|---|---|---|---|
| تنزيل حجم | 0.9 gib | 70 MIB | +2.1 GIB | +3.8 GIB |
| حجم تفريغ | 2.9 جيب | 170 MIB | +11.5 GIB | +6.9 GIB |
| سمات | قاعدة | صغير الحجم | AMD الوظيفة الإضافية | NVIDIA الوظيفة الإضافية |
|---|---|---|---|---|
| coqui/deepspeech stt | + | + | ||
| Vosk Stt | + | + | ||
| الهمس (whisper.cpp) stt | + | + | ||
| Whisper (Whisper.cpp) STT AMD GPU | - | - | + | |
| Whisper (Whisper.cpp) Stt Nvidia GPU | - | - | + | |
| أسرع الهمس Stt | + | - | ||
| أسرع همس stt nvidia GPU | - | - | + | |
| أبريل-ASR STT | + | + | ||
| espeak tts | + | + | ||
| mbrola tts | + | + | ||
| بايبر TTS | + | + | ||
| rhvoice tts | + | + | ||
| Coqui TTS | + | - | ||
| Coqui TTS AMD GPU | - | - | + | |
| coqui tts nvidia GPU | - | - | + | |
| تقليد 3 tts | + | - | ||
| whisperspeech tts | + | - | ||
| Whisperspeech TTS AMD GPU | - | - | + | |
| whisperspeech tts nvidia GPU | - | - | + | |
| ترقيم الترقيم | + | - | ||
| مترجم | + | + |
بالإضافة إلى الإصدار المستقر في مستودع Flathub ، يمكنك محاولة اختبار إصدار "بيتا" من الإصدار القادم. هذا الإصدار قابل للاستخدام ، ولكنه قد يحتوي على المزيد من الأخطاء.
يتوفر إصدار Beta في مستودع "Flathub-Beta". اتبع هذه التعليمات لتمكين Flathub-beta على جهاز الكمبيوتر الخاص بك.
من الممكن أيضًا إنشاء وتثبيت أحدث تطوير (GIT) أو أحدث إصدار مستقر (إصدار) من المستودع باستخدام ملف PKGBUILD المقدم (يرجى ملاحظة أن نفس الملاحظات حول البناء على Linux تنطبق):
git clone <git repository url>
cd dsnote/arch/git # build latest git version
# or
cd dsnote/arch/release # build latest release version
makepkg -si
git clone <git repository url>
cd dsnote/flatpak
flatpak-builder --user --install-deps-from=flathub --repo="/path/to/local/flatpak/repo" "/path/to/output/dir" net.mkiol.SpeechNote.yaml
git clone <git repository url>
cd dsnote
mkdir build
cd build
sfdk config --session specfile=../sfos/harbour-dsnote.spec
sfdk config --session target=SailfishOS-4.4.0.58-aarch64
sfdk cmake ../ -DCMAKE_BUILD_TYPE=Release -DWITH_SFOS=ON -DWITH_PY=OFF
sfdk package
ملاحظة الكلام لديها العديد من تبعيات وقت البناء ووقت التشغيل. ويشمل ذلك المكتبات المشتركة والثابتة ، والبرامج التنفيذية للجهات الخارجية ، والبرامج النصية Python و Perl. بسبب هذه التعقيد ، فإن الطريقة الموصى بها للبناء هي استخدام سلسلة أدوات FlatPak (ملف PlatePak البياني وباني Flatpak). إذا كنت ترغب في إنشاء بناء مباشر (أي بدون Flatpak) ، فهذا ممكن أيضًا ولكنه أكثر تعقيدًا.
git clone <git repository url>
cd dsnote
mkdir build
cd build
cmake ../ -DCMAKE_BUILD_TYPE=Release -DWITH_DESKTOP=ON
make
لتقديم البناء دون دعم لمكونات Python ، أضف -DWITH_PY=OFF في خطوة CMAKE.
للاطلاع على خيارات البناء الأخرى ، بحث عن option(BUILD_XXX) في ملف CMakeList.txt .
يتم تحديد جميع النماذج المتاحة للتنزيل في ملف التكوين (config/models.json). لتمكين نموذج مخصص متوافق مع المحركات المدعومة حاليًا ، ما عليك سوى تحرير هذا الملف وإعادة تشغيل التطبيق.
عند تشغيل التطبيق لأول مرة ، يتم إنشاء ملف تكوين النماذج في:
~/.local/share/net.mkiol/dsnote/models.json ، أو~/.var/app/net.mkiol.SpeechNote/data/net.mkiol/dsnote/models.json (flatpak) ، أو~/.local/share/org.mkiol/dsnote/models.json (Sailfish OS)يمكنك تحرير النماذج الممكّنة حاليًا أو إضافة نماذج جديدة.
يبدو تعريف النموذج هكذا:
{
"name": "<model name>",
"model_id": "<model unique id>",
"engine": "<engine type>",
"lang_id": "<lang id>",
"checksum": "<md5 checksum>",
"checksum_quick": "<partial md5 checksum>",
"comp": "<compression type",
"urls": [
<model URLs>
],
"size": "<download size of all files>"
}
أنواع المحرك المسموح بها: stt_ds ، stt_vosk ، stt_april ، stt_whisper ، stt_fasterwhisper ، tts_piper ، tts_rhvoice ، tts_espeak ، tts_coqui ، tts_mimic3 ، mnt_bergamot
أنواع الضغط المسموح بها: none ، gz ، xz ، tarxz ، targz ، zip ، zipall ، dir ، dirgz
أنواع URL المسموح بها: http ، https ، file
يتم حساب عمليات الاختبار لجميع الملفات بعد تفريغها. إذا كنت تضيف نموذجًا جديدًا ، فيمكنك استخدام خيار سطر الأوامر- --gen-checksums للعثور على الفحوصات المناسبة. للقيام بذلك ، ضع سلاسل فارغة في كل من checksum و checksum_quick ، احفظ الملف وتشغيل ملاحظة الكلام مع الخيار المذكور.
على سبيل المثال:
{
"name": "New Piper Voice",
"model_id": "en_piper_new",
"engine": "tts_piper",
"lang_id": "en",
"checksum": "",
"checksum_quick": "",
"size": ""
"comp": "dir",
"urls": [
"file:///home/me/models/new-model-medium.onnx",
"file:///home/me/models/new-model-medium.onnx.json"
]
}
flatpak run net.mkiol.SpeechNote --verbose --gen-checksums
أي مساهمة مرحب بها للغاية!
يتم استضافة المشروع على كل من Github و Gitlab. لا تتردد في إنشاء PR/MR ، أو الإبلاغ عن مشكلة أو reqest لميزة جديدة على النظام الأساسي الذي تفضله أكثر.
ملفات الترجمة بتنسيق QT موجودة في دليل translations .
الطريقة المفضلة للمساهمة في الترجمة هي عبر خدمة Transifex ، ولكن إذا كنت ترغب في إنشاء PR/MR مباشرة ، فيرجى القيام بذلك.
إذا وجدت مذكرة الكلام مفيدة وترغب في دعم هذا المشروع ، فيرجى التفكير في القيام بواحد أو اثنين مما يلي:
تعتمد ملاحظة الكلام على مشاريع المصدر المفتوح:
ملاحظة الكلام هو مشروع مفتوح المصدر. يتم إصدار رمز المصدر ضمن الإصدار 2.0 ترخيص Mozilla.
مكتبات الطرف الثالث:
تم نسخ الملفات الموجودة في الدليل nonbreaking_prefixes من مشروع MosesDecoder وتوزيعه بموجب ترخيص GNU Lesser General Public V2.1.