<html>
<head>
<meta charset="UTF-8" />
<link rel="stylesheet" type="text/css" href="style.css" />
<title>Звук - Helianthus</title>
</head>
<body>
<div class="navigation">
<p><a href="https://coolbug.org/users/bw/helianthus/ru.html">Helianthus</a></p>
<hr />
<p><a href="index.html">Helianthus: Документация</a></p>
<p><a href="install.html">Установка</a></p>
<p><a href="common.html">Запуск и общие функции</a></p>
<p><a href="input.html">Клавиатура и мышь</a></p>
<p><a href="drawing.html">Рисование</a></p>
<p><a href="font.html">Шрифты и текст</a></p>
<p><a href="animation.html">Текстуры и анимация</a></p>
<p><a href="framebuffer.html">Буфер кадра</a></p>
<p><a href="sprites.html">Спрайты</a></p>
<p><a href="groups.html">Группы спрайтов</a></p>
<p><a href="sound.html">Звук</a></p>
<hr />
<p><a href="functions.html">Все функции</a></p>
</div>
<div class="content">
<h1>Звук</h1>
<p>Библиотека Helianthus позволяет вам воспроизводить звуки из файлов WAV, OGG, MP3 и FLAC.</p>
<p>Загрузить звук можно функцией <a href="sound.html#createSound">createSound</a>, которая возвращает значение типа S<i>ound</i>, которое по сути является адресом в памяти — указателем на описание звуковой волны внутри библиотеки Helianthus.</p>
<p>Для воспроизведения и остановки звука используйте функции <a href="sound.html#soundPlay">soundPlay</a> и <a href="sound.html#soundStop">soundStop</a>.</p>
<h2>Функции:</h2>
<h3 id="createSound">Sound createSound(const char *path);</h3>
<p>Загрузить звук из указанного файла. См. также <a href="sound.html#createSoundFromMemory">createSoundFromMemory</a>, <a href="sound.html#soundClone">soundClone</a>, <a href="sound.html#soundDestroy">soundDestroy</a>.</p>
<h4>Параметры:</h4>
<p><i>path</i> — путь к звуковому файлу.</p>
<h3 id="createSoundFromMemory">Sound createSoundFromMemory(const void *data, int size);</h3>
<p>Загрузить звук из байтов звукового файла ранее загруженных в оперативную память. При загрузке создаётся копия звука и исходные данные больше не требуются. См. также <a href="sound.html#createSound">createSound</a>.</p>
<h4>Параметры:</h4>
<p><i>data</i> — указатель на первый байт данных звукового файла;<br />
<i>size</i> — количество байт данных звукового файла.</p>
<h3 id="soundDestroy">void soundDestroy(Sound sound);</h3>
<p>Удалить звук.</p>
<p><b>Важно:</b> Скорее всего у вас в программе останется переменная в которой хранился указатель на звук. Этот указатель станет недействителен — будет указывать на неопределённую область памяти — не на звук, звук уже удалён. Вы можете занести в эту переменную другой звук, но использовать старое значение переменной больше нельзя это приведёт к ошибкам и непредсказуемому поведению программы.</p>
<h3 id="soundClone">Sound soundClone(Sound sound);</h3>
<p>Создать копию звука. Вы сможете контролировать воспроизведение этих двух копий независимо друг от друга.</p>
<h3 id="soundPlay">void soundPlay(Sound sound, int loop);</h3>
<p>Воспроизвести звук.</p>
<h4>Параметры:</h4>
<p><i>loop</i> — если <i>TRUE</i>, то повторять воспроизведение звука до тех пор пока он не будет остановлем командой <a href="sound.html#soundStop">soundStop</a> (подходит, например, для фоновой музыки). Если <i>FALSE</i>, то воспроизвести звук один раз.</p>
<h3 id="soundStop">void soundStop(Sound sound);</h3>
<p>Остановить воспроизведение звука.</p>
</div>
</body>
</html>