Версия для печати темы

Нажмите сюда для просмотра этой темы в обычном формате

Форум на CrossPlatform.RU _ Qt Мультимедиа _ Как написать "захват звука" в QT

Автор: evg123 15.10.2009, 11:07

Смотрю в QT - вижу море возможностей воспроизведения звука и не нашёл (или плохо искал?) возможность захвата звука.
Есть необходимость написать кроссплатформенную прогу для захвата звука и небольшой "специальной" его обработки.
Как это сделать средствами QT (или вообще собственными средствами линукс и затем винды с использованием MinGW )?
В каком направлении идти?

Автор: rnd 15.10.2009, 12:24

Qt это высокоуровневая библиотека, вряд ли есть такие возможности.
Смотреть, видимо, в сторону DirectSound (DirectX)

Автор: DarkAngel 15.10.2009, 12:32

OpenAL?

Автор: evg123 15.10.2009, 13:06

Цитата(DarkAngel @ 15.10.2009, 13:32) *
OpenAL?

Буду ковырять OpenAL. Это надсттройка над ALSA?

Автор: evg123 15.10.2009, 16:05

Цитата(evg123 @ 15.10.2009, 14:06) *
Цитата(DarkAngel @ 15.10.2009, 13:32) *
OpenAL?

Буду ковырять OpenAL. Это надсттройка над ALSA?

OpenAL - не поддерживает захват звука - она для воспроизведения 3D звука. Я чего-то тут не догоняю.

Автор: DarkAngel 15.10.2009, 17:07

страно, я точно слышал о такой фиче в OpenAL.. может перепутал - звиняй :blush2:
вроде http://www.portaudio.com/ поддерживает захват звука

Автор: Litkevich Yuriy 16.10.2009, 9:31

А с помощью Phonon'а не получится?

Автор: evg123 16.10.2009, 14:48

Цитата(DarkAngel @ 15.10.2009, 18:07) *
страно, я точно слышал о такой фиче в OpenAL.. может перепутал - звиняй :blush2:
вроде http://www.portaudio.com/ поддерживает захват звука

Да я сам толком не знаю - скачал доки, полдня просматривал - не нашёл, мож. плохо искал

Цитата(Litkevich Yuriy @ 16.10.2009, 10:31) *
А с помощью Phonon'а не получится?

Как я понял в фононе - есть всё, чтобы воспроизввести звук. Он может брать его из любого источника, вплоть до из QBuffer-а.
Но вот как в этот QBuffer набить эти вот PCM-сэмплы - не ясно. Надо, наверное, их брать как-то у ALSA, а затем кидать в оный QBuffer.
Т .е. сплошные белые пятна в знаниях.

Автор: BRE 18.10.2009, 13:38

Цитата(evg123 @ 16.10.2009, 15:48) *
Как я понял в фононе - есть всё, чтобы воспроизввести звук. Он может брать его из любого источника, вплоть до из QBuffer-а.
Но вот как в этот QBuffer набить эти вот PCM-сэмплы - не ясно. Надо, наверное, их брать как-то у ALSA, а затем кидать в оный QBuffer.
Т .е. сплошные белые пятна в знаниях.

В Qt 4.6 появились вроде классы для захвата звука.
QAudioInput: http://doc.qt.nokia.com/4.6-snapshot/qaudioinput.html

Автор: quarz 30.5.2010, 20:47

советую FMOD. Делал на нем захват звука, декодирование, FFT. он кроссплатформенный и бесплатный для бесплатных проектов

Автор: cold62 21.9.2010, 13:28

А если стоит задача создать аудиоконференцию на несколько человек по локальной сети, какая из вышеназванных библиотек может помочь?

Форум Invision Power Board (http://www.invisionboard.com)
© Invision Power Services (http://www.invisionpower.com)