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

IgorA

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

    5 598
  • Баллов

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

  • Посещение

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

    15

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

  1. @rustam0906 JACK работает с float32 аналогично тому, как фубар работает с входными плагинами (декодерами), то есть, он принимает от клиентских приложений только float32. Так задано в его спецификации. Поскольку в Red Book и большинстве hi-res оцифровок в исходных файлах целочисленные данные, то плеер, выводящий в JACK, предварительно пересчитывает эти входные данные в float32. Естественно, лучше от этого аудиоданные не становятся. При корректном обращении их можно обратно восстановить из float в integer, не более того. Что и делают перед любым выводом в драйвер и фубар, и JACK. Поскольку драйверы float не принимают. Эти трансформации в float и обратно при наличии DSP обработки передаваемого потока весьма разумны, но они совершенно лишние при ее отсутствии, и применяются в этом случае просто в силу универсальности рассчитанного на DSP интерфейса. Если осталось неясным, умеет ли JACK конвертировать форматы, то ответ - да. Без этого он не сможет работать, так как конвертирует их всегда.
  2. Драйвер ALSA не принимает плавающую точку. При низкоуровневом выводе без посредников драйвер ALSA принимает один из трех целочисленных форматов - 16, 24, 32 бита. И по моему опыту обычно только один конкретный из трех. В современных картах и ЦАПах фактически всегда 32 или 24. Это очень похоже на работу ASIO под Windows. Поэтому последнее звено перед драйвером ALSA, будь то плеер или JACK, при прямом hardware выводе в ALSA обязано выдавать именно этот требуемый целочисленный формат. При микшировании JACK, видимо, использует плавающую точку, но нет смысла загонять Red Book в плавающую точку, чтобы потом его же извлекать оттуда. Если чем-то больше нравится трансфер через плавающую точку, то это скорее эффект косвенного влияния процессинга на звук. Вряд ли он имеет универсальное значение за рамками использования конкретных программ. dithering - тоже искажения, которые маскируют другие искажения, возникающие при усечении разрядности исходника. Если можно просто передать 16-битный поток бит в бит, этого достаточно и это объективно лучший вариант.
  3. Вы сами задумайтесь пожалуйста о смысле своей аргументации. Если проблема только в том, чтобы без изменений донести биты из файла до ЦАПа, то любой фубар под любой Windows уже решает все проблемы. А сам плеер, да, конечно, и он тоже - промежуточное звено в конвейере звукового потока. А JACK - еще одно звено в этом конвейере.
  4. По такой логике и любой lossless плеер - не промежуточное звено между файлом и драйвером. Раз пересылок данных становится больше, значит, промежуточное звено. Собственный буфер данных у JACK есть. В его программном интерфейсе (API) есть функция, задающая размер этого буфера: jack_set_buffer_size.
  5. Модифицирует только при микшировании. В общем случае - переадресует, пропуская через собственный буфер.
  6. Не сам звук, конечно, но цифровой звуковой поток - да. Само название расшифровывается как Audio Connection Kit. Connection - соединение, коммутация. Странно после того, как столько копий сломано, возвращаться к вопросу, что такое JACK. На стартовой странице проекта JACK конкретно сказано, что задача этого продукта - коммутация: take the audio output of one piece of software and send it to another.
  7. "Прослойка" - вообще не моя терминология. Найдите, где бы я употреблял этот термин. Я говорил о "промежуточном звене". Но коммутатор - это и есть промежуточное звено.
  8. Для звука - нет. Принципиальная возможность, видимо, есть, но такие драйверы никто не делал.
  9. Связь этих цифр с качеством у ampir в аксиомах. Раньше это обсуждалось в других темах.
  10. @PolarLight Я думаю, что DOS позволяет получить предельный минимум загрузки процессора при воспроизведении звука (в противоположность тому, что делает сам ampir-nnn через JACK) и в этом смысле, да, DOS - идеальная ОС для звука на ПК. Но масса ограничений, связанных с отсутствием поддержки современных устройств, на мой взгляд, делает этот вариант неперспективным.
  11. @PolarLight JACK позиционируется как инструмент realtime микширования и гибкой коммутации звуковых потоков. Именно в этом контексте очень актуальны минимально достижимые значения буферов. С качеством воспроизводимого звука никто это не увязывал. До ampir-nnn.
  12. @Urez Место, видимо, да, не соответствует предмету, но вопрос этот скорее не ко мне. Я комментировал обсуждение, которое и без меня занимало всю предыдущую страницу.
  13. Да и сама апологетика минимально достижимого буфера в отношении задачи качественного воспроизведения музыки - тоже мифология, базирующаяся на незнании того, как тактируется передача звукового потока в ЦАП. Какой-то оптимальный, ограниченный сверху размер буфера может существовать, но лишь в отношении минимизации числа пересылок аудиоданных между памятью и кэшем процессора по пути в драйвер и размер такого буфера не меньше сотен семплов. А когда буфер зажимается до единиц семплов, то в разы возрастает нагрузка на процессор, соответствующим образом повышается уровень помех и джиттер от этого может только увеличиваться. Если кому-то нравится именно этот звук, то тут скорее вопрос личных предпочтений, а не какое-либо объективное преимущество этого варианта.
  14. @ampir-nnn Даже когда Jack выводит через ASIO 3 семпла / 2 периода, он ничего не минует в "звуковой системе ASIO". Желательно это понять и не заменять знания мифологией.
  15. Иначе говоря, он передает звуковой поток стороннему компоненту, который под Windows умеет выводить через ASIO, опять же, никак и ничего в ASIO не минуя. То есть, спрятаться от ASIO за еще одним дополнительным посредником, для Вас означает "миновать звуковую систему ASIO"? Что он при этом минует в некой упомянутой выше "звуковой системе ASIO", если она и сводится только к этому драйверу?
  16. @ampir-nnn И всё-таки ответьте пожалуйста конкретно на вопрос, связанный с Вашим утверждением, сделанным выше - что именно минует JACK в "звуковой системе ASIO", когда он выводит через ASIO? Если имелся ввиду некий микшер, то где этот микшер в ASIO?
  17. @ampir-nnn Когда плеер использует прямой вывод через драйвер ALSA и поддерживает настройку размеров буферов ALSA, он работает с теми же функциями вывода, что и JACK, и имеет те же самые возможности. В этом случае JACK объективно является лишним посредником на пути от плеера к драйверу. И что Вы конкретно имели ввиду под "Jack работает минуя звуковую систему ASIO", если ASIO - это только драйвер вывода? Что там минует Jack?
  18. Вы знаете, что драйвер карты, непосредственно взаимодействующий с железом, всегда работает в режиме ядра, а в комплекте Jack нет модулей, работающих в режиме ядра? Из чего с логической неизбежностью следует, что Jack может работать с железом только через драйвер, соблюдая все его условия и ограничения. Или во многом знании - немалая печаль?
  19. Владимир, я, чтобы доказать ampir-nnn, что JACK не может обойти драйвер ASIO в Windows (как и ALSA в Linux) и его ограничения на минимальный размер буфера, даже написал драйвер ASIO, который логгировал действия JACK при выводе и, естественно, всё подтвердил. За исключением ampir-nnn никто в этом мире не утверждает, что JACK может обойти драйвер ALSA и работать напрямую с железом. Но вера, она сильнее фактов.
  20. В 64-разрядной системе в общем случае оптимальнее 64-разрядная, но это не означает, что 32-разрядная там плохо работает. О разнице между 32-разрядными и 64-разрядными платформами можно почитать заметки в интернете. Это разные режимы работы процессора и адресации памяти. 64-разрядная система несколько производительнее и без ограничений на размер данных в памяти (пока хватает памяти).
  21. Из readme (только для EXTRAS модулей вывода): Для этого варианта потребуется скопировать в основную папку 32-разрядной версии плеера используемый 64-разрядный ap2decoder.exe с его конфигуратором. Также потребуется сделать в той же папке копию 32-разрядного файла approxy.exe с именем approxy64.exe. После этого модуль вывода будет 64-разрядным, а процессинг - 32-разрядным.
  22. Вот про то, как его увидеть, и рассказано в readme. Он выбирается и активизируется в программе ap2config на вкладке VST. Затем вызывается при воспроизведении через значок в трее.
  23. Эквалайзер есть в комплекте плеера в качестве примера VST плагина. Информацию, как использовать плагины, можно найти в файле readme по ключевому слову VST.
×
×
  • Создать...

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

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