Album Player
|
Автор |
Сообщение |
Выразили согласие: | |
|
Выразили согласие: | |
|
Igor_A
Ветеран
    
Откуда: _
Сообщений: 1 031
Репутация: 406
|
RE: Album Player / 04-10-2016 23:14
Так я уже рассказывал. Вообще первична в этой истории не теория, а именно опыт прослушивания. Когда делалась первая версия плеера в 99-м году, она представляла собой оболочку с менеджером альбомов над лучшим тогда по звуку, но неудобным по интерфейсу, mp3-плеером NAD. Но очень быстро NAD морально устарел, так как не поддерживал VBR кодирование, и я, воспользовавшись открытой спецификацией на Winamp, подключил к той же оболочке декодер и выходной плагин винампа. И был очень удивлен результатом, так как звук от соединения этих двух винамповских компонентов в собственном плеере вдруг оказался не винамповским, а другим - более детальным. Так родилась "теория заговора" - идея, что какой-то скрытой обработкой мейнстримовые плееры портят звук. Потом я занялся другими делами, а когда через несколько лет широко распространился lossless контент, был уже целый рынок плееров, я скачал фубар, и о впечатлениях выше докладывал, потом далее - все, что нашел. Везде звук разный и нигде - полностью устраивающий. Тогда вернулся к "теории заговора" и решению по ее преодолению - объединить по короткому пути все декодеры и модули вывода винампа. Такой стала версия 2.00 аплеера в начале 2011 года. Но дальнейшие исследования показали совершенно неожиданный для меня в 2011 году результат - оказалось, что все основные по-разному звучащие плееры могут выдавать на выход совершенно одинаковый bit-perfect поток. Теория заговора неожиданно рухнула. Поиски в интернете поведали о новом слове jitter, которое должно как-то разрулить эту парадоксальную ситуацию. Как с джиттером бороться - идея ясна, чем короче путь и тише код, тем меньше мы раскачиваем лодку. Следующим этапом стали собственной разработки "сквозные плагины", объединяющие декодер и модуль вывода и избавляющие от характерного конвейера классических архитектур модульных плееров. И далее длинный ряд версий плеера был связан с поиском альтернативных архитектур и дополнительных опций, которые могут как-то менять условия воспроизведения и косвенно влиять на звук. Некоторые из этих архитектур, включая последнюю - трехкомпонентные, с разделением декодера и DSP процессора, оболочки и собственно звукового движка на отдельные процессы, с возможностью оставить в памяти работающим только минимальный код движка, пересылающий драйверу декодированный PCM поток из памяти (это если совместить стелс-режим и Full Memory). Общая траектория работы над плеером - где-то так выглядела.
|
|
|
|
Выразили согласие: | PnL , Qawsed12qawse , bobrw , sergos , Ironman , Sheridan , slyhach , RingeR , Мутник , riiqwerty , КФ , rostian , bylujnik , Dmitry67 |
|
Выразили согласие: | |
|
Выразили согласие: | |
|
Выразили согласие: | |
|
RingeR
Ветеран
    
Откуда: Николаев
Сообщений: 233
Репутация: 120
|
RE: Album Player / 06-10-2016 09:04
На предпоследнем обновлении я dff не проигрывал, только на последнем, но, если правильно помню, на версии 2.105 диск играл ..
Другое дело, что с тяжелыми для декодирования форматами, имея дело с однофайловым образом диска и полной предзагрузкой в память, терпения на загрузку может требоваться набраться на минуты (предзагрузка становится полной автоматически при попытке начать воспроизведение не с первого трека однофайлового образа).
Да, все примерно так и происходит, хотя, ОЗУ 8 Гб, что вроде бы, позволяет ...
Что касается АРЕ, то в сети есть Dali CD vol.1 и vol.2 , именно на них долгий запуск с первого трека и происходит ... другие диски играют как положено
p.s.
Странно, что у меня DFF не пошли, если Вы проверили и все в порядке ...
|
|
|
|
Выразили согласие: | |
|
Выразили согласие: | |
|
Выразили согласие: | |
|
Выразили согласие: | |
|
AABBCC
Ветеран
    
Откуда: UA, Che
Сообщений: 3 084
Репутация: 214
|
RE: Album Player / 07-10-2016 12:54
(06-10-2016 21:20)Igor_A писал(а): Конечно, можно не обновляться каждый раз. В ленте новостей плеера подробно расписано содержание каждого из обновлений и можно самому делать вывод - актуально это или нет. 32-шку вин. защитник ругаает.
Игорь, а к каким тактам привязывается плеер, когда отправляет PCM в драйвер устройства вывода? Не точно формулирую вопрос, не программист, надеюсь поймете. Что такое бит-префект? Я понимаю так, в любом исправном компьютере, пока он работает, все время бит префект, на всех задачах, пока озу не начало сбоить, и т.п. А в таком малом количестве битов, как муз. трэк, потерять хотя бы один бит, для современного компьютера, это не задача, на своем "юзерском" рассуждаю.
Для стерео звука, самое главное, привязка битов в PCM во времени, понимаю? С чем этот поток синхронизируется, относительно чего? Недавно заметил, что на четном множителе процессора, сцена лучше, точнее. На НЕ четном, сильнее портит сцену, увеличение output bufer wasapi, что фубар, что АП. В фубаре есть возможность задать 1ms, этим выигрывает. На четном меньше проявляется. Проявляется, как очень малы сдвиг фазы в каналах. Поработал над юсб портом прилично, БП тоже попал в переделки. Оказалось, он важен, но не совсем в том месте, где обычно ставят акценты. Буду продолжать дальше. Многое стало слышно, что на просторах мало обсуждается. Чтобы двигаться дальше, не хватает полного понимания в пересчетах (делении\умножении) тактовых частот, и привязки к ним процессов формирования и вывода PCM.
Спасибо.
|
|
|
|
Выразили согласие: | |
|
Выразили согласие: | |
|
AABBCC
Ветеран
    
Откуда: UA, Che
Сообщений: 3 084
Репутация: 214
|
RE: Album Player / 07-10-2016 14:26
(07-10-2016 14:04)PnL писал(а): Если по USB, то вот здесь достаточно подробно - _http://www.softelectro.ru/usb.html Да, хорошая ссылка. Но там подробно о юсб, как о порте для передачи цифровых данных, то есть о том, для чего он и был изначально придуман. Вывод по юсб PCM потока, это другая задача, как бы "не легальная". Я не программист, не хочу смешить своим "проф айтишным" дальше. То, что там не все так просто, уверен. Подождем лучше Игоря..
|
|
|
|
Выразили согласие: | |
|
Igor_A
Ветеран
    
Откуда: _
Сообщений: 1 031
Репутация: 406
|
RE: Album Player / 07-10-2016 14:39
(07-10-2016 12:54)AABBCC писал(а): 32-шку вин. защитник ругаает. Спасибо, в Microsoft я сообщил. Теперь надо подождать, пока вылечится сам защитник.
(07-10-2016 12:54)AABBCC писал(а): Игорь, а к каким тактам привязывается плеер, когда отправляет PCM в драйвер устройства вывода? Не точно формулирую вопрос, не программист, надеюсь поймете. Что такое бит-префект? Я понимаю так, в любом исправном компьютере, пока он работает, все время бит префект, на всех задачах, пока озу не начало сбоить, и т.п. А в таком малом количестве битов, как муз. трэк, потерять хотя бы один бит, для современного компьютера, это не задача, на своем "юзерском" рассуждаю. Плеер синхронизируется, в зависимости от используемого режима вывода одним из двух способов: обратным вызовом (запросом данных) из драйвера или периодическим опросом доступности буфера драйвера.
Бит-перфект, это точное сохранение двоичной информации о семплах из файла-исходника. Не соблюдается при цифровой регулировке громкости, микшировании, иногда при конвертации.
(07-10-2016 12:54)AABBCC писал(а): Для стерео звука, самое главное, привязка битов в PCM во времени, понимаю? С чем этот поток синхронизируется, относительно чего? По сути для звука точная привязка важна только при передаче потока непосредственно ЦАПу и его тактировании при этом. Проникающие туда паразитные влияния и называют джиттером. Но до этого обычно данные проходят цепочку буферов, пересылки между которыми теоретически жесткой синхронизации не требуют, главное, чтобы запас пополняемых данных буфера не доходил до нуля.
Что касается задержек буфера WASAPI, то самые минимальные значения могут выбираться формально и не отрабатываться, так как система лимитирует нижний порог. Это можно увидеть, посмотрев в ProcessExplorer, что происходит с параметрами (число тактов и переключений контекста) программного потока плагина вывода при различных установках буфера.
|
|
|
|
Пользователи просматривают эту тему: 8 Гость(ей)
|

|