Страница 6 из 6 Первая ... 456
Показано с 101 по 112 из 112

Тема: Виртуальные кабеля, ASIO и задержки

  1. #1 Показать/скрыть первое сообщение.
    Завсегдатай
    Автор темы
    Аватар для E.Sokol
    Регистрация
    17.01.2015
    Адрес
    Урал
    Сообщений
    1,365

    По умолчанию Виртуальные кабеля, ASIO и задержки

    Попробовал использовать виртуальные аудио-кабеля отсюда и отсюда, чтобы обрабатывать аудио-поток через своё приложение. И всё вроде работает, только совершенно дикая задержка в 2-3 секунды. Проблема точно не в приложении, поскольку при использовании реальных устройств всё чётко. Может, кто-нибудь сталкивался?

    Искал похожее для ASIO, но не нашёл. В принципе, не так уж и сложно написать самому, но не хочется заморачиваться, да и скорее всего, тут я тоже чего-то не догоняю.

    ---------- Сообщение добавлено 07.02.2022 в 13:17 ---------- Предыдущее сообщение было 06.02.2022 в 20:34 ----------

    Всё-таки это я лошара! У меня проблема, весьма неочевидный баг оказался. Но тему пока не закрываю, потому что вопрос с ASIO всё ещё открытый.

  2. #101
    Завсегдатай Аватар для domician
    Регистрация
    07.12.2012
    Сообщений
    1,968

    По умолчанию Re: Виртуальные кабеля, ASIO и задержки

    Цитата Сообщение от Alex Посмотреть сообщение
    470 или 4700 мкФ - абсолютно рояли не игрет. И то и другое больше 10-ти...
    Так он у PVDD. При отсутствии внешнего питания заряжается через резистор, который потом замыкает мосфет, а при наличии внешнего тот питает только PVDD. Наверно проще еще один мосфет.
    Вообще есть прикомпьютерные колонки, только с аналоговым входом и по USB получает только питание. В свое время разбирал и, если память не изменяет, там на питании 220мк стояло, а каких-то ключей небыло.

  3. #102
    Завсегдатай Аватар для domician
    Регистрация
    07.12.2012
    Сообщений
    1,968

    По умолчанию Re: Виртуальные кабеля, ASIO и задержки

    Цитата Сообщение от Alex Посмотреть сообщение
    Вот если бы были мосфеты без встроенного диода
    Вместо одиночных мосфетов твердотельные реле.

    Цитата Сообщение от Alex Посмотреть сообщение
    сертификацию не пройдешь
    Тут не в курсе. Вообще нельзя, или если заряжается медленно, то можно?

    Offтопик:
    А на счет денег, мне никогда не жалко тем, кто делает, но не паразитам.
    И я не сосьялист, вот рабовладельцем в любимом др. Риме с превеликим удовольствием.

  4. #103
    Завсегдатай Аватар для domician
    Регистрация
    07.12.2012
    Сообщений
    1,968

    По умолчанию Re: Виртуальные кабеля, ASIO и задержки

    Цитата Сообщение от Alex Посмотреть сообщение
    Там те-же мосфеты, только два встречно.
    Знаю. Там один и нужен между PVDD и остальным. Управляется от внешнего питания - появилось, отключился.

  5. #104
    Не хочу! Аватар для Alex
    Регистрация
    20.03.2003
    Адрес
    Worldwide
    Возраст
    62
    Сообщений
    37,605

    По умолчанию Re: Виртуальные кабеля, ASIO и задержки

    Посколку побочная ветвь обсуждения в этой теме несколко оффтопична, и главное - никому кроме 2-х человек повидимому не интересна, я думаю лучше отсюда все это убрать и переместиться в личку.
    "Замполит, чайку?"(с)"Охота за Красным Октябрем".
    "Да мне-то что, меняйтесь!"(с)анек.
    <-- http://altor1.narod.ru --> Вопросы - в личку, е-мейл, скайп.

  6. #105
    Завсегдатай
    Автор темы
    Аватар для E.Sokol
    Регистрация
    17.01.2015
    Адрес
    Урал
    Сообщений
    1,365

    По умолчанию Re: Виртуальные кабеля, ASIO и задержки

    Нашёл ещё один интересный сигнал для измерений - LFSR - однобитный псевдослучайный сигнал. Он интересен тем, что на периоде 2n-1 его спектр строго линейный. Наверняка его достаточно просто собрать в железе и получился бы неплохой инструмент для измерения АЧХ и интермодуляционных гармоник. На скриншоте период 127 бит.
    Нажмите на изображение для увеличения. 

Название:	lfsr-127 bit.png 
Просмотров:	108 
Размер:	21.4 Кб 
ID:	452171

  7. #106
    Завсегдатай Аватар для domician
    Регистрация
    07.12.2012
    Сообщений
    1,968

    По умолчанию Re: Виртуальные кабеля, ASIO и задержки

    E.Sokol, ну не знаю. Главное, не рассказывать Петрову.
    По мне стандартные измерения THD и IMD за глаза. Да и вообще гнаться за красивыми циферками за пределами человеческого восприятия не вижу смысла.
    Есть файлики 18+19 и 30+31kHz - уже дает представление о изделии даже без измерений.

  8. #107
    Завсегдатай
    Автор темы
    Аватар для E.Sokol
    Регистрация
    17.01.2015
    Адрес
    Урал
    Сообщений
    1,365

    По умолчанию Re: Виртуальные кабеля, ASIO и задержки

    Кто такой Петров?

    ---------- Сообщение добавлено 12:44 ---------- Предыдущее сообщение было 12:41 ----------

    THD на одной частоте не даёт полной картины. Он не даёт полной картины даже по одной частоте, потому что может быть одинаковым для разных по скорости затухания гармоник.

    ---------- Сообщение добавлено 12:47 ---------- Предыдущее сообщение было 12:44 ----------

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

  9. #108
    Завсегдатай Аватар для domician
    Регистрация
    07.12.2012
    Сообщений
    1,968

    По умолчанию Re: Виртуальные кабеля, ASIO и задержки

    Петров - который сидит в симуляторах и придумывает непонятно что, но считает, что несет истину истин. Только что снесли тему про "идеальные" усилители.

    В THD важны не столько циферки, а спектр и, конечно, не на одной частоте, а по всему диапазону. А IMD как раз показывает отсебятину устройства.
    Есть такой интересный файлик для проверки что намутил в настройках плеера, ЗК udial10.flac

  10. #109
    Завсегдатай
    Автор темы
    Аватар для E.Sokol
    Регистрация
    17.01.2015
    Адрес
    Урал
    Сообщений
    1,365

    По умолчанию Re: Виртуальные кабеля, ASIO и задержки

    Цитата Сообщение от domician Посмотреть сообщение
    Есть такой интересный файлик для проверки что намутил в настройках плеера, ЗК udial10.flac
    А чё в нём такого интересного? Спектр ничем не примечателен, ещё и с шумами в районе Найквиста.

    Скрытый текст

    Нажмите на изображение для увеличения. 

Название:	udial10.L (121276 samples, 44.1kHz).png 
Просмотров:	85 
Размер:	123.6 Кб 
ID:	452192
    [свернуть]


    ---------- Сообщение добавлено 15:09 ---------- Предыдущее сообщение было 14:16 ----------

    Скоро будет 3-я и заключительная демо-версия. Что хотел сделал, но случайно выяснилось, что при определённых условиях спектроанализатор падает. Перепишу на свежую голову логику синхронизации (чтобы гуй не тормозил, fft и отрисовку он делает в другом потоке).

  11. #110
    Завсегдатай Аватар для domician
    Регистрация
    07.12.2012
    Сообщений
    1,968

    По умолчанию Re: Виртуальные кабеля, ASIO и задержки

    Цитата Сообщение от E.Sokol Посмотреть сообщение
    А чё в нём такого интересного?
    Он, например, для определения что DAC не поддерживает сетку 44,1. Так же на "вшивость" vst плагинов.

    Думаю в воскресенье наконец-то занятся демо-версией.

  12. #111
    Завсегдатай
    Автор темы
    Аватар для E.Sokol
    Регистрация
    17.01.2015
    Адрес
    Урал
    Сообщений
    1,365

    По умолчанию Re: Виртуальные кабеля, ASIO и задержки

    Цитата Сообщение от E.Sokol Посмотреть сообщение
    спектроанализатор падает
    Так до конца эту проблему не решил, похоже она связана с библиотекой для FFT произвольной длины. Нет настроения с этим возиться, откачу FFT пока обратно на степени двойки в управляемом коде. Ну и - должны же быть какие-то ограничения в демо-версии

  13. #112
    Завсегдатай
    Автор темы
    Аватар для E.Sokol
    Регистрация
    17.01.2015
    Адрес
    Урал
    Сообщений
    1,365

    По умолчанию Re: Виртуальные кабеля, ASIO и задержки

    Зацените, чё придумал. Если последовательно соединить несколько фильтров скользящего среднего разной ширины (с предварительным и заключительным умножением на комплексную синусоиду), то на выходе можно получить фазолинейный полосовой фильтр с вполне неплохими характеристиками. Например, для 4-х с соотношением длин 1:1.2:1.4:1.6 (легко запомнить) получим уровень боковых лепестков в -65 дБ:
    Нажмите на изображение для увеличения. 

Название:	fourier-of-conv-rect-1%1.2%1.4%1.6.png 
Просмотров:	81 
Размер:	7.5 Кб 
ID:	455009
    А сама итоговая огибающая будет иметь вид
    Нажмите на изображение для увеличения. 

Название:	conv-rect-1%1.2%1.4%1.6.png 
Просмотров:	73 
Размер:	7.7 Кб 
ID:	455010
    А поскольку фильтр скользящего среднего можно организовать рекурсивно в целочисленной арифметике, это позволяет сделать скользящий FFT с логарифмической шкалой частот в режиме реального времени. Ну и кучу эффектов заодно - в первую очередь pitch shift / time stretch и компрессор / декомпрессор.

    ---------- Сообщение добавлено 14:15 ---------- Предыдущее сообщение было 09:12 ----------

    Оказалось, я не первый такой хитрый и в CIC фильтрах используется тот же принцип, только ширина константная. Вот сравнение для третьего порядка:
    Нажмите на изображение для увеличения. 

Название:	CIC vs my - order 3.png 
Просмотров:	94 
Размер:	17.8 Кб 
ID:	455025
    Разница в 10 дБ, всё равно не зря значит.

    ---------- Сообщение добавлено 24.05.2024 в 10:38 ---------- Предыдущее сообщение было 23.05.2024 в 14:15 ----------

    Пора выкладывать новую версию, сколько можно тянуть: ES Audio Processor DEMO-3.zip

    Всё перечислять нет смысла, самое главное:

    - ASIO добавил, тестил только на ASIO4ALL;
    - WASAPI Shared и Exclusive разделил на отдельные модули, поскольку у них логика достаточно сильно отличается, в частности, у меня Exclusive не поддерживает формат Shared. Заодно добавил интерфейс Enabled, чтобы выборочно исключать устройства из работы не удаляя их из схемы. Для этого кстати служит клавиша Del;
    - все конфигурационные файлы вынесены в отдельную папку ini. Там же при первом запуске формируется список с доступными в системе аудио-устройствами. Там же лог с ошибками появляется.
    - сделал фейковое устройство ввода/вывода Timer, которое гарантировано работает даже без звуковых карт. Главным образом для отладки фильтров, примеры в наличии.

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

    Числовые константы можно набирать сразу с клавиатуры с нажатой клавишей Ctrl. Прочие модули аналогично по коротким именам, которые можно посмотреть/задать в файле library.xml.

    Визуальный редактор не обязателен для проигрывания созданных конфигураций, когда-нибудь потом предполагалось сделать отдельную службу для этого.


    Если кто-то попробовал - не стесняйтесь критиковать, ругаться и прочее в таком духе. Иначе мне никак не узнать, что и как можно улучшить.
    Последний раз редактировалось E.Sokol; 23.05.2024 в 07:45.

Страница 6 из 6 Первая ... 456

Социальные закладки

Социальные закладки

Ваши права

  • Вы не можете создавать новые темы
  • Вы не можете отвечать в темах
  • Вы не можете прикреплять вложения
  • Вы не можете редактировать свои сообщения
  •