BLaCk_iCe
14-3-2012, 10:01 PM
السلام عليكم و رحمة الله و بركاته
يسعدني اليوم أن أقدّم درسا متواضعا الهدف منه تدريب المنتجين العرب على إستخدام راوات الــ TS في
إنتاجاتهم من أجل إصدارات عربيّة ذات جودة أفضل
سنقسّم الدّرس إلى خمسة مراحل بإذن الله
و لكن قبل ذلك أفضّل أن أبدأ بــتعريفات بسيطة حول:
*ماهو الـ TS ؟
الـ TS أو الـ Transported stream يتممّ تسجيله مباشرة من التلفاز
بواسطة أجهزة خاصّة داعمة للـ HD يكون حجمه كبيرا نسبيّا
حوالي مابين 2 إلى 3 جيغا بالنسبة لحلقة الأنمي ذات مدّة 23 دقيقة
أمّا أبعاده فستكون 1440*1080 بترميز 3:4
( طبعا هاته الخصائص خاصة بالأنمي المسجّل من القنوات اليابانيّة)
*لمَ أنتج إنطلاقا من TS ؟
عندما تنتج إنطلاقا من work raw فإنّ الناتج سيكون أقلّ جودة من لو أنّك إعتمدت على TS مباشرة
و هذا راجع إلى كون الـ work raw قد تمّ ضغطه مرّة من إنطلاقا من الـ TS ثمّ تأتي
أنت و تضغطه مرّة ثانيّة و المعروف أنّه عند ضغطنا للفيديو فإنّنا سنفقد بعض التفاصيل لذا فالناتج دائما يكون
أقلّ جودة من الفيديو الأصلي لأن الضغط يتسبّب في فقدان نسبة من البيانات ترتبط قيمتها بالإعدادات التي وضعتها
*من أين أحصل على الـ TS ؟
يمكنكم الحصول على راوات الـ TS إمّا من مواقع التورنت كـ nyaa.eu
أو برامج مشاركة الملفّات كـ perfect dark و share2x
أو من موقع jpddl.com
أيضا هناك من يبيعه على النت مقابل مبلغ يتراوح ما بين 3 إلى 5 دولارات للحلقة الواحدة
الآن بعد هاته التعريفات البسيطة سننطلق لشرح طريقة الإنتاج مباشرة من الــ TS و سنبدأ بــ:
------------------------------------------------------------------
*المرحلة الأولى :
أوّلا و قبل كلّ شيء إفتح مجلدّا جديدا في مكان ما داخل حاسوبك
لكي يكون ورشة لعملك وضع فيها راو الـ TS ثمّ حمّل هذا البرنامج
DGMPGDec
(http://hank315.nl/files/DGdecode/dgmpgdec158.zip)
بعد التحميل قم بفكّ الضغط عن الملف داخل ورشة العمل
الآن قم بنسخ هذا الملّف DGDecode.dll
و ضعه في مجلّد الـ plugins الخاص ببرنامج avisynth
الموجود في هذا المسار
C:\Program Files\AviSynth 2.5\plugins
بالنسبة لمستخدمي windows xp
أو في هذا المسار
C:\Program Files (x86)\AviSynth 2.5\plugins
بالنسبة لمستخدمي windows 7
الآن عد إلى ورشة العمل الخاصة بك و قم بفتح برنامج DGMPGDec بالضغط على هذه الأيقونة
http://img15.hostingpics.net/pics/14298620120313132215.png
فتظهر لك واجهة البرنامج كما توضّحه الصورة
http://img15.hostingpics.net/pics/946940492.png
إضغط على
file>open
ثم إستدع الراو ts الذي تريد العمل عليه ثم إضغط على ok
http://img15.hostingpics.net/pics/359207764.png
http://img15.hostingpics.net/pics/407047285.png
الآن إضغط على
video>field operation>Honor Pulldown Flags
مثلما توضّحه الصورة في الأسفل
http://img15.hostingpics.net/pics/736268303.png
أيضا إضغط على
audio>Output Method>Demux All Tracks
مثلما توضّحه الصورة في الأسفل
http://img15.hostingpics.net/pics/426712576.png
الآن و بعد القيام بكلّ هذا إضغط على
File > Save Project
و حدّد مكان الحفظ في مجلّد ورشة العمل التي فتحتها في البداية
مثلما توضّحه الصورة في الأسفل
http://img15.hostingpics.net/pics/298889907.png
فسيظهر لك هذا الجدول
http://img15.hostingpics.net/pics/743865758.png
إنتظر أن يكتب لك finish في الخانة المحدّدة بالأصفر ثم أغلقه
الآن توجّه إلى مجلّد ورشة العمل ستلاحظ ظهور ملفّين جديدين
أحدهما بإمتداد d2v. يحتوي على جميع المعلومات الخاص بفك تشفير ملّف الـ TS
و الثاني هو بإمتداد aac. عبارة عن ملفّ الصّوت
مثلما توضّحه الصورة في الأسفل
http://img15.hostingpics.net/pics/739376729.png
بهذا نكون قد أنهينا المرحلة الأولى و ننتقل الآن إلى :
-----------------------------------------------
*المرحلة الثانيّة:
في هذه المرحلة سنقوم بتحويل ملّف الصّوت إلى wav لتسهيل عمليّة قصّه
فيما بعد لذا قم بتحميل هذا الملّف
FAAD2 (http://www.rarewares.org/files/aac/faad2-20100614.zip)
ثم قم بفكّ الضّغط عنه داخل ورشة العمل
ستظهر لك هاته الملفّات المبيّنة في الصورة أسفله
http://img15.hostingpics.net/pics/3138037310.png
الآن قم بسحب ملّف ملفّ الصّوت ذو الإمتداد aac.
الذي حصلنا عليه في المرحلة الأولى إلى هذه الأيقونة faad.exe
هنا ستظهر شاشة سوداء مثل هاته
http://img15.hostingpics.net/pics/4238769611.png
إنتظر إلى أن تختفي بعدها ستلاحظ ظهور ملفّ جديد بإمتداد wav. حجمه حوالي 300 ميغا
و بهذا نكون قد أنهينا المرحلة الثانيّة و ننتقل إلى :
---------------------------------------------
*المرحلة الثالثة:
هنا تبدأ مرحلة الجّد، أوّلا حمّل هذا الملّف
TIVTCv105.zip (http://bengal.missouri.edu/~kes25c/TIVTCv105.zip)
ثمّ فكّ الضغط عنه في مكان ما بعد ذلك من الملفّات التي ستظهر لك
قم بنسخ هذا الملّف TIVTC.dll
و ضعه في مجلّد الـ plugins الخاص ببرنامج avisynth
الموجود في هذا المسار
C:\Program Files\AviSynth 2.5\plugins
بالنسبة لمستخدمي windows xp
أو في هذا المسار
C:\Program Files (x86)\AviSynth 2.5\plugins
بالنسبة لمستخدمي windows 7
أيضا حمّل برنامج
avsp
(http://www.avisynth.org/qwerpoi/AvsP_v2.0.2.zip)
و فكّ عنه الضّغط في أي مكان تريده من حاسوبك ثم إفتحه ستكون واجهته هكذا
http://img15.hostingpics.net/pics/6015321112.png
إضغط على
file>save --SS-- as
سمّ الملّف loseless و إحفظه في ورشة العمل
الآن بعد ذلك و في برنامج الـ avsp أكتب داخله السطر الآتي:
MPEG2Source("*****.d2v")
طبعا مكان النجوم ضع إسم الملّف الذي إستخرجته في المرحلة الأولى
الآن إضغط على F5
ستلاحظ ظهور الحلقة التي تعمل عليها مثلما توضّحه الصورة في الأسفل
http://img15.hostingpics.net/pics/2593301513.png
حرّك المؤشّر في الأسفل للتجوّل بحريّة بين مشاهد الحلقة
لابّد انّك ستلاحظ هذا العيب :
http://img15.hostingpics.net/pics/6942847014.png
هذا ما يسمّى بالـ combing (التمشيط بالعربيّة ) و هذا راجع إلى كون العرض في شاشة التلفاز يكون بنظام interlaced
بحيث يتّم تحديث الصورة على جزئين يتمّ عرضهما بفارق زمنّي بينهما
مثال على ذلك في هاته الصورة
http://img15.hostingpics.net/pics/264378framefields.gif
لاحظوا جيّدا الصورة الأصلية و كيف يتمّ تقسيمها إلى جزئين
و عند العرض يتّم أولا عرض الخطوط الحمراء ( أو الزرقاء ) ثمّ يتّم عرض الخطوط الزرقاء ( او الحمراء )
و لأخذ نظرة عن كيف يتم ذلك فلاحظوا حركة الكرة أسفله
فهي تبيّن لنا كيف يكون البث بنظام interlaced
http://img15.hostingpics.net/pics/505515tvint.gif
الآن قد يتبادر إلى ذهنكم السؤال التالي :
لماذا الحلقة تظهر بشكل طبيعي في التلفاز و لا تظهر لنا هاته العيوب إلاّ في شاشة الحاسوب ؟
الجواب هو ان شاشات الحواسيب تعرض بنظام progressive بحيث يكون يتمّ تحديث الصورة كاملة
مثلما تظهره الصورة في الأسفل
http://img15.hostingpics.net/pics/457781compprog.gif
لاحظ كيف الكرة تتحرّك كاملة على المجال الزمني طبعا هذا في حالة كان الفيديو المعروض عليها بنظام prgressive
أمّا في حالة كان بنظام Interlaced فإنّ العرض سيكون مثلما توضّحه الصورة أسفله
http://img15.hostingpics.net/pics/874423compint.gif
كان هذا بين قوسين أتمنّى أن اكود قد وفّقت في شرح نقطة التداخل للأمانة فقط فالصور فوق ليست من صنعي بل أخذتها
من مقالة على النت لمن أراد الإطلاع عليها فليضغط هنا (http://neuron2.net/LVG/interlacing.html)
الأن كيف السبيل للقضاء على هذا العيب
أضيفوا هذا السطر لسكريبت الـ avs الخاص بكم
TFM(d2v="*****.d2v")
طبعا مكان النجوم ضع إسم الملّف الذي إستخرجته في المرحلة الأولى
الآن إضغط على F5 و ستلاحظ ظهور الصورة كاملة و قد إختفى عيب الـ combing
http://img15.hostingpics.net/pics/6923594715.png
طيّب مالذي حصل ؟ و أين ذهب ذلك العيب ؟
نحن طبّقنا فلتر TFM وظيفته هي تجميع كلّ فريم مع الفريم الذي يوافقه بحيث تصبح الصورة كاملة
الآن ننتقل إلى المرحلة التالية
نضيف هذه السطور
video = last
WAVSource("***** PID 112 DELAY -398ms.wav")
DelayAudio(-398./1000)
AudioDubEx(video, last)
ليصبح السكريبت من الشكل التالي
MPEG2Source("*****.d2v")
TFM(d2v="*****.d2v")
video = last
WAVSource("***** PID 112 DELAY -398ms.wav")
DelayAudio(-398./1000)
AudioDubEx(video, last)
الأوامر الثلاثة الأخيرة هي لإستدعاء ملّف الصّوت
الآن سنقوم بقصّ الإعلانات فكما سبق و ذكرت الـ TS يتمّ تسجيله مباشرة من شاشة التلفاز
لذا تكون فيه إعلانات تلفزيونيّة نحن لانحتاجها لذا سنقوم بقصّها بإستخدام الأمر trim
بحيث يكون الأمر على هذا الشّكل
trim(بداية الفريم , نهاية الفريم ) + trim(بداية الفريم , نهاية الفريم ) + trim(بداية الفريم , نهاية الفريم )
ركزّوا معي جيّدا هذا الأمر يعني المقطع الذي تريد إنتاجه و ليس قصّه
بمعنى آخر عندما أضع أمرا مثل هذا
trim(936,4382)+trim(6181,22364)+trim(24164,48887)+ trim(50686,51285)
فهذا معناه أنّني سأنتج المقطع الذي يبتدئ من الفريم 936 و ينتهي عند 4382
إضافة إلى المقطع الذي يبتدئ من الفريم 6181 نتهي عند 48887 ...إلخ
أرجو ان تكون الفكرة قد وصلت الآن السؤال المهّم كيف نقوم بتحديد الفريمات
الأمر سهل يمكنكم ذلك بطريقتين إمّا عن طريق الميغوي أو عن طريق برنامج Avsp
سأشرح طريقة واحدة فقط بواسطة برنامج Avsp أما الميغوي فهي نفس الطريقة
إتجّه إلى البرنامج Avsp الذي كتبت فيه هاته الأوامر من قبل
MPEG2Source("*****.d2v")
TFM(d2v="*****.d2v")
video = last
WAVSource("***** PID 112 DELAY -398ms.wav")
DelayAudio(-398./1000)
AudioDubEx(video, last)
و إضغط على F5 ستظهر لك فيديو الحلقة الآن بواسطة المؤشر التي تبيّنه الصّورة
http://img15.hostingpics.net/pics/6923594715.png
قم يتقديم الحلقة أو تأخيرها إلى أن تصل إلى الإعلانات
الآن بواسطة هذين الزّرين قم بالتقديم فريم فريم إلى أن تصل إلى بداية أو نهاية الإعلان ثم ثم بنسخ تلك الأرقام عندك
الآن ضعها في هذا الأمر و تذكّر شيئا مهمّا
فريم نهاية الإعلان هو فريم بداية الحلقة لذا إنتبه عندما تقوم بكتابتها داخل السكريبت
كمثال بسيط في الأمر trim(936,4382)
الفيديو الذي عندي يبتدئ بإعلان هذا الغعلان ينتهي عند الفريم 936
لذا فإنني سأضعه هو الاوّل في أمر الـ trim أمّا الرّقم 4382 فهو يمثّل نهاية المقطع الذي سأنتجه و بداية إعلان آخر
الآن بعد أن شرحنا هاته النقطة نضيف في الأخير هذا الأمر
TDecimate()
قد تتسألون ما وظيفة هذا الأمر
ببساطة هو سيقوم بحذف جميع الفريمات المكرّرة التي نتجت عن شبك الفريمات بواسطة الأمر TFM
الآن و بعد أنهينا هاته المرحلة صار عندنا سكريبت من هذا الشّكل
MPEG2Source("*****.d2v")
TFM(d2v="*****.d2v")
video = last
WAVSource("***** PID 112 DELAY -398ms.wav")
DelayAudio(-398./1000)
AudioDubEx(video, last)
trim(بداية الفريم , نهاية الفريم ) + trim(بداية الفريم , نهاية الفريم ) + trim(بداية الفريم , نهاية الفريم )
TDecimate()
الآن نتّجه إلى :
----------------------------------------------------------
* المرحلة الرابعة :
في هاته المرحلة سنقوم بإنتاج اللوزليس ولكن قبل أن نبدأ بإنتاجها سأشرح معناها و فائدتها
اللوزليس هي إنتاج فيديو من دون ضغط ما يعني من دون فقدان بيانات لانّنا و كما نعلم فضغط الفيديو يفقده بعض البيانات
ما الفائدة منها : إنتاح اللوزليس سيكون سريعا يتراوح بين 15 إلى 30 دقيقة حسب قوّة الحاسوب
المدّة قد تزيد في حال كانت هناك فلاتر كثيرة و معقّدة و قد تصل إلى 24 ساعة أو أكثر
و لكنّها تبقى أسرع من أن تنتج مباشرة لأنّها تسمح لك بتصليح الأخطاء فمثلا
لو انّك نسيت إعلانا لم تقم بقصّه او كان هناك في تحديد الفريمات أو ظهر مشكل تداخل
فإنه يمكنك تفادي ذلك ضف إلى ذلك انّ الإنتاج النهائي سيكون أسرع نسبيا عندما تنتجه من اللوزليس
عن ذلك الذي تنتجه مباشرة من الـ TS
المهّم الآن نتّجه إلى الطريقة لإنتاج اللوزليس هناك عدّة طرق إمّا عن طريق برنامج virtualdub عن طريق Huffyuv أو Lagarith
أو عن طريق الأنكودر x264 مباشرة و هذا الأخير هو ما سأشرحه
قم بإنشاء ملّف txt جديد داخل ورشة العمل و أكتب فيه الأمر التالي
x264.exe --qp 0 --output "loseless.mp4" "loseless.avs"
pause
الآن قم بحفظه ثم عدّل إمتداد الملّف من txt إلى .bat
قم بتحميل الأنكودر x264 منها هنا (http://mirror04.x264.nl/x264/32bit/8bit_depth/revision2184/x264.exe)
وضعه داخل مجلّد ورشة العمل ، الآن قم بعمل دبل كليك على ملّف bat و ستلاحظ ظهرو شاشة سوداء مثل
هاته تبيّن بداية إنتاج اللوزليس
http://img15.hostingpics.net/pics/8678726216.png
كلّ ما عليك الآن هو الإنتاظار إلى أن ينتهي لتحصل في الأخير على ملّف بحجم كبير نسبيّا يتراوح ما بين 5 إلى 20 جيغا
حسب نوع و مدّه الفيديو الذي تعمل عليه
أودّ أن أشير إلى نقطة مهمّة ألا و هي أن الملف الناتج سيكون بدون صوت
الآن و بعد أن أنهينا هاته المرحلة نتّجه إلى :
--------------------------------------------------------------
* المرحلة الأخيرة :
في هاته المرحلة سنقوم بالإنتاج النهائي
أوّلا قم بتحميل هذا الملّف FFMpegSource (http://ffmpegsource.googlecode.com/files/ffmpegsource-2.15.7z)
و قم بفك الضّغط عنه داخل ورشة العمل بعده ستظهر لك عدّة ملفّات
قم بنسخ هاذين الملفّين FFMS2.avsi و ffms2.dll داخل المسار
C:\Program Files\AviSynth 2.5\plugins
بالنسبة لمستخدمي windows xp
أو في هذا المسار
C:\Program Files (x86)\AviSynth 2.5\plugins
بالنسبة لمستخدمي windows 7
الآن قم بسحب ملفّ اللوزلس الذي أنتجته داخل هذا الملّف ffmsindex.exe
بنفس الطريقة التي إعتمدناها مع ملفّ الصّوت سابقا
سيظهر عندك ملف جديد بهذا الإمتداد .ffindex و نفس إسم ملف اللوزليس
الآن قم بإنشاء ملفّ avs جديد سمّه ما شئت
داخله أكتب الأوامر التالية
Import("loseless.avs")
video = FFVideoSource("loseless.mp4")
AudioDubEx(video, last)
إضافة إلى أوامر إستدعاء كلّ من ملفّات الترجمة و مقاطع الأفتر و غيرها من الأمور التي
تريد إنتاجها مع الفيديو إن كنت تريد الإنتاج Hardsub
و الآن بعد ان تكمل إعمل حفظ و قم بالإنتاج بطريقتك العاديّة سواء عن طريق الدوس او بواسطة أحد البرامج
في الأخير أرجو ان أكون قد وفّقت في الشّرح و في حال وجدت أي أسئلة فأنا هنا
أريد فقط و قبل أن أختم الدّرس أن انوّه لبعض النقاط المهمّة
الطريقة المشروحة فوق لن تكون صالحة إلاّ في حالة كان الخام خاليا من العيوب
أمّا في حالة العكس فهنا الأمر يستوجب الفلترة
و هي أمر يتطلّب درسا آخر لا أعلم إن كنت سأضعه أنا او يسبقني إليه شخص ما
شيء آخر قد تكون هناك بعض الأخطاء فوق عن غير قصد لأن كل ما كتبته مبنيّ على
ما فهمته في منتديات أجنبيّة لذا في حال كان هناك خطأ فيرجى التنبيه لذلك ليتم التدارك
بعيدا عن التهجّم و التجريح و دمتم بودّ ^^
يسعدني اليوم أن أقدّم درسا متواضعا الهدف منه تدريب المنتجين العرب على إستخدام راوات الــ TS في
إنتاجاتهم من أجل إصدارات عربيّة ذات جودة أفضل
سنقسّم الدّرس إلى خمسة مراحل بإذن الله
و لكن قبل ذلك أفضّل أن أبدأ بــتعريفات بسيطة حول:
*ماهو الـ TS ؟
الـ TS أو الـ Transported stream يتممّ تسجيله مباشرة من التلفاز
بواسطة أجهزة خاصّة داعمة للـ HD يكون حجمه كبيرا نسبيّا
حوالي مابين 2 إلى 3 جيغا بالنسبة لحلقة الأنمي ذات مدّة 23 دقيقة
أمّا أبعاده فستكون 1440*1080 بترميز 3:4
( طبعا هاته الخصائص خاصة بالأنمي المسجّل من القنوات اليابانيّة)
*لمَ أنتج إنطلاقا من TS ؟
عندما تنتج إنطلاقا من work raw فإنّ الناتج سيكون أقلّ جودة من لو أنّك إعتمدت على TS مباشرة
و هذا راجع إلى كون الـ work raw قد تمّ ضغطه مرّة من إنطلاقا من الـ TS ثمّ تأتي
أنت و تضغطه مرّة ثانيّة و المعروف أنّه عند ضغطنا للفيديو فإنّنا سنفقد بعض التفاصيل لذا فالناتج دائما يكون
أقلّ جودة من الفيديو الأصلي لأن الضغط يتسبّب في فقدان نسبة من البيانات ترتبط قيمتها بالإعدادات التي وضعتها
*من أين أحصل على الـ TS ؟
يمكنكم الحصول على راوات الـ TS إمّا من مواقع التورنت كـ nyaa.eu
أو برامج مشاركة الملفّات كـ perfect dark و share2x
أو من موقع jpddl.com
أيضا هناك من يبيعه على النت مقابل مبلغ يتراوح ما بين 3 إلى 5 دولارات للحلقة الواحدة
الآن بعد هاته التعريفات البسيطة سننطلق لشرح طريقة الإنتاج مباشرة من الــ TS و سنبدأ بــ:
------------------------------------------------------------------
*المرحلة الأولى :
أوّلا و قبل كلّ شيء إفتح مجلدّا جديدا في مكان ما داخل حاسوبك
لكي يكون ورشة لعملك وضع فيها راو الـ TS ثمّ حمّل هذا البرنامج
DGMPGDec
(http://hank315.nl/files/DGdecode/dgmpgdec158.zip)
بعد التحميل قم بفكّ الضغط عن الملف داخل ورشة العمل
الآن قم بنسخ هذا الملّف DGDecode.dll
و ضعه في مجلّد الـ plugins الخاص ببرنامج avisynth
الموجود في هذا المسار
C:\Program Files\AviSynth 2.5\plugins
بالنسبة لمستخدمي windows xp
أو في هذا المسار
C:\Program Files (x86)\AviSynth 2.5\plugins
بالنسبة لمستخدمي windows 7
الآن عد إلى ورشة العمل الخاصة بك و قم بفتح برنامج DGMPGDec بالضغط على هذه الأيقونة
http://img15.hostingpics.net/pics/14298620120313132215.png
فتظهر لك واجهة البرنامج كما توضّحه الصورة
http://img15.hostingpics.net/pics/946940492.png
إضغط على
file>open
ثم إستدع الراو ts الذي تريد العمل عليه ثم إضغط على ok
http://img15.hostingpics.net/pics/359207764.png
http://img15.hostingpics.net/pics/407047285.png
الآن إضغط على
video>field operation>Honor Pulldown Flags
مثلما توضّحه الصورة في الأسفل
http://img15.hostingpics.net/pics/736268303.png
أيضا إضغط على
audio>Output Method>Demux All Tracks
مثلما توضّحه الصورة في الأسفل
http://img15.hostingpics.net/pics/426712576.png
الآن و بعد القيام بكلّ هذا إضغط على
File > Save Project
و حدّد مكان الحفظ في مجلّد ورشة العمل التي فتحتها في البداية
مثلما توضّحه الصورة في الأسفل
http://img15.hostingpics.net/pics/298889907.png
فسيظهر لك هذا الجدول
http://img15.hostingpics.net/pics/743865758.png
إنتظر أن يكتب لك finish في الخانة المحدّدة بالأصفر ثم أغلقه
الآن توجّه إلى مجلّد ورشة العمل ستلاحظ ظهور ملفّين جديدين
أحدهما بإمتداد d2v. يحتوي على جميع المعلومات الخاص بفك تشفير ملّف الـ TS
و الثاني هو بإمتداد aac. عبارة عن ملفّ الصّوت
مثلما توضّحه الصورة في الأسفل
http://img15.hostingpics.net/pics/739376729.png
بهذا نكون قد أنهينا المرحلة الأولى و ننتقل الآن إلى :
-----------------------------------------------
*المرحلة الثانيّة:
في هذه المرحلة سنقوم بتحويل ملّف الصّوت إلى wav لتسهيل عمليّة قصّه
فيما بعد لذا قم بتحميل هذا الملّف
FAAD2 (http://www.rarewares.org/files/aac/faad2-20100614.zip)
ثم قم بفكّ الضّغط عنه داخل ورشة العمل
ستظهر لك هاته الملفّات المبيّنة في الصورة أسفله
http://img15.hostingpics.net/pics/3138037310.png
الآن قم بسحب ملّف ملفّ الصّوت ذو الإمتداد aac.
الذي حصلنا عليه في المرحلة الأولى إلى هذه الأيقونة faad.exe
هنا ستظهر شاشة سوداء مثل هاته
http://img15.hostingpics.net/pics/4238769611.png
إنتظر إلى أن تختفي بعدها ستلاحظ ظهور ملفّ جديد بإمتداد wav. حجمه حوالي 300 ميغا
و بهذا نكون قد أنهينا المرحلة الثانيّة و ننتقل إلى :
---------------------------------------------
*المرحلة الثالثة:
هنا تبدأ مرحلة الجّد، أوّلا حمّل هذا الملّف
TIVTCv105.zip (http://bengal.missouri.edu/~kes25c/TIVTCv105.zip)
ثمّ فكّ الضغط عنه في مكان ما بعد ذلك من الملفّات التي ستظهر لك
قم بنسخ هذا الملّف TIVTC.dll
و ضعه في مجلّد الـ plugins الخاص ببرنامج avisynth
الموجود في هذا المسار
C:\Program Files\AviSynth 2.5\plugins
بالنسبة لمستخدمي windows xp
أو في هذا المسار
C:\Program Files (x86)\AviSynth 2.5\plugins
بالنسبة لمستخدمي windows 7
أيضا حمّل برنامج
avsp
(http://www.avisynth.org/qwerpoi/AvsP_v2.0.2.zip)
و فكّ عنه الضّغط في أي مكان تريده من حاسوبك ثم إفتحه ستكون واجهته هكذا
http://img15.hostingpics.net/pics/6015321112.png
إضغط على
file>save --SS-- as
سمّ الملّف loseless و إحفظه في ورشة العمل
الآن بعد ذلك و في برنامج الـ avsp أكتب داخله السطر الآتي:
MPEG2Source("*****.d2v")
طبعا مكان النجوم ضع إسم الملّف الذي إستخرجته في المرحلة الأولى
الآن إضغط على F5
ستلاحظ ظهور الحلقة التي تعمل عليها مثلما توضّحه الصورة في الأسفل
http://img15.hostingpics.net/pics/2593301513.png
حرّك المؤشّر في الأسفل للتجوّل بحريّة بين مشاهد الحلقة
لابّد انّك ستلاحظ هذا العيب :
http://img15.hostingpics.net/pics/6942847014.png
هذا ما يسمّى بالـ combing (التمشيط بالعربيّة ) و هذا راجع إلى كون العرض في شاشة التلفاز يكون بنظام interlaced
بحيث يتّم تحديث الصورة على جزئين يتمّ عرضهما بفارق زمنّي بينهما
مثال على ذلك في هاته الصورة
http://img15.hostingpics.net/pics/264378framefields.gif
لاحظوا جيّدا الصورة الأصلية و كيف يتمّ تقسيمها إلى جزئين
و عند العرض يتّم أولا عرض الخطوط الحمراء ( أو الزرقاء ) ثمّ يتّم عرض الخطوط الزرقاء ( او الحمراء )
و لأخذ نظرة عن كيف يتم ذلك فلاحظوا حركة الكرة أسفله
فهي تبيّن لنا كيف يكون البث بنظام interlaced
http://img15.hostingpics.net/pics/505515tvint.gif
الآن قد يتبادر إلى ذهنكم السؤال التالي :
لماذا الحلقة تظهر بشكل طبيعي في التلفاز و لا تظهر لنا هاته العيوب إلاّ في شاشة الحاسوب ؟
الجواب هو ان شاشات الحواسيب تعرض بنظام progressive بحيث يكون يتمّ تحديث الصورة كاملة
مثلما تظهره الصورة في الأسفل
http://img15.hostingpics.net/pics/457781compprog.gif
لاحظ كيف الكرة تتحرّك كاملة على المجال الزمني طبعا هذا في حالة كان الفيديو المعروض عليها بنظام prgressive
أمّا في حالة كان بنظام Interlaced فإنّ العرض سيكون مثلما توضّحه الصورة أسفله
http://img15.hostingpics.net/pics/874423compint.gif
كان هذا بين قوسين أتمنّى أن اكود قد وفّقت في شرح نقطة التداخل للأمانة فقط فالصور فوق ليست من صنعي بل أخذتها
من مقالة على النت لمن أراد الإطلاع عليها فليضغط هنا (http://neuron2.net/LVG/interlacing.html)
الأن كيف السبيل للقضاء على هذا العيب
أضيفوا هذا السطر لسكريبت الـ avs الخاص بكم
TFM(d2v="*****.d2v")
طبعا مكان النجوم ضع إسم الملّف الذي إستخرجته في المرحلة الأولى
الآن إضغط على F5 و ستلاحظ ظهور الصورة كاملة و قد إختفى عيب الـ combing
http://img15.hostingpics.net/pics/6923594715.png
طيّب مالذي حصل ؟ و أين ذهب ذلك العيب ؟
نحن طبّقنا فلتر TFM وظيفته هي تجميع كلّ فريم مع الفريم الذي يوافقه بحيث تصبح الصورة كاملة
الآن ننتقل إلى المرحلة التالية
نضيف هذه السطور
video = last
WAVSource("***** PID 112 DELAY -398ms.wav")
DelayAudio(-398./1000)
AudioDubEx(video, last)
ليصبح السكريبت من الشكل التالي
MPEG2Source("*****.d2v")
TFM(d2v="*****.d2v")
video = last
WAVSource("***** PID 112 DELAY -398ms.wav")
DelayAudio(-398./1000)
AudioDubEx(video, last)
الأوامر الثلاثة الأخيرة هي لإستدعاء ملّف الصّوت
الآن سنقوم بقصّ الإعلانات فكما سبق و ذكرت الـ TS يتمّ تسجيله مباشرة من شاشة التلفاز
لذا تكون فيه إعلانات تلفزيونيّة نحن لانحتاجها لذا سنقوم بقصّها بإستخدام الأمر trim
بحيث يكون الأمر على هذا الشّكل
trim(بداية الفريم , نهاية الفريم ) + trim(بداية الفريم , نهاية الفريم ) + trim(بداية الفريم , نهاية الفريم )
ركزّوا معي جيّدا هذا الأمر يعني المقطع الذي تريد إنتاجه و ليس قصّه
بمعنى آخر عندما أضع أمرا مثل هذا
trim(936,4382)+trim(6181,22364)+trim(24164,48887)+ trim(50686,51285)
فهذا معناه أنّني سأنتج المقطع الذي يبتدئ من الفريم 936 و ينتهي عند 4382
إضافة إلى المقطع الذي يبتدئ من الفريم 6181 نتهي عند 48887 ...إلخ
أرجو ان تكون الفكرة قد وصلت الآن السؤال المهّم كيف نقوم بتحديد الفريمات
الأمر سهل يمكنكم ذلك بطريقتين إمّا عن طريق الميغوي أو عن طريق برنامج Avsp
سأشرح طريقة واحدة فقط بواسطة برنامج Avsp أما الميغوي فهي نفس الطريقة
إتجّه إلى البرنامج Avsp الذي كتبت فيه هاته الأوامر من قبل
MPEG2Source("*****.d2v")
TFM(d2v="*****.d2v")
video = last
WAVSource("***** PID 112 DELAY -398ms.wav")
DelayAudio(-398./1000)
AudioDubEx(video, last)
و إضغط على F5 ستظهر لك فيديو الحلقة الآن بواسطة المؤشر التي تبيّنه الصّورة
http://img15.hostingpics.net/pics/6923594715.png
قم يتقديم الحلقة أو تأخيرها إلى أن تصل إلى الإعلانات
الآن بواسطة هذين الزّرين قم بالتقديم فريم فريم إلى أن تصل إلى بداية أو نهاية الإعلان ثم ثم بنسخ تلك الأرقام عندك
الآن ضعها في هذا الأمر و تذكّر شيئا مهمّا
فريم نهاية الإعلان هو فريم بداية الحلقة لذا إنتبه عندما تقوم بكتابتها داخل السكريبت
كمثال بسيط في الأمر trim(936,4382)
الفيديو الذي عندي يبتدئ بإعلان هذا الغعلان ينتهي عند الفريم 936
لذا فإنني سأضعه هو الاوّل في أمر الـ trim أمّا الرّقم 4382 فهو يمثّل نهاية المقطع الذي سأنتجه و بداية إعلان آخر
الآن بعد أن شرحنا هاته النقطة نضيف في الأخير هذا الأمر
TDecimate()
قد تتسألون ما وظيفة هذا الأمر
ببساطة هو سيقوم بحذف جميع الفريمات المكرّرة التي نتجت عن شبك الفريمات بواسطة الأمر TFM
الآن و بعد أنهينا هاته المرحلة صار عندنا سكريبت من هذا الشّكل
MPEG2Source("*****.d2v")
TFM(d2v="*****.d2v")
video = last
WAVSource("***** PID 112 DELAY -398ms.wav")
DelayAudio(-398./1000)
AudioDubEx(video, last)
trim(بداية الفريم , نهاية الفريم ) + trim(بداية الفريم , نهاية الفريم ) + trim(بداية الفريم , نهاية الفريم )
TDecimate()
الآن نتّجه إلى :
----------------------------------------------------------
* المرحلة الرابعة :
في هاته المرحلة سنقوم بإنتاج اللوزليس ولكن قبل أن نبدأ بإنتاجها سأشرح معناها و فائدتها
اللوزليس هي إنتاج فيديو من دون ضغط ما يعني من دون فقدان بيانات لانّنا و كما نعلم فضغط الفيديو يفقده بعض البيانات
ما الفائدة منها : إنتاح اللوزليس سيكون سريعا يتراوح بين 15 إلى 30 دقيقة حسب قوّة الحاسوب
المدّة قد تزيد في حال كانت هناك فلاتر كثيرة و معقّدة و قد تصل إلى 24 ساعة أو أكثر
و لكنّها تبقى أسرع من أن تنتج مباشرة لأنّها تسمح لك بتصليح الأخطاء فمثلا
لو انّك نسيت إعلانا لم تقم بقصّه او كان هناك في تحديد الفريمات أو ظهر مشكل تداخل
فإنه يمكنك تفادي ذلك ضف إلى ذلك انّ الإنتاج النهائي سيكون أسرع نسبيا عندما تنتجه من اللوزليس
عن ذلك الذي تنتجه مباشرة من الـ TS
المهّم الآن نتّجه إلى الطريقة لإنتاج اللوزليس هناك عدّة طرق إمّا عن طريق برنامج virtualdub عن طريق Huffyuv أو Lagarith
أو عن طريق الأنكودر x264 مباشرة و هذا الأخير هو ما سأشرحه
قم بإنشاء ملّف txt جديد داخل ورشة العمل و أكتب فيه الأمر التالي
x264.exe --qp 0 --output "loseless.mp4" "loseless.avs"
pause
الآن قم بحفظه ثم عدّل إمتداد الملّف من txt إلى .bat
قم بتحميل الأنكودر x264 منها هنا (http://mirror04.x264.nl/x264/32bit/8bit_depth/revision2184/x264.exe)
وضعه داخل مجلّد ورشة العمل ، الآن قم بعمل دبل كليك على ملّف bat و ستلاحظ ظهرو شاشة سوداء مثل
هاته تبيّن بداية إنتاج اللوزليس
http://img15.hostingpics.net/pics/8678726216.png
كلّ ما عليك الآن هو الإنتاظار إلى أن ينتهي لتحصل في الأخير على ملّف بحجم كبير نسبيّا يتراوح ما بين 5 إلى 20 جيغا
حسب نوع و مدّه الفيديو الذي تعمل عليه
أودّ أن أشير إلى نقطة مهمّة ألا و هي أن الملف الناتج سيكون بدون صوت
الآن و بعد أن أنهينا هاته المرحلة نتّجه إلى :
--------------------------------------------------------------
* المرحلة الأخيرة :
في هاته المرحلة سنقوم بالإنتاج النهائي
أوّلا قم بتحميل هذا الملّف FFMpegSource (http://ffmpegsource.googlecode.com/files/ffmpegsource-2.15.7z)
و قم بفك الضّغط عنه داخل ورشة العمل بعده ستظهر لك عدّة ملفّات
قم بنسخ هاذين الملفّين FFMS2.avsi و ffms2.dll داخل المسار
C:\Program Files\AviSynth 2.5\plugins
بالنسبة لمستخدمي windows xp
أو في هذا المسار
C:\Program Files (x86)\AviSynth 2.5\plugins
بالنسبة لمستخدمي windows 7
الآن قم بسحب ملفّ اللوزلس الذي أنتجته داخل هذا الملّف ffmsindex.exe
بنفس الطريقة التي إعتمدناها مع ملفّ الصّوت سابقا
سيظهر عندك ملف جديد بهذا الإمتداد .ffindex و نفس إسم ملف اللوزليس
الآن قم بإنشاء ملفّ avs جديد سمّه ما شئت
داخله أكتب الأوامر التالية
Import("loseless.avs")
video = FFVideoSource("loseless.mp4")
AudioDubEx(video, last)
إضافة إلى أوامر إستدعاء كلّ من ملفّات الترجمة و مقاطع الأفتر و غيرها من الأمور التي
تريد إنتاجها مع الفيديو إن كنت تريد الإنتاج Hardsub
و الآن بعد ان تكمل إعمل حفظ و قم بالإنتاج بطريقتك العاديّة سواء عن طريق الدوس او بواسطة أحد البرامج
في الأخير أرجو ان أكون قد وفّقت في الشّرح و في حال وجدت أي أسئلة فأنا هنا
أريد فقط و قبل أن أختم الدّرس أن انوّه لبعض النقاط المهمّة
الطريقة المشروحة فوق لن تكون صالحة إلاّ في حالة كان الخام خاليا من العيوب
أمّا في حالة العكس فهنا الأمر يستوجب الفلترة
و هي أمر يتطلّب درسا آخر لا أعلم إن كنت سأضعه أنا او يسبقني إليه شخص ما
شيء آخر قد تكون هناك بعض الأخطاء فوق عن غير قصد لأن كل ما كتبته مبنيّ على
ما فهمته في منتديات أجنبيّة لذا في حال كان هناك خطأ فيرجى التنبيه لذلك ليتم التدارك
بعيدا عن التهجّم و التجريح و دمتم بودّ ^^