Russian Qt Forum
Ноябрь 01, 2024, 02:17 *
Добро пожаловать, Гость. Пожалуйста, войдите или зарегистрируйтесь.
Вам не пришло письмо с кодом активации?

Войти
 
  Начало   Форум  WIKI (Вики)FAQ Помощь Поиск Войти Регистрация  

Страниц: [1]   Вниз
  Печать  
Автор Тема: QtMultimedia и QtAudioInput (запись звука)  (Прочитано 10390 раз)
AlexVerkhov
Гость
« : Февраль 05, 2011, 21:50 »

Доброго времени суток, уважаемые форумчане. Цель работы - организовать запись звука в память с дефолтного микрофона. Должна содержать минимум текста и самый простой интерфейс. Понять процесс на примерах самого qt не вышло, т.к. записи как таковой там не нашел, лишь анализ.

Если не составит труда, помогите набросать код этой программы. Заранее благодарен.
Записан
serg_hd
Хакер
*****
Offline Offline

Сообщений: 668



Просмотр профиля
« Ответ #1 : Февраль 06, 2011, 20:05 »

Запись в буфер. Выдрано из готового, не моего, проекта, так что весь код дать не могу.
Код
C++ (Qt)
QByteArray output_bytes;
QAudioInput* audio_in;
QAudioFormat format;
QBuffer output_buffer;
...
 
AudioCapture::AudioCapture()
{
 // Set up the format, eg.
 format.setFrequency(8000);
 format.setChannels(1);
 format.setSampleSize(16);
 format.setCodec("audio/pcm");
 format.setByteOrder(QAudioFormat::LittleEndian);
 format.setSampleType(QAudioFormat::UnSignedInt);
 
 if (!output_buffer.isOpen())
  this->output_buffer.setBuffer(&output_bytes);
 output_buffer.open(QIODevice::WriteOnly | QIODevice::Truncate);
 QAudioDeviceInfo info = QAudioDeviceInfo::defaultInputDevice();
 if (!info.isFormatSupported(format))
 {
   qWarning() << "default format not supported try to use nearest";
this->format = info.nearestFormat(format);
 }
 audio_in = new QAudioInput(format, this);
 audio_in->start(&output_buffer);
}
 
 

« Последнее редактирование: Февраль 06, 2011, 20:20 от serg_hd » Записан

kubuntu/Win7/x64/NetBeans
AlexVerkhov
Гость
« Ответ #2 : Февраль 09, 2011, 15:47 »

вот)) спасибо большое) то, что нужно)
Записан
Страниц: [1]   Вверх
  Печать  
 
Перейти в:  


Страница сгенерирована за 0.072 секунд. Запросов: 22.