Все темы

Archives for: 2017

OSS + PulseAudio = запись звука и работающий голос в Steam, Skype под Linux

Немного обычной пингвинской магии для того, чтобы на компьютере с драйверами Open Sound System в Steam заработал ввод звука.
1) Устанавливаем pulseaudio, так как у ALSA проблемы с записью через OSS.
2) Копируем /etc/pulse/default.pa в ~/.config/pulse/default.pa и добавляем туда примерно такие строки (номера устройств подскажет ossinfo):

# Подключаем DSP-устройство для воспроизведения звука
load-module module-oss device="/dev/dsp0" sink_name=output mmap=0
# Подключаем DSP-устройство для записи звука
load-module module-oss device="/dev/dsp2" source_name=input mmap=0

# Можно настроить USB-карточки примерно так, но после подключения надо будет делать:
# sudo /usr/lib/oss/scripts/oss_usb-create-devices
# pulseudio --kill && pulseaudio --start
.ifexists /dev/oss/usb046d0a29-2/pcm0
load-module module-oss device="/dev/oss/usb046d0a29-2/pcm0" sink_name=h800 mmap=0
load-module module-oss device="/dev/oss/usb046d0a29-1/pcmin0" source_name=h800_mic mmap=0
.endif

set-default-sink output
set-default-source input

Перезапускаем Pulse:
$ pulseudio --kill && pulseaudio --start
Если всё сделано правильно, то после этого приложения, работающие через Pulseaudio, смогут выводить и записывать звук через OSS-драйвера, например, в Steam заработает голос (например, тимспик в Counter-Strike). Возможно, даже заработает Skype (но я пока не проверял).
Можно добавить несколько звуковых карт и переключать их, например, с помощью pavucontrol. Из неприятных мелочей, PA отображает все устройства с одним и тем же именем (которое, кажется, берёт от /dev/dsp), так что угадать, где какое, можно только по порядку.

UPD: Проверил Скайп - тоже нормально работает.

UPD2: Столкнулся с проблемой, что при длительном простое компьютера звук может заглючить (хотя все режимы энергосбережения у меня отключены). Скрипт для ремонта:

#!/bin/bash
sudo killall pulseaudio
sudo killall -s KILL pulseaudio
sudo /etc/init.d/oss restart
pulseaudio -D

Обское море, пляж "Звезда", Git2P

Не стать ли видеоблоггером?

P.S. Это вообще технически как возможно? Это же советская песня, запись 1937 года!

Что за бл%?

Про дефективные микрофоны для экшен-камер

Некоторое время назад я закупил себе пару экшен-камер: Gitup Git2P и SJCAM SJ7 Star, к ним и микрофоны:
1) Петличный моно микрофон Gitup;
2) Saramonic G-Mic (бывший GoMic, но, кажется, из-за российского рынка его переименовали);
3) Стерео микрофон Sony с коннектором 3,5мм за примерно 300 рублей + переходник на enhanced mini USB;
4) Петличный моно микрофон SJCAM.

Микрофоны Sony, Gitup, Saramonic G-Mic, SJCAM

В итоге, из коробки заработал только микрофон Gitup.

Первым пациентом стал Saramonic G-Mic - один из проводов внутри был оборван, так что работал только один канал, при этом ещё оплётка была на "+" работающего капсюля, а внутренний провод на "земле". Учитывая конскую, по сравнению с прочими микрофонами, цену и хорошие отзывы на этот микрофон, это удивило. Но после ремонта он оказался весьма недурен, и даже шкурку при ремонте удалось не попортить, благо, собран он на винтики. Правда, разделение стерео по громкости у него очень слабое, так как капсюли совсем рядом, но всё же звук перестаёт быть "плоским". С чувствительностью и частоткой у него также порядок.

Вторым на операционный стол отправился переходник стерео микрофона Sony. Сам микрофон приятно удивил, особенно с учётом очень низкой цены (на нём даже "Made in Japan" написано), по сравнению с Сарамоником у него пониже чувствительность, но гораздо более разделённое стерео. А вот переходник впечатлил по своему: он был со стерео разъёмами, но распаян вообще моно проводом, а правый канал на разъёмах просто не был никуда присоединён! Я разломал коннектор enhanced mini USB и припаял к нему 3,5 мм гнездо более длинным и уже стерео проводом. Минус этого микрофона в том, что он не крепится на экшен-камере, но при этом никаких других креплений у него тоже нет, надо будет придумать к нему что-то.

Третьим пришёл микрофон SJCAM. При подключении микрофона звук был очень-очень тихий и без низких частот. Такой эффект говорит о том, что электретный капсюль припаян навыворот. Чтобы починить, нужно снять поролонку, отвинтить решётку, вынуть капсюль, перепаять провода наоборот, собрать. Делов на три минуты, но ещё надо знать, что это лечится. Я сначала подумал, что капсюль неисправен механически, например, деформирована мембрана, и чуть не разломал микрофон на детали.

Вот такая удручающая статистика. При этом, детали корпуса, коннекторы, капсюли у всех микрофонов отличные, а вот финальная ручная сборка всё подводит - монтажники то не пропаивают, то вообще делают полную ерунду.

P.S. Тест микрофонов, может, добавлю попозже, в отдалённом светлом будущем.
P.P.S. SJ7 вообще не поддерживает эти стерео микрофоны (они с ней просто не работают), а Git2P совместима со всеми, но у стерео микрофонов перепутаны левый и правый каналы относительно разводки в стиле GoPro.

Микрофонный предусилитель для электретных микрофонов на ОУ TL072, LM358 или аналогичных

Запилил микрофонный предусилитель с регулируемым коэффициентом усиления, на батарейках, чтобы была возможность записывать стерео, а также записывать на имеющиеся электретные микрофоны на звуковую карту Audiophile 192, которая не имеет входа для микрофонов. Комментарии к схеме на картинке. В интернетах море статей и схем для подобных предусилителей, но самая толковая, что нашёл, вот эта:

John Caldwell
TI Designs – Precision: Verified Design
Single-Supply, Electret Microphone Pre-Amplifier
Reference Design
http://www.ti.com/lit/ug/tidu765/tidu765.pdf
Если её прочитать, вы познаете кунфу все формулы и принципы расчёта инвертирующего предусилителя на ОУ для микрофона.
Фото предусилителя
Схема того, что у меня получилось:

·· [Read more · Читать дальше] ·· »»»

Скрипт для циклической записи видео на веб-камеру для Линукса

С помощью обычного линуксового софта можно легко превратить вебкамеру в видеокамеру для записи каких-нибудь блогов или в "видеорегистратор", что я для разминки и сделал. Проверено на Ubuntu 14.04.

·· [Read more · Читать дальше] ·· »»»

Магический .asoundrc, чтобы с OSS работала звукозапись через эмуляцию ALSA

Впервые за много лет получил работающую звукозапись в Linux с M-Audio Audiophile 192/24 в ALSA-приложениях. Эта карта хорошо работает только с OSS-драйверами, и мука с современным отупевшим и потерявшим нормальную поддержку OSS софтом была очень долгой. Секретов успеха два:
1) Можно описать карту как "asym" и задать в ней различные входные и выходные DSP-устройства OSS и в одной виртуальной дефолтной карте поиметь работающие вход и выход, а значит, даже у самых глупых ALSA-приложений не будет сомнений, откуда брать звук.
2) Нужно задать параметры буферизации звука - без этого чудо не происходит!
Итак, волшебный ~/.asoundrc:

·· [Read more · Читать дальше] ·· »»»

Archives

                                                                                                                                                                                                                                                                   


© Sergey A. Galin, 1998-2021 sageshome.net/blog/