LINUX.ORG.RU

Обсуждение DeaDBeeF

 ,


5

12

Доступны исходники deadbeef 0.7.0 beta1

скачать: https://sourceforge.net/projects/deadbeef/files/deadbeef-0.7.0-beta1.tar.bz2/...

ChangeLog есть внутри, а также в репозитории на github: https://github.com/Alexey-Yakovenko/deadbeef/blob/0.7/ChangeLog

В ближайшее время будет beta2, постараюсь успеть сделать к нему бинарные сборки.

2mods: Новую тему пришлось создать, т.к. старая почему-то уползла в архив. Возможно ли как-то предотвратить это в будущем?

★★★★★

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

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

Как продвижения с «поиском»?

  • added grouping to search window (Ian Nartowicz)
  • gtkui: added selection focus, such that the found tracks will be focused while using the search window
  • search window title will show the number of search results
waker ★★★★★
() автор топика
Последнее исправление: waker (всего исправлений: 1)

Недавно увидел один тикет. В связи с этим вопрос, если плагин будет переписан, скробблинг по старому протоколу всё ещё будет доступен?

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

Недавно увидел один тикет. В связи с этим вопрос, если плагин будет переписан, скробблинг по старому протоколу всё ещё будет доступен?

да, думаю, существующий плагин будет просто переименован в lastfm-legacy, и продолжит работать, но не будет особо исправляться/развиваться.

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

Но окно поиска надо по-прежнему открывать...

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

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

Ах, да. В том плагине баг есть. ЕМНИП, ID сессии должен быть длиной строго 32 символа, хотя в спецификации об этом ничего не говорится.

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

а сейчас сколько символов?

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

Теперь точно вспомнил, при рукопожатии, если я отдаю ID сессии длиной менее 32 символа, deadbeef захватывает следующие строки и расценивает их как часть идентификатора. Как-то так вроде.

http://www.last.fm/api/submissions#handshake

Смотреть 1.4 Handshake Response

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

Да мы уже в позапрошлом году «хорошо» обсудили «некий» вопрос - DeaDBeeF поиск

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

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

Теперь точно вспомнил, при рукопожатии, если я отдаю ID сессии длиной менее 32 символа, deadbeef захватывает следующие строки и расценивает их как часть идентификатора. Как-то так вроде.

исправлено в master. если не найду проблем с last.fm — включу в 0.7.

https://github.com/Alexey-Yakovenko/deadbeef/commit/897a8dceac9e55de1c705ba06...

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

Гдэ билды в оверлее генты?))

вопрос не по адресу

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

Какой не каноничный юзернейм. Я по глупости подобный взял, а теперь ренеймиться поздно. Беспокоит что даже кушать не могу.

в чем проблема ренеймиться? и в чем проблема с юзернеймом?

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

Теперь получается, что deadbeef просто перестанет посылать запросы, если SESSID окажется длиной отличной от 32 символов, верно? Откуда вообще взялись эти 32 символа? То, что сервер last.fm отдаёт идентификаторы такой длины, ещё не означает, что другие обязательно отдадут такой же. В спеке вроде написано же — одна строка одно значение.

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

Ну как. Если берут юзернейм с основной на реальном имени то это обычно первая буква имени + фамилия в lowercase. Во многих компаниях где мне довелось поработать даже регламент такой есть. И по гитхабу он прослеживается. Уж точно без всяких тире, точек и прочего.

А ренейм - не смотря на наличие редиректа со старого имени на новое - вся эта фигня напрягает и путает народ. К тому же если кто возьмет твое старое имя - редирект накроется.

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

я чето тебя не понимаю. сначала ты сказал

ID сессии должен быть длиной строго 32 символа

я воткнул это ограничение, т.к. оно мне показалось разумным (session id есть md5). откуда оно взялось - уже не вспомнить.

потом ты написал вот это:

если я отдаю ID сессии длиной менее 32 символа, deadbeef захватывает следующие строки и расценивает их как часть идентификатора.

тут вообще не очень понятно, как это получается. ты делаешь программу, которая специально ломает протокол?

Теперь получается, что deadbeef просто перестанет посылать запросы, если SESSID окажется длиной отличной от 32 символов, верно?

верно, и мне показалось что ты именно этого и хотел (см. 1е цитирование)

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

И это значит, что если многие так делают, то это следует делать всем? Бред какой-то. Я вот например не хочу своё реальное имя использовать и взял себе псевдоним, что мне теперь, переименовываться? Зачем?

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

Ну как. Если берут юзернейм с основной на реальном имени то это обычно первая буква имени + фамилия в lowercase. Во многих компаниях где мне довелось поработать даже регламент такой есть. И по гитхабу он прослеживается. Уж точно без всяких тире, точек и прочего.

мне гитхаб такой username сам сгенерил, так что хз какой-такой регламент и т.п.

менять никакого желания пока не возникало.

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

верно, и мне показалось что ты именно этого и хотел (см. 1е цитирование)

Ты не дочитал.

хотя в спецификации об этом ничего не говорится.

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

Псевдоним ок, я бы тоже его взял если бы имел нормальный. А так я говорю про юзернейм на основе реального имени. Их обычно не так составляют.

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

python3 scrobbler.py

И смотришь, что оно тебе пишет. Вот я сейчас на 0.6 потестил и вот что получилось:

PATH_INFO: /
QUERY_STRING: hs=true&p=1.2.1&c=ddb&v=1.0&u=kilte&t=1451685305&a=***
BODY: b''
REP: b'OK\n1451685305.211571\nhttp://127.0.0.1:8000/nowplay\nhttp://127.0.0.1:8000/submissions'
127.0.0.1 - - [02/Jan/2016 00:55:05] "GET /?hs=true&p=1.2.1&c=ddb&v=1.0&u=kilte&t=1451685305&a=*** HTTP/1.1" 200 84

PATH_INFO: /nowplay
QUERY_STRING: 
BODY: b'a=Misery+Index&t=Conjuring+The+Cull&b=The+Killing+Gods&n=04&m=&l=285&s=1451685305.211571\nhttp://127.0.0&'
REP: b'OK'
127.0.0.1 - - [02/Jan/2016 00:55:05] "POST /nowplay HTTP/1.1" 200 2

a=*** — это я замаскировал, а то мало ли. Пароль от реального аккаунта используется.

Во втором ответе можно наблюдать вот это:

s=1451685305.211571\nhttp://127.0.0

что таки подтверждает баг.

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

ок, я тебя понял «наоборот». думал, тебе надо чтобы session-id отличные от md5 были запрещены.

p.s. за скрипт спасибо, но мне не нужно.

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

что таки подтверждает баг.

да, я теперь понял что тебе надо — sess id короче 32 символов.

исправлю чуть позже.

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

Собрал из master, всё равно какая-то хрень творится. Если идентификатор короткий, то всё ок. Попробовал добавить +50 символов, ничего кроме рукопожатия не происходит.

да, я теперь понял что тебе надо — sess id короче 32 символов.

Нет. Забудь про 32 символа и сколько бы ни было ещё. Нет в спецификации такого. Там есть такое:

1.4 Handshake Response
The body of the server response consists of a series of \n (ASCII 10) terminated lines.

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

потому что перебивать год копирайта некогда :D

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

Что я могу сказать? Остаётся только надеяться, что 100 байт хватит всем.

А нельзя полность прочитать ответ и разбить его на список строк?

Вот размер ответа пожалуй стоит ограничить.

Исходя из этого, на одну урлу максимум может уйти 2000 байт. У нас две урлы в случае успешного рукопожатия, итого 4000 на вторую часть ответа. Я конечно не думаю, что кто-то всерьёз станет использовать такие длинные ссылки, но надо же на чём-то основываться.

Первая часть — 3 байта + длина идентификатора сессии. В случае неудачного ответа, когда мы отдаём FAILED <reason>, длина <reason> может быть любой. 4000 байт, которые мы отвели на ссылки, должны покрыть это. Итого 4003 + длина идентификатора сессии. Ну пофиг, пусть будет 4096, т.е. 4 кбайт максимальная длина ответа. Тут уж я думаю, что уложатся все.

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

А нельзя полность прочитать ответ и разбить его на список строк?

оно так и делается. строки в списке могут быть ограничены по размеру, например sess_id 32 байта.

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

сделал ограничение в 100 байт на sess id.

waker ★★★★★
() автор топика

плагин paste timecode

Господа, разрешите вопрос, точнее просьбу. Нужен простенький функционал, не найденный ни в настройках, ни в плагинах. Функция, которая помещает в клипборд время от начала проигрываемого файла (например 0:07:58) и делает Ctrl+V. Чтобы можно было повесить эту функцию на глобальный хоткей и использовать в расшифровке для вставки таймкода в текст. А еще лучше чтобы буфер обмена не трогало. И настраивалось - типа ЧЧ:ММ:СС или МММ:СС, но это уже, возможно, и не нужно, и это сделаю сам макросом в LO, если таймкод будет обрамлен чем-то вроде {{ }}

Единственное, что нашел http://aghl.ru/forum/viewtopic.php?f=4&t=117 но в программировании я полный ноль.

Не нашел подходящей темы, не пинайте сильно, будьте добры, сами мы не местные..

anonymous
()

artwork: added cache cleaner

Джва года ждал. Спасибо!

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

Спасибо за оперативность, но....

Пуск -> Настройки -> Клавиатура, вкладка Комбинации клавиш — сюда, правильно? Не заработало.

Скачал установил deb (до этого был портейбл), при нажатии хоткея выскакивает ошибка «Не удалось выполнить процесс-потомок „deadbeef“ (Нет такого файла или каталога)»

Нашел, где куда установлен плеер, заменил в начале строки deadbeef на /opt/deadbeef/bin/deadbeef. Теперь при нажатии хоткея активируется окно deadbeef с новой пустой вкладкой плейлиста «Default», воспроизведение останавливается.

Пичаль-бида...

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

То же самое можно настроить в самом deadbeef, через edit -> configure custom shell commands. Каждое созданное таким образом действие регистрируется как plugin action, и его можно вешать на global hotkeys в самом плеере, или вызывать через различные меню.

http://imgur.com/JisPElx

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

И настраивалось - типа ЧЧ:ММ:СС или МММ:СС, но это уже, возможно, и не нужно, и это сделаю сам макросом в LO, если таймкод будет обрамлен чем-то вроде {{ }}

таймкод %e всегда в формате [HH:]MM:SS.

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

А у вас работает?

Повесил на F8 - ноль эмоций. Вот на F4 висит Play/Pause, все ОК. Чтобы проверить, не занята ли где F8, поменял местами кнопки - F8 пауза работает, F4 таймкод не работает.

Ладно, не буду больше оффтопить, завтра еще где-нибудь поспрашиваю, если тут никто не решит. А если решит — с меня бесплатная расшифровка. Но спасибо, что не послали сразу RTFM, как это бывало обычно со мной на forum.ubuntu.ru.

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

А у вас работает?

да, я проверил перед тем как скриншот постить. может у вас не установлен xclip?

edit: еще надо учитывать что xclip может в разные буфера обмена. один который на средней кнопке мыши, другой ctrl+c/ctrl+v. из-за этого тоже может «не работать».

waker ★★★★★
() автор топика
Последнее исправление: waker (всего исправлений: 1)
Вы не можете добавлять комментарии в эту тему. Тема перемещена в архив.