Amanii نشر 18 يونيو 2016 أرسل تقرير نشر 18 يونيو 2016 السلام عليكم كيف أضيف مقطع صوتي مُسجّل إلى برنامج بلغة ++c وجدت كود يُعطي صوت بيب لكن أريد مقطع مسجل؟ #include <iostream> using namespace std; int main() { char* WAV = "c:\\windows\\desktop\\something.wav"; sndPlaySound(WAV, SND_ASYNC); return 0; } اقتباس
0 hassenzouari98 نشر 20 يونيو 2016 أرسل تقرير نشر 20 يونيو 2016 لإضافة مقطع صوتي مُسجّل إلى البرنامج بلغة ++c يجب PlaySound وليس sndPlaySound بالاضافة الى استدعاء بعض المكتبات الأخرى بحيث يكون الكود كما هو التالي: #include <iostream> #include"Windows.h" #include"MMSystem.h" using namespace std; int main() { PlaySound(TEXT("c:\\windows\\desktop\\something.wav"), NULL, SND_FILENAME | SND_LOOP | SND_ASYNC); system("pause"); return 0; } وحسب مافهمت من الموضوع الذي طرحته أنك تريد أن يعمل المقطع الصوتي باستمرار لذلك نستعمل SND_LOOP التي ستجعل الصوت يتكرّر في كل مرة ينتهي فيها. ملاحظة : يجب استعمال SND_ASYNC مع SND_LOOP حسب ماذكر في الموقع الرسمي لMicrosoft. وكذلك يجدر الذكر بأن المقطع الصوتي يجب أن يكون بصيغة wav ، يعني أنه لا يقبل أي صيغة أخرى ( مثال mp3,acc...) المزيد عن تعليمة PlaySound sound.cpp 1 اقتباس
0 هشام رزق الله نشر 20 يونيو 2016 أرسل تقرير نشر 20 يونيو 2016 أعتقد أن الصياغة الصحيحة لاستخدام هذه المكتبة هو التالي: int main(int argc, char* argv[]) { PlaySound("C:\\Users\\Commander\\Desktop\\test.wav", NULL, SND_ASYNC); getch(); return 0; } حيث ثم بتعويض مسار ملف الصوت بالمقطع الصوتي الذي تريده. إذا كان لديك أكثر من ملف فأنصحك باستخدام SND_FILENAME بدلا من SND_ASYNC كما في هذا المثال البسيط: int main(int argc, char* argv[]) { PlaySound("C:\\Users\\Commander\\Desktop\\test.wav", NULL, SND_FILENAME); PlaySound("C:\\Users\\Commander\\Desktop\\test2.wav", NULL, SND_FILENAME); return 0; } هذه المكتبة تعمل على نظام ويندوز فقط، وللمزيد من المعلومات أنصحك بالإطلاع على التوثيق الرسمي. 1 اقتباس
السؤال
Amanii
السلام عليكم كيف أضيف مقطع صوتي مُسجّل إلى برنامج بلغة ++c
وجدت كود يُعطي صوت بيب لكن أريد مقطع مسجل؟
2 أجوبة على هذا السؤال
Recommended Posts
انضم إلى النقاش
يمكنك أن تنشر الآن وتسجل لاحقًا. إذا كان لديك حساب، فسجل الدخول الآن لتنشر باسم حسابك.