С наступающим Новым годом! Форум программистов, компьютерный форум, киберфорум
Наши страницы
Программирование звука
Войти
Регистрация
Восстановить пароль
 
SoftIce
es geht mir gut
10561 / 4076 / 1035
Регистрация: 27.07.2011
Сообщений: 9,987
Завершенные тесты: 1
1

Bass.dll - захват звука с конкретной звуковой карты

23.01.2018, 08:03. Просмотров 388. Ответов 6
Метки нет (Все метки)

Приветствую всех!
Друзья, скажите пожалуйста, возможно ли как-то захватить звук с конкретной звуковой карты?
Причем именно с устройства воспроизведения, а не записывающего устройства.

Немного поясню.
Есть самописный плеер, заточенный на использование Bass.dll. В плеере имеется возможность выбора устройства воспроизведения. На целевой машине имеется несколько звуковых карт. Несколько экземпляров плеера работают каждый со своей картой. Стоит задача записи того, что воспроизводит каждый из плееров. Возможно ли это сделать ?

З.Ы. С записью звука с микрофона и микшера(записывающих устройств) проблем нет, но это не то, что нужно.

Добавлено через 5 минут
Еще добавлю - использование сторонних программ - не вариант. Нужно с использованием Bass.dll, или в крайнем случае еще какую-то библиотеку подключить.
0
Similar
Эксперт
41792 / 34177 / 6122
Регистрация: 12.04.2006
Сообщений: 57,940
23.01.2018, 08:03
Ответы с готовыми решениями:

Захват звука динамиков
Здравствуйте, как можно захватить выводимый компьютером звук? Желательно...

Захват потокового звука, использование DirectSound
Программа захватывает звук с микрофона и сразу воспроизводит его на колонки....

Переключение режимов звуковой карты
Как то оставлял тут вопрос по поводу работы со звуком, мне посоветовали...

Захват звука с линейного входа звуковой карты
Доброго времени суток. В Qt новичек. Есть задача необходимо получить поток...

Захват звука с звуковой карты для отображения частотных характеристик
Добрый день. Подскажите пожалуйста, как на С# или WPF перехватывать звук,...

6
The trick
Модератор
7388 / 2653 / 760
Регистрация: 22.02.2013
Сообщений: 3,829
Записей в блоге: 76
23.01.2018, 09:43 2
Цитата Сообщение от SoftIce Посмотреть сообщение
микшера(записывающих устройств) проблем нет, но это не то, что нужно.
Почему? Как раз со стереомикшера и идет запись того что воспроизводится в данный момент.
Можно через Core Audio, через waveInXxx, через DirectSound.

https://msdn.microsoft.com/ru-ru/lib...(v=vs.85).aspx
https://msdn.microsoft.com/en-us/lib...(v=vs.85).aspx
https://msdn.microsoft.com/ru-ru/library/windows/desktop/ms804985.aspx
1
SoftIce
es geht mir gut
10561 / 4076 / 1035
Регистрация: 27.07.2011
Сообщений: 9,987
Завершенные тесты: 1
23.01.2018, 14:34  [ТС] 3
Цитата Сообщение от The trick Посмотреть сообщение
Почему? Как раз со стереомикшера и идет запись того что воспроизводится в данный момент.
Потому что карт несколько, например, две. Два плеера работают одновременно. Один плеер плеер играет на одну, второй на другую.
Bass.dll - захват звука с конкретной звуковой карты

А микшер один, и звук второй карты до него не доходит, почему-то.
Bass.dll - захват звука с конкретной звуковой карты


Или все дело в малобюджетной второй карте ? И у "нормальной" карты должен быть свой микшер?
0
The trick
Модератор
7388 / 2653 / 760
Регистрация: 22.02.2013
Сообщений: 3,829
Записей в блоге: 76
23.01.2018, 16:14 4
Цитата Сообщение от SoftIce Посмотреть сообщение
Или все дело в малобюджетной второй карте ? И у "нормальной" карты должен быть свой микшер?
Не знаю я никогда не работал с двумя картами. По ссылкам которые я привел нужно получить нужный девайс и с ним уже работать.
1
SoftIce
es geht mir gut
10561 / 4076 / 1035
Регистрация: 27.07.2011
Сообщений: 9,987
Завершенные тесты: 1
23.01.2018, 17:00  [ТС] 5
Спасибо, Анатолий !
0
Jin X
4636 / 1391 / 162
Регистрация: 14.12.2014
Сообщений: 2,686
Записей в блоге: 8
Завершенные тесты: 2
24.01.2018, 17:40 6
Если нужно записывать не микс всех плееров (как я понял), а каждую карту отдельно, то почему нельзя выходной поток просто на вход подать, если плеер и рекордер – это одна программа?

Добавлено через 6 минут
Или наоборот надо микс записать?
1
SoftIce
es geht mir gut
10561 / 4076 / 1035
Регистрация: 27.07.2011
Сообщений: 9,987
Завершенные тесты: 1
24.01.2018, 18:11  [ТС] 7
Цитата Сообщение от Jin X Посмотреть сообщение
почему нельзя выходной поток просто на вход подать
Можно, но есть некоторые тонкости.
Дело в том, что там несколько потоков, так нужно для организации кроссфейдов. К тому же их нужно кодировать "на лету" . Одновременно один и тот же поток воспроизводить и кодировать у меня не получилось.Потому что делал через микшер Bass-а. Пробовал запускать два потока параллельно, один на воспроизведение, другой на кодирование. Костыль конечно, но казалось, что получилось хорошо, до тех пор, пока не попробовал поставить на паузу. Поток воспроизведения остановился, а поток кодирования "почесал" дальше. Короче, пока оставил эту затею.
Цитата Сообщение от Jin X Посмотреть сообщение
Или наоборот надо микс записать?
Нет, нужно писать каждый поток отдельно.
Задача отпала сама собой. Оказывается у каждой "нормальной" карты есть свой микшер, откуда и можно брать поток для записи.
0
24.01.2018, 18:11
MoreAnswers
Эксперт
37091 / 29110 / 5898
Регистрация: 17.06.2006
Сообщений: 43,301
24.01.2018, 18:11

Захват звука с звуковой карты для отображения частотных характеристик
Добрый день. Подскажите пожалуйста, как на С++ перехватывать звук, идущий на...

Bass.dll, bass_fx.dll - как сделать, чтобы менялась только высота звука без скорости?
Как сделать, чтобы при изменении частоты потока скорость оставалась той же, то...

Нет звука со встроенной звуковой карты
Материнская плата ASUS p7p55d-e LX Звук встроенный VIA® VT1708S 8-Channel High...


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

Или воспользуйтесь поиском по форуму:
7
Ответ Создать тему
Опции темы

КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin® Version 3.8.9
Copyright ©2000 - 2018, vBulletin Solutions, Inc.
Рейтинг@Mail.ru