LINUX.ORG.RU

Звук в Linux


0

1

Тема не сильно касается программирования, это общий вопрос чайника.

Мне страшен звук, который исходит из гнулинуксоплееров, сравнительно с winamp, например. Сложно описать (если интересно - скажите, попробую), но разница примерно в том, как между alsa и oss.
Соответственно я сейчас использую Winamp под wine + OSS. Это, конечно, неудобно, ведь нужного функционала я не получаю.

Вопрос собственно: почему такая разница в звучании? Интересует техническая сторона вопроса. Если я правильно понимаю, есть библиотеки в Linux для воспроизведения музыки, например Pyglet, PyAudio. Меня интересует любая информация по этому вопросу. Хочется получить нормальное звучание, без использования wine.

Ответ на: комментарий от moscwich

Коль уж троллишь - тролль с умом и опдготовкой.

Короче. тебе тут пытаются объяснить что от пинукса твоя аудиокарта не изменяется - звуковые потоки _одинаково_ обрабатываются платой и там и в венде.
Поэтому давай считать искажалки звука:
1. плеер
2. звуковая подсистема (драйвер аудиокарты, короче)
Вот эти вещи на венде и на линаксе - разные, хотя полностью в твоих силах добиться одинакового (плюс-минус) звучания в обеих ОС.
Насчет винампа и какого-то особенного звучания. «голый» ненастроенный винамп + klmcp (k-lite - должен знать такую «программу») дают такое же звучание, как тот же Audacious в бубунте.
Ну и ты сам признавал, что VLC играет одинаково (плюс-минус) в обеих ОС - как думаешь - почему? Как миниммум - потому что он «тянет» с собой собственный «набор кодеков» (ffmpeg) - и вся разница в звуке между ОСями при его проигрывании сведется к слегка разной работе звуковых драйверов.
Общий совет - подергай эквалайзер.
Разжевал?

yaws
()

и вообще на будующее - такая тем должна быть по идее в в разделах General или Desktop

yaws
()
Ответ на: комментарий от yaws

1) Я не троллю.
2) Я не на винде, а в линуксе и в вайне, и я знаю, что дело не в линуксе, а в плеерах (в том, что они используют, и меня как-раз интересует в чем именно), я не говорил обратного.
3) Эквалайзер дергал - «не то», я уже писал.
4) Не разжевал.

Ну и ты сам признавал, что VLC играет одинаково (плюс-минус) в обеих ОС - как думаешь - почему?

Нет, я НИКОГДА не прислушивался как играет vlc в винде. И я не говорил обратного. И ставил я его тут только один раз, когда еще линуксоидом не был и удалил через 5 мин т.к. сравнительно с винампом и mpc - это УГ.

И последнее. Я еще раз говорю, что меня интересует техническая сторона вопроса. Какой «набор кодеков» у винампа? Свой? Что такое Pyglet, PyAudio и пр.? Тоже «набор кодеков»?

moscwich
() автор топика
Ответ на: комментарий от moscwich

> DAC

Digital to Analog Converter или просто Цифро-Аналоговый Преобразователь (ЦАП). Устройство, которое преобразует закодированную в цифровом виде звуковую информацию (амплитуду сигнала) в соответствующий уровень напряжения на выходе. Иными словами к выходу ЦАПа уже можно подключить воспроизводящее устройство - динамик (лучше конечно через усилитель).

Также совсем непонятно что значит «микширование звука» в данном контексте.

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

Да, еще, у меня OSS, ALSA вспоминать не надо.

Собственно я хотел донести мысль о вреде ресэмплинга, который у тебя скорее всего будет появляться. Есть элементарная частица звуковой информации - сэмпл. ЦАП (см. выше) обрабатывает сэмплы последовательно, с некоторой частотой, которая называется частота дискретизации (она же частота сэмплирования). Звуковой материал у тебя может быть записан с использованием одной частоты дискретизации (скажем 44100 Гц), а ЦАП настроен на воспроизведение с другой частотой (например 48000 Гц). В этом случае, если пропустить такой материал через ЦАП, произойдет изменение скорости и тона воспроизводимого звука. Чтобы этого не происходило, необходимо каким либо способом привести частоту дискретизации звукового сигнала к частоте дискретизации ЦАПа. Этот процесс выполняется с помощью специальных алгоритмов и называется ресэмплинг. Но так как исходные данные изменяются, происходит искажение звука. Оно может быть неслышимо, а может быть заметно, зависит от самого звука и алгоритма ресэмплинга.
Винамп (или windows?) возможно лучше ресэмплирует звук, чем твой OSS (хотя я в этом сомневаюсь).

PS: старался расписать как можно подробнее, не знаю, получилось ли

m0rph ★★★★★
()
Ответ на: комментарий от m0rph

Винамп (или windows?) возможно лучше ресэмплирует звук, чем твой OSS (хотя я в этом сомневаюсь).

Вряд ли - винамп то он в вайне запускает. Так что, звук все равно OSS выводит. Так что, 99.99%, что здесь виноват эквалайзер. Ну и возможно в винампе включены какие-либо доп. фильтры.

Eddy_Em ☆☆☆☆☆
()
Ответ на: комментарий от moscwich

>Не увлекаюсь. Но есть мнение, что аудиокассеты - это отвратительно (сравнительно с винилом). По-моему это очевидно, удивлюсь если кто-то не согласен.

Надо понимать, что винил, на самом деле, говно.

Waterlaz ★★★★★
()
Ответ на: комментарий от moscwich

>Первое непонятное слово: DAC, а дальше, как следствие - их тьма.

На http://lmgtfy.com/?q=dac

Только давай ты не будешь мудаком больше и научишься юзать поиск хоть иногда вместо того чтобы плакаться как маленькая девочка.

Waterlaz ★★★★★
()
Ответ на: комментарий от m0rph

> старался расписать как можно подробнее, не знаю, получилось ли
Получилось, спасибо огромное!

Цифро-Аналоговый Преобразователь (ЦАП).

Остальное в том абзаце оказалось даже лишним, я понимаю что это такое.

Винамп (или windows?) возможно лучше ресэмплирует звук, чем твой OSS (хотя я в этом сомневаюсь).

Не windows, у меня через wine (который в тот же oss).

Я понял, в общем. Только, ты, ты сам себе противоречишь, кажется. Или я все-таки не совсем верно понял.

Собственно я хотел донести мысль о вреде ресэмплинга

происходит искажение звука



vs.

В этом случае, если пропустить такой материал через ЦАП, произойдет изменение скорости и тона воспроизводимого звука.


Т.е. еще более явное искажение?

moscwich
() автор топика

В полку поциентов прибыло.

anon_666
()

еще один клоун, который думает что звук должны «улучшать» плееры на его говноакустике, а не звукорежиссеры в студии?

Turbid ★★★★★
()
Ответ на: комментарий от Turbid

Нормальная у меня акустика, http://www.fcenter.ru/eshop.shtml?94106

И у меня большое подозрение (несмотря на лекцию от m0rph), что это линуксоплееры так «улучшают» звук (многим, как я знаю, больше нравится как они звучат, нежели тот же винамп).

moscwich
() автор топика
Ответ на: комментарий от moscwich

один из рычагов в регуляторе громкости.

у меня была такая хрень, когда переходил на линух с хр - заметил, что с выкрученной на 100% громкостью подпердывает звук, чуть поубавил - и стало хорошо.

Deleted
()
Ответ на: Я не просто так создал тему в этом разделе от moscwich

GStreamer — известный модульный фрейморк для управления медиапотоками в среде GNOME и направления их на соответствующие фильтры пред- и постобработки, представляющие из себя различные библиотеки кодеков.

Фреймворк GStreamer используется в Totem и Exaile. Фактически, эти программы представляют собой user friendly оболочки управления над GStreamer.

iZEN ★★★★★
()
Ответ на: комментарий от iZEN

Ну я это уже понял, в википедии прочитал, а техническую сторону вопроса я имел ввиду, например «чем именно отличаются все эти ваши фрейморки», в этом духе.

moscwich
() автор топика
Ответ на: комментарий от moscwich

> Т.е. еще более явное искажение?

Тут имелось в виду то, что если материал с другой частотой дискретизации пропустить _без_ применения ресеэмплинга, то получится изменение скорости/тона. Естественно обычно такого не происходит, так как звуковая система или же непосредственно сам плеер занимается ресэмплингом. В alsa за это отвечает плагин plug, в OSS или в вендовом DirectSound не знаю, но думаю есть нечто подобное. Вот почему к вероятным причинам различия звучания я бы отнес используемый алгоритм ресэмплинга, если конечно он вообще происходит.


m0rph ★★★★★
()
Ответ на: комментарий от m0rph

>Этот процесс выполняется с помощью специальных алгоритмов и называется ресэмплинг. Но так как исходные данные изменяются, происходит искажение звука.

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

Waterlaz ★★★★★
()

А мне один виндузятник долго доказывал, что в ВМП звук лучше, чем где-либо ещё, независимо от акустики... Вероятно, это с улучшайзерами связано? А как такого же добиться в линуксе?

Yareg ★★★
()
Ответ на: комментарий от amorpher

> Вообще советую сходить к ЛОРу и проверить твой диапозон для начала.

Он уже на лоре.

tensai_cirno ★★★★★
()
Ответ на: комментарий от moscwich

> Нормальная у меня акустика

Genius


Нормальная акустика


AHAHA OH WOW MOAR

tensai_cirno ★★★★★
()
Ответ на: комментарий от Waterlaz

Если вы меньшую частоту «передискретизируете» в бóльшую, а бóльшая частота при этом не кратна меньшей, процесс будет, во-первых, необратимым, а во-вторых, будут неизбежно появляться всякие нехорошие искажения.

Eddy_Em ☆☆☆☆☆
()
Ответ на: комментарий от GotF

[qutoe]

Genius

2 083.88

Зря ты это тут написал. Вполне приличные колонки. У меня вообще topDevice 5.1, брал когда-то за полторы тысячи - мне звук нравится, все равно громко я никогда не включаю, а частотных искажений не заметно.

Eddy_Em ☆☆☆☆☆
()
Ответ на: комментарий от Waterlaz

> При правильной передискретизации в большую частоту, исскажений быть практически не должно. В теории их вообще нет (хотя бы потому, что дискретизация в большую частоту - процесс обратимый).

Это если большая частота кратна оригиналу. В ином случае все же небольшие искажения получаются. Но как я говорил, вред от передискретизации может быть, а может отсутствовать.

m0rph ★★★★★
()
Ответ на: комментарий от Eddy_Em

>Если вы меньшую частоту «передискретизируете» в бóльшую, а бóльшая частота при этом не кратна меньшей, процесс будет, во-первых, необратимым, а во-вторых, будут неизбежно появляться всякие нехорошие искажения.

Ну... я вот так скажу. Если в исходном сигнале не было частот больше половины частоты дискретизации, то исходный сигнал всегда можно восстановить. Если так, то передискретизирую на бОльшую частоту мы тоже ничего не потеряем. Это естественно при идеальных механизмах дискретизации.

Waterlaz ★★★★★
()
Ответ на: комментарий от Waterlaz

Если в исходном сигнале не было частот больше половины частоты дискретизации, то исходный сигнал всегда можно восстановить.

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

Eddy_Em ☆☆☆☆☆
()
Ответ на: комментарий от Eddy_Em

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

Кто? Никто так никогда не делает.

Waterlaz ★★★★★
()
Ответ на: комментарий от Waterlaz

Кто? Никто так никогда не делает.

Мы говорили про аппаратную передискретизацию средствами ЗК. А если вы будете делать ее программно, получите, конечно, сигнал получше (правда, частоты выше ~1/8 изначальной частоты дискретизации придется отбросить).

Eddy_Em ☆☆☆☆☆
()
Ответ на: комментарий от Eddy_Em

>Мы говорили про аппаратную передискретизацию средствами ЗК.

Все равно я уверен, что не так делается. Или ты думаешь, что ЦАП тоже на выходе меандр дает?

Waterlaz ★★★★★
()

расталкуй сию проблему разрабам винампа и проси исходников, если не еврейские они ребята то поймут. Тогда будешь конпелять этот свой винамп под линукс

whiiteliites
()
Ответ на: комментарий от Waterlaz

ЦАП на выходе дает ступенчатую функцию трапецеивидной формы. Выходной каскад усилителей и фильтров сглаживает ее. Так что, не думай, что по сигналу с выхода ЦАП можно однозначно восстановить исходный сигнал :)

Eddy_Em ☆☆☆☆☆
()
Ответ на: комментарий от Eddy_Em

>ЦАП на выходе дает ступенчатую функцию трапецеивидной формы. Выходной каскад усилителей и фильтров сглаживает ее. Так что, не думай, что по сигналу с выхода ЦАП можно однозначно восстановить исходный сигнал :)

Перед этим как минимум делается оверсамплинг. Так, как ты описал - это мб 20 лет назад самые дешевые делали.

Waterlaz ★★★★★
()
Ответ на: комментарий от Waterlaz

Но даже если без оверсамплинга, то в результате произойдет всего лишь 2 вещи.

1) Появятся лишние частоты больше половины частоты дискретизации.

2) Завалятся высокие частоты исходного сигнала.

Теоретически все можно идеально исправить фильтрами. Практически чуть хуже есессно.

Waterlaz ★★★★★
()
Ответ на: комментарий от Waterlaz

Так, как ты описал, возможно, делают качественные звуковые карты, но счастливых владельцев такого железа на ЛОРе вряд ли больше 5 человек найдется :)

Eddy_Em ☆☆☆☆☆
()
Ответ на: комментарий от Waterlaz

не, там всё гораздо хуже, добавляются помехи из-за переходных процессов. хотя хороший ЦАП даёт сигнал, близкий к меандру.

aiqu6Ait ★★★★
()
Ответ на: комментарий от Eddy_Em

Черт, моей уверенности конечно поубавилось, но теперь я почти уверен, что даже самые дешевые ЦАП в звуковухах делают оверсамплинг. Тем более, что это очень дешевая операция(если в кратное число раз) и легко реализуется аппаратно.

Waterlaz ★★★★★
()
Ответ на: комментарий от Waterlaz

В «стандартных» звуковушках всего один ЦАП, через него поочередно гоняются оба канала (или все 8, если звук «как бы 8.1»). Проверить «качество» таких звуковушек легко: генерируем предопределенный сигнал, припаиваем к выходу ЦАП проводок, к нему и выходам ЗК подключаем осциллограф и смотрим, что получается на выходе. А получается там жесть!

Eddy_Em ☆☆☆☆☆
()
Ответ на: комментарий от Waterlaz

Да, проверял несколько ЗК, но для других целей (хотел использовать их в качестве быстрых АЦП/ЦАП). Оказалось, что из доступных мне карточек до ~1000р. (более дорогие я не проверял) ни одна для этих целей не подходит: у всех внутри ЦАП стояла гальваническая развязка, линейная область у всех была ужасно маленькой... В общем, только звук генерировать для наших непривередливых ушей они и годятся.

Eddy_Em ☆☆☆☆☆
()
Ответ на: комментарий от Eddy_Em

Такс... что ты понимаешь под «предопределенный сигнал»? Я надеюсь в нем все в пределах разумных частот?

Я тут пустил синусоиду 10кГц на выход и на осцилографе получил симпатичную ровненькую синусоиду. Осцилограф у меня хреновенький, но все же.

Пруфпики будут позже =)

Waterlaz ★★★★★
()

А тем временем, Winamp для Linux уже есть

Точнее, для Android. А Android - это такой Linux, как мы знаем.
А я откопал apk файл.
И вот еще, что нашел:

Linux.
Edit the ~/.bash_profile or ~/.bashrc files looking for a line that sets the PATH variable.
Add the full path location to your $ANDROID_SDK_PATH/tools location for the PATH variable.
If no PATH line exists you can add the line by typing the following:
Export PATH=${PATH}:<path to your $ANDROID_SDK_PATH /tools>

http://www.androidkit.com/steps-to-install-and-uninstall-apk-file-on-android-g1-device

Растолкуйте, пожалуйста (никаких карманных устройств, на которых может работать Linux я никогда не имел и иностранных языков толком не знаю).

moscwich
() автор топика
Ответ на: комментарий от Eddy_Em

>Поиграйся с амплитудой - там самое интересное и начнется...

Хм... поясни отчего и при каких амплитудах? Как мне кажется, может начаться лажа при очень низких (будет играть роль цифровой шум). Или при высоких, но там уже клиппинг. Первое и второе вплоне нормально...

Waterlaz ★★★★★
()
Ответ на: А тем временем, Winamp для Linux уже есть от moscwich

> никаких карманных устройств, на которых может работать Linux я никогда не имел и иностранных языков толком не знаю

Что ты такой беспомощный?
Берешь translate.google.com и переводишь.

А вообще, в биореактор тебе надо.

anonymous
()
Ответ на: комментарий от Waterlaz

Ну и очевидно, что большие частоты меандра я не смотрел. Смысла нет, понятно, что меандр не получу, отфильтруется.

Waterlaz ★★★★★
()
Вы не можете добавлять комментарии в эту тему. Тема перемещена в архив.