реклама на сайте
подробности

 
 
> PCM формат, вытащить информацию
TigerSHARC
сообщение Sep 13 2012, 11:29
Сообщение #1


Знающий
****

Группа: Свой
Сообщений: 688
Регистрация: 4-09-09
Пользователь №: 52 195



Имеется файл в PCM формате. необходимо "вытащить" из него только полезные данные и представить в виде массива.
Первое что требуется - человеческое описание PCM формата (карта байтов в файле).
Ну и может у кого наработки есть... rolleyes.gif
Go to the top of the page
 
+Quote Post
 
Start new topic
Ответов
Sirko
сообщение Nov 11 2012, 09:46
Сообщение #2


Местный
***

Группа: Участник
Сообщений: 245
Регистрация: 15-08-07
Пользователь №: 29 795



CODE
// Структура, описывающая заголовок WAV файла.
struct WAVHEADER
{
// WAV-формат начинается с RIFF-заголовка:

// Содержит символы "RIFF" в ASCII кодировке
// (0x52494646 в big-endian представлении)
char chunkId[4];

// 36 + subchunk2Size, или более точно:
// 4 + (8 + subchunk1Size) + (8 + subchunk2Size)
// Это оставшийся размер цепочки, начиная с этой позиции.
// Иначе говоря, это размер файла - 8, то есть,
// исключены поля chunkId и chunkSize.
unsigned long chunkSize;

// Содержит символы "WAVE"
// (0x57415645 в big-endian представлении)
char format[4];

// Формат "WAVE" состоит из двух подцепочек: "fmt " и "data":
// Подцепочка "fmt " описывает формат звуковых данных:

// Содержит символы "fmt "
// (0x666d7420 в big-endian представлении)
char subchunk1Id[4];

// 16 для формата PCM.
// Это оставшийся размер подцепочки, начиная с этой позиции.
unsigned long subchunk1Size;

// Аудио формат, полный список можно получить здесь http://audiocoding.ru/wav_formats.txt
// Для PCM = 1 (то есть, Линейное квантование).
// Значения, отличающиеся от 1, обозначают некоторый формат сжатия.
unsigned short audioFormat;

// Количество каналов. Моно = 1, Стерео = 2 и т.д.
unsigned short numChannels;

// Частота дискретизации. 8000 Гц, 44100 Гц и т.д.
unsigned long sampleRate;

// sampleRate * numChannels * bitsPerSample/8
unsigned long byteRate;

// numChannels * bitsPerSample/8
// Количество байт для одного сэмпла, включая все каналы.
unsigned short blockAlign;

// Так называемая "глубиная" или точность звучания. 8 бит, 16 бит и т.д.
unsigned short bitsPerSample;

// Подцепочка "data" содержит аудио-данные и их размер.

// Содержит символы "data"
// (0x64617461 в big-endian представлении)
char subchunk2Id[4];

// numSamples * numChannels * bitsPerSample/8
// Количество байт в области данных.
unsigned long subchunk2Size;

// Далее следуют непосредственно Wav данные.
};


Взято отсюда

Кстати, в одном из журналов Радио (за прошлое тысячилетие кажись), была статья про WAV и схема на трех микрухах, одна из которых - EEPROMка, другая - MAXim (фильтр после шима). Там автор хорошо описал формат.

Сообщение отредактировал Sirko - Nov 11 2012, 09:54
Go to the top of the page
 
+Quote Post

Сообщений в этой теме
- TigerSHARC   PCM формат   Sep 13 2012, 11:29
- - zombi   Цитата(TigerSHARC @ Sep 13 2012, 14:29) И...   Sep 13 2012, 21:04
- - TigerSHARC   мне нужен массив самого сигнала. и PCM и WAV содер...   Nov 1 2012, 10:51
|- - zombi   Цитата(TigerSHARC @ Nov 1 2012, 14:51) мн...   Nov 1 2012, 11:32
- - yurmala   TigerSHARC, так вы ищите run-time решение разбора ...   Nov 6 2012, 05:22
|- - TigerSHARC   Цитата(yurmala @ Nov 6 2012, 09:22) Tiger...   Nov 6 2012, 07:41
- - blackfin   Цитата(TigerSHARC @ Sep 13 2012, 15:29) И...   Nov 6 2012, 06:26
- - DpInRock   Уберите из файла первые 64 байта. И все.   Nov 6 2012, 08:35
|- - TigerSHARC   Цитата(DpInRock @ Nov 6 2012, 12:35) Убер...   Nov 6 2012, 08:55
- - DpInRock   А что тут дельного. Берете любой редактор типа Sou...   Nov 6 2012, 11:16
- - TigerSHARC   Тогда не совсем дельный совет был. Частота, в моём...   Nov 6 2012, 11:27
|- - muravei   Цитата(TigerSHARC @ Nov 6 2012, 14:27) Гд...   Nov 6 2012, 11:32
|- - TigerSHARC   Цитата(muravei @ Nov 6 2012, 15:32) Вы не...   Nov 6 2012, 11:49
|- - muravei   Цитата(TigerSHARC @ Nov 6 2012, 14:49) ой...   Nov 6 2012, 11:53
- - toweroff   TigerSHARC, для получения массива нужно: 1. Sound...   Nov 7 2012, 14:58
|- - TigerSHARC   Цитата(toweroff @ Nov 7 2012, 18:58) Tige...   Nov 8 2012, 11:50
- - DpInRock   ЦитатаЧастота, в моём случае 10кГц. И что? Причем ...   Nov 8 2012, 06:23
- - ReAl   Цитата(TigerSHARC @ Sep 13 2012, 13:29) И...   Nov 8 2012, 11:37
- - ae_   Цитата(TigerSHARC @ Nov 8 2012, 20:50) .....   Nov 9 2012, 00:55


Reply to this topicStart new topic
1 чел. читают эту тему (гостей: 1, скрытых пользователей: 0)
Пользователей: 0

 


RSS Текстовая версия Сейчас: 25th June 2025 - 11:28
Рейтинг@Mail.ru


Страница сгенерированна за 0.01772 секунд с 7
ELECTRONIX ©2004-2016