[英]using system() function to play sound in the background
我在Ubuntu中制作了一個游戲,其中使用.wav文件使用此功能在后台播放聲音:-
system("canebrake-gtk-play -f file_path")
但是當播放聲音時,整個游戲會停止,這意味着動畫會停止,但是在聲音結束后,游戲會正常重新開始....但是,這給我造成了麻煩,並顯示了非常不好的影響,所以我想從我的游戲中刪除這個令人毛骨悚然的東西...所以任何幫助都將是可貴的.. THANKX
system("canebrake-gtk-play -f file_path")
這將與您的代碼同步執行。 這就是為什么您的程序在執行此操作時被阻止的原因。
您可能會考慮使用fork()
和exec()
在后台執行。
提供單獨的線程(而不是進程)是另一種選擇。
這是一種快速而骯臟的方法。
pid_t pid = fork();
if (pid == 0) {
system("canebrake-gtk-play -f file_path");
exit(0);
}
您也可以使用線程代替其他進程。
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.