AIMP Forum

Разное => Архив / Archive => Вопросы (архив) / Questions (archive) => Topic started by: fominator on April 08, 2016, 15:44:47

Title: Разница между Directsound и Wasapi Shared
Post by: fominator on April 08, 2016, 15:44:47
Поясните в чём разница между этими двумя выводами, не могу нигде найти внятный ответ. При выборе Wasapi Shared в параметрах есть выбор только 32 бита почему-то! Не могу понять логику, потому как частота дискретизации в параметрах та которую я выбираю в устройствах воспроизведения звука Windows, но разрядность всегда 32 бита. Не понятно вообще с какой разрядностью выводится звук? 32 бита? Но у меня карта не поддерживает 32 бита, токгда получается идёт преобразование 32 в 16 или 24, но это не есть гуд. Поясните.
Title: Re: Разница между Directsound и Wasapi Shared
Post by: Artem on April 08, 2016, 16:08:50
Wasapi Shared использует тот формат, который указан у вас в настройках ОС. Сколько у вас указано в настройках? 24?
DirectSound смысла использовать нет - все, что вы выберите все равно сведется к тому, что настроено у вас в ОС.

токгда получается идёт преобразование 32 в 16 или 24, но это не есть

Что в этом вас пугает?
Title: Re: Разница между Directsound и Wasapi Shared
Post by: fominator on April 08, 2016, 16:16:49
ну вроде как понижение разрядности это не очень хорошо для звука, нет?
Title: Re: Разница между Directsound и Wasapi Shared
Post by: Soolo on April 08, 2016, 16:18:05
Две статьи на эту тему есть в блоге (не говоря уже про другие статьи в интернете) и всё-равно постоянные вопросы. Гуглом надо пользоваться.
Вот актуальная статья на тему https://www.aimp.ru/blogs/?p=597

Но у меня карта не поддерживает 32 бита, токгда получается идёт преобразование 32 в 16 или 24, но это не есть гуд.
ну вроде как понижение разрядности это не очень хорошо для звука, нет?
Преобразования битности вроде 16>>32>>16,  16>>32>>24,  24>>32>>24 идут без потерь
Title: Re: Разница между Directsound и Wasapi Shared
Post by: fominator on April 08, 2016, 16:22:39
ясно! но не понятно тогда что показывает output в плеере? 48000 Hz 32 bit! Это output ЧЕГО? плеера или карты? не понятно просто почему частота дискретизации выбирается в настройках звука windows, а разрядность НЕТ!! смена разрядности производится средствами windows, а передискретизация? и в чём собственно отличие от directsound?
Title: Re: Разница между Directsound и Wasapi Shared
Post by: fominator on April 08, 2016, 16:26:51
Две статьи на эту тему есть в блоге (не говоря уже про другие статьи в интернете) и всё-равно постоянные вопросы. Гуглом надо пользоваться.
Вот актуальная статья на тему https://www.aimp.ru/blogs/?p=597
Преобразования битности вроде 16>>32>>16,  16>>32>>24,  24>>32>>24 идут без потерь
да потому что вопрос мой не в этом что вы привели, я не спрашивал про качество звука, а про организацию настроек плеера!! они не понятны и не понятна разница между wasapi shared и directsound в этих настройках, откуда 32 бита взялось? ещё раз - В ЧЁМ РАЗНИЦА МЕЖДУ ЭТИМИ ВЫВОДАМИ? не ЗВУКА, а ОРГАНИЗАЦИИ ВЫВОДА!!
Title: Re: Разница между Directsound и Wasapi Shared
Post by: Soolo on April 08, 2016, 16:31:03
ясно! но не понятно тогда что показывает output в плеере? 48000 Hz 32 bit!
это то, что отдаёт плеер

не понятно просто почему частота дискретизации выбирается в настройках звука windows, а разрядность НЕТ!!
обычно всё выбирается, прокрутите список вариантов ниже

смена разрядности производится средствами windows, а передискретизация?
смешались кони-люди... (с)
Оба параметра могут менять и плеер и ОС, а может никто не менять, всё зависит от настроек

и в чём собственно отличие от directsound?
забудьте о directsound - в Win7 и новее это не более, чем прослойка для режима WASAPI (сделана для совместимости со старыми программами), об этом я в статье писал, ссылка на статью выше.

ещё раз - В ЧЁМ РАЗНИЦА МЕЖДУ ЭТИМИ ВЫВОДАМИ? не ЗВУКА, а ОРГАНИЗАЦИИ ВЫВОДА!!
Я уже говорил про Гугл, ещё его не заблокировали вроде: http://audiophilesoft.ru/publ/my/win7_sound/11-1-0-84

откуда 32 бита взялось?
ОС запрашивает такую битность, АИМП её выдаёт - оттуда и взялись
Title: Re: Разница между Directsound и Wasapi Shared
Post by: fominator on April 08, 2016, 16:36:05
я ничего не смешиваю, я вполне разбираюсь в выводах звука, это у вас в настройках всё смешано! я спрашиваю про конкретный вывод wasapi shared! где производится передискретизация файла 44.1 kHz 16bit, если в параметрах плеера выбрать 48 khz 32 bit? (КРОМЕ 32 там ничего нет) ответьте пожалуйста на этот конкретный вопрос!
Title: Re: Разница между Directsound и Wasapi Shared
Post by: Artem on April 08, 2016, 16:41:48
я ничего не смешиваю, я вполне разбираюсь в выводах звука, это у вас в настройках всё смешано! я спрашиваю про конкретный вывод wasapi shared! где производится передискретизация файла 44.1 kHz 16bit, если в параметрах плеера выбрать 48 khz 32 bit? (КРОМЕ 32 там ничего нет) ответьте пожалуйста на этот конкретный вопрос!

Ничего у нас не смешано.
1. Вы указываете для конкретного вывода звука, конкретный формат передачи данных.
2. Список поддерживаемых форматов возвращает драйвер / ОС.
3. Как я уже сказал, зачастую драйвера вместо 24 бит в п.2. выдают 32, просто потому, что с ними проще работать, нежели с 24-битами, а потери в качестве нет.
4. В ту частоту, которую вы указали в ___настройках плеера___, передескритизирует (внезапно) плеер.
5. Будет ли ОС или драйвер передескритизировать полученный поток после плеера - плееру неизвестно.
Title: Re: Разница между Directsound и Wasapi Shared
Post by: Soolo on April 08, 2016, 16:42:16
я ничего не смешиваю, я вполне разбираюсь в выводах звука, это у вас в настройках всё смешано! я спрашиваю про конкретный вывод wasapi shared! где производится передискретизация файла 44.1 kHz 16bit, если в параметрах плеера выбрать 48 khz 32 bit? (КРОМЕ 32 там ничего нет) ответьте пожалуйста на этот конкретный вопрос!
В режиме WASAPI Shared вообще не может быть выбора параметров
Все параметры задаются исключительно в ОС
Что касается битности, в этом режиме ОС всегда запрашивает 32 бит
Все преобразования в этом режиме делаются АИМПом
Title: Re: Разница между Directsound и Wasapi Shared
Post by: Artem on April 08, 2016, 16:44:14
Отвечать на вопрос, чем именно отличается DirectSound от WASAPI не вижу смысла, Soolo уже сказал - первый существует в винде для совместимости с программами для старых ОС. А то, что вы там можете выбрать даже то, что не снилось - это иллюзия, все эти возможности эмулируются на уровне ОС.
Title: Re: Разница между Directsound и Wasapi Shared
Post by: fominator on April 08, 2016, 17:01:23
"В режиме WASAPI Shared вообще не может быть выбора параметров
Все параметры задаются исключительно в ОС"

" В ту частоту, которую вы указали в ___настройках плеера___, передескритизирует (внезапно) плеер."

ну вот как это понимать? это и странно! параметры задаются ОС, но передискретизация производится плеером! по идее windows в данном случае должен делать передискретизацию, так как настройки частоты задаются именно в параметрах звука Windows! К чему тогда фраза "Будет ли ОС или драйвер передескритизировать полученный поток после плеера - плееру неизвестно". Нам-то известно что мы выбрали в настройках windows 48, зачем тогда плеер сам делает передисретизацию? Только разве что ради более хорошего качества, так что ли?

по поводу битности - то есть плеер сам выдаёт в этом режиме 48-32, а система оставляет 48 нетронутым (так как сама настроена на 48), но преобразовывает при этом 32 в то что выбрано в настройках звука windows, так я понимаю? то есть она запрашивает 32, но потом всё равно преобразовывает 32 в то что выбрано в windows?
Title: Re: Разница между Directsound и Wasapi Shared
Post by: Soolo on April 08, 2016, 17:06:04
ну вот как это понимать? это и странно! параметры задаются ОС, но передискретизация производится плеером! по идее windows в данном случае должен делать передискретизацию, так как настройки частоты задаются именно в параметрах звука Windows!
Нам-то известно что мы выбрали в настройках windows 48, зачем тогда плеер сам делает передисретизацию? Только разве что ради более хорошего качества, так что ли?
Звуковая система ОС работает с некоторыми параметрами. В режиме WASAPI Shared плеер подстраивается под эти параметры. Всё очень просто.



К чему тогда фраза "Будет ли ОС или драйвер передескритизировать полученный поток после плеера - плееру неизвестно".
по поводу битности - то есть плеер сам выдаёт в этом режиме 48-32, а система оставляет 48 нетронутым (так как сама настроена на 48), но преобразовывает при этом 32 в то что выбрано в настройках звука windows, так я понимаю? то есть она запрашивает 32, но потом всё равно преобразовывает 32 в то что выбрано в windows?
Все несоответствия настроек ОС и возможностей железа карты (например 32 бит карты не поддерживают) будут кем-то устраняться. Вероятнее всего это будет ОС, но может быть и драйвер. К примеру для настройки 24 бит зачастую именно драйвер преобразует 32 в 24.

Но по поводу битности вообще можно не париться - преобразование без потерь (кроме случаев вывода 24 битной музыки на карту 16 бит).
Title: Re: Разница между Directsound и Wasapi Shared
Post by: fominator on April 08, 2016, 17:12:48
то есть если обобщить - плеер сам делает преобразование 44.1-16 в 48-32, основываясь на выставленной частоте windows и разрядности, которую ОС запросила, а потом система корректирует под железо разрядность и именно в ту разрядность которая также указана в настройках windows (то есть 24 или 16)? правильно?
Title: Re: Разница между Directsound и Wasapi Shared
Post by: Artem on April 08, 2016, 17:14:58
ну вот как это понимать? это и странно! параметры задаются ОС, но передискретизация производится плеером! по идее windows в данном случае должен делать передискретизацию, так как настройки частоты задаются именно в параметрах звука Windows!

Да, она может менять сама, если вы используете старый механизм вывода - через DirectSound. В противном случае, плеер должен подготовить сигнал в тот формат, который поддерживается WASAPI, он может использовать собственный ресемплер, а может системный. Но в любом случае, ресемплиться поток будет на стороне плеера.

Нам-то известно что мы выбрали в настройках windows 48, зачем тогда плеер сам делает передисретизацию? Только разве что ради более хорошего качества, так что ли?

Он это делает, если это нужно. Например, у вас исходный файл - 44.1, а WASAPI принимает только 48. Плеер переводит 44.1 в 48. А вот будет ли потом винда/драйвер переводить эти 48 в 96 или 88.2, или еще во что-то - мы не знаем. Да и вы, я уверен, вряд ли знаете.

по поводу битности - то есть плеер сам выдаёт в этом режиме 48-32, а система оставляет 48 нетронутым (так как сама настроена на 48), но преобразовывает при этом 32 в то что выбрано в настройках звука windows, так я понимаю? то есть она запрашивает 32, но потом всё равно преобразовывает 32 в то что выбрано в windows?

Да, как-то так.
Title: Re: Разница между Directsound и Wasapi Shared
Post by: fominator on April 08, 2016, 17:22:10
ну вроде примерно теперь понятно! СПАСИБО!

но вот фраза опять родила вопрос)
"может использовать собственный ресемплер, а может системный" так всё-таки в моём случае плеером какой ресемплер используется? и смежный вопрос - свой ресемплер AIMP это SOX?
Title: Re: Разница между Directsound и Wasapi Shared
Post by: Artem on April 08, 2016, 17:28:59
"может использовать собственный ресемплер, а может системный" так всё-таки в моём случае плеером какой ресемплер используется? и смежный вопрос - свой ресемплер AIMP это SOX?

Свой, да это SOX.
Title: Re: Разница между Directsound и Wasapi Shared
Post by: fominator on April 08, 2016, 17:34:18
Спасибо за потраченное на разъяснение время! Но этот момент давно не мог понять, теперь всё ясно.
Title: Re: Разница между Directsound и Wasapi Shared
Post by: Soolo on April 08, 2016, 17:49:20
то есть если обобщить - плеер сам делает преобразование 44.1-16 в 48-32, основываясь на выставленной частоте windows и разрядности, которую ОС запросила, а потом система корректирует под железо разрядность и именно в ту разрядность которая также указана в настройках windows (то есть 24 или 16)? правильно?
Да, всё так.
Кстати, у меня во время обсуждения появилось предположение, что ОС "любит" 32 бит скорее всего потому что в этой разрядности предпочтительнее всего делать любую обработку звука: громкость, эффекты и прочие штуки.
Title: Re: Разница между Directsound и Wasapi Shared
Post by: fominator on April 08, 2016, 18:07:08
Кстати, у меня во время обсуждения появилось предположение, что ОС "любит" 32 бит скорее всего потому что в этой разрядности предпочтительнее всего делать любую обработку звука: громкость, эффекты и прочие штуки.

да, согласен!