LINUX.ORG.RU

Релиз MPD 0.18

 


0

1

31 октября состоялся релиз Music Player Daemon 0.18. Команда выполнила большой объем работы, переписав весь код проекта на C++11, облегчив тем самым дальнейшее развитие и поддержку проекта. Кроме этого заявлены следующие изменения:

  • добавлен кодек Opus;
  • устранено «подвисание» MPD в момент ожидания медиапотока;
  • добавлена новая опция tags, управляющая отображением тэгов текущей комопзиции;
  • удалены устаревшие и нерабочие плагины (ffado, soup, mp4ff);
  • возвращена команда volume;
  • команды find и search теперь могут работать с подкаталогами указанной базовой директории;
  • внесены различные исправления, направленные на корректность поддержки различных форматов воспроизведения.

Полный список изменений (в Git-репозитории проекта)

>>> Подробности

★★★★★

Проверено: mono ()
Последнее исправление: Wizard_ (всего исправлений: 4)

годно, сам иногда пользуюсь им.

переписав весь код проекта на C++11

а был проект на чистом Си? Если да, то лучше бы и оставался на Си.

reprimand ★★★★★
()

Лучше бы сонату допилили и на Qt переписали. А то уже есть xmms2, вроде бы и клевый, а управлять толком нечем.

h31 ★★★★
()
Последнее исправление: h31 (всего исправлений: 1)
Ответ на: комментарий от Gotf

Нет, это еретическая версия, которая переписана на gtk3. Новых фич я там не видел.

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

В cue оно так и не научилось? Ненужно.

Начиная с 0.17 умеет.

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

судя по всему, дело в этом: http://pastebin.com/Un6nVFzU (мпд не всегда возвращает результат для команды currentsong)

или то же самое можно сделать как-то более правильно? (в пасте команда, которой тот виджет получает инфо о трэке)

UPD: убрал close, теперь, вроде, стало нормально

actionless ★★★★★
()
Последнее исправление: actionless (всего исправлений: 1)
Ответ на: комментарий от madcore

тут некоторое время, примерно месяц назад, висела тема о том, «какое же ... ваш С++».
а еще была тема с высказыванием Линуса о том, что хороших программистов с++ крайне мало, и потому программы на нем в бОльшинстве случаев - говнокод.
Можно много чего назвать, но не буду ради упреждения холивара =)

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

Только embedded, внешние, очевидно, не нужны.

Любые умеет. Тут зависит только от того, реализовали ли это клиенты. gmpc умеет, sonata - нет.

aidan ★★★★
()
Последнее исправление: aidan (всего исправлений: 1)
Ответ на: комментарий от nerdogeek

Этим вопросом уже не первый год задаются специалисты по тулкитофобии.

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

Какая мне, обычному пользователю, должна быть разница?

Никакой. А что, в новостях уже запрещено писать о внутренних изменениях в самой программе которые не интересны лично тебе?

aidan ★★★★
()
Последнее исправление: aidan (всего исправлений: 1)

Команда выполнила большой объем работы, переписав весь код проекта на C++11

*facepalm*

cruxish ★★★★
()
Ответ на: Алярм! от aidan

С версии 0.18 sonata больше не работает.

Я не пойму, разработчики совсем упоролись?..

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

Я не пойму, разработчики совсем упоролись?..

Разработчики чего? Сонаты? Дык они уж 4 года как её перестали писать.
// Будь ласка, прочитай всю тему.

aidan ★★★★
()

переписав весь код проекта на C++

Молодцы. За одно качественно потроллили лоровскую школоту и её друга анонимуса (%

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

Тебе разница в том, что новых фич будет больше. Потому что код отрефактирили, и разработка теперь будет проще и быстрее.

vurdalak ★★★★★
()

есть причины юзать сабж вместо xmms2?

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

Хороших программистов на Си еще меньше и почти весь код на Си является лапшеобразоным говнокодом.

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

у тебя такая же статистика «хороших программистов» как и у меня - ничем не закрепленная и неподтвержденная.

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

Достаточно глянуть код основных системных компонентов линукса, который пишется элитой сишников, чтобы убедиться, что я прав. Посмотри, например, код systemd и glibc.

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

gmpc умеет

Не умеет. Если ты про проигрывание flac/ape/cue, то умеют оба клиента. Если ты про нормальную поддержку тегов — оба не умеют, воспроизводят одним файлом.

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

Не умеет. Если ты про проигрывание flac/ape/cue, то умеют оба клиента. Если ты про нормальную поддержку тегов — оба не умеют, воспроизводят одним файлом.

Как именно должна выглядеть нормальная поддержка тегов?

Только что ткнул в cue-файл -> в плейлисте он появился как несколько треков (со всеми тегами): http://i.imgur.com/vrc9U1H.png.

update:

Прогнал, это была cantata :) Но в gmpc добавление cue-файла тоже работает: http://i.imgur.com/THX9viM.png

aidan ★★★★
()
Последнее исправление: aidan (всего исправлений: 2)
Ответ на: комментарий от nerdogeek

переписав весь код проекта на C++11

Какая мне, обычному пользователю, должна быть разница?

Тебя вообще никто не спрашивает ибо ты - никто по отношению к проекту. Мы opensource-софт для себя делаем и с этим кодом нам дальше разбираться. Хочешь какое-то право голоса - вложи свой труд в проект (прямо или косвенно через финансирование разработки), не хочешь/можешь - завали хлебальник и глотай что перепадает со стола. Ты наивный дурак если думаешь что девелоперы жертвуют своим временем и тратят силы чтобы какому-то бесполезному пользователю было хорошо. Очнись и найди свое место в экосистеме opensource. Мы делаем для пользователей-разработчиков как мы сами, а не для таких быдлопотребителей как ты. OpenSource-проект живет если есть хотя бы 1 активный разработчик. Как видишь от пользователя проку нет. Мне не понятно с чего вообще ты решил что у тебя есть какое-то право голоса по opensource-проектам?

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

Лучше бы сонату допилили и на Qt переписали

Cantata уже есть

IIIypuk ★★★
()
Ответ на: комментарий от Extraterrestrial
ncmpcpp-0.2.5

    support for unix domain sockets
    support for adding to playlist files outside mpd music directory (requires mpd >= 0.14_alpha*)
    support for browsing local directories tree (requires mpd >= 0.14_alpha*)
    support for searching in current playlist
    many bugfixes

итого: при присоединении по unix domain socket mpd умеет так играть ещё c версии 0.14 + нужна поддержка клиентом этой штуки. Версия ncmpcpp выпущена года 4 назад...

Потёк хладагент?

dhampire ★★★
()
Последнее исправление: dhampire (всего исправлений: 1)
Ответ на: комментарий от anonymous

Хочешь какое-то право голоса - вложи свой труд в проект

Ты это говоришь так, будто участие в проекте даёт право голоса. Как показывает практика, решение о переходе на тот же systemd принимает небольшая группа людей. Рядовых сопровождающих и авторов программ, которые попали в дистрибутив, никто и никогда не спрашивает.

anonymous
()

переписав весь код проекта на C++11, облегчив тем самым дальнейшее развитие и поддержку проекта

А кто-нибудь в курсе, какие именно особенности C++11 облегчают поддержку кода mpd?

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

Лучше бы на D переписали. Проку было бы больше.

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

И правда.

Internally, the code base has been rewritten from C99 to C++11, which improves code readability and maintainability.

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

А кто-нибудь в курсе, какие именно особенности C++11 облегчают поддержку кода mpd?

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

Кодили бы на чём другом - переехали бы на это что-то-другое. Кстати что-то апологетов lisp&haskel что-то не видно..ходя тред уже вполне длиннён и рекурсивен :-)

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

Достаточно глянуть код основных системных компонентов линукса, который пишется элитой сишников, чтобы убедиться, что я прав. Посмотри, например, код systemd и glibc.

Ты, видать, посмотрел. И что ты там увидел? Расскажи. Только не надо слов говнокод, лапша и т. д. Приведи конкретные места и конкретные проблемы.

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

код systemd обсуждается в каждой теме про systemd, код glibc плох всем, вот из недавнего обсуждения.

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

Достаточно глянуть код основных системных компонентов линукса, который пишется элитой сишников, чтобы убедиться, что я прав. Посмотри, например, код systemd и glibc.

достаточно узнать lifetime этих самых компонент (кроме systemd). Да, там выявляются баги 10-15 летней давности, но они блин правятся. Баг 5-ти летней давности в софте на с++, скорее был-бы объявлен как fatality - типа требуется очередная смена концепции/платформы. Вообще ++ способствуют «маскирующему размытию» ошибок - а все ошибки сцуко накапливаются по exp.

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

Да, там выявляются баги

Дело не багах. Говнокод может быть и без багов, так как за годы критические места уже обвязаны скотчем и достаточно надежно держатся на костылях.

Вообще ++ способствуют «маскирующему размытию» ошибок - а все ошибки сцуко накапливаются по exp.

Голый си по этим показателям ничем не лучше, а местами даже хуже.

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

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

ну исходя из того что С++ ценится за фреймворки, которые есть «стройная система костылей и подпорок», прогресса нет ;-)

Кстати ООП позволяет еще наследовать,делегировать,расширять и обобщать ошибки.

зы. Любая программа на С++ может быть переписана на С в более компактном и быстром виде. Но переделка затребует слишком существенных накладных расходов. Это аксиома.

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