Форум программистов, компьютерный форум CyberForum.ru

Редактирование wav файлов в С++ - C++

Войти
Регистрация
Восстановить пароль
Другие темы раздела
C++ Двухмерный массив заполнить спиралью http://www.cyberforum.ru/cpp-beginners/thread588202.html
Нужно заполнить двухмерный массив спиралью. С левого верхнего угла и до центра у меня получилось. А вот в обратную сторону не как не получается. Вот код, может кто подскажет что-то: // ArrayOne.cpp : Defines the entry point for the console application. // #include "stdafx.h" #include <iostream> #include <math.h> using namespace std; #define sqr(x) ((x) * (x))
C++ Расшифровка char key = "axe128bct"; //crypt key for(int i = 0; i<20; i++) newPsw = newPsw^key; Имеется вот такой код, вводим пароль в программе, получаем зашифрованный по ключу текст. А как расшифровать обратно? Помогите пожалуйста. http://www.cyberforum.ru/cpp-beginners/thread588197.html
Найти произведение минимальных элементов каждой строки матрицы C++
Уважаемые форумчане ! Пожалуйста помогите решить простенькую задачку ! А именно : Найти произведение минимальных элементов каждой строки матрицы (m x n). Спасибо ! Добавлено через 2 часа 19 минут Поправка нужна программа с использованием библиотеки MPI :)
C++ Подсчитать количество символов а над третьей строкой матрицы и...
Дана матрица 5x7, элементами которой являются значения символьного ти¬па. Составить одномерный массив, содержащий количество символов m в каждом из ее столбцов. Подсчитать количество символов а над третьей строкой матрицы и общее количество символов b и z под третьей строкой.
C++ Матрица http://www.cyberforum.ru/cpp-beginners/thread588161.html
В прямоугольной матрице определить элемент, который по модулю наименее отличается от среднего арифметического всех элементов матрицы. Помогите решить!!!!
C++ Функции с переменным количеством параметров. Функция, как тип данных Добрый день, уважаемые программисты! Прошу немного помощи задание: Разработать функцию с переменным количеством параметров. Для извлечения параметров из списка использовать технологию программирования областей памяти переменного формата. 9. Последовательность вещественных массивов. Сначала идет целый параметр - размерность массива (int), затем непосредственно последовательность... подробнее

Показать сообщение отдельно
Alexan4ez
2 / 2 / 1
Регистрация: 09.05.2011
Сообщений: 13
28.05.2012, 15:57  [ТС]     Редактирование wav файлов в С++
Да хотелось бы обойтись без подключения сторонних библиотек... я в принципе нашел примеры реализации, но соль в том, что там считывается все, кроме значения амплитуд, которые мне так нужны. Считывается RIFF, fmt, а data нет. Подскажите, как правильно дополнить структуру и считать звуковые данные?


C++
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
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
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;
 
    // Аудио формат, полный список можно получить здесь [url]http://audiocoding.ru/wav_formats.txt[/url]
    // Для 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 данные.
//что делал я
/*
//DATAchank
char DataID[4];
    //размер куска данных надо понимать...
    
unsigned long sizechank2;
 
int* p;//массив указателей на значения амплитуд
 
*/
};
Добавлено через 4 часа 12 минут
мне потребовалось пол дня, чтобы понять, что я идиот
 
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin® Version 3.8.9
Copyright ©2000 - 2017, vBulletin Solutions, Inc.
Рейтинг@Mail.ru