Состоялся выпуск экспериментальной ветки открытой реализации WinAPI - Wine 6.11. С момента выпуска версии 6.10 было закрыто 33 отчёта об ошибках и внесено 290 изменений...Подробнее: https://www.opennet.me/opennews/art.shtml?num=55352
С мп3 у меня постоянно какие-то проблемы в вайне: то заикается, то трещит, то не работает вовсе, то спамит всевозможными ошибками в лог (мол, файл не нравится).
Попробуй другую версию libmpg123
> Попробуй другую версию libmpg123Эта же самая версия mpg123 используется audacious и сама по себе, дело точно в ней?
Расскажу что ли про свой опыт использования libmpg123 под Wine.Поддержка появилась где-то в версии ~1.1.30. Моя системная версия libmpg123 1.4.3 не подошла - слишком старая (у меня был CentOS 5). Я обновил до версии 1.9. Скомпилировалось.
Вот только звук не воспроизводится. Морровинд сыпет ошибками по 10 штук в секунду, из-за чего FPS сильно проседает. Ошибка мне указывает, что libmpg123 собран неправильно. Погуглил ошибку. Оказалось что надо компилировать libmpg123 компилятором GCC 4.2 или более новым. А у меня GCC 4.1. Пересобрал новым компилятором. И да, теперь работает.
Спустя 10 лет новая проблема. Я обновил Wine 2.21 до 3.10, и во время make install (!) ругается на libmpg123. Насколько я понял, нужно обновить версию 1.9 до более новой.
Надоели, блин, ломать совместимость. 10 лет работало же.
Что поделать, обновил. Попробуй и ты обновить библиотеку.
Не, у меня и так самая свежая (прошлой недели), проблему наблюдаю именно в вайне уже много лет и только с mp3.
Хотя, кажется я её ещё не проверял за эту неделю. Если исправилось, отпишусь тут.
Попробуй экспортировать переменную PULSE_LATENCY_MSEC при запуске приложения под Wine. Например тут: https://www.opennet.me/openforum/vsluhforumID3/118455.html#18 советуют значение 100. А у меня Crossover пытается выставить 10. Не знаю, что это и зачем - у меня не используется PulseAudio.
У меня нет пульсы. Когда я пытался перебороть треск фаудио, я переключал и пробовал с ней, но разницы какой-либо не заметил (кроме того что пульса намертво зависла на 3 запуск). Однако, пульса сама по себе убирала треск при старте воспроизведения эффектов в одной из флешек на джава, это я могу подтвердить. Тут же просто какой-то жёский рассинхрон при воспроизведении, и я не могу понять, почему одни файлы нормально воспроизводятся, а другие нет.
Тут явно надо зарепортить баг.
Не уверен, как это сформулировать. С wav файлами тоже проблемы бывают, особенно с 24 битными. Исправляю конвертацией в ogg (который тоже поддерживается). Эта проблема совершенно одинаковая с wma и mp3, при этом, часть mp3 воспроизводится нормально почему-то.Набросал вот этот однострочник, все файлы им конвертирую. Работает. С wmv который не поддерживается в mf ничего не сделать, и установка либ не помогает.
for i in *.mp3; do ffmpeg -hide_banner -y -i "${i}" -c:a libvorbis -b:a "$(mediainfo "${i}" --Output='Audio;%BitRate%/1000'|bc)k" -ac 2 -vn -bitexact "fixed/${i%.*}.ogg" && rm -v -- "${i}";done;mv -- fixed/* ./
Józef Kucia умер, утонул в пещере несколько лет назад. Спилиология была его хобби.
Печалька.( Надеюсь остальные марки собирают.(
Филателисты - страшные люди. Некоторые за кусочек раскрашенной бумажки без размышлений ухлопают.
>Оказалось что надо компилировать libmpg123 компилятором GCC 4.2 или более новым. А у меня GCC 4.1
>Спустя 10 лет новая проблема.Даже в 2011-м было пользьваться GCC 4.1 и 4.2, ну такое себе...
Тут ключевой момент, что CentOS 5, линукс с долговременной поддержкой. Поэтому и GCC 4.1. Чуть позже я узнал про интересный репозиторий devtoolset, в котором доступен более новый GCC. Жаль, что я узнал это только тогда, когда поддержка CentOS 5 уже почти закончилась
когда уже протон из aur в community затащат? надодает компилять каждый раз
В Steam есть уже скомпилированный в Steam. Зачем из AUR собирать?
Игорей из EGS запускать.
В lutris тоже есть скомпилированный
Мне другое интересно. А будет когда-нибудь в вайне замена компонентам винды типа directx, net framework и еще ряду других. Ведь соглашение на некоторые из них запрещает ставить вне винды. Или без наличия лицензии на винду. Выходит, с точки зрения законодательства, ставя их например в коммерческой организации, рискуешь нарваться.
Совсем без замен и чтобы по закону это Божественную Винду надо устанавливать. Как вариант можно через Протон от Стим пытаться запустить предварительно купив игры с которыми подтянется необходимое.
>Совсем без замен и чтобы по закону это Божественную Винду надо устанавливать.Вообще с 10,11 версией по лицензии и переносу многое легче сделать.Компоненты и вызовы 10-11 directx (частично ) входят легально в opengl 4.1-4.2 если вы не знали.С 12 версией более интересно-но опять же некоторые компоненты официально открыты ,например заголовочные файлы,язык DirectX Shader Compiler.
В составе Wine предоставляются реализации DirectX и .NET с открытым исходным кодом.
Не всегда корректно работает и производительность хромает. Дарк Соулс 3 решил погамать к примеру и работает на 6 Вино в принципе, а вот без Вулкана производительность плохая. Виндочку поставил и радуюсь, а то пару раз топриком взмахнул и кил виносервер делай.
Уже есть для каждого из перечисленных здесь компонентов.
Когда я впервые начал пользоваться Wine, был 2006 год, и в директории system32 было совсем мало библиотек. Я даже не помню, были ли там вообще библиотеки DirectX - видел только ddraw.dll.Однако, спустя несколько лет, в директории system32 стали появляться файлы Direct3D. Причём много. В формате d3dx9_xx.dll.
Когда эти библиотеки появились, поддержка Direct3D 9 была в начальной стадии. Чтобы реально поиграть в игры, использующие DirectX 9.0c, надо было устанавливать закрытые версии библиотек. Например по этой инструкции, появившейся в ноябре 2007 года: https://www.opennet.me/opennews/art.shtml?num=12887 Или по этой, от марта 2008: https://www.opennet.me/opennews/art.shtml?num=14910 Более новая инструкция содержит изменения по сравнению с изначальной (кстати, посмотрите комментарии №4 в новости по ссылке, и в этой новости). А потом появился скрипт winetricks, который позволяет установить DirectX, ничего не делая вручную.
В 2009 году я зарепортил баг. Почему-то в игре Oblivion кожа персонажа становилась чёрной. Причём только в меню инвентаря. При этом, если использовать проприетарный d3dx9_27.dll, кожа имеет нормальный цвет. Все мне начали писать "а что, неужели игра работает БЕЗ проприетарной библиотеки?". И действительно: ранее, в 2007 году, игру вообще нельзя было запустить без проприетарной библиотеки. Однако же, за год, состояние библиотек Direct3D 9.0c улучшили очень сильно. За это стоит благодарить Henri Verbeet и Józef Kucia.
Насколько я знаю, эти ребята пришли в проект Wine в рамках проекта Google Summer of code, призванной привлечь молодых ребят, студентов, к написанию ПО с открытым кодом.
В течение нескольких последующих лет они "допилили" поддержку Direct3D 9.0c до такого состояния, что никакой проприетарный DirectX стал и не нужен вовсе. Серьёзно, году эдак в 2014 Direct3D 9 был настолько идеален, что прям офигеть.
Другая ситуация была с Direct3D 10. Это был долгострой, за которой никто не брался. Вышеобозначенные ребята занимались улучшением поддержки и Direct3D 10 тоже. Но процесс шёл несравнимо меньше, чем процесс улучшения Direct3D 9.
Ссылки по теме:
https://www.winehq.org/news/412 - список изменений нескольких версий, выпущенных в 2008 году. Direct3D упоминается почти в каждой версии. Именно между версиями 1.0 и 1.2 Direct3D 9 очень сильно улучшали. Много игр (не только Oblivion) у меня заработали с открытыми библиотеками в Wine 1.2.
https://www.opennet.me/opennews/art.shtml?num=14937
https://www.opennet.me/opennews/art.shtml?num=20686
https://www.winehq.org/pipermail/wine-devel/2009-October/079...Также, мне кажется, я когда-то читал в World Wine News Issue интервью с Henri Verbeet про состояние Direct3D в Wine.
Потом появился Vulkan. Józef Kucia создал враппер, позволяющий запустить Direct3D 12 через Vulkan. Враппер получил название vkd3d. Он работал очень хорошо. Тогда как реализация Direct3D 10 и 11 "буксовала" из-за сложности трансляции Direct3D в OpenGL. Зато Direct3D 12 через Vulkan работал хорошо.
Мне кажется, что Direct3D 9 через OpenGL требовал долгой (5 лет) и ТЯЖЁЛОЙ разработки. Поэтому он работает так хорошо. А реализация Direct3D 10 и 11 требовала не меньше работы, а люди уже вымотаны. Вот поэтому этого не произошло.
Зато через Vulkan всё было проще. Появился проект DXVK, позволяющий запустить Direct3D 10 и 11 через Vulkan, и это работало хорошо.
Настолько хорошо, что даже Valve заинтересовалась проектом, и сделала Proton.
Вообще до сих под quartz.dll не реализовали, а это значит, проблемы с mpeg (и mp3 и mp2) с тех пор венда перекатилась на mf (который тоже не поддерживается вайном). Поддержка медиафайлов никуда не годится, во многих приложениях она поломана (скажем, в игре не будет половины эффектов анимаций или звуковых эффектов).
Вот коммит, удаляющий поддержку mp3 из quartz: https://source.winehq.org/git/wine.git/commitdiff/db71d7c083...Судя по именам файлов, это был код, взятый из libmpg123
Так что правильно сделали, что стали использовать внешнюю зависимость вместо копирования кода из другого GPL-ного проекта.
WMA/WMV тоже не поддерживаются нормально. Мне приходится половине игр включать вендовый quartz.dll и половине игр включать встроенный, и всё равно есть проблемы и там и там.
> WMA/WMV тоже не поддерживаются нормально. Мне приходится половине игр включать вендовый
> quartz.dll и половине игр включать встроенный, и всё равно есть проблемы
> и там и там.Для виндового WMA используется библиотека FAudio, которая зависит от ffmpeg-4.0. Подробностей не знаю.
И оно не работает. Вот прямо сейчас у меня нет озвучки в Shenmue (диалоги там 48kbps wma).
Да, вот только компилятор шейдеров так и остался на том уровне и не поддерживает вложенные функции. Собственно, потому чёрный цвет кожи и был. Разработчик так и не решился переписать это.
> Да, вот только компилятор шейдеров так и остался на том уровне и
> не поддерживает вложенные функции. Собственно, потому чёрный цвет кожи и был.
> Разработчик так и не решился переписать это.Что интересно, вся остальная игра нормально работает! Вот прям вообще вся.
Баг, кстати, вроде до сих пор не исправлен. Если играть с виндовой d3dx9_27, то всё норм. А если с опенсорсной реализацией этой библиотеки (не устанавливая DirectX от Microsoft), то баг есть. При этом, когда заходишь в инвентарь, в логе wine появляется сообщение:
fixme:d3dx:D3DXGetImageInfoFromFileInMemory stub
И сразу после этого баг. А с проприетарным Direct3D такого сообщения не появляется, и бага нет.
Не читал, но осуждаю
>Тогда как реализация Direct3D 10 и 11 "буксовала" из-за сложности трансляции Direct3D в OpenGl.Вот кстати это очень интересно -почему буксовала.Если народ не знает- часть API 10 -11 версии официально входит в OpenGl 4.1-4.2 ,в чем сложность была оттранслировать непонятно.
А вот про .NET под Wine я тебе так подробно не расскажу. Почитай лучше вот: http://wiki.linuxformat.ru/wiki/LXF89:%D0%A1%...Если что, по умолчанию в Wine используется Mono в качестве реализации dotnet. Хотя можно установить проприетарный от Майкрософта.
Все верно!если дома использовать вайн - до лампочки.
если на работе использовать вайн - внимательно читай лицензию на каждый компонент.
Надеюсь сейчас после сворачивания Starcraft Remastered будут работать клавиши
Так они скоро ее и допилят.
Очередная версия главного могильщика игр для Linux. Криворуким разрабам-лентяям и с Unity и подобными проще, не собирать же им билд ещё под какой-то там Linux, и так купят и поиграют.
Ну какой ещё могильщик, кликуша ты этакая…Fallout'ы: 1, 2, Tactics, of Nevada, Sonora
Arcanum
HoTA
MM VI, VII, VIII
WA
Wizardry VIII
КД:РЧто из этого «вышло бы под Линукс, если б не Вайн»?
А «новьё» нынче, либо нативную версию имеет, либо слова доброго не стоит. Исключения крайне редки, при этом не думаю, что наличие/отсутствие Wine-а как-то влияет на мнение разработчиков этих самых исключений.
> «новьё» нынче, либо нативную версию имеет, либо слова доброго не стоитА виноград либо достать легко, либо зелен слишком.
>А виноград либо достать легко, либо зелен слишком.Экая ты жертва маркетологов…
Да нет, я просто не упоротый фанат, который из принципа в индюшачье г… играть будет, лишь бы там поддержка линюкса была, а мимо хитов брезгливо пройдёт, потому что там её нет. Я игры по качеству оцениваю, а не по поддержке маргинальной платформы, а одно от другого внезапно не зависит совсем (вообще даже несколько зависит, но не в ту сторону, что вам хотелось бы — очередного пиксельного уродца гораздо легче собрать под кучу платформ, чем навороченный проект).
>который из принципа в индюшачье г… играть будет
>очередного пиксельного уродцаТы именно «упоротый фанат».
>мимо хитов брезгливо пройдёт
Мимо того, что персонально ты считаешь хитами — пройду мимо, причём именно «брезгливо».
Для чего поддержка Цивы, когда Aspyr всегда делает native версии?
Чтобы все баги были исправлены, возможно проблемы Цивы встречались и в лругих играх, но не были зарепорчены. Wine не делает каких то патчей строго для определённого приложения.
Что делают это хорошо, но проблема в том, что в аспире работают рукожопы, так что пусть уж будет, чтобы не отъехало после какого-нитб патча.
Ну все, пошли пираты виндовые программы ставить. Так какой смысл в опенсоурсности, если ставить программы с закрытым исходным кодом, да еще и виндовские, да еще многие и крякнутые? Где логика?
"Линуксоиды" уверены, что если они ставят такие программы не в Windows, то все нормально..
Wine незаменим для запуска Windows-игр и приложений, которым нет нативной замены для GNU/Linux.
Но ведь вы же орете, что вы "элита", а тут до двойных стандартов опускаетесь. Нет замены? Напишите свое и пользуйтесь..
> Но ведь вы же орете, что вы "элита", а тут до двойных
> стандартов опускаетесь. Нет замены? Напишите свое и пользуйтесь..Никто ничего не орёт. У тебя неправильное представление о том, как обстоят дела на самом деле. В мире, конечно, есть место холивару, вот только мир не чёрно-белый. Возможно, ты мыслишь стереотипами, анекдотами про Linux времён фидонета. А в анекдотах, как известно, всё утрировано.
Вроде сам РМС в своё время выразился на тему, что лучше закрытая игра в открытой системе, чем закрытая игра в закрытой же системе.
А кто сказал что нельзя лицензию под Вайном запускать?
О, Trainz 19-й завезли.
Если на линукс есть все приложения, зачем нужен вайн? Если нужны виндовые приложения, то зачем линукс?
Всё из-за нескучных обоев...
а если на винде нет нужных приложений?
Ну я, например, Вайн по приколу сначала ставил. Потом еще пару-тройку игрушек в нем запускал и один midi плеер. А вообще, он у меня почти все время без дела лежит. При том, он у меня еще и 1.8.7.
Кстати, например Diablo 2 намного проще в Вайне запустить чем в современной винде.
>Если на линукс есть все приложения, зачем нужен вайн? Если нужны виндовые приложения, то зачем линукс?Если на твоей любимой Винде есть все приложения, то зачем там WSL? DosBox? Эмуляторы приставок?
это другое!