Перейти к содержанию

IgorA

Продвинутые
  • Публикаций

    5 598
  • Баллов

    14 098 
  • Зарегистрирован

  • Посещение

  • Победитель дней

    15

Весь контент IgorA

  1. Чтобы плеер запускался, в ap2config надо отключить опцию "Управлять системной громкостью". Она не работает и плеер аварийно завершается, так как в Server 2016 Core нет службы Windows Audio.
  2. Здесь еще есть вопрос по объективности самого ощущения лучше-хуже. Звук после эквалайзера часто лучше на слух, но хуже, если нас интересует подобие оригиналу. Кто сказал, что любого характера привнесенный в сигнал джиттер будет всегда восприниматься слушателем как "хуже", а не как более объемный и наполненный звук? У некоторых на слух и фубар всех обыгрывает по звуку. Я думаю, что в точных сравнительных измерениях соответствия копии оригиналу выиграют именно самые "тихие" варианты воспроизведения. Что касается медленных процессоров, то это палка о двух концах, так как частоты помех снижаются, но их продолжительность увеличивается при том же объеме вычислений. А вот минимизация самого процессинга, сопровождающего воспроизведение, на мой взгляд, безусловное благо.
  3. @BSV, а папки SACD были пересканированы после переключения опции "Full disc playback mode"?
  4. @BSV, да, ведь approxy64 обновлялся. Попробуйте этот вариант. approxy64_.zip
  5. Так ведь нагрузка на процессор, синхронизированная с процессингом звука, это и есть та самая единственная ось зла, которую я могу представить в качестве возможного источника косвенных влияний на воспроизведение в условиях bit perfect передачи данных и опережающей буферизации с собственным клоком. Если есть какие-то другие идеи, предлагайте пожалуйста.
  6. m@jor Видимо, только когда буфер драйвера становится меньше буфера контроллера (который и так небольшой - сотни байт), он начинает лимитировать размер передаваемого блока и возникает такая ситуация. Но по моим представлениям в этом нет ничего хорошего.
  7. Так и вопрос, с которого обсуждение началось, был задан о настройке буферов для этого плеера. В linux версии в DI весь процессинг синхронизирован с подкачкой этих блоков, а в FM вынесен во времени за рамки их передачи. В других плеерах собственный буфер тоже может регулироваться. То, что происходит на этапе передачи данных из памяти драйвера в аппаратный контроллер вообще находится за рамками софтовых настроек. Там передаются фиксированные фреймы размером от десятков до сотен байт. И в контроллере тоже опережающая буферизация. То есть, передает он один блок данных и параллельно принимает другой. Поскольку из памяти трансфер на порядки быстрее передачи данных по интерфейсу, то опоздать здесь невозможно и ускоряться, в общем-то, незачем.
  8. Размер периода в настройках буфера драйвера определяет размер регулярно передаваемого плеером в драйвер блока данных. Соответственно, именно с блоками такого размера выполняется процессинг. И чем меньше этот размер, тем больше вероятность того, что обработка данных будет локализована в кэше. При использовании DMA данные передаются только из ОЗУ. Из плеера в драйвер блок передается программно и кэширование работает.
  9. Если в стандартном режиме вывода выбрать максимальный буфер предзагрузки, то работать будет подобно Full Memory - предзагружаться большими блоками, но играть будет сразу. В дальнейшем, скорее всего, в настройки добавится выбор режима загрузки диска целиком или по трекам. Впрочем, если начинать слушать с первого трека альбома, то и сейчас Full Memory x64 должен начинать играть сразу.
  10. В ситуации снижения частоты импульсные помехи становятся менее интенсивными, но более длительными, так как объем вычислений остается тот же. Что из этого будет лучше для звука, я с ходу не знаю - это вопрос для отдельного исследования.
  11. Для DI и FM, я думаю, нет принципиальной разницы - 3 или 8MB кэш.
  12. Например, для стандартного режима воспроизведения - если буфер предзагрузки весь умещается в кэше, то чтение из него будет происходить без обращения к оперативной памяти.
  13. grigoxyr Поддержка воспроизведения с CD дисков в linux версии возможна, но если это будет, то в дальнейшем, в версии с графическим интерфейсом. Но воспроизведение рипа диска из памяти в любом случае прямее по отношению к процессингу тех же самых PCM данных чем проигрывание CD диска на компьютере.
  14. Наверно, чем больше, тем лучше.
  15. m@jor Я имел ввиду кэш L1. Что касается прерываний от контроллера, то при передаче ему данных драйвером стандартным является использование DMA. В этом случае данные считываются из памяти, а не из кэша. Основной процессинг данных, скорее всего, происходит в контексте плеера и его потоков, включая работу кода ядра при приеме драйвером этих данных.
  16. Насчет размера буферов существуют противоположные мнения. Экстремально низкие размеры существенно повышают нагрузку на процессор, что вряд ли чем-то помогает воспроизведению. Чем больше размеры, тем меньше вычислительная нагрузка. С другой стороны, небольшие размеры буферов могут быть оптимальны в том плане, что основная работа с данными будет выполняться во внутреннем кэше процессора. Но для этого, видимо, достаточный минимум - 64/128 фреймов или 128/256. Связаны размеры буферов в том смысле, что размер буфера должен быть больше размера периода в два раза или больше. Способ задания этих размеров в фреймах или микросекундах альтернативен в том смысле, что первый вариант создает буфер фиксированного размера, а второй - буфер, увеличивающийся при увеличении частоты дискретизации.
  17. Адам, настройки можно менять командами с клавиатуры, завершаемыми Enter, при оставленном воспроизведении: pf - размер периода в фреймах, без пробела - pf1024 , pf512, и с другими параметрами аналогично. pt - длительность периода в микросекундах bf - размер буфера в фреймах bt - длительность буфера в микросекундах di - Direct Input mode fm - Full Memory mode pcm - DSD->PCM mode (pcm, pcm44, pcm88, pcm176, pcm352) dop - DSD DoP mode card - выбор устройства вывода (после выбора нужен перезапуск). Графический интерфейс будет доступен позже.
  18. Если задать в семплах и period_size, и buffer_size как period_size * 3, то так и будет. Для всех версий Windows режим вывода DSD потока плеером (PCM/DoP/Native) выбирается одинаково - в панели настроек входного SACD плагина (через "Форматы файлов" в контекстном меню).
  19. PolarLight Когда размер буфера задается не в килобайтах, а в интервалах времени, это уже адаптивный вариант, где размер буфера автоматически меняется при изменении samplerate. Вряд ли здесь нужна дополнительная дифференциация. Систему настроек лучше не усложнять без необходимости.
  20. Адам, версиям плеера, начиная с 2.106, требуется запуск от имени администратора. Возможно, проблема с этим. На следующей неделе, если будет возможность, посмотрю на виртуальной машине.
  21. PolarLight, спасибо за хлопоты. Насчет интеграции в систему - по мере готовности плеера посмотрю, что для этого требуется. Возможно, что специальная адаптация и не нужна, так как плеер и в дальнейших версиях останется портабельным.
  22. @DJ Pete, можно попробовать отключить в ap2config Gapless Mode, если используется стандартный режим воспроизведения и включена эта опция. Также настраиваемые буферы можно поварьировать и режимы воспроизведения. Скорее всего, к ошибке приводит неудачная синхронизация управления при воспроизведении и изменение условий воспроизведения может влиять на это.
  23. bbest, я в любом случае делаю тот звук, который максимально (в рамках возможного) избавлен от программных влияний. Но совсем не факт, что именно он должен всем нравиться больше иных вариантов.
  24. bbest Если бы ap был запущен с root правами, у него был бы максимальный приоритет, а не стандартный. В конфиге MPD я ничего необычного не обнаружил, вроде бы, с таким и запускал.
  25. @bbest, после окончания загрузки файла в режиме Full Memory (этот режим по умолчанию активен) и с начала воспроизведения в ap остается только один активный поток, который и обеспечивает воспроизведение. Еще один поток, обслуживающий консольный интерфейс, просто спит в ожидании ввода. Для обеспечения управления приоритетом и блокировки используемой памяти от перемещения плеер следует запускать под root - sudo ./ap . В Full Memory в этом случае выполняется прямой вывод декодированного потока из памяти в драйвер с потреблением 0% ресурсов процессора. Конечно, если минимизировать буферы, то потребление ресурсов чуть увеличится. С точки зрения объективных условий для воспроизведения вряд ли это чем-то уступает режиму вывода в MPD. И при сравнении на одной системе я превосходства звука при воспроизведении через MPD не наблюдал. Размером буфера драйвера и периода можно управлять командами в соответствии с инструкцией.
×
×
  • Создать...

Важная информация

Пользуясь форумом вы соглашаетесь с нашими Условия использования.