Страница 94 из 99 Первая ... 849293949596 ... Последняя
Показано с 1,861 по 1,880 из 1963

Тема: Цифровой программный кроссовер II

  1. #1 Показать/скрыть первое сообщение.
    Частый гость
    Автор темы
    Аватар для emaster
    Регистрация
    07.02.2009
    Адрес
    Россия, г. Белгород
    Возраст
    41
    Сообщений
    375

    По умолчанию Цифровой программный кроссовер II

    Коллеги!
    Завожу отдельную ветку для обсуждения новой версии моего программного кроссовера - dePhonica version3.
    Эта версия кроссовера полностью отличается от первой версии, которая обсуждалась здесь как с точки зрения кода (который переписан на 99%) так и с точки зрения функционала.
    Разработка версии началась весной 2015 года и в настоящее время (начало 2016) находится в активной стадии.

    Скачать preview версию можно по адресу: http://dephonica.com/?lang=ru
    Текущая сборка на сайте от 21.03.2016.

    Внимание!
    Для корректной установки WDM драйвера на windows 7 с отключенными обновлениями, необходимо установить апдейт KB3033929, добавляющий поддержку цифровых подписей SHA-2.

    Ссылка для x86 обновления: http://download.microsoft.com/downlo...033929-x86.msu
    Ссылка для x64 обновления: http://download.microsoft.com/downlo...033929-x64.msu
    Статья по обновлению windows: https://support.gamenet.ru/kb/articles/789-windows


    Ограничения preview версии:
    - максимум 6 каналов обработки
    - требует перезапуска ядра каждые 30 минут

    Основные возможности кроссовера:

    - собственный WDM драйвер для ввода потока из стандартных аудио и видео плееров, браузеров, навигаторов и других программ.
    - собственный ASIO драйвер для ввода потока из аудио плееров поддерживающих ASIO
    - низкая задержка: около 50 мсек при использовании IIR фильтров и выводе на ASIO устройство
    - поддержка ввода звука в форматах 16 bit integer, 24 bit integer, 32 bit floating point
    - 2 входных канала и до 8 выходных
    - вывод звука на устройства DirectSound, ASIO, Kernel Streaming
    - вся обработка производится в 64 bit floating point
    - фильтрация производится FIR фильтрами, IIR фильтрами или IIR фильтрами с автоматическим корректирующим фазовым FIR фильтром
    - есть возможность создания фазового фильтра для коррекции ФЧХ внешнего IIR фильтра
    - доступны два конволвера для FIR фильтров: FFT конволвер с алгоритмом Overlap-Add и линейный (Straight FIR), без использования FFT
    - любой из FIR конволверов может использоваться совместно с одним или более IIR фильтром в каждом канале
    - до 128 000 taps на канал при использовании FFT FIR
    - доступны формы АЧХ семейств фильтров IIR: Linkwitz-Riley, Butterworth, Chebyshev
    - доступен параметрический синтез АЧХ и ФЧХ для типов фильтров Low Pass, High Pass, Band Pass, Band Stop, Low Shelf, High Shelf
    - два варианта параметрического задания фильтров Band Pass и Band Stop: нижней и верхней частотой среза или центральной частотой и полосой пропускания
    - амплитудный и фазовый эквалайзер для произвольного изменения АЧХ или ФЧХ в канале обработки, с возможностью загрузки АЧХ или ФЧХ из текстового файла или из импульсного отклика в формате WAV
    - любое сочетание FIR и IIR фильтров в канале обработки
    - полноценный канал предварительной обработки исходного сигнала с отдельным набором фильтров
    - возможность автоматической нормализации к 0 дБ АЧХ индивидуальных каналов или группы каналов
    - регулировка усиления на входе и на выходе канала
    - настраиваемая задержка в каждом канале с отключаемым sub-sample разрешением
    - встроенный анализатор фактической частотной характеристики кроссовера с отображением общей АЧХ кроссовера, графиков АЧХ/ФЧХ/ГВЗ для каждого канала и возможностью суммирования АЧХ выбранных каналов в отдельном окне

    Пример установки и настройки полной версии кроссовера (уже местами не соответствует действительности и будет перезаписан): http://www.youtube.com/watch?v=CF_YNp0IijE

    ============
    Пополняемый FAQ:

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

    Q: Для чего можно использовать кроссовер?
    A: Прямое назначение кроссовера – разделить исходный сигнал на несколько сигналов, каждый из которых будет воспроизводиться отдельным динамиком. Для такого использования необходима многоканальная звуковая карта (или ЦАП), многоканальный усилитель (или несколько обычных – стерео или моноблоков) и многополосная акустика, каждый динамик в которой подключен к отдельному каналу усилителя отдельным кабелем. Самый простой и часто встречающийся пример такой акустики – система 2.1 с двумя фронтальными колонками и одним сабвуфером.
    A: Кроссовер можно использовать для того, чтобы вывести один и тот-же сигнал (с обработкой или нет) на несколько выходов многоканальной звуковой карты. Например, первые 2 канала – звук для колонок, следующие 2 канала – звук для наушников. На колонки одни настройки эквалайзера (внутри кроссовера), на наушники – другие.
    A: Также кроссовер можно использовать даже с обычными наушниками – как точный и продвинутый эквалайзер.

    Q: Какое оборудование требуется для использования кроссовера?
    A: Кроссовер может использоваться для различных целей практически с любым оборудованием. Минимальные требования – компьютер с Windows 7/8/10 и любая звуковая карта.


    Q: Как перенаправить в кроссовер звук из программы или плеера, не поддерживающей вывод звука на ASIO устройства?
    Q: Как вывести в кроссовер звук из видео плеера?
    A: Выберите в плеере вывод на аудио устройство *dePhonica Virtual Audio Device*.

    Q: Какие настройки требуются в видео плеере для работы через кроссовер?
    A: При использовании в кроссовере IIR фильтров, никакой дополнительной настройки плеера не требуется. При использовании FIR фильтров (или IIR с линеаризацией), в плеере необходимо установить смещение звуковой дорожки в зависимости от порядка FIR фильтра. Например, для FIR фильтра с 8000 taps это около 250 мсек.


    Q: Как ввести в кроссовер звук из внешнего источника (виниловый проигрыватель, кассетный магнитофон, пульт и т.д.)?
    A: На данный момент можно использовать программу VoiceMeeter от VB-Audio - она поддерживает ввод с внешних источников. Скачать программу можно по ссылке: <a style="color: #505050; font-weight: bold;" href="http://vb-audio.pagesperso-orange.fr/Voicemeeter/">http://vb-audio.pagesperso-orange.fr/Voicemeeter/</a>
    В будущем появится непосредственная поддержка ввода сигнала с входов звуковой карты в кроссовер.


    [свернуть]

    ============

    Список изменений:

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

    30.03.2016

    - Более устойчивый алгоритм проверки активации
    - Исправлены bypass каналы без фильтров
    - Исправлена инициализация таймера в WDM драйвере
    - Исправлен номер версии в окне "О кроссовере dePhonica version3"
    - Исправлен вывод сообщения "Устройство вывода не выбрано" при первой установке кроссовера


    20.03.2016

    - Переходные процессы в модуле вывода теперь обрабатывает машина состояний. Фейдинги стали четче, мягче и предсказуемее.
    - Появился приоритет ввода с ASIO Sink драйвера - WDM замолкает, когда приходит поток с ASIO.
    - Расстояние при редактировании задержки выводится в метрах / сантиметрах / миллиметрах

    17.03.2016

    - Появился WDM драйвер виртуального аудио устройства для ввода в кроссовер - можно перенаправить в кроссовер весь системный звук
    - Уменьшилась latency - для IIR фильтров составляет ~50 мс
    - По умолчанию фильтры создаются как IIR. При добавлении в тракт FIR фильтра выводится отключаемое предупреждение о дополнительной задержке в тракте.
    - Диалог сообщений в конфигураторе стал отображаться поверх всех окон
    - Появилась возможность инвертирования кривой в эквалайзере
    - Появилась возможность смещения кривой в эквалайзере

    09.03.2016

    - Уменьшилась latency до ~500 мсек
    - Добавились IIR фильтры Bessel и Legendre
    - Тысячные доли миллисекунды меняются при изменении расстояния в компоненте Delay
    - Исправлена ошибка с несохранением в пресете канала предварительной обработки при загрузке конфигурации из файла
    - Исправлена каша из надписей на шкале Gain на графиках анализатора
    - Добавил легенду к графикам в анализаторе
    - Улучшена отправка логов - теперь отправляются независимо от IP адреса пользователя
    - При перетаскивании канала с удерживаемым Shift (или Ctrl+Shift) копируются только фильтры - задержки и Gain не изменяются
    [свернуть]
    Последний раз редактировалось emaster; 01.04.2016 в 20:55.

  2. #1861
    Завсегдатай Аватар для Meta|_
    Регистрация
    08.03.2005
    Адрес
    Северная Голландия
    Возраст
    40
    Сообщений
    1,990

    По умолчанию Re: Цифровой программный кроссовер II

    Цитата Сообщение от Кичай Данил Посмотреть сообщение
    Мои вопросы связаны с получением понимания для себя о том, как и кто решает конкретные проблемы производительности, и решает ли их вообще.
    Если с производительностью есть конкретные проблемы - они решаются. Если проблемы абстрактные, то это - научная работа, а не коммерческая разработка.

    Цитата Сообщение от Кичай Данил Посмотреть сообщение
    Странно говорить о многопоточности вокруг языка программирования. Потоки - сущности операционной системы и язык программирования не сможет решить проблему генерации потоков никаким способом, кроме как прося операционную систему системными вызовами это сделать.
    Язык программирования может вносить дополнительные ограничения. Например, в C++ не от хорошей жизни потребовалось слово atomic...

    Цитата Сообщение от Кичай Данил Посмотреть сообщение
    ок, я уже писал выше, что оно даёт исключение необходимости формирования промежуточного буфера, а вот экономия ОЗУ - вот это бред ИМХО.
    ПС. Ну и порядки потерь на односвязный кольцевой список - по одному указателю для каждого элемента, то есть для x86 с float32 x2, если у вас буфер sizeof(float[4096])=16384 байт, то тут будет sizeof(struct self[4096] {float x, struct * self next})=32768 байт.
    Можно подумать о буферах а ля "scatter-gather" (за примерами - в ядро Линукс). Это позволяет в значительной степени объединить достоинства массивов и списков, хотя и даёт некоторый оверхед.

    Цитата Сообщение от E.Sokol Посмотреть сообщение
    А ещё, когда программист говорит, что с++ не нужен - то это только потому, что он его не знает
    Нет, использование c++ во многих случаях сильно увеличивает потребление ОЗУ (даже без STL), для эмбеддед это бывает важно. Для ядра ОС - тоже (но не на x86/amd64).
    ∇·D = ρ
    ∇·B = 0
    ∇xE = – ∂B/∂t
    ∇xH = j + ∂D/∂t
    © J. C. Maxwell, O. Heaviside

  3. #1862
    Не хочу! Аватар для Alex
    Регистрация
    20.03.2003
    Адрес
    Worldwide
    Возраст
    61
    Сообщений
    36,139

    По умолчанию Re: Цифровой программный кроссовер II

    Цитата Сообщение от E.Sokol Посмотреть сообщение
    А ещё, когда программист говорит, что с++ не нужен - то это только потому, что он его не знает.
    Не всегда. Например в случае эмбедед, ++ если и используются, то чаще всего не в полном объеме своих "фич".
    В очень не полном!

    В частности:
    Цитата Сообщение от E.Sokol Посмотреть сообщение
    , в первую очередь по отслеживанию выделения/освобождения/утечек памяти
    в эмбедед, динамическую память надо использовать крайне осторожно, а по возможности - вообще не использовать.

    Цитата Сообщение от E.Sokol Посмотреть сообщение
    злоупотребления глобальными переменными.
    Глобальные - неглобальные, в эмбедед это отдельная история.

    ---------- Сообщение добавлено 13:30 ---------- Предыдущее сообщение было 13:28 ----------

    Цитата Сообщение от Meta|_ Посмотреть сообщение
    Нет, использование c++ во многих случаях сильно увеличивает потребление ОЗУ (даже без STL), для эмбеддед это бывает важно.
    В эмбеддед, вопрос далеко не только в размере требуемой памяти.
    "Замполит, чайку?"(с)"Охота за Красным Октябрем".
    "Ну что, можете меняться обратно."(с)типа анек.
    <-- http://altor1.narod.ru --> Вопросы - в личку, е-мейл, скайп.

  4. #1863
    Завсегдатай Аватар для E.Sokol
    Регистрация
    17.01.2015
    Адрес
    Урал
    Сообщений
    1,298

    По умолчанию Re: Цифровой программный кроссовер II

    Пропустил слово "обычно" Когда-то я и сам был ярым противником с++ и ненавистником ООП. Но когда начал писать чуть более взрослые программы - вот тогда и оценил все преимущества ООП. Особенно когда приходиться копаться в своих же программах спустя несколько лет)

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

    По умолчанию Re: Цифровой программный кроссовер II

    Цитата Сообщение от E.Sokol Посмотреть сообщение
    Когда-то я и сам был ярым противником с++ и ненавистником ООП.
    В самом "++" и ООП ничего плохого нет. Даже даже без "++" приходилось использовать некоторые элементы ООП, на классическом анси-си.


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

  6. #1865
    Завсегдатай Аватар для Meta|_
    Регистрация
    08.03.2005
    Адрес
    Северная Голландия
    Возраст
    40
    Сообщений
    1,990

    По умолчанию Re: Цифровой программный кроссовер II


    Offтопик:
    Цитата Сообщение от Alex Посмотреть сообщение
    В эмбеддед, вопрос далеко не только в размере требуемой памяти.
    Я и не писал, что важно только ОЗУ, но момент с ОЗУ показателен. Компиляторы c++, в отличие от компиляторов си, ориентированы в основном на толстые машины с гигабайтами и гигагерцами, кстати, та же проблема с современными альтернативами с/с++, например, golang (не смотря на наличие tinygo). А вот rust, судя по всему, для эмбеддед пригоден и by design имеет значимые преимущества (правда в бою я его пока не использовал).

    ∇·D = ρ
    ∇·B = 0
    ∇xE = – ∂B/∂t
    ∇xH = j + ∂D/∂t
    © J. C. Maxwell, O. Heaviside

  7. #1866
    Не хочу! Аватар для Alex
    Регистрация
    20.03.2003
    Адрес
    Worldwide
    Возраст
    61
    Сообщений
    36,139

    По умолчанию Re: Цифровой программный кроссовер II

    Цитата Сообщение от Meta|_ Посмотреть сообщение
    Компиляторы c++, в отличие от компиляторов си, ориентированы в основном на толстые машины с гигабайтами и гигагерцами,
    То "для машин", а для эмбеддед размер и быстрота кода практически не отличаются. Компилятор-то тот-же самый, просто по разному себя ведет, когда видит .с или .срр
    Но вот дебагировать написанное на ++ малость сложнее. Впрочем, и в обычном, при включенной макс. опимизации быают такие места, где при дебаге ее лучше выключить, а то хрен че поймешь когда по шагам ходишь.
    "Замполит, чайку?"(с)"Охота за Красным Октябрем".
    "Ну что, можете меняться обратно."(с)типа анек.
    <-- http://altor1.narod.ru --> Вопросы - в личку, е-мейл, скайп.

  8. #1867
    Новичок Аватар для Blac Angel
    Регистрация
    13.11.2016
    Адрес
    Воронеж
    Сообщений
    3

    По умолчанию Re: Цифровой программный кроссовер II

    Приветствую всех!
    Активация дефоники по бесплатному ключу заработала!
    Только сейчас активировал дефонику,всё работает))))

  9. #1868
    Частый гость Аватар для Traktorist3d
    Регистрация
    06.01.2015
    Адрес
    Хабаровск, Камчатка
    Сообщений
    472

    По умолчанию Re: Цифровой программный кроссовер II

    Цитата Сообщение от Кичай Данил Посмотреть сообщение
    Приемлим ли одноплатник NVIDIA Jetson Nano? И чем обычный ПК не подходит? "Шумом" в цифровых потоках?
    Для того же автозвука, одноплатники куда более предпочтительнее, сам уже не первый год езжу c ПК под сиденьем. Но одноплатник решил был очень много проблем и не только для меня одного. Это и более устойчивый запуск в морозы, и компактность, доступность по цене и т.д. Идельное ИМХО решение, это одноплатник с DSP который может принимать стерео по UPnP обрабатывать в поканалку и отправлять на UPnP эндпоинт, типа BBB с PURE от Погодина. Так как для BBB есть реклокер под многоканал.

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

    Цитата Сообщение от Кичай Данил Посмотреть сообщение
    И чем обычный ПК не подходит? "Шумом" в цифровых потоках?
    К сожалению да, точно не знаю какие там шумы в потоках, но при проигрывании напрямую с ПК Win по USB с включенной CAD Windows 8 Audio Optimization V2_6a заплаткой, звук кардинально меняется в лучшую сторону.

    Самый минимум, это возможность подгрузки IIR, FIR фильтров сгенерированных тем же Rephase, временные задержки, mute на каждый канал ну и более мене работающий интерфейс.

  10. #1869
    Завсегдатай Аватар для Andrey Orloff
    Регистрация
    22.08.2005
    Адрес
    Irkutsk
    Возраст
    58
    Сообщений
    1,857

    По умолчанию Re: Цифровой программный кроссовер II

    Цитата Сообщение от Traktorist3d Посмотреть сообщение
    но при проигрывании напрямую с ПК Win по USB с включенной CAD Windows 8 Audio Optimization V2_6a заплаткой, звук кардинально меняется в лучшую сторону.
    А к какой операционке применили данный скрипт?

  11. #1870
    Частый гость Аватар для Traktorist3d
    Регистрация
    06.01.2015
    Адрес
    Хабаровск, Камчатка
    Сообщений
    472

    По умолчанию Re: Цифровой программный кроссовер II

    Цитата Сообщение от Andrey Orloff Посмотреть сообщение
    А к какой операционке применили данный скрипт?
    И к 7ке и к 10ке применял

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

    По умолчанию Re: Цифровой программный кроссовер II

    Цитата Сообщение от Andrey Orloff Посмотреть сообщение
    А к какой операционке применили данный скрипт?
    Вы сначала почитайте про данное "чудо" http://www.computeraudiodesign.com/computer-setup/
    Таие вещи должен делать сам.
    Добить, чтоб в диспетчере небыло больше 20-25 процессов винды проблем не представляет, да и те почти все только немножко жрет RAM, нагрузка ЦП-0. Проверено на 7,8 и 10 LTSB притом сохраняя работоспособность и для всего остального, для чего комп предназначен.
    Задача предельно проста - не дать винде жить своей жизнью. Ось, это раб, а раб должен работать 24/7 и молчать.
    И, естественно, отключить все энергосберегающие технологии как и поигратся (если Intel) с такой прожкой как ThrottleStop.

  13. #1872
    Частый гость Аватар для Traktorist3d
    Регистрация
    06.01.2015
    Адрес
    Хабаровск, Камчатка
    Сообщений
    472

    По умолчанию Re: Цифровой программный кроссовер II

    К чему Вы все это написали? Хотите , делайте руками...

  14. #1873

    А рожа красная такая Re: Цифровой программный кроссовер II

    Цитата Сообщение от E.Sokol Посмотреть сообщение
    Единственный смысл односвязного списка в возможности быстрой вставки элемента в произвольное место списка, за O(1). В кольцевом буфере такой необходимости нет. Если вы его сразу выделяете как массив - то нет никакой необходимости хранить указатель на следующий элемент, потому что он элементарно вычисляется инкрементом адреса. Но Вы, конечно, вправе делать как угодно. Мнение одного случайного человека, конечно же, не авторитетно - поэтому я предлагаю оформить ваши идеи в виде статьи и написать на хабр - там народу побольше будет.
    Интересно, как же вы инкрементом получите указатель на следующий элемент, когда текущий элемент - последний (имеет максимальное значение адреса), на примере кольцевого буфера... ) Ну и даже если сделать буфер длиной кратной степени двойки без дополнительной операции *получения остатка от деления на длину буфера*/*выделения нескольких бит регистра* ничего не выйдет. А вот скакать по указателям значительно дешевле. Можно конечно использовать буфер длиной uint той длины, с которой работает inc на уровне opcode, но там будут нездоровые длины.
    Я в принципе понимаю, что Вам не понравился СИ, но если я перепишу код на плюсах, у него кроме выделения памяти ничего не изменится. В моём коде нет ничего кроме движка самого фильтра, и да, там имеет место АТД, не новомодный ООП конечно. Зачем мне ООП, когда у меня нет событий?
    Последний раз редактировалось Кичай Данил; 04.03.2021 в 13:15.

  15. #1874
    Завсегдатай Аватар для E.Sokol
    Регистрация
    17.01.2015
    Адрес
    Урал
    Сообщений
    1,298

    По умолчанию Re: Цифровой программный кроссовер II

    Цитата Сообщение от Кичай Данил Посмотреть сообщение
    Интересно, как же вы инкрементом получите указатель на следующий элемент, когда текущий элемент - последний (имеет максимальное значение адреса), на примере кольцевого буфера... )
    Может, мы всё-таки о разных вещах говорим? Как и все я работаю с кольцевым буфером:

    Код:
    int pos = 0;
    double[] circular_buffer;
    double[] kernel;
    ...
    public override void Process()
    {
    	circular_buffer[pos] = Input[0].Value;
    	int index = pos;
    	pos--;
    	if (pos < 0) pos = circular_buffer.Length - 1;
    	double sum = 0;
    	for (int i = 0; i < kernel.Length; i++)
    	{
    		sum += kernel[i] * circular_buffer[index];
    		index++;
    		if (index == circular_buffer.Length)
    			index = 0;
    	}
    	Output[0].Value = sum;
    }
    Векторизация при желании элементарно делается (на ассемблере). Но это на короткий кусок импульса, чтобы без задержки, остальное уже можно через FFT и сумммировать.



    Цитата Сообщение от Кичай Данил Посмотреть сообщение
    Я в принципе понимаю, что Вам не понравился СИ, но если я перепишу код на плюсах, у него кроме выделения памяти ничего не изменится. В моём коде нет ничего кроме движка самого фильтра, и да, там имеет место АТД, не новомодный ООП конечно. Зачем мне ООП, когда у меня нет событий?
    Тут любовь не причём, и события тоже. Мы же изначально о многопоточности говорили, чтобы фильтры по ядрам раскидать - так в с++ это делается элементарно:

    Код:
    auto f = std::async(std::launch::async, some_function);
    // Работаем дальше в основном потоке
    ...
    // Когда нам нужно, получаем результат работы some_function с ожиданием
    auto x = f.get();
    и независимо от платформы.

    ---------- Сообщение добавлено 22:32 ---------- Предыдущее сообщение было 20:57 ----------

    Ну и разворачивается цикл элементарно. Делается длинный список
    Код:
    ...
    sum += kernel[i-5] * circular_buffer[index-5];
    sum += kernel[i-4] * circular_buffer[index-4];
    sum += kernel[i-3] * circular_buffer[index-3];
    sum += kernel[i-2] * circular_buffer[index-2];
    sum += kernel[i-1] * circular_buffer[index-1];
    и динамически считается адрес, на который нужно прыгнуть, чтобы выполнилось нужное количество инструкций. Если fir не особо длинный, так можно вообще без циклов обойтись.
    Последний раз редактировалось E.Sokol; 06.03.2021 в 23:19.

  16. #1875
    Частый гость Аватар для Seeker
    Регистрация
    11.01.2011
    Адрес
    Екатеринбург
    Сообщений
    188

    По умолчанию Re: Цифровой программный кроссовер II

    Цитата Сообщение от Traktorist3d Посмотреть сообщение
    И к 7ке и к 10ке применял
    там есть версии скриптов для win 8.0 и 8.1, какая больше годится для 7 и 10?

  17. #1876
    Завсегдатай Аватар для Meta|_
    Регистрация
    08.03.2005
    Адрес
    Северная Голландия
    Возраст
    40
    Сообщений
    1,990

    По умолчанию Re: Цифровой программный кроссовер II

    Цитата Сообщение от Кичай Данил Посмотреть сообщение
    Интересно, как же вы инкрементом получите указатель на следующий элемент, когда текущий элемент - последний (имеет максимальное значение адреса), на примере кольцевого буфера... ) Ну и даже если сделать буфер длиной кратной степени двойки без дополнительной операции *получения остатка от деления на длину буфера*/*выделения нескольких бит регистра* ничего не выйдет. А вот скакать по указателям значительно дешевле.
    Было бы быстрее написать два варианта кода и отпрофилировать/отбенчмаркать оба. И уже потом приводить листинги дизассемблера и делать предположения, почему получилось так, а не иначе.
    Я бы скорее поставил на вариант с кольцевым буфером, но не уверен, т. к. мне уже лет 10 не приходилось выжимать производительность на больших процессорах, в последнее время чаще всякие Cortex-M.
    Нюанс ещё в том, что соотношение скоростей может зависеть не только от системы команд, но даже от конкретной модели процессора, от компилятора, его версии и конкретных настроек.
    ∇·D = ρ
    ∇·B = 0
    ∇xE = – ∂B/∂t
    ∇xH = j + ∂D/∂t
    © J. C. Maxwell, O. Heaviside

  18. #1877
    Новичок Аватар для alerto
    Регистрация
    27.09.2009
    Сообщений
    82

    По умолчанию Re: Цифровой программный кроссовер II

    Существуют ли рекомендации сколько тапов нужно для SFIR и FF-FIR в зависимости от частоты? Можно конечно выставить максимально, но скорее всего это не имеет смысла
    Последний раз редактировалось alerto; 19.05.2021 в 09:50.

  19. #1878
    Новичок Аватар для alerto
    Регистрация
    27.09.2009
    Сообщений
    82

    По умолчанию Re: Цифровой программный кроссовер II

    И еще вопрос, на win 10 но видно дефонику в устройствах. Установка имени админа install.bat, находящийся в каталоге wdm_driver (Users/username/AppData/Roaming/dePhonica sound labs/version3 digital crossover) после перезагрузки по F7 "Отключить обязательную проверку подписи драйверов" - но помогла.
    Также не помогает тестовый режим windows.
    Как еще можно установить wdm_driver?

  20. #1879
    Старый знакомый Аватар для Dzymytch
    Регистрация
    01.01.2006
    Адрес
    Вильнюс
    Возраст
    39
    Сообщений
    536

    По умолчанию Re: Цифровой программный кроссовер II

    Цитата Сообщение от alerto Посмотреть сообщение
    И еще вопрос, на win 10 но видно дефонику в устройствах. Установка имени админа install.bat, находящийся в каталоге wdm_driver (Users/username/AppData/Roaming/dePhonica sound labs/version3 digital crossover) после перезагрузки по F7 "Отключить обязательную проверку подписи драйверов" - но помогла.
    Также не помогает тестовый режим windows.
    Как еще можно установить wdm_driver?
    Я его устанавливаю вручную:
    1. Отключаем проверку подписи драйверов.
    2. Идём в Device manager и выбираем "Add Legacy Hardware option".
    3. В появившемся списке приборов выбираешь sound devices... --> "Have disk" и указываешь путь к WDM драйверу, который хранится где-то в папке Дефоники в папке %AppData% (в папке roaming или local). Винда начнет ругаться на отсутствие подписи, шлёшь винду лесом и выбираешь продолжить инсталляцию драйвера. В обшем-то и всё.
    Понимание некоторых тенденций не освобождает от знания многих фактов

  21. #1880
    Новичок Аватар для alev
    Регистрация
    02.02.2017
    Сообщений
    29

    По умолчанию Re: Цифровой программный кроссовер II

    Добрый день! Подскажите, пожалуйста, чайнику: каким образом осуществляется доступ к конволверам в dePhonica? И что за зверь "Утилита коррекции АЧХ"? Образец какого шума в неё требуется загружать, или она вообще не рабочая? Регулировки уровней, АЧХ допускают плюсовые значения, можно ли уводить все в плюс? Не будет ли перегруза или здесь что-то предусмотрено от этого?
    Последний раз редактировалось alev; 23.05.2021 в 13:44.

Страница 94 из 99 Первая ... 849293949596 ... Последняя

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

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

Ваши права

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