DirectX Audio-Video-Playback

السلام عليكم ورحمة الله وبركاته سوف أشرح لكم في هذا الموضوع لمحة سريعة عن كيفية استخدام مكتبات DirectX لتشغيل ملفات الصوت والفيديو بسهولة وكفاءة عالية جداً ,, نبدأ فوراً بالشرح: أولاً: بما أننا سنعتمد على مكتبة خارجية لذلك يجب أولاً إضافة المكتبات اللازمة وسنحتاج في هذا الدرس لمكتبتين هما: Microsoft.DirectX.dll Microsoft.DirectX.AudioVideoPlayback.dll لإضافتهما: أولاً Add Reference ثم التبويب Browse ثم ابحث عن الملفين في هذا المجلد: C:\Windows\Microsoft.NET\DirectX for Managed Code\1.0.2902.0\Microsoft.DirectX.dll على الأغلب ستجدهما فوراً لأنه لا يكاد يخلو نظام من وجود مكتبات الـ DirectX ,, وإذا لم تجدهما يمكن تحميلهما من المرفقات ثم ربطهم مع البرنامج ثانياً: استيراد المكتبتين: using Microsoft.DirectX; using Microsoft.DirectX.AudioVideoPlayback; Imports Microsoft.DirectX Imports Microsoft.DirectX.AudioVideoPlayback ثالثاً: يلزمنا في هذا الدرس الفئتين Audio و Video الموجودتان في المكتبة Microsoft.DirectX.AudioVideoPlayback.dll نبدأ بشرح الفئة Aduio أولاً: الأن سهولة تامة يمكن تشغيل ملف صوتي بهذا الكود البسيط: Dim myAudioFile As Audio myAudioFile = New Audio("C:\song.mp3") myAudioFile.Play() Audio myAudioFile; myAudioFile = new Audio(@"C:\song.mp3"); myAudioFile.Play(); فقط لا غير ,, ثلاثة أسطر يمكننا تشغيل ملف صوتي اياً كان صيغته طبعاً طالما ان ملفات الدعم لهذه الصيغة موجودة في النظام Codec: السطر الأول: تعريف متغير من الفئة Audio السطر الثاني: إنشاء نسخة جديدة (كائن) من الفئة Audio مع تمرير مسار الملف الصوتي في البارمتر الأول السطر الثالث: إعطاء أمر التشغيل Play رابعاً: دعونا الأن نتعرف على أهم خصائص وتوابع هذه الفئة: myAudioFile.CurrentPosition = 10 هذه الخاصية تمكننا من تحديد أو معرفة موقع التشغيل للملف يعني عند اي ثانية (اعرف انك ام تفهم) ,, انظر الصورة التالية يعني ان الدالة السابقة تجعل الملف الصوتي يعمل من عند الثانية العاشرة myAudioFile.Duration هذه الخاصية تعيد لنا طول المقطع الصوتي بالثواني ,, ولذلك بسهولة يمكننا معرفة طول المقطع الصوتي بالساعات والدقائث والثواني يسهولة: Dim ts As New TimeSpan(0, 0, myAudioFile.Duration) TextBox1.Text = ts.ToString() TimeSpan ts = new TimeSpan(0, 0, myAudioFile.Duration); TextBox1.Text = ts.ToString(); myAudioFile.Open("path OR Url") هذا الاجراء من اجل فتح ملف صوتي جديد لتشغيله والشيء الرائع انه يمكننا بواسطة الفئة Audio تشغيل مقطع صوتي على الانترنت او الكمبيوتر myAudioFile.Pause() myAudioFile.Play() myAudioFile.Stop() الأوامر العادية من اجل تشغيل / إيقاف مؤقت / إيقاف تشغيل المقطع الصوتي myAudioFile.Paused myAudioFile.Playing myAudioFile.Stopped هذه الخصائص ترجع لنا قيمة Boolean لمعرفة حالة الملف (يعمل , تم إيقافه , تم إيقافه مؤقتاً) الإجراء Play لتشغيل ملف الذي فتحه بواسطة الفئة Audio myAudioFile.Playing ترجع لنا قيمة Boolean لمعرفة هل الملف يعمل حالياً أم لا myAudioFile.Volume هذه الخاصية تمكننا من معرفة أو تحديد درجة الصوت للملف (ليس درجة صوت النظام) وبذلك يمكننا التحكم بدرجة الصوت دون الرجوع النظام ولكن الغريب ان قيمة هذه الخاصية ليست بين 0 (صامت) و 100 (أعلى درجة) وأنما تتراوح بين 0 (أعلى درجة) و ــ 10000 (صامت) (انتبه إلى علامة الناقص باللون الأحمر) اي عندما تضع myAudioFile.Volume = -10000 اي انه سيتم كتم صوت الملف وعندما تضع myAudioFile.Volume = 0 اي سيتم رفع الصوت إلى أعلى درجة ممكنة :: ملاحظة أخيرة :: قيمة الخاصية Volume تتراوح بين 0 و ــ 10000 حسب MSDN ولكن فعلياً تتراوح بين 0 و ــ 5000 الأن الفئة Video: وهي تشبه الفئة Audio في معظم خصائصها ,, لذلك سأشرح أهم الخصائص والتوابع الخاصة بهذه الفئة Video: myVideoFile.Audio ترجع لنا هذه الخاصية كائن من نوع Audio يمكننا من التكحم في درجة الصوت الخاص بالفيديو (كما تم شرحه في الفئة Audio) myVideoFile.DefaultSize تعيد لنا هذه الخاصية حجم الفيديو الإفتراضي (الأصلي) وبذلك يمكننا استخدامه في تحديد حجم الفورم لملائمة حجم الفيديو بالكامل myVideoFile.Owner هذه الخاصية تمكننا من معرفة أو تحديد الكائن الذي يتم عرض الفيديو فيه ,, أي الكود التالي يعرض الفيديو في PictureBox1 myVideoFile.Owner = PictureBox1 وإذا لم يتم تحديد قيمة لهذه الخاصية فإن الفيديو سيعمل في نافذة خارجية اي لن يعرض ضمن برنامجنا ولذلك يجب الانتباه جيداً لهذه الخاصية المهمة جداً myVideoFile.Fullscreen معرفة أو تحديد عرض الفيديو في وضع ملء الشاشة ولكن للأسف يتم عرض الفيديو في وضع ملء الشاشة ضمن نافذة خارجية اي ليس ضمن الكائن الذي تم تحديده في الخاصية Owner ولذلك لن نستفيد منها myVideoFile.MaximumIdealSize myVideoFile.MinimumIdealSize هذه الخاصيتيتن تعيد لنا أقل واكبر حجم مناسب لعرض الفيديو myVideoFile.Size هذه الخاصية تمكننا من معرفة او تحديد حجم الفيديو وبذلك يمكننا تحديد الحجم الذي سيعرض به الفيديو ضمن الكائن المحدد بالخاصية Owner وبذلك اكون قد انهيت شرح هذه الفئيتن الرائعتين وبقيت لي ملاحظة واحدة: :: يمكن لهاتين الفئتين تشغيل اي صيغة فيديو او صوت طالما ان ملفات الدعم الخاصة بها Codecs مثبتة في النظام والسلام عليكم ورحمة الله

Toshiba L755-144 Laptop

Toshiba L755-144 Laptop With 1GB Graphics Intel Core i5 - 2410M, 6GB, 640GB, Windows 7 Home Premium, Blu-ray player, 15.6" Processor Type Intel Core i5 Processor Model 2410M Processor Speed (GHz) 2.3 Memory 6GB Hard Drive 640GB Optical Drive DVD Super Multi drive/Blu-ray Operating System Windows 7 Home Premium (64-Bit) Screen Size (Inches) 15.6 Screen Type TruBrite® HD TFT Memory Card Reader MEMORY STICK Memory Card Reader MEMORY STICK PRO Memory Card Reader MULTIMEDIA CARD Memory Card Reader MINISD Memory Card Reader MICROSD Memory Card Reader SDHC MEMORY CARD Memory Card Reader SDXC Webcam Web Camera with built-in mic Speakers Built-in Onkyo stereo speaker Wireless 802.11 b/g/n Graphics NVIDIA® GeForce® GT 525M 1GB Manufacturer Part No PSK2YE-03J014EN USB USB 2.0 X 2 USB USB 3.0 X 1 HDMI 1 Bluetooth Bluetooth 3.0 + HS Additional Features 1 × USB 3.0 supporting USB Sleep-and-Charge Screen Resolution 1366 x 768 Number of Cores Colour BLACK Guarantee 1 Year Weight (kg) 2.5 Height (mm) 28 Width (mm) 380 Depth (mm) 250

أعتقه الله كله من النار‎

عَنْ سَلْمَانٍ الْفَارِسِيّ رَضِيَ الله عَنْهُ قَالَ: قَالَ رَسُولُ الله صَلَّى الله عَلَيْهِ وَسَلَّمَ :"مَنْ قَالَ: اللَهُمَّ إِنِّي أُشْهِدُكَ وَأُشْهِدُ مَلَائِكَتِكَ وَحَمَلَةَ عَرْشِكَ وَأُشْهِدُ مَنْ فَي السَّمَاوَاتِ وَمَنْ فِي الأَرْضِ أَنَّكَ أَنْتَ الله لا إِلَهَ إِلا أَنْتَ وَحْدَكَ لا شَرِيكَ لَكَ وَأَشْهَدُ أَنَّ مُحَمَّدًا عَبْدُكَ وَرَسُولُك مَنْ قَالَهَا مَرَّةً أَعْتَقَ الله ثُلُثَهُ مِنَ النَّارِ وَمَنْ قَاَلَهَا مَرَّتَيْنِ أَعْتَقَ الله ثُلُثَيْهِ مِنَ النَّارِ وَمَنْ قَالَهَا ثَلَاثًا أَعْتَقَ الله كُلَّهُ مِنَ النَّارِ". أخرجه الحاكم ( 1 / 523 ) وصححه الألباني (السلسلة الصحيحة، 1/ 476).