Скрипты для foo_uie_wsh_panel_mod

Список разделов foobar2000 Секреты foobar2000

Описание: Кнопочки, конфиги, секреты, советы.

Сообщение #2181 kgena_ua » 17.02.2018, 22:38

stalk:er:Как сделать разный текст, как в Вашей сборке
Только недавно убрал по просьбе пользователя. :smile:
Marakobes:возможность реализовать HTML Viewer
Будем смотреть.
Aliado_71:рейтинг - нет
А есть.

Меня сейчас новая биография заботит ...
kgena_ua M
Аватара
Откуда: Украина, Днепр
Репутация: 504
С нами: 11 лет 8 месяцев

Сообщение #2182 stalk:er » 18.02.2018, 11:42

kgena_ua:Только недавно убрал по просьбе пользователя.
а можно вернуть отдельным пунктом настройки цвета - для меня. спасибо ))

Добавлено спустя 26 секунд:
kgena_ua:Меня сейчас новая биография заботит ...
Оу нас ждёт что-то новое? ))
stalk:er M
Аватара
Откуда: Санкт-Петербург
Репутация: 8
С нами: 17 лет 9 месяцев

Сообщение #2183 kgena_ua » 18.02.2018, 20:39

"Biography & Albums & Similar artist info. www.last.fm"
version "18022018"

Добавлен обзор выбранного (проигрываемого) альбома.


- выбор языка - left mouse (или left mouse + Shift) double click на тексте (настройки в меню);
- размер шрифтов - Shif + mouse wheel на тексе или заголовке текста (выбор шрифта и стиля в меню свойства);
- передвижение текста - при нажатой left mouse button;
- спрятать текст - mouse mbtn dblclk на заголовке;
- смена изображения - mouse wheel на изображении;
- установка интервала переключения изображения - Shift + mouse wheel на изображении;
- выбор: артист, ильбомы артиста, похожие исполнители или альбом - left mouse double click на изображении (меню);
- прозрачность фона под текстом - Ctrl + mouse wheel на тексте.

Скрипт не совместим с предыдущими версиями.
Много изменений в меню свойства (Properties).

m.png


kgena_ua M
Аватара
Откуда: Украина, Днепр
Репутация: 504
С нами: 11 лет 8 месяцев

Сообщение #2184 seriousstas » 18.02.2018, 20:51

kgena_ua
С MPS пока глухо ? (по поводу старта при спрятанной панели Biography & Albums & Similar)
Смотрю и текст теперь колбасит :
Спойлер
phpBB [media]
seriousstas
Откуда: Украина , Ивано-Франковск
Репутация: 110
С нами: 9 лет 10 месяцев

Сообщение #2185 kgena_ua » 18.02.2018, 21:11

seriousstas, привет.
seriousstas:по поводу старта при спрятанной панели
Пока не могу придумать, пробую разное.
У меня в сборке справа панель на MPS. Вставил туда био - глюков нет.

Спойлер
phpBB [media]

kgena_ua M
Аватара
Откуда: Украина, Днепр
Репутация: 504
С нами: 11 лет 8 месяцев

Сообщение #2186 stalk:er » 18.02.2018, 21:37

kgena_ua, что там по моему вопросу? ))
stalk:er M
Аватара
Откуда: Санкт-Петербург
Репутация: 8
С нами: 17 лет 9 месяцев

Сообщение #2187 seriousstas » 18.02.2018, 23:22

kgena_ua
Привет!
глюков нет.
да так и у меня нет :smile:
Нужно :
1 - Закрыть панель (отккрыв любую другую , например properties & properties file (ml) )

2 - Закрыть плеер (сборку полностью)

3 - Открыть сборку (запустив foobar2000.exe) и выбрать панель Биографии

3.1 Глюки )
seriousstas
Откуда: Украина , Ивано-Франковск
Репутация: 110
С нами: 9 лет 10 месяцев

Сообщение #2188 MC Web » 19.02.2018, 00:58

kgena_ua, спасибо за скрипт!

Локализованный, немного модифицированный для темы DarkOne и добавлена Справка по сочетанию клавиш:

"Biography & Albums & Similar artist info. www.last.fm mod Rus"
version "18022018"


Изображение

WSH Biography, Albums, Similar Artist Info Last.fm_mod_Rus (18.02.2018).zip
MC Web
Репутация: 248
С нами: 11 лет 4 месяца

Сообщение #2189 AHAPXICT » 19.02.2018, 01:53

MC Web:Локализованный, немного модифицированный для темы DarkOne и добавлена Справка по сочетанию клавиш
Хорошее дело :beer: Не проверял, не охота переделывать, так как тестирую на работе на последней JS v2.0.4 панели от Марка. Просмотрел содержание скрипта от kgena_ua он под старую универсальную версию WSH & JS (что хорошо). Вопрос по теме. Ты случаем таких экспериментов не проводишь? У меня небольшие траблы возникли в последнее время. Не могу найти причину этой проблемы, так как упустил из виду несколько моментов. Это и обновление последней беты и обновление JS панели и самих скриптов. А в этот момент я сборку с рабочего WIN10 не таскал домой проверять на ХР. Сначала всё работало как часы, в режиме совместимости на двух операционных системах, а сейчас глючит. Причём не понятно чего не хватает(имею в виду ХР)? Мне кажется что даже сам фубар не так работать стал, проверял и в DUI без скриптов. В общем дальше не буду писать, это долго описывать. Может я что-то пропустил? С++ у меня 2015 последний апдейт. Лаг такой: 1.Плеер с полным набором не запускается, а так и висит в процессах. 2. Либо с минимальным набором скриптов работает, но потом опять же может поймать фриз, после чего Ctrl+Alt+Del))) На WIN10 вс1 без проблем.
Пока в раздумье, буду ждать, может решение само найдётся.

Добавлено спустя 1 час 24 минуты:
P.S. От скуки изучал содержимое флешки, нашёл там DarkOne4Mod v1 и заодно исправил скрипт DarkOne4Mod - Rating Panel для версии JS v1.3.0. Может кому пригодится.
Код: Выделить всё
// ==PREPROCESSOR==
// @name "DarkOne4Mod - Rating Panel"
// @version "1.0 build20160929"
// @author "super-gau and tedGo"
// @import "%fb2k_path%themes\DarkOne4Mod\Others\JScripts\DarkOne4Mod - Global Script.js"
// ==/PREPROCESSOR==

// ----- CREATE RATING BUTTON -----
var p_ctr = fb.TitleFormat("$if2(%play_count%,0)");
var g_tooltip = window.CreateTooltip();
var p_backcol = RGBA(31, 31, 31, 255);

function RatingButton(x, y, rW) {
   this.left = x;
   this.top = y;
   this.ratingWidth = rW;
   this.normalImage = null;
   this.ratingImageArray = null;
   this.img = null;   
   this.curRating = -1;
   this.controler = null;
   this.active = false;

   this.toolTips = new Array("Bad", "Average", "Good", "Very Good", "Excellent");

   this.changeRating = function() {
      if (this.curRating < 0 || !this.active) {
         if (this.normalImage) this.img = gdi.Image(this.normalImage);
      } else if (this.ratingImageArray) if (this.ratingImageArray[this.curRating]) this.img = gdi.Image(this.ratingImageArray[this.curRating]);
      window.Repaint();      
   }

   this.showToolTip = function() {
      var getMode = this.controler.getModus();
      g_tooltip.Deactivate();
      if (this.active && this.curRating > -1 && fb.IsPlaying) {
         var ratingIndex = Math.min(this.curRating, 4);
         if (getMode == 0) {
            g_tooltip.Text = this.toolTips[ratingIndex];
            window.SetCursor(32649);
         } else if (getMode == 1) g_tooltip.Text = "Autorate-Index: " + this.controler.arIdx;
         else g_tooltip.Text = "Playcounts: " + p_ctr.Eval();
         g_tooltip.Activate();
      }
   }

   this.draw = function(gr) {
      this.img && gr.DrawImage(this.img, this.left, this.top, ww, wh, 0, 0, this.img.Width, this.img.Height);
   }

   this.onClick = function() {
      this.active && this.curRating > -1 && this.controler.setRating(this.curRating + 1);
   }

   this.on_mouse_move = function(x, y) {
      if (this.active) {
         var ratingIndex = 0;
         var _x = x - this.left;
         if (_x > 0 && _x < this.ratingWidth * 5) {
            ratingIndex = Math.floor(_x / this.ratingWidth);
            ratingIndex = Math.min(ratingIndex, 5);
            if (this.curRating != ratingIndex) {
               this.curRating = ratingIndex;
               this.changeRating();
               this.showToolTip();
            }
         }
      }
   }

   this.on_mouse_leave = function() {
      this.curRating = -1;
      this.changeRating();
      g_tooltip.Deactivate();
   }

   this.init = function() {
      this.on_playback_new_track(fb.GetNowPlaying());   
   }

   this.on_playback_new_track = function(metadb) {
      if (metadb) this.active = fb.PlaybackLength <= 0 || metadb.RawPath.indexOf("FOO_LASTFM" ) == 0 ? false : true;
   }

   this.on_playback_stop = function(reason) {
      if (reason != 2) this.active = false;
   }

   this.setRatingImages = function(normalImg, hoverImg) {
      this.normalImage = normalImg;
      this.ratingImageArray = hoverImg;
      this.changeRating();
   }

   this.setControler = function(controler) {
      this.controler = controler;
   }

   this.changePos = function(x, y, rW) {
      this.left = x;
      this.top = y;
      this.ratingWidth = rW;
   }
}

button = new RatingButton(0, 0, ww / 5);
button.init();

function StateControler(ratingButton) {
   this.ratingButton = ratingButton;
   this.ratingButton.setControler(this);
   this.curMetadb = null;
   this.RATING = "RATING";
   this.curModus = null;
   this.active = false;

   var Colours = {manRating: "White", dataBase: "Yellow", playCount: "Green", autoRating: "Blue"};

   this.DisplayMode = function() {
      this.dm_cur = window.GetProperty("Display Mode", 0);
      if (typeof(this.dm_cur) != "number" || this.dm_cur < 0 || this.dm_cur > 2) this.dm_cur = 0;
      return this.dm_cur;
   }

   this.RatingMode = function() {
      this.rm_cur = window.GetProperty("Rating Mode", 0);
      if (typeof(this.rm_cur) != "number" || this.rm_cur < 0 || this.rm_cur > 2) this.rm_cur = 0;
      return this.rm_cur;
   }

   this.CountLimit = function() {
      this.cntlmt = window.GetProperty("Playcounter Limit", 50);
      if (typeof(this.cntlmt) != "number") this.cntlmt = 50;
      else if (this.cntlmt < 0) this.cntlmt = 0;
      return this.cntlmt;
   }

   this.setRating = function(ratingIndex) {
      if (this.active) {
         var modus = this.DisplayMode();
         this.curModus = modus;
         if (modus == 0) {
            if (this.RatingMode() == 1) {
               this.SetMetaRating(ratingIndex);
               fb.RunContextCommand("Rating" + "/" + "<not set>");
            } else {
               fb.RunContextCommand("Rating" + "/" + ratingIndex);
               this.SetMetaRating("");
            }
         }
         this.on_metadb_changed();
      }
   }

   this.SetMetaRating = function(rating) {
//      this.curMetadb && this.curMetadb.UpdateFileInfoSimple(this.RATING, rating);
      var handle = this.curMetadb;
        var handles = fb.CreateHandleList();
        handles.Add(handle);
        handles.UpdateFileInfoFromJSON(JSON.stringify({ "RATING" : rating }));
        handles.Dispose();   
    }

   this.init = function() {
      this.on_playback_new_track(fb.GetNowPlaying());   
   }

   this.on_playback_new_track = function(metadb) {
      if (metadb) this.active = fb.PlaybackLength <= 0 || metadb.RawPath.indexOf("FOO_LASTFM" ) == 0 ? false : true;
      if (this.curMetadb = metadb) {
         on_metadb_changed();
      }
   }

   this.on_metadb_changed = function() {
      if (this.active) {
         var modus = this.DisplayMode();
         this.curModus = modus;
         if (modus == 2) this.SetRatingDisplay(Colours.playCount, this.GetPlayCounts(), modus);
         else if (modus == 1) this.SetRatingDisplay(Colours.autoRating, this.GetAutoRating(), modus);
         else if (this.RatingMode() == 1) this.IsMetaRating() ? this.SetRatingDisplay(Colours.manRating, this.GetMetaRating(), modus) : this.SetRatingDisplay(Colours.manRating, this.GetDBRating(), modus);
         else this.GetDBRating() > 0 ? this.SetRatingDisplay(Colours.manRating, this.GetDBRating(), modus) : this.SetRatingDisplay(Colours.manRating, this.GetMetaRating(), modus);
      } else this.ratingButton.setRatingImages(imgPath + "Grey.png", null);
   }

   this.on_playback_stop = function(reason) {
      if (reason != 2) this.active = false;
   }

   this.GetMetaRating = function() {
      if (this.curMetadb) {
         var fileInfo = this.curMetadb.GetFileInfo();
         if (fileInfo) {
            var idx = fileInfo.MetaFind(this.RATING);
            if (idx > 0) {
               var rating = fileInfo.MetaValue(idx, 0);
               return Math.min(rating, 5);
            } else return 0;
         }
      } else return 0;
   }

   this.IsMetaRating = function() {
      return this.GetMetaRating() > 0;
   }

   this.GetDBRating = function() {
      return fb.TitleFormat("$if2(%rating%,0)").Eval();
   }

   this.GetAutoRating = function() {
      if (this.DisplayMode() == 1) {
         var pcntr = p_ctr.Eval();
         var fpy = fb.TitleFormat("$year(%first_played%)").Eval();
         var fpm = fb.TitleFormat("$sub($month(%first_played%),1)").Eval();
         var fpd = fb.TitleFormat("$day_of_month(%first_played%)").Eval();
         var fday = new Date(fpy, fpm, fpd);
         var today = new Date();
         var ar_days = Math.floor((today.getTime() - fday.getTime()) / (1000 * 60 * 60 * 24));
         var ar_count = pcntr * 10 - Math.floor(ar_days / 7.3);
         this.arIdx = pcntr > 0 ? ar_count / 10 : 0;
         var rating = Math.floor(ar_count / 10);
         return Math.max(Math.min(rating, 5), 0);
      } else return 0;
   }

   this.GetPlayCounts = function() {
      if (this.DisplayMode() == 2) {
         var rating = Math.floor(p_ctr.Eval() / (this.CountLimit() / 5));
         return Math.max(Math.min(rating, 5), 0);
      } else return 0;
   }

   this.SetRatingDisplay = function(normalColour, ratingIndex, modus) {
      var hoverImg = null;
      if (modus == 0 && this.RatingMode() == 1) hoverImg = this.getHoverImages(Colours.manRating);
      else if (modus == 0) hoverImg = this.getHoverImages(Colours.dataBase);
      var normalImg = null;
      normalImg = imgPath + normalColour + ratingIndex + ".png";
      this.ratingButton.setRatingImages(normalImg, hoverImg);
   }

   this.getHoverImages = function(colour) {
      for (var hoverImageArray = [], i = 1; i < 6; i++) hoverImageArray.push(imgPath + colour + "MH"+ i +".png");
      return hoverImageArray;
   }

   this.getModus = function() {
      return this.curModus;
   }
}

stateControler = new StateControler(button);
stateControler.init();

// ----- CREATE MENU -----
function CustomMenu(x, y) {
   var arr = new Array(5, 10, 25, 50, 100, 250);
   var a = stateControler.GetDBRating() > 0 || stateControler.IsMetaRating() ? 0 : 1;
   var c = stateControler.DisplayMode() == 0 ? 0 : 1;
   var d = stateControler.DisplayMode() == 2 ? 0 : 1;
   var e = stateControler.CountLimit();
   var f = null;
   var g = window.CreatePopupMenu();
   var h = window.CreatePopupMenu();
   var idx;

   for (var i = 0; i < arr.length; i++) {
      h.AppendMenuItem(0, 101 + i, arr[i]);
      if (e == arr[i]) f = 101 + i;
   }
   f && h.CheckMenuRadioItem(101, 106, f);

   g.AppendMenuItem(a, 1, "Delete rating");
   g.AppendMenuSeparator();
   g.AppendMenuItem(0, 2, "Show/enable rating");
   g.AppendMenuItem(0, 3, "Show auto-rating");
   g.AppendMenuItem(0, 4, "Show playcounts");
   g.CheckMenuRadioItem(2, 4, stateControler.DisplayMode() + 2);
   g.AppendMenuSeparator();
   g.AppendMenuItem(c, 5, "Rate to the database");
   g.AppendMenuItem(c, 6, "Rate to the file tags");
   g.CheckMenuRadioItem(5, 6, stateControler.RatingMode() + 5);
   g.AppendMenuSeparator();
   h.AppendTo(g, d | 16, "Playcount limit");
   g.AppendMenuSeparator();
   g.AppendMenuItem(0, 7, "Properties");
   g.AppendMenuItem(0, 8, "Configure...");

   idx = g.TrackPopupMenu(x, y);

   switch (true) {
      case (idx >= 101 && idx <= 106):
         window.SetProperty("Playcounter Limit", arr[idx - 101]);
         stateControler.init();
         break;

      case (idx == 1):
         fb.RunContextCommand("Rating" + "/" + "<not set>");
         stateControler.SetMetaRating("");
         stateControler.init()
         break;

      case (idx >= 2 && idx <= 4):
         window.SetProperty("Display Mode", idx - 2);
         stateControler.init();
         break;

      case (idx >= 5 && idx <= 6):
         window.SetProperty("Rating Mode", idx - 5);
         stateControler.init();
         break;

      case (idx == 7):
         window.ShowProperties();
         break;

      case (idx == 8):
         window.ShowConfigure();
         break;
   }

   g.Dispose();
   h.Dispose();
}

// ----- DRAW -----
var g_img = gdi.Image(imgPath + "Grey.png");

function on_paint(gr) {
   if (!window.IsTransparent) gr.FillSolidRect(0, 0, window.Width, window.Height, p_backcol);
   gr.SetInterpolationMode(7);
   fb.IsPlaying && button ? button.draw(gr) : g_img && gr.DrawImage(g_img, 0, 0, 80, 16, 0, 0, g_img.Width, g_img.Height, 0, 128);
}

// ----- MOUSE ACTIONS -----
var g_down = false;

function on_mouse_move(x, y) {
   button.on_mouse_move(x, y);
}

function on_mouse_lbtn_down(x, y) {
   g_down = true;
}

function on_mouse_lbtn_up(x, y) {
   g_down && button.onClick(x, y);
   g_down = false;
}

function on_mouse_rbtn_up(x, y) {
   CustomMenu(x, y);
   return true;
}

function on_mouse_leave() {
   button && button.on_mouse_leave();
}

// ----- EVENTS -----
function on_size() {
   ww = window.Width;
   wh = window.Height;
   button.changePos(0, 0, ww / 5);
}

function on_metadb_changed() {
   stateControler.on_metadb_changed( );
   window.Repaint();
}

function on_playback_new_track(metadb) {
   stateControler.on_playback_new_track(metadb);
   button.on_playback_new_track(metadb);
   window.Repaint();
}

function on_playback_stop(reason) {
   stateControler.on_playback_stop(reason);
   button.on_playback_stop(reason);
   window.Repaint();
}
AHAPXICT M
Аватара
Откуда: Киев
Репутация: 252
С нами: 11 лет 1 месяц

Сообщение #2190 vladj » 19.02.2018, 12:14

AHAPXICT:Плеер с полным набором не запускается, а так и висит в процессах
Меня выбесило такое поведение некоторых сборок. Лежат на всякий случай...посмотреть как что устроено, скрипт взять, фишку применить и т.д. Все началось с переходом на вин 7. Запускаю, фубар висит в процессах, ест мало и полностью не запускается. Нашел виновника, это Длл-ка проводника, foo_uie_explorer.dll. Выбрасываю с компонентов и сборка нормально начинает запускатся. Попробуй у себя, посмотри есть-ли она и удали если есть.
vladj M
Аватара
Откуда: Пермский край
Репутация: 427
С нами: 14 лет 10 месяцев

Сообщение #2191 kgena_ua » 19.02.2018, 13:39

seriousstas,
по отключению панели.
Самое простое вставить в function on_metadb_changed()
if (!window.IsVisible) return;
тогда панель отключится, если она скрыта. Вопрос как панель "встряхнуть", когда она снова станет видимой. Ну можно переключиться на другого исполнителя - тогда она запустится.
Самое простое добавить таймер, который каждую секунду (пол-секунды) будет проверять состояние window.IsVisible. Этот таймер не нагрузит плеер ни капельки.
Код: Выделить всё
check_panel_state();

function check_panel_state(){
    check_timer = window.SetInterval(function() {
        if (window.IsVisible && !panel_on) {
            panel_on = true;
            artist = "";
            on_metadb_changed();
        }
        if (!window.IsVisible) {
            panel_on = false;
        }
    }, 500 );
}
kgena_ua M
Аватара
Откуда: Украина, Днепр
Репутация: 504
С нами: 11 лет 8 месяцев

Сообщение #2192 MC Web » 19.02.2018, 14:25

AHAPXICT:так как тестирую на работе на последней JS v2.0.4 панели от Марка
Тут надо смотреть, в данной ситуации больше приобрел или потерял?
Я свою сборку "оттачиваю" на проверенных временем элементах и кажется удалось добиться стабильной работы. Для этого даже некоторые элементы пришлось заменить на старые версии. Теперь все работает стабильно и без багов.

AHAPXICT:Причём не понятно чего не хватает(имею в виду ХР)? Мне кажется что даже сам фубар не так работать стал, проверял и в DUI без скриптов. В общем дальше не буду писать, это долго описывать. Может я что-то пропустил? С++ у меня 2015 последний апдейт.
Если говорим про версию foobar2000 v.1.4 (сам ей не пользуюсь, не вижу смысла все менять), то там должны быть обновлены некоторые компоненты скомпилированные для данной версии и желательно иметь С++ 2017.

AHAPXICT:Плеер с полным набором не запускается, а так и висит в процессах.
vladj:Нашел виновника, это Длл-ка проводника, foo_uie_explorer.dll. Выбрасываю с компонентов и сборка нормально начинает запускатся.
Возможно и это.
Для работы данного компонента не мешает проверить - служба СЕРВЕР в Windows должна быть включена.
MC Web
Репутация: 248
С нами: 11 лет 4 месяца

Сообщение #2193 vladj » 19.02.2018, 16:56

MC Web:служба СЕРВЕР в Windows должна быть включена
Вот оно как...проверил разрешив в службах сервер, запускается нормально. Пусть и не пользуюсь этим плагином, но знать полезно.
vladj M
Аватара
Откуда: Пермский край
Репутация: 427
С нами: 14 лет 10 месяцев

Сообщение #2194 seriousstas » 19.02.2018, 18:55

kgena_ua
Этот таймер не нагрузит плеер ни капельки
Это так - нагрузка 0.5% , а вот на другие скрипты с таймерами влияние есть . .
Скажем на бегущую строку ..
seriousstas
Откуда: Украина , Ивано-Франковск
Репутация: 110
С нами: 9 лет 10 месяцев

Сообщение #2195 kgena_ua » 19.02.2018, 19:04

seriousstas, да это не подходит.
А что в MPS on_notify_data не работает. Я так понимаю что у Вас кнопки и скрипты в одной MPS панели.
kgena_ua M
Аватара
Откуда: Украина, Днепр
Репутация: 504
С нами: 11 лет 8 месяцев

Сообщение #2196 seriousstas » 19.02.2018, 20:52

kgena_ua:kgena_ua » Сегодня, 19:04

seriousstas, да это не подходит.
А что в MPS on_notify_data не работает. Я так понимаю что у Вас кнопки и скрипты в одной MPS панели.
В одной, но напомню - из MPS в WSH on_notify_data не пролезет)
Вы пробовали так запускать (свою сборку) ? :
/viewtopic.php?p=68567#p68567
seriousstas
Откуда: Украина , Ивано-Франковск
Репутация: 110
С нами: 9 лет 10 месяцев

Сообщение #2197 stalk:er » 19.02.2018, 21:55

kgena_ua:Только недавно убрал по просьбе пользователя.
А можно вернуть или сделать отдельным пунктом настройку цвета?
Буду очень признателен.
stalk:er M
Аватара
Откуда: Санкт-Петербург
Репутация: 8
С нами: 17 лет 9 месяцев

Сообщение #2198 seriousstas » 21.02.2018, 14:00

kgena_ua
Посмотрел ещё раз Ваше видео - это обычные треки ..
Траблы при выводе картинок к радиостанциям .
seriousstas
Откуда: Украина , Ивано-Франковск
Репутация: 110
С нами: 9 лет 10 месяцев

Сообщение #2199 MC Web » 21.02.2018, 14:10

seriousstas:Траблы при выводе картинок к радиостанциям .
Они с предыдущими версиями Biography & Albums & Similar artist info. www.last.fm то же были?
Смотрю последнее время появились проблемы с MPS или раньше тоже были?
MC Web
Репутация: 248
С нами: 11 лет 4 месяца

Сообщение #2200 seriousstas » 21.02.2018, 16:01

Они с предыдущими версиями Biography & Albums & Similar artist info. www.last.fm то же были?
Были и раньше, но достаточно было запустить цикл и картинка появлялась .
Сейчас если закрыть панель и перезапустить foobar2000 то помагает только вызов
Код: Выделить всё
get_img();
Повесил его на двойной клик . Это в предпоследней версии биографии.
А в последней добавилось дрожание текста, как на видео выше.. :think:
Последний раз редактировалось seriousstas 21.02.2018, 16:43, всего редактировалось 4 раз(а).
seriousstas
Откуда: Украина , Ивано-Франковск
Репутация: 110
С нами: 9 лет 10 месяцев

Пред.След.

Вернуться в Секреты foobar2000