返回 MoneyPrinterTurbo
README-ar.md
根目录 / README-ar.md
1 <div align="center">
2 <h1 align="center">MoneyPrinterTurbo 💸</h1>
3
4 <p align="center">
5 <a href="https://github.com/harry0703/MoneyPrinterTurbo/stargazers"><img src="https://img.shields.io/github/stars/harry0703/MoneyPrinterTurbo.svg?style=for-the-badge" alt="Stargazers"></a>
6 <a href="https://github.com/harry0703/MoneyPrinterTurbo/issues"><img src="https://img.shields.io/github/issues/harry0703/MoneyPrinterTurbo.svg?style=for-the-badge" alt="Issues"></a>
7 <a href="https://github.com/harry0703/MoneyPrinterTurbo/network/members"><img src="https://img.shields.io/github/forks/harry0703/MoneyPrinterTurbo.svg?style=for-the-badge" alt="Forks"></a>
8 <a href="https://github.com/harry0703/MoneyPrinterTurbo/blob/main/LICENSE"><img src="https://img.shields.io/github/license/harry0703/MoneyPrinterTurbo.svg?style=for-the-badge" alt="License"></a>
9 </p>
10
11 <h3>العربية | <a href="README-en.md">English</a> | <a href="README.md">简体中文</a></h3>
12
13 <div align="center">
14 <a href="https://trendshift.io/repositories/8731" target="_blank"><img src="https://trendshift.io/api/badge/repositories/8731" alt="harry0703%2FMoneyPrinterTurbo | Trendshift" style="width: 250px; height: 55px;" width="250" height="55"/></a>
15 </div>
16
17 ما عليك سوى تقديم <b>موضوع</b> أو <b>كلمة مفتاحية</b> للفيديو، وسيقوم التطبيق تلقائياً بتوليد نص الفيديو،
18 ومواد الفيديو، والترجمة، وموسيقى الخلفية، ثم تركيبها في فيديو قصير عالي الدقة.
19
20 ### واجهة الويب (WebUI)
21
22 ![](docs/webui-en.jpg)
23
24 ### واجهة الـ API
25
26 ![](docs/api.jpg)
27
28 </div>
29
30 ## المميزات 🎯
31
32 - [x] بنية **MVC** كاملة، وكود **واضح التنظيم** وسهل الصيانة، يدعم كلاً من `API` و`واجهة الويب`
33 - [x] يدعم **توليد نص الفيديو بالذكاء الاصطناعي**، إضافةً إلى **النص المخصّص**
34 - [x] يدعم أحجام **فيديو عالي الدقة** متنوعة
35 - [x] عمودي 9:16، `1080x1920`
36 - [x] أفقي 16:9، `1920x1080`
37 - [x] يدعم **توليد الفيديو دفعةً واحدة**، فيمكن إنشاء عدة فيديوهات معاً ثم اختيار الأفضل
38 - [x] يدعم ضبط **مدة مقاطع الفيديو**، مما يسهّل التحكم في تكرار تبديل المواد
39 - [x] يدعم نص الفيديو بكل من **الصينية** و**الإنجليزية**
40 - [x] يدعم **تركيب أصوات متعددة**، مع **معاينة فورية** للنتيجة
41 - [x] يدعم **توليد الترجمة**، مع إمكانية ضبط `الخط` و`الموضع` و`اللون` و`الحجم`، كما يدعم `تحديد إطار الترجمة`
42 - [x] يدعم **موسيقى الخلفية**، إما عشوائية أو ملفات موسيقى محدّدة، مع إمكانية ضبط `مستوى صوت موسيقى الخلفية`
43 - [x] مصادر مواد الفيديو **عالية الدقة** و**خالية من حقوق الملكية**، كما يمكنك استخدام **موادك المحلية** الخاصة
44 - [x] يدعم التكامل مع نماذج متعددة مثل **OpenAI** و**Moonshot** و**Azure** و**gpt4free** و**one-api** و**Qwen** و**Google Gemini** و**Ollama** و**DeepSeek** و**MiniMax** و**ERNIE** و**Pollinations** و**ModelScope** وغيرها
45
46 ## عروض فيديو توضيحية 📺
47
48 ### عمودي 9:16
49
50 <table>
51 <thead>
52 <tr>
53 <th align="center"><g-emoji class="g-emoji" alias="arrow_forward">▶️</g-emoji> كيف تضيف المتعة إلى حياتك </th>
54 <th align="center"><g-emoji class="g-emoji" alias="arrow_forward">▶️</g-emoji> ما معنى الحياة</th>
55 </tr>
56 </thead>
57 <tbody>
58 <tr>
59 <td align="center"><video src="https://github.com/harry0703/MoneyPrinterTurbo/assets/4928832/a84d33d5-27a2-4aba-8fd0-9fb2bd91c6a6"></video></td>
60 <td align="center"><video src="https://github.com/harry0703/MoneyPrinterTurbo/assets/4928832/112c9564-d52b-4472-99ad-970b75f66476"></video></td>
61 </tr>
62 </tbody>
63 </table>
64
65 ### أفقي 16:9
66
67 <table>
68 <thead>
69 <tr>
70 <th align="center"><g-emoji class="g-emoji" alias="arrow_forward">▶️</g-emoji> ما معنى الحياة</th>
71 <th align="center"><g-emoji class="g-emoji" alias="arrow_forward">▶️</g-emoji> لماذا تمارس الرياضة</th>
72 </tr>
73 </thead>
74 <tbody>
75 <tr>
76 <td align="center"><video src="https://github.com/harry0703/MoneyPrinterTurbo/assets/4928832/346ebb15-c55f-47a9-a653-114f08bb8073"></video></td>
77 <td align="center"><video src="https://github.com/harry0703/MoneyPrinterTurbo/assets/4928832/271f2fae-8283-44a0-8aa0-0ed8f9a6fa87"></video></td>
78 </tr>
79 </tbody>
80 </table>
81
82 ## متطلبات النظام 📦
83
84 - المنصّات المُوصى بها: Windows 10+ أو macOS 11+ أو توزيعة Linux رئيسية
85 - وجود كرت رسومات (GPU) ليس ضرورياً، لكنه مُستحسَن إن أردت نسخاً صوتياً محلياً أسرع، أو معالجة فيديو أسرع، أو توليداً دفعياً أكثر سلاسة
86
87 | العنصر | الحد الأدنى | المُوصى به | الأمثل |
88 | --- | --- | --- | --- |
89 | المعالج (CPU) | 4 أنوية | 6 إلى 8 أنوية | 8+ أنوية |
90 | الذاكرة (RAM) | 4 GB | 8 GB | 16+ GB |
91 | كرت الرسومات (GPU) | غير مطلوب | 4+ GB VRAM | 8+ GB VRAM |
92
93 - إذا كنت تعتمد أساساً على نماذج LLM السحابية، وخدمات TTS السحابية، ومصادر المواد عبر الإنترنت، فإن المعالج والذاكرة أهم من كرت الرسومات
94 - إذا كنت تستخدم `faster-whisper` أو التوليد الدفعي أو المعالجة المحلية الثقيلة، فسيحسّن كرت الرسومات الإنتاجية بشكل ملحوظ
95
96 ## البدء السريع 🚀
97
98 ### المسارات المُوصى بها
99
100 - مستخدمو Windows: استخدم الحزمة الجاهزة بنقرة واحدة أولاً للتجربة المحلية الأسرع
101 - مستخدمو MacOS / Linux: استخدم `uv sync --frozen` كمسار الإعداد المحلي الأساسي
102 - إذا أردت بيئة تشغيل أكثر عزلاً: استخدم النشر عبر Docker
103
104 ### التشغيل في Google Colab
105 تريد تجربة MoneyPrinterTurbo دون إعداد بيئة محلية؟ شغّله مباشرةً في Google Colab!
106
107 [![Open in Colab](https://colab.research.google.com/assets/colab-badge.svg)](https://colab.research.google.com/github/harry0703/MoneyPrinterTurbo/blob/main/docs/MoneyPrinterTurbo.ipynb)
108
109
110 ### Windows
111
112 الحزمة القابلة للتنزيل ما زالت بناء `v1.2.6` القديم المُجمّع. بعد التنزيل، شغّل `update.bat` أولاً لتحديثه إلى أحدث كود.
113
114 Google Drive (v1.2.6): https://drive.google.com/file/d/1HsbzfT7XunkrCrHw5ncUjFX8XX4zAuUh/view?usp=sharing
115
116 بعد التنزيل، يُنصح بالنقر المزدوج على `update.bat` أولاً للتحديث إلى **أحدث كود**، ثم النقر المزدوج على `start.bat` للتشغيل
117
118 بعد التشغيل، سيُفتح المتصفح تلقائياً (إن فُتح فارغاً، يُنصح باستخدام **Chrome** أو **Edge**)
119
120 ### الأنظمة الأخرى
121
122 لم تُنشأ حزم تشغيل بنقرة واحدة بعد. راجع قسم **التثبيت والنشر** أدناه. يُنصح باستخدام **docker** للنشر لأنه أكثر سهولة.
123
124 ## التثبيت والنشر 📥
125
126 ### المتطلبات المُسبقة
127
128 #### ① استنساخ المشروع
129
130 ```shell
131 git clone https://github.com/harry0703/MoneyPrinterTurbo.git
132 ```
133
134 #### ② تعديل ملف الإعدادات
135
136 - انسخ ملف `config.example.toml` وأعد تسميته إلى `config.toml`
137 - اتبع التعليمات داخل ملف `config.toml` لضبط `pexels_api_keys` و`llm_provider`، وبحسب مزوّد خدمة الـ llm_provider، اضبط مفتاح الـ API المقابل
138
139 ### النشر عبر Docker 🐳
140
141 #### ① تشغيل حاوية Docker
142
143 إذا لم تكن قد ثبّت Docker، فثبّته أولاً https://www.docker.com/products/docker-desktop/
144 إذا كنت تستخدم نظام Windows، فراجع وثائق Microsoft:
145
146 1. https://learn.microsoft.com/en-us/windows/wsl/install
147 2. https://learn.microsoft.com/en-us/windows/wsl/tutorials/wsl-containers
148
149 ```shell
150 cd MoneyPrinterTurbo
151 docker-compose up
152 ```
153
154 > ملاحظة: أحدث إصدار من docker يثبّت docker compose تلقائياً على هيئة إضافة (plug-in)، ويتغيّر أمر التشغيل إلى `docker compose up`
155
156 #### ② الوصول إلى واجهة الويب
157
158 افتح متصفحك وزر http://127.0.0.1:8501
159
160 #### ③ الوصول إلى واجهة الـ API
161
162 افتح متصفحك وزر http://0.0.0.0:8080/docs أو http://0.0.0.0:8080/redoc
163
164 ### النشر اليدوي 📦
165
166 #### ① إنشاء بيئة Python افتراضية
167
168 يُنصح باستخدام [uv](https://docs.astral.sh/uv/) لإدارة بيئة Python والاعتماديات، مع Python `3.11` كبيئة تشغيل افتراضية.
169
170 ```shell
171 git clone https://github.com/harry0703/MoneyPrinterTurbo.git
172 cd MoneyPrinterTurbo
173 uv python install 3.11
174 uv sync --frozen
175 ```
176
177 إذا كنت لا تستخدم `uv` بعد، فما زال بإمكانك استخدام `venv + pip`.
178
179 ```shell
180 python3.11 -m venv .venv
181 source .venv/bin/activate
182 pip install -r requirements.txt
183 ```
184
185 ملاحظات:
186 - أصبح `pyproject.toml` هو ملف الاعتماديات الأساسي.
187 - يُثبّت `uv.lock` البيئة المُحدّدة، لذا يُنصح بـ `uv sync --frozen` افتراضياً.
188 - يُحتفظ بـ `requirements.txt` فقط للتثبيت القديم المعتمد على `pip`.
189
190 #### ② تثبيت ImageMagick
191
192 ###### Windows:
193
194 - نزّل من https://imagemagick.org/script/download.php واختر نسخة Windows، وتأكد من اختيار نسخة **المكتبة الساكنة (static library)**، مثل ImageMagick-7.1.1-32-Q16-x64-**static**.exe
195 - ثبّت ImageMagick الذي نزّلته، **ولا تغيّر مسار التثبيت**
196 - عدّل ملف الإعدادات `config.toml`، واضبط `imagemagick_path` على مسار التثبيت الفعلي لديك
197
198 ###### MacOS:
199
200 ```shell
201 brew install imagemagick
202 ```
203
204 ###### Ubuntu
205
206 ```shell
207 sudo apt-get install imagemagick
208 ```
209
210 ###### CentOS
211
212 ```shell
213 sudo yum install ImageMagick
214 ```
215
216 #### ③ تشغيل واجهة الويب 🌐
217
218 لاحظ أنك بحاجة لتنفيذ الأوامر التالية في `المجلد الجذر` لمشروع MoneyPrinterTurbo
219
220 ###### Windows
221
222 ```shell
223 uv run streamlit run ./webui/Main.py --browser.gatherUsageStats=False --server.showEmailPrompt=False
224 ```
225
226 إذا كنت قد فعّلت البيئة الافتراضية يدوياً، فما زال بإمكانك تشغيل:
227
228 ```bat
229 webui.bat
230 ```
231
232 ###### MacOS أو Linux
233
234 ```shell
235 uv run streamlit run ./webui/Main.py --browser.gatherUsageStats=False --server.showEmailPrompt=False
236 ```
237
238 إذا كنت قد فعّلت البيئة الافتراضية يدوياً، فما زال بإمكانك تشغيل:
239
240 ```shell
241 sh webui.sh
242 ```
243
244 بعد التشغيل، سيُفتح المتصفح تلقائياً
245
246 #### ④ تشغيل خدمة الـ API 🚀
247
248 ```shell
249 uv run python main.py
250 ```
251
252 إذا كنت قد فعّلت البيئة الافتراضية يدوياً، فما زال بإمكانك تشغيل:
253
254 ```shell
255 python main.py
256 ```
257
258 ## شكر خاص 🙏
259
260 نظراً لأن **نشر** و**استخدام** هذا المشروع يمثّل عتبةً معينة لبعض المستخدمين المبتدئين، نودّ أن نتقدّم بشكر خاص إلى
261
262 **RecCloud (منصة خدمات وسائط متعددة مدعومة بالذكاء الاصطناعي)** لتقديمها خدمة `AI Video Generator` مجانية مبنية على هذا
263 المشروع. فهي تتيح الاستخدام عبر الإنترنت دون نشر، وهو أمر مريح للغاية.
264
265 - النسخة الصينية: https://reccloud.cn
266 - النسخة الإنجليزية: https://reccloud.com
267
268 ![](docs/reccloud.com.jpg)
269
270 ## شكراً للرعاية 🙏
271
272 شكراً لـ Picwish https://picwish.com على دعمها ورعايتها لهذا المشروع، مما يتيح التحديث والصيانة المستمرّين.
273
274 تركّز Picwish على **مجال معالجة الصور**، وتوفّر مجموعة غنية من **أدوات معالجة الصور** التي تبسّط العمليات المعقّدة إلى حدٍّ بعيد، فتجعل معالجة الصور أسهل حقاً.
275
276 ![picwish.jpg](docs/picwish.com.jpg)
277
278 بعد التشغيل، يمكنك عرض `وثائق الـ API` على http://127.0.0.1:8080/docs واختبار الواجهة مباشرةً عبر الإنترنت
279 لتجربة سريعة.
280
281 ## تركيب الصوت 🗣
282
283 يمكن عرض قائمة بجميع الأصوات المدعومة هنا: [قائمة الأصوات](./docs/voice-list.txt)
284
285 2024-04-16 v1.1.2 أُضيفت 9 أصوات تركيب صوتي جديدة من Azure تتطلب ضبط مفتاح API. هذه الأصوات تبدو أكثر واقعية.
286
287 ## توليد الترجمة 📜
288
289 حالياً، هناك طريقتان لتوليد الترجمة:
290
291 - **edge**: سرعة توليد أعلى، وأداء أفضل، ولا متطلبات خاصة لمواصفات الحاسوب، لكن الجودة قد تكون غير مستقرة
292 - **whisper**: سرعة توليد أبطأ، وأداء أضعف، ومتطلبات خاصة لمواصفات الحاسوب، لكن الجودة أكثر موثوقية
293
294 يمكنك التبديل بينهما بتعديل `subtitle_provider` في ملف الإعدادات `config.toml`
295
296 يُنصح باستخدام وضع `edge`، والتبديل إلى وضع `whisper` إذا كانت جودة الترجمة المُولّدة غير مُرضية.
297
298 > ملاحظة:
299 >
300 > 1. في وضع whisper، تحتاج إلى تنزيل ملف نموذج من HuggingFace بحجم نحو 3GB، فتأكد من اتصال إنترنت جيد
301 > 2. إذا تُرك فارغاً، فهذا يعني أنه لن تُولَّد أي ترجمة.
302
303 > بما أن HuggingFace غير متاح في الصين، يمكنك استخدام الطرق التالية لتنزيل ملف نموذج `whisper-large-v3`
304
305 روابط التنزيل:
306
307 - Baidu Netdisk: https://pan.baidu.com/s/11h3Q6tsDtjQKTjUu3sc5cA?pwd=xjs9
308 - Quark Netdisk: https://pan.quark.cn/s/3ee3d991d64b
309
310 بعد تنزيل النموذج، فُكّ ضغطه وضع المجلد بالكامل في `.\MoneyPrinterTurbo\models`،
311 وينبغي أن يبدو مسار الملف النهائي هكذا: `.\MoneyPrinterTurbo\models\whisper-large-v3`
312
313 ```
314 MoneyPrinterTurbo
315 ├─models
316 │ └─whisper-large-v3
317 │ config.json
318 │ model.bin
319 │ preprocessor_config.json
320 │ tokenizer.json
321 │ vocabulary.json
322 ```
323
324 ## موسيقى الخلفية 🎵
325
326 تقع موسيقى خلفية الفيديوهات في مجلد المشروع `resource/songs`.
327 > يتضمّن المشروع الحالي بعض الموسيقى الافتراضية من فيديوهات YouTube. إن وُجدت مشكلات حقوق نشر، فالرجاء حذفها.
328
329 ## خطوط الترجمة 🅰
330
331 تقع خطوط عرض ترجمة الفيديو في مجلد المشروع `resource/fonts`، ويمكنك أيضاً إضافة خطوطك الخاصة.
332
333 ## الأسئلة الشائعة 🤔
334
335 ### ❓RuntimeError: No ffmpeg exe could be found
336
337 في الوضع الطبيعي، يُنزَّل ffmpeg ويُكتشَف تلقائياً.
338 لكن إذا كانت بيئتك تعاني مشكلات تمنع التنزيل التلقائي، فقد تواجه الخطأ التالي:
339
340 ```
341 RuntimeError: No ffmpeg exe could be found.
342 Install ffmpeg on your system, or set the IMAGEIO_FFMPEG_EXE environment variable.
343 ```
344
345 في هذه الحالة، يمكنك تنزيل ffmpeg من https://www.gyan.dev/ffmpeg/builds/ ثم فك ضغطه وضبط `ffmpeg_path` على مسار
346 التثبيت الفعلي لديك.
347
348 ```toml
349 [app]
350 # الرجاء الضبط بحسب مسارك الفعلي، ولاحظ أن فاصل المسارات في Windows هو \\
351 ffmpeg_path = "C:\\Users\\harry\\Downloads\\ffmpeg.exe"
352 ```
353
354 ### ❓ImageMagick is not installed on your computer
355
356 [issue 33](https://github.com/harry0703/MoneyPrinterTurbo/issues/33)
357
358 1. اتبع `عنوان التنزيل` الموجود في `الإعداد النموذجي`
359 لتثبيت https://imagemagick.org/archive/binaries/ImageMagick-7.1.1-30-Q16-x64-static.exe (باستخدام المكتبة الساكنة)
360 2. لا تثبّت في مسار يحتوي على أحرف صينية لتجنّب مشكلات غير متوقّعة
361
362 [issue 54](https://github.com/harry0703/MoneyPrinterTurbo/issues/54#issuecomment-2017842022)
363
364 لأنظمة Linux، يمكنك تثبيته يدوياً، راجع https://cn.linux-console.net/?p=16978
365
366 شكراً لـ [@wangwenqiao666](https://github.com/wangwenqiao666) على بحثه واستكشافه
367
368 ### ❓ImageMagick's security policy prevents operations related to temporary file @/tmp/tmpur5hyyto.txt
369
370 يمكنك إيجاد هذه السياسات في ملف إعدادات ImageMagick policy.xml.
371 يقع هذا الملف عادةً في /etc/ImageMagick-`X`/ أو موقع مشابه في مجلد تثبيت ImageMagick.
372 عدّل المُدخل الذي يحتوي على `pattern="@"`، وغيّر `rights="none"` إلى `rights="read|write"` للسماح بعمليات القراءة والكتابة على الملفات.
373
374 ### ❓OSError: [Errno 24] Too many open files
375
376 تنتج هذه المشكلة عن حدّ النظام لعدد الملفات المفتوحة. يمكنك حلّها بتعديل حدّ فتح الملفات في النظام.
377
378 تحقّق من الحدّ الحالي:
379
380 ```shell
381 ulimit -n
382 ```
383
384 إن كان منخفضاً جداً، يمكنك زيادته، مثلاً:
385
386 ```shell
387 ulimit -n 10240
388 ```
389
390 ### ❓Whisper model download failed, with the following error
391
392 LocalEntryNotfoundEror: Cannot find an appropriate cached snapshotfolderfor the specified revision on the local disk and
393 outgoing trafic has been disabled.
394 To enablerepo look-ups and downloads online, pass 'local files only=False' as input.
395
396 أو
397
398 An error occurred while synchronizing the model Systran/faster-whisper-large-v3 from the Hugging Face Hub:
399 An error happened while trying to locate the files on the Hub and we cannot find the appropriate snapshot folder for the
400 specified revision on the local disk. Please check your internet connection and try again.
401 Trying to load the model directly from the local cache, if it exists.
402
403 الحل: [اضغط لمعرفة كيفية تنزيل النموذج يدوياً من قرص الشبكة](#توليد-الترجمة-)
404
405 ## الملاحظات والاقتراحات 📢
406
407 - يمكنك إرسال [issue](https://github.com/harry0703/MoneyPrinterTurbo/issues) أو
408 [pull request](https://github.com/harry0703/MoneyPrinterTurbo/pulls).
409
410 ## الرخصة 📝
411
412 اضغط لعرض ملف [`LICENSE`](LICENSE)
413
414 ## تاريخ النجوم (Star History)
415
416 [![Star History Chart](https://api.star-history.com/svg?repos=harry0703/MoneyPrinterTurbo&type=Date)](https://star-history.com/#harry0703/MoneyPrinterTurbo&Date)
417
417 lines MARKDOWN