Форум программистов, компьютерный форум, киберфорум
C# для начинающих
Войти
Регистрация
Восстановить пароль
Блоги Сообщество Поиск Заказать работу  
 
 Аватар для Сладкий Кис
0 / 0 / 1
Регистрация: 14.03.2011
Сообщений: 54
.NET 4.x

Простая программа записи звука на C#

06.10.2011, 18:44. Показов 1523. Ответов 0
Метки нет (Все метки)

Студворк — интернет-сервис помощи студентам
хочу сделать программу на C# используя библу NAudio. вот начальный код:
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
75
76
77
78
79
80
81
82
83
using System;
using System.Collections.Generic;
using System.ComponentModel;
using System.Data;
using System.Drawing;
using System.Linq;
using System.Text;
using System.Windows.Forms;
using System.Media;
using NAudio;
using NAudio.Wave;
using NAudio.FileFormats;
using NAudio.CoreAudioApi;
namespace LL_TVator
{
    public partial class Form1 : Form
    {
        WaveIn waveIn;
        WaveFileWriter writer;
        string outputFilename = "1.wav";
        public Form1()
        {
            InitializeComponent();
        }
 
        void waveIn_DataAvailable(object sender, WaveInEventArgs e)
        {
            if (this.InvokeRequired)
            {
                this.BeginInvoke(new EventHandler<WaveInEventArgs>(waveIn_DataAvailable), sender, e);
            }
            else
            {
                writer.WriteData(e.Buffer, 0, e.BytesRecorded);
            }
        }
        void StopRecording()
        {
            MessageBox.Show("StopRecording");
            waveIn.StopRecording();
        }
        private void waveIn_RecordingStopped(object sender, EventArgs e)
        {
            if (this.InvokeRequired)
            {
                this.BeginInvoke(new EventHandler(waveIn_RecordingStopped), sender, e);
            }
            else
            {
                waveIn.Dispose();
                waveIn = null;
                writer.Close();
                writer = null;
            }
        }
        private void button1_Click(object sender, EventArgs e)
        {
        try
        {
            MessageBox.Show("Start Recording");
            waveIn = new WaveIn();
            waveIn.DeviceNumber = 0;
            waveIn.DataAvailable += waveIn_DataAvailable;
            waveIn.RecordingStopped += new EventHandler(waveIn_RecordingStopped);
            waveIn.WaveFormat = new WaveFormat(8000, 1);
            writer = new WaveFileWriter(outputFilename, waveIn.WaveFormat);
            waveIn.StartRecording();
            }
            catch (Exception ex)
            {MessageBox.Show(ex.Message);}
        }
        private void button2_Click(object sender, EventArgs e)
        {
            if (waveIn != null)
            {
                StopRecording();
            }
        }
        private void Form1_Load(object sender, EventArgs e)
        {
        }
    }
}
Проблема в том, что он то и пишет, но мя надо ещё и перехватить громкость и вывести её в прогрессбар... ещё парочку вещей добавить по вкусу)
0
Programming
Эксперт
39485 / 9562 / 3019
Регистрация: 12.04.2006
Сообщений: 41,671
Блог
06.10.2011, 18:44
Ответы с готовыми решениями:

Программа записи видео и звука с экрана
Друзья, посоветуйте пожалуйста легкую (потребляющую поменьше ресурсов) программу для записи того, что происходит на экране, вместе со...

Программа для записи звука в mp3
Ребята, здравствуйте. Нужна бесплатная программа для захвата звукового потока с микрофона (или просто со звуковой карты) и...

Нужна программа для записи звука с микрофона.
Нужна прога для записи звука с искажением. Т.е. допустим я говорю в микрофон, а из колонок слышен уже измененный звук с эхом, хорусом или...

0
Надоела реклама? Зарегистрируйтесь и она исчезнет полностью.
inter-admin
Эксперт
29715 / 6470 / 2152
Регистрация: 06.03.2009
Сообщений: 28,500
Блог
06.10.2011, 18:44
Помогаю со студенческими работами здесь

AJAX или простая кнопка записи в базу +1
Здравствуйте. Есть кнопка &quot;Проголосовать&quot;, при нажатии, надо проработать $model-&gt;updateCounters(array('views'=&gt;1), 'id=:id',...

Простая программа
Подскажите с задачкой. В базе данных есть список слов например 1 слово - супер 2 слово - маркет 3 слово - кет Есть форма у...

Простая программа
Помогите решить задачу!!! Ввести значения х и у. Напечатать большее из значений х и у!!!

Простая программа на С++
Дана линейная программа: #include &lt;iostream&gt; #include &lt;math.h&gt; using namespace std; void main(void) { setlocale (LC_ALL,...

Простая программа.
Доброго времени суток! Пишу на dev c++. Надо, чтобы при нажатии стрелки влево печатало &quot;1&quot;, а стрелки вправо - &quot;2&quot;. ...


Искать еще темы с ответами

Или воспользуйтесь поиском по форуму:
1
Ответ Создать тему
Новые блоги и статьи
Переходник USB-CAN-GPIO
Eddy_Em 20.03.2026
Достаточно давно на работе возникла необходимость в переходнике CAN-USB с гальваноразвязкой, оный и был разработан. Однако, все меня терзала совесть, что аж 48-ногий МК используется так тупо: просто. . .
Оттенки серого
Argus19 18.03.2026
Оттенки серого Нашёл в интернете 3 прекрасных модуля: Модуль класса открытия диалога открытия/ сохранения файла на Win32 API; Модуль класса быстрого перекодирования цветного изображения в оттенки. . .
SDL3 для Desktop (MinGW): Рисуем цветные прямоугольники с помощью рисовальщика SDL3 на Си и C++
8Observer8 17.03.2026
Содержание блога Финальные проекты на Си и на C++: finish-rectangles-sdl3-c. zip finish-rectangles-sdl3-cpp. zip
Символические и жёсткие ссылки в Linux.
algri14 15.03.2026
Существует два типа ссылок — символические и жёсткие. Ссылка в Linux — это запись в каталоге, которая может указывать либо на inode «файла-ИСТОЧНИКА», тогда это будет «жёсткая ссылка» (hard link),. . .
[Owen Logic] Поддержание уровня воды в резервуаре количеством включённых насосов: моделирование и выбор регулятора
ФедосеевПавел 14.03.2026
Поддержание уровня воды в резервуаре количеством включённых насосов: моделирование и выбор регулятора ВВЕДЕНИЕ Выполняя задание на управление насосной группой заполнения резервуара,. . .
делаю науч статью по влиянию грибов на сукцессию
anaschu 13.03.2026
прикрепляю статью
SDL3 для Desktop (MinGW): Создаём пустое окно с нуля для 2D-графики на SDL3, Си и C++
8Observer8 10.03.2026
Содержание блога Финальные проекты на Си и на C++: hello-sdl3-c. zip hello-sdl3-cpp. zip Результат:
Установка CMake и MinGW 13.1 для сборки С и C++ приложений из консоли и из Qt Creator в EXE
8Observer8 10.03.2026
Содержание блога MinGW - это коллекция инструментов для сборки приложений в EXE. CMake - это система сборки приложений. Здесь описаны базовые шаги для старта программирования с помощью CMake и. . .
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin
Copyright ©2000 - 2026, CyberForum.ru