Вопрос знатокам! Особенно по WASAPI

Список разделов foobar2000 Есть вопрос!

Описание: У вас проблемы с foobar2000 и вам необходима помощь? Спрашивайте здесь!
Правила раздела: Одна тема — один вопрос или группа связанных вопросов. Обязательно формируйте внятный заголовок, максимально отражающий суть. Подробно описывайте проблему. Не забывайте указать версию плеера, название сборки, по возможности добавить скриншоты проблемы.

Сообщение #1 Vitalii » 06.05.2017, 04:46

Привет! Значит так... :biggrin:

Решил я врубить в Advanced=>Playback=>WASAPI=>High worker process priority. Там есть какие-то буфферы. Называются Hardware buffer in MS. Что это значит MS? Что это за буфферы? Просто в режиме реального времени и при push 200 заиграло более красиво. Их там можно выставить. Я знаю, что push и event на звук не влияют (вроде бы), но заиграло в режиме push с буфером 200 лучше, чем в евент 25. Звук просто насыщеннее (субьективно). Но там можно нажав на цифру выставить свой буфер. Что это за буфферы? От чего они? Почему автор выставил разные цифры для них?
Вложения
Безымянный.jpg
Vitalii
Автор темы
Репутация: 0
С нами: 8 лет 1 месяц

Сообщение #2 vladj » 06.05.2017, 11:09

В поисковой строке инетбраузера вводим push и event и ЧИТАЕМ
vladj M
Аватара
Откуда: Пермский край
Репутация: 427
С нами: 14 лет 10 месяцев

Сообщение #3 Azaza » 06.05.2017, 15:58

push и event - для совместимости с большим количеством устройств. Т.к. какие-то устройства могут быть несовместимы с каким-то из режимов или работать с ним нестабильно. Размер буфера такой потому, что это оптимальный размер буфера, подходящий для большинства случаев.
Vitalii:push и event на звук не влияют
Вот именно.
Размер буфера тоже на звук не влияет. В том смысле, что при изменении размера буфера звук не станет "насыщеннее". Зато при неудачно выставленном размере буфера можно получить щелчки, треск, и т.п.
Azaza M
Аватара
Репутация: 417
С нами: 8 лет 3 месяца

Сообщение #4 Vitalii » 08.05.2017, 18:45

Я это знаю. Ну значит самовнушение. Кстати, звук может не стабильно работать в одном из режимов. Вот поэтому и сделаны два режима буферизации. Это на заметку читающим)), Значит эффект надо искать в режиме реального времени.

Добавлено спустя 15 минут 40 секунд:
vladj, Яндекс? Серьезно?)) Google по WASAPI выдает побольше полезных ссылок)). Да и удобней мне.
Vitalii
Автор темы
Репутация: 0
С нами: 8 лет 1 месяц

Сообщение #5 simmons » 08.05.2017, 21:41

Vitalii:Там есть какие-то буфферы. Называются Hardware buffer in MS. Что это значит MS?

Немного информации.

WASAPI.
Windows Audio Session API (WASAPI) - самый современный метод Microsoft для комуникации с аудио устройствами. Он доступен в Windows Vista, Windows 7 и более поздних версиях Windows. Это позволяет доставлять немодифицированный поток битов на звуковое устройство и обеспечивает преимущества, аналогичные тем, которые предоставляются драйверами ASIO. Одним из основных преимуществ WASAPI является то, что он предоставляет приложениям эксклюзивный доступ к аудио устройствам, минуя системный микшер, настройки по умолчанию и любые обычные эффекты, предоставляемые аудиодрайвером. WASAPI является рекомендуемым режимом аудиовывода для Windows, если на вашем аудиоустройстве нет драйвера ASIO с хорошим состоянием, и он эффективно заменяет все устаревшие режимы вывода, включая потоки Kernel Streaming и Direct Sound.

Существует два основных способа связи с помощью WASAPI:

Event
Push

Оба обеспечивают одинаковые аудиоданные и будут звучать одинаково.
WASAPI теперь по умолчанию имеет стиль Event Style ,используемый в основном со старым оборудованием
Event Style - Аппаратное обеспечение (или интерфейс WASAPI) никогда не видит никаких остановок или сбросов вызовов. Вместо этого при паузе или спуске тишина передается в цикле вытягивания. Это устраняет необходимость в хаках для карт, которые окружают их буферы при паузе, флеше и т. Д. (ATI HDMI и т. Д.). Это позволяет более прямой путь данных к драйверу / оборудованию.

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

Проще говоря режим Event - это безопасный режим для аудио устройства и для всего ОС, сохраняет стабильность работы ОС и аудио устройства даже того, который не имеет своего драйвера.

Что такое буфер?
Буфер - это скрытая от глаз пользователя зарезервированная часть памяти, в которой и хранится используемый в данный момент фрагмент информации - Она просто перезаписывается в определенную область (в специальный файл). Что самое интересное, скопированная в данный момент информация хранится в буфере только до тех пор, пока туда не будет скопирован новый фрагмент. Он попросту заменяет старые данные.

Буфер звуковой карты – это определенное количество дамп памяти, где плейер или аудиоредактор может обрабатывать звук, до того как он достигнет выходного сигнала вашей звуковой карты.
При меньших значениях звук будет обрабатываться быстрее и с низкой задержкой обработки сигналов. При таких условиях процессор загружается больше и возможны ошибки (опустошения), когда будет происходить обработка сигнала, т.е. воспроизведение трека.
Размер буфера - При высоких значениях система будет работать стабильно без ошибок и вдобавок использует меньше ресурсов центрального процессора. В случае, какой-нибудь ошибки при проигрывании будут слышны хрипы и посторонние звуки.

Что такое Мс?
Размер буфера измеряется в мс -миллисекунды.

*****
Azaza:Вот именно.
Размер буфера тоже на звук не влияет. В том смысле, что при изменении размера буфера звук не станет "насыщеннее".

Как раз влияет!
Сравните звучание любого аудиотрека при настройке буфера звуковой карты в 512 семплов в секунду и при настройке буфера звуковой карты в 2014 семплов секунду.

Сэмпл: основные понятия В переводе с английского языка слово sample означает «образец». Применительно к звуку и музыкальным секвенсорам сэмпл – это какой-то оцифрованный фрагмент звучания трека.

*****
Vitalii:Просто в режиме реального времени и при push 200 заиграло более красиво. Их там можно выставить. Я знаю, что push и event на звук не влияют (вроде бы), но заиграло в режиме push с буфером 200 лучше, чем в евент 25. Звук просто насыщеннее (субьективно).

Естественно что звук стал красивее - при маленьком буфере (в 25 мс) обработка звука "бедная", при большем значении буфера (в 200 мс) плейер может обработать намного лучше звук, так как нет лишней нагрузки на процессор.
И потому что буфер стал больше и естественно что количество семплов увеличилось, а значит что звук стал насыщенее и нагрузка на процессор упала - это значит что стало меньше артефактов в звуковом потоке.
Последний раз редактировалось simmons 08.05.2017, 23:15, всего редактировалось 1 раз.
simmons M
Аватара
Репутация: 128
С нами: 15 лет 9 месяцев

Сообщение #6 vladj » 08.05.2017, 23:02

simmons:Естественно что звук стал красивее /звук стал насыщенее и нагрузка на процессор
упала - это значит что стало меньше артефактов в звуковом потоке.
Что куришь ? Или праздновать рано начал ? :biggrin:
vladj M
Аватара
Откуда: Пермский край
Репутация: 427
С нами: 14 лет 10 месяцев

Сообщение #7 simmons » 08.05.2017, 23:18

vladj:Что куришь ? Или праздновать рано начал ? :biggrin:

Да... Вот подумал, а не начать ли мне праздновать , да пораньше? :)

На досуге почитай
https://bigsong.ru/kurs-fl-studio/rabota-v-fl-studio/tchto-takoe-bufer-zvukovoy-kart-direct-sound-nastroyki.html

https://otvet.mail.ru/question/88536055

https://habrahabr.ru/post/115092/
simmons M
Аватара
Репутация: 128
С нами: 15 лет 9 месяцев

Сообщение #8 LUR » 09.05.2017, 00:03

Размер буфера на звук НЕ ВЛИЯЕТ.
LUR M
Модератор
Аватара
Откуда: Минск
Репутация: 392
С нами: 12 лет

Сообщение #9 simmons » 09.05.2017, 00:15

LUR:Размер буфера на звук НЕ ВЛИЯЕТ.

Источник есть?

Че снова начали меня минусовать, вместо того чтобы все грамотно описать и аргументировать?
Так поступают только дети! Не способны выслушать другое мнение, чуть отличающеяся от вашего?
Не способны терпеливо отнестись к другому мнению...

В отличии от некоторых я слышу различие в качестве звука при настройке в 1024 семплов в секунду и при настройке в 3072 семплов в секунду.
Вложения
FastStone BMP File.jpg
FastStone BMP File.jpg (39.56 КБ) Просмотров: 9818
Последний раз редактировалось simmons 09.05.2017, 00:29, всего редактировалось 2 раз(а).
simmons M
Аватара
Репутация: 128
С нами: 15 лет 9 месяцев

Сообщение #10 LUR » 09.05.2017, 00:21

simmons:Источник есть?
Какой к черту источник? Это логика. Да и при чем тут обработка. Просто сырой материал фубар декодировал считал в выделенный участок памяти и воспроизвел/передал другим плагинам вывода/обработки. Что там может лучше и насыщеннее звучать я вообще не представляю. Покажите конкретно, где вы вычитали это?

Добавлено спустя 1 минуту 42 секунды:
simmons:Сравните звучание любого аудиотрека при настройке буфера звуковой карты в 512 семплов в секунду и при настройке буфера звуковой карты в 2014 семплов секунду.
Сравнил, вот честно, не слышу разницы. А вы точно слышите?
LUR M
Модератор
Аватара
Откуда: Минск
Репутация: 392
С нами: 12 лет

Сообщение #11 simmons » 09.05.2017, 00:33

LUR:Сравнил, вот честно, не слышу разницы. А вы точно слышите?

Я транслирую музыку с фубара в интернет в формате огг через VST HOST с загруженными туда вст плагинами.
Могу устроить для вас трансляцию выставляя разные значения аудио буфера VST HOST - и вы скажете есть или нет никаких различий.
simmons M
Аватара
Репутация: 128
С нами: 15 лет 9 месяцев

Сообщение #12 LUR » 09.05.2017, 00:40

simmons:выставляя разные значения аудио буфера VST HOST
а где значение выставляется? в плагине или где? я говорю про сам фубар, в нем я уверен, что размер буфера на звук не влияет, а что творят какие-то там плагины в зависимости от своих собственных настроек, только им и известно.
LUR M
Модератор
Аватара
Откуда: Минск
Репутация: 392
С нами: 12 лет

Сообщение #13 simmons » 09.05.2017, 00:42

LUR:Размер буфера на звук НЕ ВЛИЯЕТ.

Если это так, то почему разное звучание через WASAPI, DS, ASIO, OPENALL?

Добавлено спустя 1 минуту 7 секунд:
LUR:а где значение выставляется? в плагине или где?

В VST HOSTе
simmons M
Аватара
Репутация: 128
С нами: 15 лет 9 месяцев

Сообщение #14 LUR » 09.05.2017, 00:49

simmons:В VST HOSTе
Раз в нем выставляется, то и не надо ляля про буфер фубаровский. Понавешаете плагинов, а потом вам разница в звуке мерещится. Ну или в вашем случае наверняка не мерещится, потому как получается у плагина свое видение обработки звука в зависимости от данного параметра.
simmons:Если это так, то почему разное звучание через WASAPI, DS, ASIO, OPENALL?
А кто вам сказал, что у них разное звучание?

Добавлено спустя 56 секунд:
Только не докапывайтесь до слов, ответьте по существу, в чем принципиальная разница, влияющая на звук в этих подсистемах вывода звука?
LUR M
Модератор
Аватара
Откуда: Минск
Репутация: 392
С нами: 12 лет

Сообщение #15 simmons » 09.05.2017, 01:06

LUR:Раз в нем выставляется, то и не надо ляля про буфер фубаровский.

Как раз буфер фубара тут установлен на максимум и это влияет на обработку звука!
Возможно вы меня неправильно поняли,я имел ввиду, только то, что увеличивая значение аудио буфера в фубаре вы можете дойти до оптимального качества звучания, далее которого вы не перешагнете. Вот что я имел ввиду. Все остальное неважно!
Вложения
Fas File.jpg
simmons M
Аватара
Репутация: 128
С нами: 15 лет 9 месяцев

Сообщение #16 zaycelap » 09.05.2017, 01:29

Всем привет!
Такая проблема: скачал фубар 1.3.14
поставил компоненты SACD, ASIO и ещё парочку.
Настроил: SACD=DSD, выбрал свою карту.
Запускаю образ - выводит SACD по DSD щикаррно (через ЮСБ)
Потом запускаю DVD-аудио (компонент тоже стоит). Играет ДВД-аудио.
Но если потом снова включить SACD - то музыка играет нормально, DSD, но бегунок идет раза в 3-4 быстрее, и как только доходит до конца - музыка выключается. Перезапуск не помогает. Если сбросить все настройки и заново настроить SACD через DSD - то всё начинает играть нормально, бегунок соответствует скорости проигрывания. Пока не попробую послушать ДВД-аудио....
zaycelap
Репутация: 0
С нами: 7 лет 7 месяцев

Сообщение #17 LUR » 09.05.2017, 01:51

zaycelap, создайте новую тему.
LUR M
Модератор
Аватара
Откуда: Минск
Репутация: 392
С нами: 12 лет

Сообщение #18 iPhoneSasuke » 08.03.2019, 04:13

Здравствуйте, уважаемые!

Надеюсь решить свой вопрос малой кровью, м.б. из вас кто-нибудь что-нибудь подскажет. Здесь упоминалось про щелчки и прочую ерунду из-за размера буфера. Так вот, в качестве ЦАП'а у меня Parasoud D/AC1100HD, древний как г-но мамонта, но музыкальный. Подаю на него сигнал по коаксиалу через планку S/PDIF (встраивается в материнку). На конкретных треках, в конкретных местах, всегда, в 100% случаев срабатывает реле (механическое), означающее потерю синхронизации с потоком, ну а когда срабатывает реле — звука нет. Звук пропадает на 1-2 секунды. В некоторых треках чуть дольше. Если использовать ЦАП в связке с CD-проигрывателем, то такого не происходит. Ну так вот: может ли это быть программное? Никакие увеличения буферов не помогли решить проблему.

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

Фубар 1.3.17, WASAPI output support 3.3. Использую WASAPI event.
iPhoneSasuke M
Аватара
Репутация: 3
С нами: 9 лет 10 месяцев

Сообщение #19 vladj » 08.03.2019, 13:20

iPhoneSasuke:Подаю на него сигнал по коаксиалу через планку S/PDIF
Плагин для вывода по SPDIF не забыл установить и настроить ? Для винды ХР foo_spdife, для 7-10 ставится foo_spdifer. В настройках звука галочки на монопольный режим , эффекты отключить.
vladj M
Аватара
Откуда: Пермский край
Репутация: 427
С нами: 14 лет 10 месяцев

Сообщение #20 Azaza » 08.03.2019, 17:12

vladj:Плагин для вывода по SPDIF не забыл установить и настроить ? Для винды ХР foo_spdife, для 7-10 ставится foo_spdifer.
Это нужно только при необходимости выводить DTS и AC3 на ресивер без декодирования фубаром.

Добавлено спустя 8 минут 3 секунды:
iPhoneSasuke:На конкретных треках, в конкретных местах, всегда, в 100% случаев срабатывает реле (механическое), означающее потерю синхронизации с потоком, ну а когда срабатывает реле — звука нет. Звук пропадает на 1-2 секунды. В некоторых треках чуть дольше. Если использовать ЦАП в связке с CD-проигрывателем, то такого не происходит. Ну так вот: может ли это быть программное? Никакие увеличения буферов не помогли решить проблему.
Такое бывает из-за наличия цифровой тишины в треках. Тогда нужно установить foo_dsp_noise (https://hydrogenaud.io/index.php/topic,73072.0.html) и добавить его последним в цепочку активных DSP. Если в настройказ вывода в фубаре (File->Preferences-Playback->Output->Output format) выбрано 16 бит, то в настройках foo_dsp_noise установить добавление шума в 16-ый бит, если 24, то в 24-й.

Добавлено спустя 8 минут 41 секунду:
iPhoneSasuke:Кстати, если понизить громкость в плеере, то фича исчезает. Но звук поганится. Как говорили на другом форуме, при таком действии теряются биты.
А ЦАП, что, на вход принимает только 16 бит? Глянул я в манауал для Parasoud D/AC1100HD (https://www.parasound.com/pdfs/vintage/dac1100om.pdf). Заявлен 20-битный ЦАП и соотношение сигнал/шум >108 дБ. В таком случае, если бы ЦАП мог принимать на вход 24 бита, то при воспроизведении 16-битного материала в фубаре при 24-битном выводе на этот ЦАП для того, чтобы начать "терять биты" нужно было бы убавить громкость более, чем на 12 дБ.
Azaza M
Аватара
Репутация: 417
С нами: 8 лет 3 месяца

След.

Вернуться в Есть вопрос!