Карта0
Карта1
Карта2
Карта3
Карта4
Карта5
Карта6
Карта7
Карта8
Карта9
Карта10
Карта11
Карта12
Карта13
Карта14
Карта15
Карта16
Карта17
Карта18
Карта19
Карта20
Карта21
Карта22
Карта23
Карта24
Карта25
Карта26
Карта27
Карта28
Карта29
Карта30
Карта31
Карта32
Карта33
Карта34
Карта35
Карта36
Карта37
Карта38
Карта39


Наш форум » Железо и софт. Вопросы и ответы. » Программирование » C++

Ответ
Старый 09.07.2007, 22:38   #1 (permalink)
Адски вкусный
 
Аватар для Cheburec
 
Регистрация: 03.02.2007
Адрес: ул. Фрунзе, д.2
Возраст: 25
Сообщений: 76
Репутация: 4
Сообщение C++


Народ выручайте!!!!!!!!!!!!!!!!
Все кто знают, как можно в С++ открывать wav файлы, находящиеся в оперативной памяти, обрабатывать их пишите в эту тему я буду рад любой помощи.
Cheburec вне форума   Ответить с цитированием
Старый 10.07.2007, 05:38   #2 (permalink)
Местный
 
Аватар для Grand Father
 
Регистрация: 03.03.2007
Адрес: Москва, Люблино
Возраст: 33
Сообщений: 946
Репутация: 132
Провайдер: Другой


Формат wav-файла очень прост и выдрать оттуда информацию сможет даже пьяный первокурсник, а уж где они находятся - в памяти или в файле - не суть важно, в любом случае это всего лишь адрес.

typedef struct {
char id_riff[4]; // "RIFF"
DWORD len_riff;

char id_chuck[4]; // "WAVE"
char fmt[4]; // "fmt "
DWORD len_chuck;

WORD type;
WORD channels;
DWORD freq;
DWORD bytes;
WORD align;
WORD bits;

char id_data[4]; // "data"
DWORD len_data;
} TWaveHeader;

Расшифровка каждой позиции, в принципе, не обязательна, главное, что нас
интересует, - это число каналов "channels" (в зависимости от этого числа будем
по-разному читать данные) и, собственно, битрейт - bits (количество бит на
кодирование одного сэмпла). (Чтобы посчитать длительность выборки понадобится
еще и freq). Как нетрудно посчитать, вся структура занимает ровно
44 байта, следовательно, в любом файле, начиная, с 45-го байта идут данные,
которые тебе и надо выдрать в зависимости от указанных выше параметров
(channels, bits). Не забываем, что char - это 1 байт, WORD - 2, DWORD - 4!
Grand Father вне форума   Ответить с цитированием
Старый 10.07.2007, 09:43   #3 (permalink)
Адски вкусный
 
Аватар для Cheburec
 
Регистрация: 03.02.2007
Адрес: ул. Фрунзе, д.2
Возраст: 25
Сообщений: 76
Репутация: 4


Спасибо , но мне не нужно выдирать ничего из wav файла, мне просто нужно его открыть в двоичке, с возможностью дальнейшего изменения данных, желательно чтобы я смог открыть его кусками, потому что файл весит гиг с лишним, от этого сишник может зависнуть
Cheburec вне форума   Ответить с цитированием
Старый 10.07.2007, 16:23   #4 (permalink)
Местный
 
Аватар для Grand Father
 
Регистрация: 03.03.2007
Адрес: Москва, Люблино
Возраст: 33
Сообщений: 946
Репутация: 132
Провайдер: Другой


А "выдрать данные" и "открыть с возможностью редактирования" это разные вещи что ли?
Grand Father вне форума   Ответить с цитированием
Ответ




Здесь присутствуют: 1 (пользователей: 0 , гостей: 1)
 
Опции темы
Опции просмотра

Ваши права в разделе
You may not post new threads
You may not post replies
You may not post attachments
You may not edit your posts

BB code is Вкл.
Смайлы Вкл.
[IMG] код Вкл.
HTML код Выкл.
Trackbacks are Вкл.
Pingbacks are Вкл.
Refbacks are Вкл.



оригинальные запчасти для fiat Москва . От 3990р. - регистрация фирм, ООО - регистрация ооо. ООО, ЗАО - регистрация.
При копировании информации ссылка на источник обязательна!

Часовой пояс GMT +4, время: 04:11.
vBulletin® Version 3.8.2.Copyright ©2000 - 2012, Jelsoft Enterprises Ltd. Перевод: zCarot
Template-Modifications by TMS