تسجيل الصوت
سنضيف في هذا الدرس خاصية مهمة للتطبيق
وهي إمكانية تسجيل الصوت سواء من الإجهزة الخارجية بواسطة لاقط الصوت
أو من الكمبيوتر نفسة بإستخدام خاصية Mix in
نحتاج في هذا الدرس إلى إصدار جديد من مكتبة Homa_Audio
إنسخ ملف المكتبة الجديد من هنا
وإستبدل الملف الموجود في مجلد Debug بهذا الملف
ثم من التطبيق إذهب إلى متصفح المشروح و أزل الملف القديم من References

ثم قم بإضافة الإصدار الجديد من المكتبة إلى References كما فعلنا سابقاً :


الإصدار الجديد يحتوي على كائن HAudio الذي يقوم يقوم بعمليات التسجيل
ولإستخدام هذا الكائن في التطبيق لا بد من تعريفه وليكن إسمه ra
إنسخ كود التعريف التالي تحت تعريف كائن تغيير الصوت من الدرس السابق :
كود:
private HAudio ra=new HAudio();

هذا الكائن يحتوي على إجراء التسجيل Record والذي يستقبل مدخل من نوع سلسلة نصية تمثل مسار الملف الي سيتم التسجيل إليه
مثلاً التعليمة التالي :
كود:
ra.Record(@"c:\record.wav");
تقوم بتسجيل الصوت إلى الملف record.wav في القرص المحلي c
أي أن كائن التسجيل يقوم بإنشاء الملف record.wav ثم تسجيل الصوت إليه
ولكن يجب أن لا يكون مسار الملف ثابت , يجب أن يختار المستخدم المكان الذي يرغب بتسجيل الصوت إليه
لذلك سنستخدم نافذة جاهزة أخرى وهي نافذة حفظ الملفات SaveFileDialog
التسجيل
إذهب إلى نافذة التصميم , وإسحب زر جديد من صندوق الادوات يمثل زر التسجيل وأضف إليه صورة مناسبة
إسحب أداة حفظ الملفات SaveFileDialog من صندوق الأدوات

وحددها من الشريط الأصفر في الأسفل
ثم غير خاصية Name إلى SF :

وغير خاصية FileName إلى new.wav
أنقر مزدوجا على زر التسجيل وأنسخ هذا الكود :
كود:
SF.ShowDialog(); ra.Record(SF.FileName);
السطر الأول يقوم بفتح أداة حفظ الملفات SF كما فعلنا سابقاً في أداة فتح الملفات OF
السطر الثاني يستدعي إجراء التسجيل في كائن تسجيل الصوت ra الذي عرفناه سابقاً
وإستبدلنا مدخل مسار ملف الصوت بناتج أداة حفظ الملفات حيث أن خاصية FileName في كائن SF
ترجع بقيمة سلسلة نصية تمثل المسار المختار من قبل المستخدم
إيقاف التسجيل
كائن التسجيل يحتوي على إجراء أخر يقوم بعملية إيقاف التسجيل وحفظ الملف
StopRecording هو إجراء إيقاف التسجيل , فالتعليمة التالية :
كود:
ra.StopRecording();
هي تعليمة إستدعاء إجراء إيقاف التسجيل
وهذا الإجراء يوقف عملية إلتقاط الصوت ثم يقوم بحفظ الملف الناتج
أي أن ملف التسجيل لن يتم إنشاؤه بشكل صحيح إلا بعد إستدعاء إجراء إيقاف التسجيل
إذهب إلى التصميم وأضف زر يمثل زر إيقاف التسجيل وأكتب داخله الكود المناسب
وذلك هو الواجب ..
ملاحظة :
يمكن للتطبيق الآن أن يسجل الصوت من نفسه , حيث أن إدوات التسجيل منفصلة عن ادوات التشغيل وهذه ميزه مهمة
.نهاية الدرس الرابع عشر .
المفضلات