Directsoundcreate8 failed как исправить

Lemma Soft Forums Supporting creators of visual novels and story-based games since 2003. Visit our new games list, blog aggregator, IRC channel, and Discord. NaNoRenO ends when April begins . Activation problem? Email PyTom. Unanswered topics Active topics Search Members The team DirectSoundCreate traceback error issue DirectSoundCreate traceback error issue #1 Post by JJGames […]

Содержание

  1. Lemma Soft Forums
  2. DirectSoundCreate traceback error issue
  3. DirectSoundCreate traceback error issue
  4. Exception directsoundcreate8 no audio device found
  5. Asked by:
  6. Question
  7. Исправляем DirectSoundCreate8 failed в Angry Birds
  8. Как удалось решить проблему с ошибкой directsoundcreate8 failed
  9. Exception directsoundcreate8 no audio device found
  10. Ia-chan
  11. Alex_Apple
  12. kaylle
  13. Alex_Apple
  14. kaylle
  15. Visual
  16. roxygen
  17. zhuk-navoznik
  18. Tansia2
  19. zhuk-navoznik
  20. Alex_Apple
  21. Skaz Games Studio и партнеры
  22. Сообщения об ошибках вер.0.20
  23. Сообщения об ошибках вер.0.20
  24. Re: Сообщения об ошибках вер.0.20
  25. Re: Сообщения об ошибках вер.0.20
  26. Re: Сообщения об ошибках вер.0.20
  27. Re: Сообщения об ошибках вер.0.20
  28. Re: Сообщения об ошибках вер.0.20
  29. Re: Сообщения об ошибках вер.0.20
  30. Re: Сообщения об ошибках вер.0.20
  31. Re: Сообщения об ошибках вер.0.20
  32. Re: Сообщения об ошибках вер.0.20
  33. Re: Сообщения об ошибках вер.0.20
  34. Re: Сообщения об ошибках вер.0.20
  35. Re: Сообщения об ошибках вер.0.20
  36. Re: Сообщения об ошибках вер.0.20
  37. Re: Сообщения об ошибках вер.0.20
  38. Re: Сообщения об ошибках вер.0.20
  39. Re: Сообщения об ошибках вер.0.20
  40. Re: Сообщения об ошибках вер.0.20
  41. Re: Сообщения об ошибках вер.0.20
  42. Re: Сообщения об ошибках вер.0.20
  43. Re: Сообщения об ошибках вер.0.20
  44. Re: Сообщения об ошибках вер.0.20

Lemma Soft Forums

Supporting creators of visual novels and story-based games since 2003.

Visit our new games list, blog aggregator, IRC channel, and Discord.
NaNoRenO ends when April begins .
Activation problem? Email PyTom.

  • Unanswered topics
  • Active topics
  • Search
  • Members
  • The team

DirectSoundCreate traceback error issue

DirectSoundCreate traceback error issue

#1 Post by JJGames » Sat Aug 08, 2015 3:56 pm

Hi, I’m new to all this stuff and I was wondering if someone could help me out. Up until today, every time I launched it would open up the window for my game like usual but today when I launched I received a traceback that said:

I’m sorry, but an uncaught exception occurred.

After initialization, but before game start.
Exception: DirectSoundCreate: No audio device found

Full traceback:
File «C:UsersJacksonDesktoprenpy-6.99.4-sdkrenpybootstrap.py», line 281, in bootstrap
renpy.main.main()
File «C:UsersJacksonDesktoprenpy-6.99.4-sdkrenpymain.py», line 451, in main
renpy.display.core.Interface()
File «C:UsersJacksonDesktoprenpy-6.99.4-sdkrenpydisplaycore.py», line 1392, in __init__
renpy.audio.audio.init()
File «C:UsersJacksonDesktoprenpy-6.99.4-sdkrenpyaudioaudio.py», line 626, in init
pss.init(renpy.config.sound_sample_rate, 2, bufsize, False)
File «pysdlsound/sound.pyx», line 165, in pysdlsound.sound.init (genpysdlsound.sound.c:3234)
check_error()
File «pysdlsound/sound.pyx», line 60, in pysdlsound.sound.check_error (genpysdlsound.sound.c:880)
raise Exception(e)
Exception: DirectSoundCreate: No audio device found

Windows-7-6.1.7601-SP1
Ren’Py 6.99.5.602
Crowned Cliques 0.0

I have never once tried to fiddle with anything regarding the sound, as I won’t be adding any sounds or music until much later. I’m very confused as to what this message is telling me/what the problem is and how to fix it.

Источник

Exception directsoundcreate8 no audio device found

This forum is closed. Thank you for your contributions.

Asked by:

Question

Hi, I understand that this topic has been discussed in great detail here and other forums, yet I have seemingly run into the intractable problem of not being able to hear sound from my computer. I will write everything I did and provide as much detail as possible.

I am running XP SP3 on Dell Vostro 200 and an integrated Realtek HD Audio card. The problem occurred after I cleaned my desk area which included opening the case and getting rid of the dustballs inside the Vostro.

This is what I know:

· It’s not a hardware problem – I can hear sound when I test the hardware in the Utility Partition

· Currently there is “No Audio Device” in the Sounds and Audio Devices Panel. All of the dropdowns are grayed out on the Audio tab. All services including Windows Audio, Realtek ones and others are started. The alert logs have no information pertinent to this problem.

· In the Device Manager:

o There are no question marks “?” or exclamation points “!” devices.

o Under “Sound, video, and game controllers”

§ Legacy Audio Drivers

§ Legacy Video Capture Devices

§ Media Control Devices

§ Realtek High Definition Audio driver — enabled and working properly. Details include:

Driver Version: 5.10.0.5888
C:WINDOWSsystem32wdmaud.drv File Version : 5.1.2600.5512 (xpsp.080413-2108), Microsoft

§ I used to see “Microsoft WINMM WDM Audio Compatibility Driver” but no longer do. The driver set specifies wdmaud.sys and wdmaudio.inf, and I have numerous of each:

wdmaud.sys 5.1.2600.2180 81 KB C:i386
wdmaud.sys 5.1.2600.2180 81 KB C:from realtek cab
wdmaud.sys 5.1.2600.2180 81 KB C:WINDOWS$NtUninstallKB920872$
wdmaud.sys 5.1.2600.2929 81 KB C:WINDOWS$hf_mig$KB920872SP2QFE
wdmaud.sys.000 5.1.2600.2929 81 KB C:WINDOWS$NtServicePackUninstall$
wdmaud.sys 5.1.2600.2929 81 KB C:WINDOWS$NtServicePackUninstall$
wdmaud.sys 5.1.2600.5512 82 KB C:WINDOWSServicePackFilesi386
wdmaud.sys 5.1.2600.5512 82 KB C:WINDOWSsystem32drivers
wdmaud.sys 5.1.2600.5512 82 KB C:WINDOWSSoftwareDistributionDownload9866fb…

wdmaudio.inf 24 KB C:i386
wdmaudio.inf 24 KB C:WINDOWSinf

Both wdmaudio.inf files are the same size and the beginning text is:

[Version]
Signature=»$CHICAGO$»
> ClassGUID=<4d36e96c-e325-11ce-bfc1-08002be10318>
provider=%MSFT%
LayoutFile=layout.inf
DriverVer =07/01/2001,5.1.2535.0

In my registry I have:

DriverDesc Microsoft WINMM WDM Audio Compatibility Driver
DriverVersion 5.1.2535
InfPath wmdaudio.inf

o Under “System devices”

§ Microsoft UAA Bus Driver for High Definition Audio. Enabled and working properly. Details include:

Driver Version: 5.10.0.5010
C:WINDOWSsystem32DRIVERShdaudbus.sys File version : 5.10.01.5013

I have numerous hdaudbus.sys files…

hdaudbus.sys 5.10.0.5011 135 KB C:i386 (HDA Bus Driver v1.0)
hdaudbus.sys 5.10.0.5013 136 KB C:WINDOWS$NtServicePackUninstall$ (HDA Bus Driver v1.0a)
hdaudbus.sys 5.10.0.5013 141 KB C:WINDOWSServicePackFilesi386 (HAD Bus Driver v1.0a)
hdaudbus.sys 5.10.0.5013 136 KB C:WINDOWSsystem32drivers (HD Audio Bus Driver v1.0a)
hdaudbus.sys 5.10.0.5013 136 KB C:Mozilla DownloadsMicrosoft KB888111. commonfiles (HD Audio Bus Driver v1.0a)
(and a similar few others…)

Other things I’ve tried:

· Reinstalled latest chipset/motherboard drivers from Dell

· Commented out the ExcludeFromSelect=* line from machine.inf

· Talked/chatted with Dell Support for

8 hours (as it’s under warranty) and they couldn’t help, so they wanted me to talk to their “Software” dept which is fee-for-service.

· Done a clean boot by disabling all startup services.

· With a Dell rep’s suggestion I did a system restore to a previous date and that actually worked…, but I was not happy with some of the things they uninstalled (like a Roxio Creative Audio Driver or something…). So I undid the rollback and now I’m having the problem again, and I have no previous dates to rollback to (in retrospect my bad.)

· I’m using latest Realtek drivers from Dell / Realtek (v 2.28)

· DxDiag (Direct X Diagnostic Tool) > Sound > Test DirectSound:

DirectSound test results: Failure at step 3 (DirectSoundCreate): HRESULT = 0x88780078 (No driver )
Device Name: Realtek HD Audio Output
DeviceID: HDAUDIOFUNC_01&VEN_10EC&DEV_0888&SUBSYS_10280238&REV_10004&3806C722&12&0201
Drivers Name: RTkHDAud.sys
Drivers Version: 5.10.0000.5888

I have a software engineering background and I’m still lost. For some reason I think there is a version mismatch somewhere. As far as I can tell I have the appropriate driver versions, but something just isn’t hooking up to allow this stuff to work.

I will gladly do anything, short of reinstall the operating system. There are at most a handful of files involved with this problem and I refuse to think that a complete reformat/reboot is the way to solve this problem. I will delete any and all necessary files, delete any and all necessary registry entries, and then re-install any drivers and make any new registry entries as needed. I can’t believe an OS reinstall is the best choice.

Источник

Исправляем DirectSoundCreate8 failed в Angry Birds

Совсем недавно принесли системный блок, с просьбой помочь решить проблему с игрой Angry Birds. Проблема вначале заключалась в отсутствии некоотрых dll библиотек в системе, что весьма быстро решается простой установкой связки DirectX + Net.Framework + vcredist.

Проблема первая решилась быстро, а вот вторая – при запуске Angry Birds выдает Error DirectSoundCreate8 failed. Ошибка весьма странная, непонятная даже. Погуглив – ответов найти не удалось вообще. Первое что приходит в голову – какой-то непорядок с DirectX или ж драйверами звуковой карты. Переустановил и то и другое – результат остался прежним.

Как удалось решить проблему с ошибкой directsoundcreate8 failed

Не поверите, но я просто подключил колонки (так как системник привезли мне, и, обычно, не подключаю колонки при настройке) и все заработало. Как ни странно – данная ошибка DirectSoundCreate8 failed на данном компьютере в игре Angry Birds вызывалась отсутствием подключения к звуковым выводам звуковой карты наушников или внешних динамиков. Вот такое вот глупое и банальное решение проблемы.

Скоро уже осень, и до зимы осталось совсем ничего, поэтому не забудьте про новогодний корпоратив , а то затяните до самого последнего с поиском идей и поиском конкурсов.

Источник

Exception directsoundcreate8 no audio device found

Вначале мы задаем координаты и прозрачность изображения, а потом где и каким будет изображение. Осталось сделать как надо.

Кстати можно еще так написать:

Ia-chan

I’m sorry, but an uncaught exception occurred.

After initialization, but before game start.
Exception: DirectSoundCreate: No audio device found

Full traceback:
File «C:UsersАдминистраторDesktoprenpy-6.99.6-sdkrenpybootstrap.py», line 281, in bootstrap
renpy.main.main()
File «C:UsersАдминистраторDesktoprenpy-6.99.6-sdkrenpymain.py», line 455, in main
renpy.display.core.Interface()
File «C:UsersАдминистраторDesktoprenpy-6.99.6-sdkrenpydisplaycore.py», line 1435, in __init__
renpy.audio.audio.init()
File «C:UsersАдминистраторDesktoprenpy-6.99.6-sdkrenpyaudioaudio.py», line 626, in init
pss.init(renpy.config.sound_sample_rate, 2, bufsize, False)
File «pysdlsound/sound.pyx», line 165, in pysdlsound.sound.init (genpysdlsound.sound.c:3234)
check_error()
File «pysdlsound/sound.pyx», line 60, in pysdlsound.sound.check_error (genpysdlsound.sound.c:880)
raise Exception(e)
Exception: DirectSoundCreate: No audio device found

Windows-8-6.2.9200
Ren’Py 6.99.6.739
rabotay_tupoi_RenPy 0.0
Я так и не понимаю в чём проблема, может мне кто-нибудь поможет? или я просто тупая. Но что есесесна, то не сверхесесесна

Alex_Apple

Или у тебя нет аудиокарты или какие-то проблемы со звуком на компе.

На lemmasoft предлогают решить проблему следующим кодом.

Не знаю поможет или нет. Но стоит попробовать.

kaylle

Alex_Apple

kaylle

Visual

roxygen

  • zhuk-navoznik

  • Tansia2

  • zhuk-navoznik

  • Alex_Apple

    200?’200px’:»+(this.scrollHeight+5)+’px’);»> init python:
    style.nvl_window.xpadding = 40 # Размер отступа от краёв бокса по иксу, слева и справа
    style.nvl_window.ypadding = 40 # Размер отступа от краёв бокса по иксу, сверху и снизу
    style.nvl_window.background = «#000000» # Фон
    style.nvl_vbox.box_spacing = 2 # Расстояние между строк

    # Отступы для бокса. То есть расстояние от края окна до бокса.
    style.nvl_window.top_margin = 80 # Вверх
    style.nvl_window.bottom_margin = 10 # Низ
    style.nvl_window.left_margin = 20 # Лево
    style.nvl_window.right_margin = 0 # Право

    # Тоже самое но для текста. От бокса до текста.
    style.nvl_window.top_padding = 0 # Вверх
    style.nvl_window.bottom_padding = 0 # Низ
    style.nvl_window.left_padding = 0 # Лево
    style.nvl_window.right_padding = 0 # Право

    style.nvl_dialogue.font = «***.TTF» # Шрифт текста
    style.nvl_dialogue.color = «#FFFFFF» # Цвет текста
    style.nvl_dialogue.size = 30 # Размер текста
    style.nvl_dialogue.drop_shadow = [(1, 1)] # Тень, числа это смещение тени по xy
    style.nvl_dialogue.drop_shadow_color = «#FFFFFF» # Цвет тени

    nvl clear чтобы стереть содержимое.
    window hide чтобы убрать окно, можно использовать чтобы показать игроку фон или его смену, ну или что-то еще.
    window show чтобы вернуть окно. Окно не будет очищено.

    Источник

    Skaz Games Studio и партнеры

    Сообщения об ошибках вер.0.20

    Сообщения об ошибках вер.0.20

    Сообщение Skaz » 21 мар 2016, 22:54

    В этой теме вы можете оставить сообщения об ошибках в игре «Дурное воспитание» вер. 0.20.
    Чтобы мы могли оперативном подсказать или исправить ошибку, пожалуйста, оставляйте сообщения об ошибках по следующему шаблону:

    1. Платформа, на которой запускалась игра.
    2. Снимок экрана, на котором видна ошибка.
    3. Описание ошибки. Информация должны быть настолько полной, чтобы мы могли воспроизвести ошибку ( Например: «Не могу вызвать джинна» — неправильно. «После загрузки сохранения пять дней подряд днем нахожусь в локации xxx, но джинн не появляется» — правильно. )
    4. Ссылка на файл сохранения.

    Re: Сообщения об ошибках вер.0.20

    Сообщение Alerad » 21 мар 2016, 23:05

    1ое сообщение об ошибке, символично что оно в самом начале.

    Экран, где идет подтверждение, что игрок совершеннолетний. Текст над кнопками не по центру, а почему то слева. И заголовок и сам текст.

    Возможно это и не баг, но в глаза бросилось.

    Re: Сообщения об ошибках вер.0.20

    Сообщение Alerad » 21 мар 2016, 23:12

    Re: Сообщения об ошибках вер.0.20

    Сообщение Alerad » 21 мар 2016, 23:19

    Re: Сообщения об ошибках вер.0.20

    Сообщение Alerad » 21 мар 2016, 23:28

    Re: Сообщения об ошибках вер.0.20

    Сообщение Alerad » 21 мар 2016, 23:39

    Re: Сообщения об ошибках вер.0.20

    Сообщение Alerad » 21 мар 2016, 23:44

    Re: Сообщения об ошибках вер.0.20

    Сообщение Alerad » 21 мар 2016, 23:47

    Re: Сообщения об ошибках вер.0.20

    Сообщение nik69 » 21 мар 2016, 23:49

    Re: Сообщения об ошибках вер.0.20

    Сообщение Alerad » 22 мар 2016, 00:00

    Re: Сообщения об ошибках вер.0.20

    Сообщение Alerad » 22 мар 2016, 00:05

    Re: Сообщения об ошибках вер.0.20

    Сообщение Alerad » 22 мар 2016, 00:10

    Re: Сообщения об ошибках вер.0.20

    Сообщение Skaz » 22 мар 2016, 00:17

    Re: Сообщения об ошибках вер.0.20

    Сообщение Alerad » 22 мар 2016, 00:20

    Re: Сообщения об ошибках вер.0.20

    Сообщение Alerad » 22 мар 2016, 00:28

    Да я специально не участвовал в тесте, хотел просто поиграть. И сейчас запустил, хотел расслабиться и поиграть перед сном, но тут создал тему и понеслось. Уже пол первого. Остановите меня кто-нибудь. Шучу

    Я уверен, что помощь F1reFoks будет кстати. Я плохо вижу орфографические ошибки, поэтому могу помочь только с пунктуацией и стилистическими ошибками.

    Re: Сообщения об ошибках вер.0.20

    Сообщение jeb » 22 мар 2016, 00:32

    Re: Сообщения об ошибках вер.0.20

    Сообщение Alerad » 22 мар 2016, 00:41

    Это, скорее, не совет — тут запятые не нужны «Слово «скорее» не требует постановки знаков препинания, если в предложении подразумевается сопоставление «скорее… чем», «скорее… нежели».»

    толстый намек. — зачем тут точка?)

    толстый намек в поэтической форме. — звучит вполне приемлемо .

    Re: Сообщения об ошибках вер.0.20

    Сообщение Alerad » 22 мар 2016, 00:43

    Re: Сообщения об ошибках вер.0.20

    Сообщение Alerad » 22 мар 2016, 00:54

    Re: Сообщения об ошибках вер.0.20

    Сообщение Alerad » 22 мар 2016, 01:06

    еще один сложный момент. правило: «При подлежащем, выраженном словом это, тире ставится или не ставится в зависимости от логического выделения подлежащего и наличия либо отсутствия паузы после него.»

    «Это не зеленная бумага! Это — ДОЛЛАРЫ!»

    Мое мнение тире должно быть в обоих случаях. + 2 реплики назад (уже промотал не могу привести точное место)

    И, не бейте меня сильно, дальше я бы написал так:

    «И они настоящие! Из банка! Мы их обменивали с дядей и тетей»

    Re: Сообщения об ошибках вер.0.20

    Сообщение Alerad » 22 мар 2016, 01:12

    Re: Сообщения об ошибках вер.0.20

    Сообщение Hilarious » 22 мар 2016, 13:00

    При сохранении в середине 4 фазы воспитания выскакивает такая ошибка:

    I’m sorry, but an uncaught exception occurred.

    While running game code:
    File «game/script.rpy», line 537, in script call
    File «game/11_proj/loc_main.rpy», line 18, in script call
    File «game/11_proj/loc_main.rpy», line 41, in script call
    File «game/11_proj/loc_main.rpy», line 77, in script call
    File «game/11_proj/act_doro.rpy», line 49, in script call
    File «game/11_proj/act_doro.rpy», line 173, in script call
    File «game/11_proj/act_doro.rpy», line 264, in script call
    File «game/09_trans/u_Trans.rpy», line 94, in script call
    File «game/09_trans/u_Trans.rpy», line 292, in script
    IOError: [Errno 9] Bad file descriptor

    Full traceback:
    File «D:DownloadsBM_0.20renpybootstrap.py», line 281, in bootstrap
    renpy.main.main()
    File «D:DownloadsBM_0.20renpymain.py», line 463, in main
    run(restart)
    File «D:DownloadsBM_0.20renpymain.py», line 139, in run
    renpy.execution.run_context(True)
    File «D:DownloadsBM_0.20renpyexecution.py», line 714, in run_context
    context.run()
    File «game/script.rpy», line 537, in script call
    File «game/11_proj/loc_main.rpy», line 18, in script call
    File «game/11_proj/loc_main.rpy», line 41, in script call
    File «game/11_proj/loc_main.rpy», line 77, in script call
    File «game/11_proj/act_doro.rpy», line 49, in script call
    File «game/11_proj/act_doro.rpy», line 173, in script call
    File «game/11_proj/act_doro.rpy», line 264, in script call
    File «game/09_trans/u_Trans.rpy», line 94, in script call
    File «game/09_trans/u_Trans.rpy», line 292, in script
    File «D:DownloadsBM_0.20renpyerror.py», line 203, in report_exception
    sys.stdout.write(full.getvalue())
    IOError: [Errno 9] Bad file descriptor

    Windows-8-6.2.9200
    Ren’Py 6.99.7.858
    BM 0.20

    Если это поможет, то вот сохранение где все еще работает, но если купить новую колоду карт, при сохранении начнет вылетать ошибка.

    Источник

  • @NNX3x


    Cxbx-Reloaded

    [0x1EC] EmuMain: Received Fatal Message:

    • DirectSoundCreate8 Failed!

    OK

    dx 8 sound fail

    When trying to launch my games for testing I now get the mentioned error. This happens on previous versions of cxbx reloaded that I know work with my computer and their output on various games. I’ve recently updated windows 10 to fall creators update, only thing that has changed since I last booted cxbx reloaded. I do know Microsoft did some fixes for dx9, most notably the memory allocation bug. A newer version of dx12 was included in the update as well. I’m curious if they removed something, and if anyone else is seeing this issue with the latest windows 10 update. Running dxdiag lists feature level down to 9_1 only.

    @x1nixmzeng

    I’ve had this happen after disconnecting speakers — Windows can’t find any playback devices and handles this badly

    @NNX3x

    After further investigation, windows 10 fall update was to blame. Rollback to previous fixed the issue. I tracked it down to the audio inputs and outputs. The «speakers» aka Realtek audio, under device manager when right clicked has an events tab, with the latest update the device fails to migrate and start up (audioendpoint.inf). Latest drivers were used as well.

    • Remove From My Forums
    • Question

    • hi ,

      i´m trying to create sound dveice according to

      http://msdn2.microsoft.com/en-us/library/bb219693(VS.85).aspx

      in DirectSound

      http://msdn2.microsoft.com/en-us/library/bb219693(VS.85).aspx

      Code Snippet

      using System;

      using System.Collections.Generic;

      using System.ComponentModel;

      using System.Data;

      using System.Drawing;

      using System.Linq;

      using System.Text;

      using System.Windows.Forms;

      using Microsoft.DirectX.DirectSound;

      namespace WindowsFormsApplication12

      {

      public partial class Form1 : Form

      {

      public Form1()

      {

      InitializeComponent();

      }

      private void Form1_Load(object sender, EventArgs e)

      {

      HRESULT DirectSoundCreate8(NULL,variable,NULL);

      }

      }

      }

      the error is on this line :

      Code Snippet

      HRESULT DirectSoundCreate8(NULL,variable,NULL);

      the error is :

      Code Snippet

      Error 1 Expected ; or = (cannot specify constructor arguments in declaration)

      i tried to create it directly as in the instructions ..

      any idea what´s wrong ?

    Глава 4. Воспроизведение звуков и музыки с DirectX Audio и Direct Show

    которые я буду использовать, относятся к версии 8, так что не пугайтесь, несмотря на то, что мы в действительности используем DirectX 9!

    DirectSound — основной компонент, используемый для воспроизведения цифрового звука. DirectMusic обрабатывает все звуковые форматы, — в том числе MIDI, родной формат DirectMusic и WAVфайлы, — и отправляет их DirectSound для цифрового воспроизведения (как показано на рис. 4.3). Это означает, что для MIDI во время воспроизведения вы можете использовать цифровые записи инструментов.

    Рис. 4.3. DirectX Audio использует отдельные компоненты DirectMusic и DirectSound, но позволяет DirectMusic использовать DirectSound для синтезирования звуков инструментов и их воспроизведения на вашей звуковой карте

    Теперь, получив базовые знания, вы готовы узнать как использовать DirectSound и DirectMusic, о чем я буду говорить в оставшихся разделах этой главы.

    Хотя на первый взгляд DirectSound может показаться сложным, в реальности он не столь труден для понимания и использования. Вы создаете COMобъект, являющийся интерфейсом для звукового оборудования. Этот COMобъект дает вам возможность создавать индивидуальные звуковые буферы

    (называемые вторичными звуковыми буферами, secondary sound buffer) для хранения звуковых данных.

    Данные из этих звуковых буферов смешиваются вместе в главном буфере микширования (называемом первичный звуковой буфер, primary sound buffer) и воспроизводятся в указанном вами звуковом формате. Эти форматы воспроизведения могут отличаться по частоте, количеству каналов

    Джим Адамс

    и разрядности выборки. Допустимые частоты — 8 000 Гц, 11 025 Гц, 22 050 Гц и 44 100 Гц (CD-качество).

    Для количества каналов есть два варианта: один канал для монофонического звука или два канала для стереофонического. Параметры разрядности также ограничиваются двумя вариантами: 8 бит для низкокачественного воспроизведения звука и 16 бит для высококачественного воспроизведения. По умолчанию, если вы не выполняли настройку вручную, для первичного звукового буфера DirectSound установлены следующие параметры: 22 050 Гц, 8-разрядная выборка, стереофонический звук.

    Вы можете модифицировать звуковые каналы для воспроизведения с другой частотой (меняя высоту звука), менять в ходе воспроизведения громкость и панорамирование звука, и даже зацикливать звук. Но это не все — звуки могут воспроизводиться в виртуальном трехмерном окружении, имитирующем перемещающиеся вокруг вас реальные звуки.

    Ваша задача — взять звуки и поместить их в звуковые буферы. Для очень больших звуков вы можете использовать метод потокового воспроизведения при котором загружается небольшой фрагмент звуковых данных, а когда его воспроизведение закончится, вы подгружаете в звуковой буфер следующий фрагмент данных. Этот процесс продолжается, пока весь звуковой файл не будет воспроизведен.

    Вы реализуете потоковое воспроизведение, устанавливая позицию в звуковом буфере при достижении которой приложению будет отправлен сигнал о том, что пришло время обновить звуковые данные. Этот процесс передачи сигналов об обновлении называют уведомлением (notification). Нет никаких ограничений на то, сколько буферов могут воспроизводиться одновременно, но вам следует следить, чтобы их было мало, поскольку каждый буфер создает дополнительную нагрузку на процессор и память.

    В действительности работать с DirectSound не так уж трудно. Фактически, в этой книге мы будем работать только с тремя интерфейсами, перечисленными в таблице 4.1.

    Таблица 4.1. COM-интерфейсы DirectSound

    Интерфейс

    Описание

    IDirectSound8

    Интерфейс главного объекта DirectSound.

    IDirectSoundBuffer8

    Объект первичного и вторичного звуковых

    буферов.

    Хранит

    данные

    и

    управляет

    воспроизведением.

    IDirectSoundNotify8

    Объект уведомления. Сообщает приложению о

    достижении заданной позиции в звуковом буфере.

    Глава 4. Воспроизведение звуков и музыки с DirectX Audio и Direct Show

    ПРИМЕЧАНИЕ

    Чтобы использовать в вашем проекте DirectSound и

    DirectMusic надо включить заголовочные файлы dsound.h и

    dmusici.h и добавить в список компоновки файл библиотеки

    dsound.lib. Также хорошо бы указать при компоновке и

    библиотеку dxguid.lib, поскольку в ней определены

    некоторые полезные элементы, которые используются

    DirectSound.

    На рис. 4.4 показаны взаимоотношения между этими объектами. IDirectSound8 — это главный интерфейс из которого вы создаете звуковые буфера (IDirectSoundBuffer8). Затем звуковой буфер может создать собственный интерфейс уведомления (IDirectSoundNotify8),

    который вы используете для отметки позиции в звуковом буфере по достижении которой будет отправлено уведомление. Интерфейс уведомлений полезен при потоковом воспроизведении звука.

    Рис. 4.4. Вы получаете звуковой буфер через объект IDirectSound8. Объект

    IDirectSoundNotify8 создается через его родителя — объект IDirectSoundBuffer8

    Инициализация DirectSound

    Перед тем, как делать что-либо еще, вам необходимо включить заголовочный файл dsound.h и указать в списке компоновки библиотеку

    dsound.lib. После этого можно приступать к первому этапу использования DirectSound — созданию объекта IDirectSound8, который является

    главным интерфейсом, представляющим звуковое оборудование. Делается это с помощью функции DirectSoundCreate8:

    HRESULT WINAPI DirectSoundCreate8(

    LPCGUID lpcGuidDevice,

    // Укажите NULL

    LPDIRECTSOUND8 *ppDS8,

    // (звуковое устройство по умолчанию)

    // Создаваемый объект

    LPUNKNOWN pUnkOuter);

    // NULL — не используется

    ПРИМЕЧАНИЕ

    Функция

    DirectSoundCreate8, подобно всем другим

    функциям DirectSound, возвращает DS_OK, если

    завершилась успешно, или код ошибки в противном

    случае. Чтобы контроль ошибок был проще можно для

    проверки возвращаемого значения использовать макросы

    FAILED и

    SUCCEEDED.

    200

    netlib.narod.ru

    Джим Адамс

    Используя функцию DirectSoundCreate8 и глобальный экземпляр объекта IDirectSound8, можно инициализировать объект звуковой

    системы следующим образом:

    IDirectSound8 *g_pDS; // Глобальный объект IDirectSound8

    if(FAILED(DirectSoundCreate8(NULL, &g_pDS, NULL))) {

    // Произошла ошибка

    }

    Установка уровня кооперации

    Следующий этап инициализации — установка уровня кооперации (cooperative level) объекта IDirectSound8. Вы используете уровень

    кооперации, чтобы определить как будет осуществляться совместное с другими приложениями использование ресурсов звуковой карты. Хотите ли вы, чтобы карта была полностью в вашем распоряжении, не позволяя никому другому выполнять воспроизведение; или наоборот — хотите разрешить совместный доступ? Или вам нужен специальный формат воспроизведения, который не совпадает с установленным по умолчанию?

    Таблица 4.2. Уровни кооперации DirectSound

    Уровень

    Макрос

    Описание

    Нормальный

    DSSCL_NORMAL

    Обычный уровень; позволяет всем

    программам обращаться к зву-

    ковой карте, используя формат

    воспроизведения по умолчанию: 8

    бит, 11025 Гц, 1 канал (моно). Этот

    формат не может быть изменен.

    Приоритетный DSSCL_PRIORITY

    Монопольный DSSCL_EXCLUSIVE

    Первичная запись DSSCL_WRITEPRIMARY

    То же, что и нормальный, но позволяет вам менять формат воспроизведения.

    Монопольное использование звуковой карты; никакие другие приложения не могут использовать звуковое устройство, пока ваша программа активна. Вы задаете формат воспроизведения.

    Профессиональный уровень, предоставляющий вам полный контроль над системой. Вы получаете доступ только к первичному звуковому буферу (вторичные звуковые буферы отключены). Режим предназначен для программистов, которые хотят в своем коде реализовать собственный алгоритм Микширования, поэтому в дальнейшем я не буду его рассматривать.

    Соседние файлы в папке GameProg

    • #
    • #

      12.02.201625.75 Mб24RUS — Schlee — Qt4 Professional programming with CPP.djvu

    Понравилась статья? Поделить с друзьями:
  • Diag 502061 08 ман тгс ошибка
  • Diag 3407 ошибка ман
  • Directplay error heroes 3 remote cpp windows 10
  • Diag 03501 03 ошибка ман
  • Diag 03407 02 ошибка ман