Russian Qt Forum

Qt => Мультимедиа => Тема начата: AlexVerkhov от Февраль 05, 2011, 21:50



Название: QtMultimedia и QtAudioInput (запись звука)
Отправлено: AlexVerkhov от Февраль 05, 2011, 21:50
Доброго времени суток, уважаемые форумчане. Цель работы - организовать запись звука в память с дефолтного микрофона. Должна содержать минимум текста и самый простой интерфейс. Понять процесс на примерах самого qt не вышло, т.к. записи как таковой там не нашел, лишь анализ.

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


Название: Re: QtMultimedia и QtAudioInput (запись звука)
Отправлено: serg_hd от Февраль 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);
}
 
 



Название: Re: QtMultimedia и QtAudioInput (запись звука)
Отправлено: AlexVerkhov от Февраль 09, 2011, 15:47
вот)) спасибо большое) то, что нужно)