[i ┐( ̄ー ̄)┌ i] مدخل عام للمفاهيم الأساسية للكوديك H.264
بسم الله الرحمــن الرحيم السلام عليكم ورحمة الله وبركاته
Speech speech speech speech
أقسام الموضوع: 0 – تعريفات ومفاهيم لا بد من معرفتها 1 - البداية 10 - قوانين المشاركة
todo list 2 – إعدادات عامة 100% 3 – إعدادات متعلقة بالفريمات 60% 4 – إعدادات التحكم في ضغط الفيديو 20% 5 – إعدادات تحليل معطيات الفيديو 20% 6 – إعدادات أخرى 0% 7 - الانتاج بالانكودر x264 على نظام تشغيل لينوكس 0% 8 - اصنع الانكودر المناسب لك: custom builds & patchs 9 - Speech 11 - روابط مفيدة
ذلك هو الموضوع بنسخته الأولى. ما أنوي فعله هو كتابة مرجع شامل يستفيد منه جميع المنتجين العرب ليحتوي على جميع المفاهيم الأساسية للانتاج وبعض المفاهيم
الأخرى الأقل أهمية والتي رأيت أن لا ضير من التعرف عليها. من يريد أن يتابع معي فعله -وجوباً- أن يفهم كل ما جاء في الملف الذي سبق ذكر رابطه وطرح الاستفسارات
الواضحة والمختصرة عند الحاجة... حتى هذه النقطة، الموضوع لا يحتوي سوى على الجانب النظري. وهذا أمر جيد حسب وجهة نظري؛ إن وضعت الجانب التطبيقي فسيتجه الجميع إليه وسيهملون النظرية. هذا ما لا أريده بالضبط.
يجري العمل على إنهاء الجانب التطبيقي أيضاً (انتهيت من حوالي 30%). في الجانب التطبيقي سنتناول جميع إعدادات الانكودر x264 بالشرح وذكر توصيات مبرمجي
الانكودر سأعتمد أساساً على منتديات doom9 وdoom10 والـ mailing list الخاص بالانكودر. الشرح التطبيقي سيكون على الـ CLI أي تلك الواجهة السوداء، لا أهتم لمدى تعلقكم بالـ MeGUI. ما أعتقده هو : GUIs are way too retarded. DEAL. WITH. IT أخيراً: هناك بعض الكلمات غير المعربة في الدرس. من يعرف تعريبها العلمي فليخبرني (لم أتعامل مع العلوم باللغة العربية) + وضعت الدرس على شكل ملف DOC لأن تحريره في المنتدى سيكون شاقاً مع كثرة الأقواس والصور وهلم جراً. من يريد تنسيقه فلا مانع عندي.
شرح بعض الرموز:
Fn: الفريم الحالي من المصدر (فريم غير مضغوط).
F'n-1: فريم مرجعي وقع ضغطه بالنسبة لصورة الانكودر أو فريم مرجعي وقع فك تشفيره بالنسبة لصورة الديكودر.
F'n: فريم، اكتشفوه وحدكم.
uF'n: لبفريم F'n قبل تطبيق الـ deblocking filter
Dn: نتيجة طرح فريم (اكتشفوه وحدكم) من F'n
T: تطبيق الـ transform coding يعني تطبيق الـ DCT
Q: تطبيق الـ quantization
Q-1: تطبيق الـ Inverse quantization
T-1: تطبيق الـ Inverse transform coding يعني تطبيق الـ IDCT
X: اكتشفوه وحدكم
D'n: هو X بعد تطبيق الـ Q-1 والـ T-1
P: قلت لكم أن تكتشفوه وحدكم
NAL: طبقة التواصل مع بقية البرامج (دمج الفيديو مع الصوت أو فصله عنه أو إرساله أو... الخ). ما يجب أن تعلموه هو أنها تعني تخزين أو إرسال الفيديو. Network Application Layer = NAL
ME: تخمين الحركة motion estimation
MC: تعويض الحركة motion compensation
Choose Intra prediction: استعمال Fn وuF'n من أجل اختيار آلية الـ Intra prediction المناسبة
Intra prediction: لم أتحدث عنها في الدرس بشكل مفصل لأن شرحها يتطلب من المتلقي معرفة بالعديد من جوانب الرياضيات. باختصار، هي تقنية "استعارة" بيانات من داخل نفس الفريم.
Filter: فلتر التلطيف أو الـ Deloking filter بالانجليزية.
Reorder: دائماً، بعد تطبيق الـ quantization على عناصر (coefficients) الـ DCT نحصل على الكثير من الأصفار ومجموعة صغيرة من القيم غير المساوية للصفر و"المبعثرة" في الـ bitstream. عملية الـ Reorder تحد من "تبعثر" العناصر غير المساوية للصفر من أجل إتاحة إمكانية تطبيق Entropy encode أكثر فاعلية على مستوى الانكودر، ثم نطبقها مرة أخرى على مستوى الديكودر من أجل إعادة العناصر إلى "بعثرتها" الأولى. Reorder تعني بالعربية إعادة الترتيب.
Entropy encode: تطبيق الـ Entropy encode
Entropy decode: تطبيق الـ Entropy decode
السؤال:
اشرح ما فهمته من كلتا الصورتين.
ملاحظة: لن أجيب عن هذا السؤال، لكنني، بدل هذا، سأصحح أخطاء من يجيب عنه إن شاء الله. ---- 1 - البداية حمل آخر نسخة من الانكودر x264 من هذه الصفحة x264.nl احفظه في أي مكان تريد. لست خبيراً باختلافات أنظمة الويندوز لكن على الـ ويندوز xp اذهب إلى start ثم run واكتب cmd على الفيستا والسيفن أعتقد أنه عليك أن تضغط start ثم تكتب cmd على العموم، إن لم تعرف ماذا تفعل فاذهب إلى C:\\Windows\System32 وستجد ملفاً اسمه cmd.exe. افتحه. هذه هي الـ command line interface --- أعلم أن بعضكم ربما لم يتعامل مع الـ cli من قبل؛ للحصول على المساعدة اكتب help ثم اضغط enter (من الآن فضاعداً يجب أن تعلموا أنه بعد كتابة أمر في cli يجب
ضغط enter) الأمر الذي سنستخدمه في هذا الشرح هو cd وله وظيفتان: - يدلك على مسار المجلد الذي تعمل عليه الـ cli - يوجهك إلى مجلد آخر بطريقتين: + كتابة ..cd توجهك إلى المجلد الذي يحتوي المجلد الذي تعمل عليه الـ cli + كتابة cd [directory] iتوجهك إلى المجلد صاحب المسار directory (احذف المعقفات) مثال: تكتب cd فتظهر لك: C:\\users\my account\documents هذا يعني أن مسار العمل هو C:\users\my account\documents ثم تكتب ..cd هذا الأمر سيوجهك إلى المجلد C:\users\my account ثم تكتب cd F:\fansub\Encoding Stuff هذا الأمر سيوجهك إلى المجلد F:\fansub\Encoding Stuff ولتسهيل العملية يمكنك كتابة cd F:\f ثم الضغط على Tab وسيكمل لك بقية الاسم يعني سيكمل لك كلمة fansub كي لا تضطر لكتابتها كاملة. فإن لم يفعل فهذا يعني أن
هناك مجلد آخر في F:\ يبدأ اسمه بحرف f لذا عليك أن تضيف حرف a لتصبح cd F:\fa ثم Tab فإن لم يكمل لك المسار كله فهذا يعني أن عليك إضافة حرف أو مجموعة
حروف أخرى لا يبدأ بها سوى اسم المجلد الذي تريد الذهاب إليه. شيء آخر لتسهيل العملية: الـ cli تحفظ لك آخر الأوامر التي أدخلتها. فإن أردت تكرار آخر أمر كتبته فما عليك سوى ضغط مفتاح الاتجاه الأعلى. اضغط عليه مرة لتحصل
على الأمر قبل الأخير... وهكذا. -- ملاحظة: الأمر cd لا يتنقل بك سوى داخل partition واحدة (C على سبيل المثال). للتنقل من partition إلى partition أخرى نستعمل الأمر chdir /D مثال: للتنقل من C:\users إلى E:\i نكتب:
Chdir /D E:\i
أو بكل اختصار، تكتب E : i ------
10 - قوانين المشاركة
- لا تكتب رد شكر أو تشجيع، رجاءً. فلنترك الموضوع للاستفسارات، الملاحظات والاقتراحات فقط.
- لا تحجز رداً.
- اقرأ كل المشاركات قبل كتابة استفسارك. ربما أُجيبَ عنه فيما سبق.
brain dameji ga hajimaru/hajimatta n da
والسلام عليكم ورحمة الله وبركاته
24-11-2010, 01:11 PM
_MasterPiece
رد: [i ┐( ̄ー ̄)┌ i] مدخل عام للمفاهيم الأساسية للكوديك H.264
وعليكم السلام،
نسمعك بوضوح، حول.
وضعت علامة الشكر وذهبت. (خلت أن الموضوع لنقاش الإنتاج)
حقيقة موضوع فريد من نوعه. سأعود إن شاء الله بعد قراءة الملف.
في أمان الله.
24-11-2010, 05:12 PM
akoo-akoo
رد: [i ┐( ̄ー ̄)┌ i] مدخل عام للمفاهيم الأساسية للكوديك H.264
يسلمو اخوي وجاري تحميل ولاستفادة
25-11-2010, 02:47 AM
ElPsy
رد: [i ┐( ̄ー ̄)┌ i] مدخل عام للمفاهيم الأساسية للكوديك H.264
حدثت رابط الدرس، اضفت بعض المعلومات وصححت معلومة كانت خاطئة بسبب سوء تعريبي. تحديداً معلومة كيفية عمل الـ DCT
Gh.S @
اقتباس:
هنا النسخة الكاملة من القسم الأول بصيغة DOC. أرجو أن تحملها وتحولها إلى PDF ثم تضعها في مشاركتك السابقة. عندي مشكلة مع الـ WORD ولا يسمح لي بالتحويل بشكل سليم. لينوكس يغير من الخط وحجمه عند التحويل. i ┐( ̄ー ̄)┌ i
فضلاً عن أنني لم أعد قادراً على تعديل الموضوع بعد تدخل الأخ AL MOTHANA غير المستند إلى أيٍّ من قوانين القسم أو المنتدى حسب رأيي "
حللت المشكلة ولله الحمد. إن كنت تعلم تعريب بعض الكلمات التي لم أعربها فلا تتردد في تنبيهي إلى الأمر.
----
أي استفسارات، ملاحظات، تصحيحات أو اقتراحات ستكون موضع ترحيب.
--- حدثتُ رابط الدرس لأن أماكن الأقواس والكلمات الانجليزية تغيرت في ملف الـ pdf. خالص اعتذاراتي، تنسيق الملف يكاد يفقدني الصواب. حملوا الدرس من رابط الموضوع مرة أخرى للحصول على الملف المنسق.
من لديه الرغبة في تنسيق الموضوع على فما عليه سوى أن يرسل لي رسالة خاصة تحتوي الموضوع المنسق وله خالص الشكر.
أما أنا فلا وقت لدي.
25-11-2010, 09:02 AM
AL MOTHANA
رد: [i ┐( ̄ー ̄)┌ i] مدخل عام للمفاهيم الأساسية للكوديك H.264
وعليكم السلام ورحمة الله وبركاته ..
ما شاء اللهموضوع جميل وجديد^^ لي عودات متقطة للموضوع بإذن الله تعالى + تم التثبيت ..
[ أغلب الأعضاء يسوي encoding بالـ Megui , ومثل ما تطلع النتيجة خلاص ^^ لكن بإذن الله تعالى يتعلموا من هالموضوع أكثر]
موفقين بإذن الله تعالى ~
25-11-2010, 06:09 PM
_MasterPiece
رد: [i ┐( ̄ー ̄)┌ i] مدخل عام للمفاهيم الأساسية للكوديك H.264
والله مقالة علمية محترمة إلا أنها تحتاج بعض التنسيق، إضافة إلى "الخطأ الفادح" (برأيي) لترخيصها تحت WTFPL. (المشاركة الإبداعية CC كانت أولى)
لم أقرأ المقالة بعد كاملاً، إلا أنني مررت عليها سريعًا، وقرأت عن اللقطات المتلاحقة فوجدت فيها معلومات تقنية رهيبة.
لا بد وأن أعاود قرآءتها يوم الأحد القادم. (ففي الحقيقة أفكر في تصميم خوارزمية لضغط الفيديو، لكن ذلك سيحتاج إلى الكثير من العمليات الحسابية! -_-)
مرة أخرى، أعاتبك على الرخصة بشدة.
إن شاء الله أعود بعد قراءتي للكتيب.
26-11-2010, 01:45 AM
ElPsy
رد: [i ┐( ̄ー ̄)┌ i] مدخل عام للمفاهيم الأساسية للكوديك H.264
اقتباس:
المشاركة الأصلية كتبت بواسطة Gh.S
والله مقالة علمية محترمة إلا أنها تحتاج بعض التنسيق
ما رأيك أن تنسقها أنت إذن بدل "التذمر" ؟
لا يزال عندي todo list طويلة وبلاوي أخرى.
اقتباس:
المشاركة الأصلية كتبت بواسطة Gh.S
لم أقرأ المقالة بعد كاملاً، إلا أنني مررت عليها سريعًا، وقرأت عن اللقطات المتلاحقة فوجدت فيها معلومات تقنية رهيبة.
يمكنك أن تجد المزيد من المعلومات الرهيبة في هذا الملف. صحيح أنه outdated قليلاً، لكنه مفيد جداً. سأضعه مع الروابط المفيدة عندما أنهي تلك الفقرة.
اقتباس:
المشاركة الأصلية كتبت بواسطة Gh.S
لا بد وأن أعاود قرآءتها يوم الأحد القادم. (ففي الحقيقة أفكر في تصميم خوارزمية لضغط الفيديو، لكن ذلك سيحتاج إلى الكثير من العمليات الحسابية! -_-)
أما أنا فأفكر في دراسة كود الانكودر ومحاولة اللعب به قليلاً (لن يحدث هذا إلا بعد عامين على الأقل + نسبة النجاح لا تبدو عالية)
اقتباس:
<Dark_Shikari> ok, its a motion estimation algorithm in a paper
<Dark_Shikari> 99% chance its totally useless
<wally4u> because?
<pengvado> because there have been about 4 useful motion estimation papers ever, and a lot more than 400 attempts
مطورو الـ x264 يبرمجون بالـ C والـ optimized assembly code
[QUOTE]<Dark_Shikari> every time someone comes in and says you should use (haskell|ruby|C#|java|C++|brain****) for x264
<Dark_Shikari> we must require they to give one example of an enormously useful feature from that language that would be extremely helpful to developers of x264.
<pengvado> too specific. how about just autoban for mentioning java[/QUOTE
-----
بالتوفيق. بالنسبة لـ "خوارزمية ضغط الفيديو" فيجب أن تعلم أن عليك الالتزام بالـ spec وإلا لن تجد ديكودر يشغل لك "ما ضغطته". الالتزام بالـ spec يعني قراءة أكثر من 600 صفحة على الأقل وفهمها. بالنسبة للغة البرمجة فقد أعطيتك معلومة فقط. لم أقل لك أن هذه اللغة أفضل من الأخرى في كل مجال. But, yes. C++ won't get you anywhere here. For sure
الخوارزميات وأفكارها موجودة بالفعل، لكن المشكلة هي كيف تعمل الـ implementation الخاص بها.
شيء أخير، حاول أن تعمل edit للمشاركات بدل إضافة مشاركة جديدة تشوش على من يقرأ الموضوع. don't get me wrong:Smile:"
26-11-2010, 03:07 AM
_MasterPiece
رد: [i ┐( ̄ー ̄)┌ i] مدخل عام للمفاهيم الأساسية للكوديك H.264
اقتباس:
ما رأيك أن تنسقها أنت إذن بدل "التذمر" ؟
يمكنك أن تجد المزيد من المعلومات الرهيبة في هذا الملف. صحيح أنه outdated قليلاً، لكنه مفيد جداً. سأضعه مع الروابط المفيدة عندما أنهي تلك الفقرة.
شكرًا لك على الكتاب الإلكتروني. يبدو ثقيل دم قليلاً.
بالنسبة للتنسيق، دعني حتى الإثنين المقبل، فبعد قليل أنتهي من آخر اختبار لهذا الفصل (اللهم وفق!)، وسيبدأ الفصل الثاني يوم الإثنين المقبل. (لا إجازة!)
سأخبرك عندها باستطاعتي للتنسيق من عدمها.
اقتباس:
مطورو الـ x264 يبرمجون بالـ C والـ optimized assembly code
بالنسبة للغة البرمجة، فكما يقول إخوتنا المصريون: "كل واحد ينام عا الجمب اللي يريحه"، فالمهم بالنسبة إلي هو فكرة الخوارزمية، وتصميمها برمجيًا مع مراعاة السرعة والفاعلية.
حقيقة أنا معجب بـ Dark_Shikari، أظن أن اسمه Jason، فقد قرأت ذات مرة سيرته الذاتية، ووجدت أنه لا يزال في سنته الثالثة جامعيًا.
----
بالنسبة لما قلت بخصوص الخوارزمية، فذلك مشروع بعد سنة ونصف من الآن إن شاء الله. في الحقيقة، لا أعلم الكثير الآن. لكنني أفكر في أنه تمكن الاستفادة من قوة الـ OpenGl، حيث أن كثيرًا من معالجات الفيديو والرسومات تدعمها.
آه! ذلك يحتاج إلى الكثير من التجريب وصداع الرأس، لكنني في الوقت الحالي سأبدأ في قراءة مقالات متنوعة عن ضغط الفيديو حتى أكون صورة واضحة.
27-11-2010, 06:54 AM
oOo HUNTER oOo
رد: [i ┐( ̄ー ̄)┌ i] مدخل عام للمفاهيم الأساسية للكوديك H.264
احم احم .... لي زمان ما دخلت لي المنتدى O=
اولاً يعطيك العافية اخي على هذا الجرئة في عمل الدرس و بصراحة راح اتفيد الكثيرون و اتفيدني <--- في عدم عمله
و اتمنى من ان يتوقفوا عن استخدام Gui لانها في النهاية مجرد Graphic User Interface و الأعتماد كله يكمن في x264 و هناك الكثيرون ما يجعلوني اتحسر عند مشاهدة انتاجاتهم المليئة بالأخطاء الأنتاجية <---- مو حاسب IVTC
و كثر البلوكس ( مع ان الكثيرون يستخدمون deblock ) بسبب سوء التعامل مع x264 و اتمنى ان يتوجهوا إلى cli و إذا بدك أي مساعدة انا في الخدمة
اقتباس:
هل من الممكن أن يوجد B-frame في آخر GOP ؟
بخصوص الاجابة ....
Gop = Group of pictures لمن لا يعرف <--- واحد سألني عليها من اشوي و كان سبب دخولي الموضوع XD ( كان بده اياني اغششه XD )
الأجابة : خطأ لانه يمكن في GOP ان يبدأ بي B-fream لكن لا ينتهي به سواءاً كان open or closed GOP !
و بما انك طرحت سؤال فلازم نكمل السلسلة !
راح اسخن بكم سؤال انا ايضاً xD
ما الفرق بين بداية B-fream في JOP و بدايته بي I-fream ? <--- صح و خطأ سهلة لهيك بدنا نشوف من إلي فاهم xD
سؤال اخر !
ما الفرق بين Open and closed GOP ?
و اتمنى ان يكون ايضاً الموضوع خاص بالنقاشات عن Encoding منها للأستفادة ^^"
شكراً مرة اخرى اخي Akkipuden على الموضوع :*
28-11-2010, 12:41 PM
ElPsy
رد: [i ┐( ̄ー ̄)┌ i] مدخل عام للمفاهيم الأساسية للكوديك H.264
اقتباس:
المشاركة الأصلية كتبت بواسطة oOo HUNTER oOo
و كثر البلوكس ( مع ان الكثيرون يستخدمون deblock ) بسبب سوء التعامل مع x264 و إذا بدك أي مساعدة انا في الخدمة
البلوكس لا أراهم نهاية العالم في الإنتاج. كل منتج يفهم ما يفعله له شخصيته الإنتاجية وأولوياته.
بالنسبة للمساعدة فبالطبع أرحب بأي مساهمة من أي جهة (على أن تكون صحيحة!) + المساعدة ليست لشخصي أنا بل من أجل إنتاج عربي أقل تخلفاً عن الإنتاجات الأجنبية. يمكنك أن تبدأ بتعريب بعض الكلمات غير المعربة.
---
اقتباس:
الأجابة : خطأ لانه يمكن في GOP ان يبدأ بي B-fream لكن لا ينتهي به سواءاً كان open or closed GOP !
سؤال الاستطلاع مفخخ. وقد وقعت فيه. لن أجيب عنه إلا عند إضافة الموضوع الثاني الذي سيحتوي الأمور التطبيقية (المرجع الشامل للتعامل مع الانكودر x264... أو شيء كهذا)
اقتباس:
ما الفرق بين بداية B-fream في JOP و بدايته بي I-fream
لا يمكن أن تبدأ GOP سوى بـ I-frame !
إن بدأت بـ B-frame فمن أين ستأتي بالفريمات المرجعية اللازمة لعرضها ؟ فإن كانت هذه الـ B-frame لا تحتاجها فهي ليست B-frame بل I-frame to begin with
اقتباس:
ما الفرق بين Open and closed GOP ?
لن أجيب عن سؤال الاستطلاع الآن. اقرأ أول ما لونته بالأحمر في الملف"
28-11-2010, 06:16 PM
oOo HUNTER oOo
رد: [i ┐( ̄ー ̄)┌ i] مدخل عام للمفاهيم الأساسية للكوديك H.264
اقتباس:
البلوكس لا أراهم نهاية العالم في الإنتاج. كل منتج يفهم ما يفعله له شخصيته الإنتاجية وأولوياته. بالنسبة للمساعدة فبالطبع أرحب بأي مساهمة من أي جهة (على أن تكون صحيحة!) + المساعدة ليست لشخصي أنا بل من أجل إنتاج عربي أقل تخلفاً عن الإنتاجات الأجنبية. يمكنك أن تبدأ بتعريب بعض الكلمات غير المعربة. ---
ok i will :O
اقتباس:
سؤال الاستطلاع مفخخ. وقد وقعت فيه. لن أجيب عنه إلا عند إضافة الموضوع الثاني الذي سيحتوي الأمور التطبيقية (المرجع الشامل للتعامل مع الانكودر x264... أو شيء كهذا)
.___."
خليتني افتح الـ Google
xZ
رأيت اكثر من رأي على الغوغل منها المقالة إلي قرأتها
اقتباس:
. A GOP can begin with a B-frame, but it cannot end with one.
لكن لم يقل احد انه يمكن ان ينتهي به >_> ، على أي حال راح انتظر اجابتك و اتمنى ان يكون في مقالة عنه للتأكد O=
30-11-2010, 12:30 AM
ElPsy
رد: [i ┐( ̄ー ̄)┌ i] مدخل عام للمفاهيم الأساسية للكوديك H.264
اقتباس:
المشاركة الأصلية كتبت بواسطة oOo HUNTER oOo
. A GOP can begin with a B-frame, but it cannot end with one
ربما لم تقرأ الرد السابق جيداً:
إن بدأت بـ B-frame فمن أين ستأتي بالفريمات المرجعية اللازمة لعرضها ؟
والمعذرة عموماً إن تأخرت في الرد على أي استفسار (كأن الاستفسارات نازلة من كل حدب وصوب) الحياة ومشاغلها...
01-12-2010, 01:10 AM
ElPsy
رد: [i ┐( ̄ー ̄)┌ i] مدخل عام للمفاهيم الأساسية للكوديك H.264
أضفت تمريناً للدرس. يمكنكم محاولة الإجابة عنه من أجل اختبار مدى استيعابكم للموضوع.
بالمناسبة، لم يسأل أحد عن معنى كلمة Codec.
بالتوفيق.
06-12-2010, 06:32 AM
sinchi codo
رد: [i ┐( ̄ー ̄)┌ i] مدخل عام للمفاهيم الأساسية للكوديك H.264
لي عودة بعد القراءة .. شكراً لك ^ــ^
24-12-2010, 01:04 AM
ElPsy
رد: [i ┐( ̄ー ̄)┌ i] مدخل عام للمفاهيم الأساسية للكوديك H.264
كل من "حجز" رداً في الموضوع لم يفك حجزه. جميل، مجرد إثبات إضافي...
اقتباس:
ما الفرق بين Open and closed GOP ?
الجواب هنا
msoms-anime.net/showthread.php?t=150804
اقتباس:
راح انتظر اجابتك و اتمنى ان يكون في مقالة عنه للتأكد
الخمسة الذين شاركوا في الاستطلاع أخطؤوا. أصلا المشاركة فيه خطأ بحد ذاتها لأنني كررت كثيرا الحديث عن الترتيب الزمني والترتيب في الـ bitstream، دون أن أنسى تكرار "على مستوى الانكودر" و"على مستوى الديكودر".
حقيقة الأمر أن لكل فريم توقيتان يسميان Timestamp:
Decoding TimeStamp DTS: وهو التوقيت الذي سيستخرج فيه الديكودر الفريم من الـ bitstream ويضعه في الـ DPB.
Presentation TimeStamp PTS: وهو التوقيت الذي سيُعرض فيه الفريم.
ليس بالضرورة أن يكون التوقيتان متساويان، بل العكس هو الحالة الأكثر شيوعاً. لذا فإن نهاية الـ GOP تختلف حسب التوقيتين.
22-01-2011, 05:16 PM
lirya
رد: [i ┐( ̄ー ̄)┌ i] مدخل عام للمفاهيم الأساسية للكوديك H.264
وضعت أنت أمر الإنتاج فقط ، أنا لا أعرف كيف ابدأ بالكتابة و ما هي الأوامر الأساسية
و ما هي الأوامر التي يمكنني الإستغناء عنها من بين كل الأوامر التي كتبتها أنت ؟
أيمكن أن تضع صورة لأوامر إنتاج حلقة ؟ يمكنك أن تغطي القيم فأنا أريد رؤية نموذج فقط لأعرف ماذا اكتب :)
مكتوب في موضوع الدرس أن الإستفسارات هنا أرجو أن يكون استفساري في المكان الصحيح
و شكرًا جزيلًا لك [i ┐( ̄ー ̄)┌ i]
22-01-2011, 09:39 PM
HERMIONI
رد: [i ┐( ̄ー ̄)┌ i] مدخل عام للمفاهيم الأساسية للكوديك H.264
شكرا لك على هذا الشرح المميز ^^
22-01-2011, 10:07 PM
ElPsy
رد: [i ┐( ̄ー ̄)┌ i] مدخل عام للمفاهيم الأساسية للكوديك H.264
اقتباس:
المشاركة الأصلية كتبت بواسطة lirya
السلام عليكم و رحمة الله ┐ [i ┐( ̄ー ̄)┌ i]
مجهود عظيم أخي
و لكن لدي استفسار :
لدي حلقة و ملف ترجمة و أريد أن اكتب أوامر إنتاجها
هنا : http://img600.imageshack.us/img600/1393/cmdt.png
وضعت أنت أمر الإنتاج فقط ، أنا لا أعرف كيف ابدأ بالكتابة و ما هي الأوامر الأساسية
و ما هي الأوامر التي يمكنني الإستغناء عنها من بين كل الأوامر التي كتبتها أنت ؟
وعليكم السلام ورحمة الله وبركاته؛
همم، هل أنت متأكدة من أنك قرأت الدرس جيداً؟ i ┐( ̄ー ̄)┌ i
على العموم، بالنسبة للأوامر الأساسية فهي الملونة بالأزرق. يمكنك تجاهل البقية بسلام ما دمت تنتجين أنمي للفانسب، يعني ليس للمشاهدة على هاتف محمول أو مشاهدة مباشرة.
بالنسبة للبداية فهذا الموضوع بالذات به فقرة اسمها البداية، اقرئيها ^^ إن واجهتك مشكلة في التطبيق فمرحباً باستفساراتك
اقتباس:
المشاركة الأصلية كتبت بواسطة lirya
أيمكن أن تضع صورة لأوامر إنتاج حلقة ؟ يمكنك أن تغطي القيم فأنا أريد رؤية نموذج فقط لأعرف ماذا اكتب :)
preset يحدد عامل بطئ الإنتاج/ الجودة. tune حسب المصدر الذي تعملين عليه. custom-comands هي إعداداتك أنت التي اخترتها وتبدأ عادة بتحديد البترايت فتختارين قيمة الـ crf إن كنت تنتجين بجودة ثابتة أو الـ bitrate إن كنت تنتجين بمعدل بترايت ثابت من أجل حجم محدد، ثم تحددين بقية الإعدادات.
مثال:
الفيديو الأصلي كان 199 م.ب و بعد الإنتاج أصبح 75 م.ب و الجودة مقاربة للأصل
لقد استغرق الإنتاج ساعة أو ساعة و نصف
يهمني رأيك في الإعدادت ، و شكرًا مجددًا لشرحك العظيم :d
23-01-2011, 04:06 PM
ElPsy
رد: [i ┐( ̄ー ̄)┌ i] مدخل عام للمفاهيم الأساسية للكوديك H.264
إعداداتك عادية-منطقية ولا أرى خللاً بها
لكن هذا لا يعني أنها تناسب جميع المصادر, يعني لا تأخذي كلامي على أنه : "هذه الإعدادات جيدة ولا تستعملي غيرها في جميع أعمالك"
الجودة ذوق والإنتاج علم. العلم = معرفة + تجربة. المعرفة موجودة في الموضوع، يبقى عليك إجراء التجارب (seek and --frames are your friends--) للوصول إلى أفضل نتيجة ممكنة
07-02-2011, 03:01 AM
blagon
رد: [i ┐( ̄ー ̄)┌ i] مدخل عام للمفاهيم الأساسية للكوديك H.264
السلام عليكم
[i ┐( ̄ー ̄)┌ i]
بصراحة مواضيعك عن كود x264 والأنتاج رائعه ,تعلمت منها الكثير
فيعطيك العافية
-------
عندي مشكله وكم إستفسار
المشكله هي لما أستدعي ملف avs في cmd يطلع لي خطأ ويعلق الكود
avs [error]: failed to load avisynth
x264 [error]: could not open input file `C:\Users\admin\Desktop\ffms.avs'
3- ماذا لو وضعت بي فريم اكبر من 8 مثلاً 16 كما رأيت في احد الجداول
4- ما الأفضل إستخدام --deblock 1:1 ام --deblock 0:0
أعلم أن وضع الأعدادات تعتمد على الراو والمنتج لكن أحاول أن أكتسب الخبره
-----
حالياً هذا هو الي في بالي ولا أريد أن أطول عليك من أول مشاركه لي <<<< "(-_-)
وشكراً لك على كل ما تقدمه
07-02-2011, 11:54 AM
ElPsy
رد: [i ┐( ̄ー ̄)┌ i] مدخل عام للمفاهيم الأساسية للكوديك H.264
اقتباس:
المشاركة الأصلية كتبت بواسطة blagon
المشكله هي لما أستدعي ملف avs في cmd يطلع لي خطأ ويعلق الكود
avs [error]: failed to load avisynth
x264 [error]: could not open input file `C:\Users\admin\Desktop\ffms.avs'
اما لما أستدعي ملف فيديو يقبل ولا يحدث أي خطأ
ما هذا الـ ffms ؟ أتقصد ffms2 ؟ هذا الملف يكون اسمه ffms2.dll
لتحميل الفلتر http://code.google.com/p/ffmpegsource/downloads/list
(هذه مشكلة لا علاقة لها بالكوديك والانكودر، إن استمرت معك فضعها في موضوع الاستفسارات)
2- ما رأيك بترتيب الأوامر
3- ماذا لو وضعت بي فريم اكبر من 8 مثلاً 16 كما رأيت في احد الجداول
4- ما الأفضل إستخدام --deblock 1:1 ام --deblock 0:0
أعلم أن وضع الأعدادات تعتمد على الراو والمنتج لكن أحاول أن أكتسب الخبره
- لا تحتاج لتحديد البروفايل إلا إذا كنت تنتج لتطبيق معين
- سيكون لديك بترايت عالي وحجم عالي
- الـ deblock يكون 1:1 إفتراضياً في tune animation لا داعي لإعادة تحديد القيم
2 - عادة نعرف الـ level في النهاية
3 - سيصبح الإنتاج بطيئاً (وقد يكون البطء بلا فائدة) لكن إن كان لديك جهاز قوي جداً أو إن كنت لا تهتم للوقت --" فارفعها إلى 16
4 - رأيي الشخصي أن 0:0 قيمة كبيرة أما 1:1 فلا يجب استعمالها واختياري الشخصي هو أن أخفض منهما تحت الصفر لأنه إن كان لدى المرء بلوكات يريد التخلص منها فعليه معالجتها بفلاتر الـ avisynth (عن طريق إضافة غرين/ ديثر أو تطبيق فلاتر التخلص من البلوكات والنويز) لا من داخل x264 وهذا كلام المطورين أيضاً. يعني بالعربي inloop filter يحول دون تفاقم المربعات أو دون ظهور مربعات لم تكن موجودة في المصدر.
TL;DR
الانكودر لا يعالج أي شيء بل هو العدو الذي يضيف العيوب/يتخلص من التفاصيل.
08-02-2011, 04:35 AM
blagon
رد: [i ┐( ̄ー ̄)┌ i] مدخل عام للمفاهيم الأساسية للكوديك H.264
شكراً لك أخ Akkipuden
بالنسبة للمشكله سأضعها في موضوع الأستفسارات
11-02-2011, 02:00 AM
علي ضيف
رد: [i ┐( ̄ー ̄)┌ i] مدخل عام للمفاهيم الأساسية للكوديك H.264
شكرا لك اخي الكريم افادك الله وادامك لنا
25-02-2011, 01:10 PM
blagon
رد: [i ┐( ̄ー ̄)┌ i] مدخل عام للمفاهيم الأساسية للكوديك H.264
السلام عليكم
كيف الحال i ┐( ̄ー ̄)┌ i
عندي نقاش أو إستفسار أوضغط او همممممممممممم كما تسمه انت Icon498
وهو في ref كنت أستخدم فيه القيمة تقريبا 8و7 لكن صدمت أني لا أستطيع تشغيله على بعض مشغيلي الفيديو
لكن عندما أنقصت القيمة إلى 4 إشتغل ...... لا أعلم ربما مشغلي ليس دو كفائه عالية icon114
المهم
رأيت بعض الخامات يستخدمون فيها 16 وبعضها 8 او 7.....إلخ
وهو الأمر الذي يحدد عدد الفريمات المرجعية التي يمكن تخزينها في DPB
حيث افكر ان استخدم القيمة 4 في الأنتاجات المستقبلية
-ما فهمته من خلال التجربه انه لا يضر بالجوده وإنما سهولت التشغيل لأنه يقلل الضغط على ذاكرة القراءة العشوائية
- ما رأيك في القيمة هل تراها مناسبة ( ارفعها او اقللها ام استخدم القيمة المشار إليها)
- ما القيمة الذي تستخدمها عادةً انت
Icon083
مع الف سلامة
25-02-2011, 06:11 PM
ElPsy
رد: [i ┐( ̄ー ̄)┌ i] مدخل عام للمفاهيم الأساسية للكوديك H.264
اقتباس:
وهو في ref كنت أستخدم فيه القيمة تقريبا 8و7 لكن صدمت أني لا أستطيع تشغيله على بعض مشغيلي الفيديو
إما أن جهازك خردة، أو المشغل متخلف أو نظام التشغيل ليس بصحة جيدة.
اقتباس:
لكن عندما أنقصت القيمة إلى 4 إشتغل ...... لا أعلم ربما مشغلي ليس دو كفائه عالية
كلما ازدادت أبعاد الفريمات، زاد حجم الفريم المرجعي وزادت المساحة التي يأخذها في الـ DPB
كلما زاد حجم الـ DPB زاد احتمال صعوبة التشغيل.
المزيد من المعلومات: http://en.wikipedia.org/wiki/H.264/MPEG-4_AVC#Levels
اقتباس:
-ما فهمته من خلال التجربه انه لا يضر بالجوده وإنما سهولت التشغيل لأنه يقلل الضغط على ذاكرة القراءة العشوائية
كلام غير صحيح. الفريمات المرجعية تزيد فعالية الضغط وهي من أهم الإعدادات! RTFM
اقتباس:
- ما القيمة الذي تستخدمها عادةً انت
أستعمل أقصى قيمة يسمح بها الـ 4.1 level
9 للـ 720p
4 للـ 1080p
26-02-2011, 05:08 PM
إكسير الحياة
رد: [i ┐( ̄ー ̄)┌ i] مدخل عام للمفاهيم الأساسية للكوديك H.264
i ┐( ̄ー ̄)┌ i
السلام عليكم ورحمة الله وبركاته
موضوع أكثير من رائع
جزاك الله خيرا ..
الحمدلله ، بدأت أجيد بعض الأوامر البسيطة وأطمح لتعلم المزيد في هذا المجال
وأتمنى التخلص من الميقوي العفن i ┐( ̄ー ̄)┌ i
هل من الأفضل أن تكون النسخة الأصلية للحلقة _التي أود ضغطها_ أن تكون بجودة أفضل للحصول على أروع نتيجة ممكنة؟
أحببت أن أخبرك أنن لم أفهم شيئا من هذا الكلام في الموضوع i ┐( ̄ー ̄)┌ i
لكنني أفهم بالتطبيق ههههه
شكرا جزيلا
27-02-2011, 12:00 AM
ElPsy
رد: [i ┐( ̄ー ̄)┌ i] مدخل عام للمفاهيم الأساسية للكوديك H.264
اقتباس:
المشاركة الأصلية كتبت بواسطة ポートガス・D・エース
هل من الأفضل أن تكون النسخة الأصلية للحلقة _التي أود ضغطها_ أن تكون بجودة أفضل للحصول على أروع نتيجة ممكنة؟
تقصد الخام؟ نعم كلما كان الخام أفضل كانت النتيجة أفضل، لكن... من يضع الإعدادات عشوائياً فلن ينفعه الخام جيد.
اقتباس:
المشاركة الأصلية كتبت بواسطة ポートガス・D・エース
أحببت أن أخبرك أنن لم أفهم شيئا من هذا الكلام في الموضوع i ┐( ̄ー ̄)┌ i
إن كان العيب من شرحي السيء فيمكنك طرح السؤال
27-02-2011, 12:09 AM
إكسير الحياة
رد: [i ┐( ̄ー ̄)┌ i] مدخل عام للمفاهيم الأساسية للكوديك H.264
لا ليس من الشرح ..
ولكن شخص مثلي مبتدئ في مجال الفانسب
سيصعب عليه الفهم بكل تأكيد
وصل الآن إلى 95% ,, سأعود للتعليق غدا بإذن الله
شكرا لك
27-02-2011, 12:18 AM
إكسير الحياة
رد: [i ┐( ̄ー ̄)┌ i] مدخل عام للمفاهيم الأساسية للكوديك H.264
هممممم
عدت للتعليق .. < لم أنتظر إلى الغد
حجم الملف سابقا 180 ميغا
بعد الضغط 60 تقريبا
الإعدادات ..
كود:
--preset slow --tune animation --out pout
المفاجئ أنني لم أجد الصوت في الحلقة .. !
هل من طريقة لإضافة ملف الصوت ضمن سكربت avs ؟
شكرا لك أخي أفدتني كثيرا ^^
27-02-2011, 12:28 AM
ElPsy
رد: [i ┐( ̄ー ̄)┌ i] مدخل عام للمفاهيم الأساسية للكوديك H.264
أنا لم أتحدث عن الصوت إطلاقاً!
الانكودر x264 ينتج الفيديو بكوديك h264 فقط ولا دخل له بالصوت. هناك modified builds وهي إصدارات غير رسمية للانكودر تحتوي على خاصية إنتاج الصوت... لكنني لا أنصح بها :)
لإضافة الصوت بمكنك استعمال برنامج yamb إن كنت تريد حاوي mp4 أو mkvmerge إن كنت تريد حاوي mkv
استعمل غوغل للحصول على البرامج
27-02-2011, 06:08 AM
إكسير الحياة
رد: [i ┐( ̄ー ̄)┌ i] مدخل عام للمفاهيم الأساسية للكوديك H.264
فهمت i ┐( ̄ー ̄)┌ i
جزاك الله خيرا .. أفضل الإستمرار على إعدادتي الحالية
الإنتاج هكذا خارق حقـًا !
أن تكون بنفس الجودة وبنصف الحجم .. مذهل ذلك
شكرا لك أخي .. حفظك وربي ووفقك ودلّك على الحق وأعلى شأنك وغفر زلّتك ^^
في أمان الله
27-02-2011, 12:43 PM
blagon
رد: [i ┐( ̄ー ̄)┌ i] مدخل عام للمفاهيم الأساسية للكوديك H.264
اقتباس:
المشاركة الأصلية كتبت بواسطة Akkipuden
إما أن جهازك خردة، أو المشغل متخلف أو نظام التشغيل ليس بصحة جيدة.
كلام منطقي icon114
اقتباس:
كلما ازدادت أبعاد الفريمات، زاد حجم الفريم المرجعي وزادت المساحة التي يأخذها في الـ DPB
كلما زاد حجم الـ DPB زاد احتمال صعوبة التشغيل.
المزيد من المعلومات: http://en.wikipedia.org/wiki/H.264/MPEG-4_AVC#Levels
كلام غير صحيح. الفريمات المرجعية تزيد فعالية الضغط وهي من أهم الإعدادات! RTFM
أستعمل أقصى قيمة يسمح بها الـ 4.1 level
9 للـ 720p
4 للـ 1080p
icon159 شكراً على التوضيح
22-01-2012, 02:48 AM
ســـهم الجنون
رد: [i ┐( ̄ー ̄)┌ i] مدخل عام للمفاهيم الأساسية للكوديك H.264
أمممم مواضيعــك دائمـاً حصريـه وأنا متابـع لك أول بـأول . . لاكن !
-(0)- إلـى كل عضـو جديد في الفانسب لايتـابـع مواضيع الأخ " البسـي " لأنكم ماراح تفهمون ^^
الكلام مو أعيب فيه أخوي البسي لا . . .
لاكن ماراح تفهمون شي وتتضارب الأفيـاز عندكم xDD
بالفعل مشكور ..
متابع لك دائمــاً لاكن بصمــت ^^
22-01-2012, 03:43 AM
ElPsy
رد: [i ┐( ̄ー ̄)┌ i] مدخل عام للمفاهيم الأساسية للكوديك H.264
اقتباس:
المشاركة الأصلية كتبت بواسطة ســـهم الجنون
أمممم مواضيعــك دائمـاً حصريـه وأنا متابـع لك أول بـأول . . لاكن !
-(0)- إلـى كل عضـو جديد في الفانسب لايتـابـع مواضيع الأخ " البسـي " لأنكم ماراح تفهمون ^^
الكلام مو أعيب فيه أخوي البسي لا . . .
لاكن ماراح تفهمون شي وتتضارب الأفيـاز عندكم xDD
بالفعل مشكور ..
متابع لك دائمــاً لاكن بصمــت ^^
يعني أنت هو اللي فهمت وغيرك ما راح يفهم
هذا الموضوع لأي شخص لا يفهم 2 سنت في الإنتاج.
إن لم يفهمه أحد ما فليس أمامه أي مستقبل في الإنتاج حسب رأيي
أفضل نقطة للبداية في التعامل مع شيء (الفيديو هنا) هي فقه حقيقته
22-01-2012, 03:52 AM
ســـهم الجنون
رد: [i ┐( ̄ー ̄)┌ i] مدخل عام للمفاهيم الأساسية للكوديك H.264
اقتباس:
يعني أنت هو اللي فهمت وغيرك ما راح يفهم هذا الموضوع لأي شخص لا يفهم 2 سنت في الإنتاج. إن لم يفهمه أحد ما فليس أمامه أي مستقبل في الإنتاج حسب رأيي
أفضل نقطة للبداية في التعامل مع شيء (الفيديو هنا) هي فقه حقيقته
أممم أعتقـد أن سرعة ردك سببت لك غلط ^^
لو تجيب إي منـتـج " مبتدىء " وخليه يراجع الدرس 100 مره وأتحداك يفـهم ^^
بالعكس أنا أشوف الي يفهم الأشياء الأساسيـه قبل لايشوف موضوعك + يرجع يشوف موضوعك راح يفهم غصب ^^
22-01-2012, 02:07 PM
ElPsy
رد: [i ┐( ̄ー ̄)┌ i] مدخل عام للمفاهيم الأساسية للكوديك H.264
اقتباس:
المشاركة الأصلية كتبت بواسطة ســـهم الجنون
أممم أعتقـد أن سرعة ردك سببت لك غلط ^^
لو تجيب إي منـتـج " مبتدىء " وخليه يراجع الدرس 100 مره وأتحداك يفـهم ^^
بالعكس أنا أشوف الي يفهم الأشياء الأساسيـه قبل لايشوف موضوعك + يرجع يشوف موضوعك راح يفهم غصب ^^
أين الغلط في "أفضل نقطة للبداية في التعامل مع شيء (الفيديو هنا) هي فقه حقيقته"؟
لولا أني أخشى أن يستجاب لي لدعوت بأن يكثر أمثالك.
اقتباس:
إن لم يفهمه أحد ما فليس أمامه أي مستقبل في الإنتاج حسب رأيي
وحتى لا يتيه أحد، أنا لا أسمي كل من يضغط فيديو منتجاً.
23-01-2012, 12:35 AM
ســـهم الجنون
رد: [i ┐( ̄ー ̄)┌ i] مدخل عام للمفاهيم الأساسية للكوديك H.264
طيب أخي البسي أو أكيبودن ^^
لو سمحـت عندي أستفسـار يمكنـه خارج الموضوع ...
أممم مـاهي أفضل أوامر الإدخـال " للفديو والصوت والخ "
مافهمت علي صح ..
أوك مثلا " هذا أمر جلب الحلقـه او الفديو
اقتباس:
DirectShowSource
''
سمـعـت أنـه يضر في الحلقـه من ناحية الألوان والأشيـاء هاذي . . .
وماهو البديل ؟
وماهي أفضل الأوامر لجلب - الترجمـه - والأشياء الي نستخدمهـا في ملف الأوامر لاهنـت ^^ "
أم أنهـا نفس العـاده ... ^^
23-01-2012, 01:44 AM
ElPsy
رد: [i ┐( ̄ー ̄)┌ i] مدخل عام للمفاهيم الأساسية للكوديك H.264
ffmpegsource2 للصوت والفيديو. إن كان لديك m2ts فادمجه إلى mkv أولاً.
Textsub لملفات الترجمة، وإن كنت لا أنصح أي أحد باستخدامه في الإنتاج لأنه من علامات التخلف حسب رأيي = هاردسب
18-09-2012, 11:14 PM
shsmd
رد: [i ┐( ̄ー ̄)┌ i] مدخل عام للمفاهيم الأساسية للكوديك H.264
أمن الممكن إعادة رفع الملف :)؟
19-09-2012, 02:45 AM
ElPsy
رد: [i ┐( ̄ー ̄)┌ i] مدخل عام للمفاهيم الأساسية للكوديك H.264
^ غير ممكن حالياً.
ذكرني في العيد عندما أتواصل مع الحاسب القديم
أو ربما يتجاوب معك أحد الذين حملوه سابقاً
19-09-2012, 07:41 AM
shsmd
رد: [i ┐( ̄ー ̄)┌ i] مدخل عام للمفاهيم الأساسية للكوديك H.264
جميل، وهو كذلك :)
سأبحث عمن قاموا بتحميل الملف
19-09-2012, 04:40 PM
نمر الأرض
رد: [i ┐( ̄ー ̄)┌ i] مدخل عام للمفاهيم الأساسية للكوديك H.264