![]() |
|
Модераторы: Rickert, Alexeis, BorisVorontsov |
![]()
|
|
| AndreySol |
|
|||
|
Опытный ![]() ![]() Профиль Группа: Участник Сообщений: 772 Регистрация: 19.6.2004 Репутация: нет Всего: 1 |
Подскажите, как подсчитать размер сэмпла для формата WAVE_FORMAT_PCM, имея все данные семпла из структуры WAVEFORMATEX ?
|
|||
|
||||
| Alexeis |
|
|||
![]() Амеба Профиль Группа: Админ Сообщений: 11743 Регистрация: 12.10.2005 Где: Зеленоград Репутация: 5 Всего: 459 |
Если под сэмплом понимается одна выборка одного канала, то нужное поле wBitsPerSample.
-------------------- Vit вечная память. Обсуждение действий администрации форума производятся только в этом форуме гениальность идеи состоит в том, что ее невозможно придумать |
|||
|
||||
| AndreySol |
|
|||
|
Опытный ![]() ![]() Профиль Группа: Участник Сообщений: 772 Регистрация: 19.6.2004 Репутация: нет Всего: 1 |
Не верно вопрос сформулировал.
К примеру для MP3 формата файл состоит из какого-то кол-ва семплов (или фреймов ?), а сам сэмпл (или фрейм) состоит из заголовка и кусочка данных - для WAVE PCM все по другому ? |
|||
|
||||
| Alexeis |
|
|||
![]() Амеба Профиль Группа: Админ Сообщений: 11743 Регистрация: 12.10.2005 Где: Зеленоград Репутация: 5 Всего: 459 |
Если отбросить все заголовки, то аудио данные идут сплошным потоком. Фрейм содержит мгновенные амплитуды для всех каналов (сэмплы). Они идут по очереди. Например для 4х каналов left | center | right | surround . Размер фрейма определяется как wChannels * ((wBitsPerSample + 7) / 8) . Минимальный размер сэмпла в файле 1 байт, хотя реально звук может быть и 7ми битным и 12ти битным. В этом случае размер округляется до размера байта. Это и делает формула (wBitsPerSample + 7) / 8 . -------------------- Vit вечная память. Обсуждение действий администрации форума производятся только в этом форуме гениальность идеи состоит в том, что ее невозможно придумать |
|||
|
||||
![]()
|
| Вы можете найти полезным что... | |
|
|
|
| 0 Пользователей читают эту тему (0 Гостей и 0 Скрытых Пользователей) | |
| 0 Пользователей: | |
| « Предыдущая тема | C/C++: Мультимедия, OpenGL/DirectX | Следующая тема » |
|
|
По вопросам размещения рекламы пишите на vladimir(sobaka)vingrad.ru
Отказ от ответственности Powered by Invision Power Board(R) 1.3 © 2003 IPS, Inc. |