The Legend 1.2.1 от Russell777

Список разделов foobar2000 Сборки Архив

Описание: Архив выпусков предыдущих сборок.

Сообщение #421 Shura1oplot » 15.01.2008, 20:26

моя модификация кода ковер арта
Код: Выделить всё
//=== OPTIONS ===
var SwitchArts = 1;
var SwitchTime = 15;
//============
function RGB(r,g,b){ return (0xff000000|(r<<16)|(g<<8)|(b)); }
var g_fso = new ActiveXObject("Scripting.FileSystemObject");
var img_nocower = gdi.Image(fb.ComponentPath.replace("components","images") + "nocover.png");
var img_case = gdi.Image(fb.ComponentPath.replace("components","images") + "case.png");
var cp, px, py, ex, exx, step = 0;
var g_CurrentCover = null;
var g_CoverList = new Array();

function GetAlbumArts(path){
   path = path.replace(/^file:\/\//, "");
   var files = new Array();
   var search = function(array, dir){
      var e = new Enumerator(dir.Files);
      while( !e.atEnd())
      {
         var name = e.item().Name.toLowerCase();
         if(name.match(/\.jpg$/) || name.match(/\.png$/) || name.match(/\.jpeg$/))
            array.push( e.item() );
      e.moveNext();
      }
   }
   try{
      var dir = g_fso.GetFile(path).ParentFolder;
      search(files, dir);
      var e = new Enumerator(dir.SubFolders);
      for(; !e.atEnd(); e.moveNext())
         search(files, e.item());
   }catch(e){
      fb.trace(e.message);
   }

   if(files.length < 1)
      return null;
   else
      return files;
}

function GetNextCP(c){
   c++;
   while(c > g_CoverList.length - 1)
      c = c - g_CoverList.length;
   return c;
}
function GetPrevCP(c){
   c--;
   while(c < 0)
      c = c + g_CoverList.length;
   while(c > g_CoverList.length - 1)
      c = c - g_CoverList.length;
   return c;
}

//===

if(fb.IsPlaying){
   if(g_CoverList.length < 1) {
      cp = 0;
      g_CoverList = new GetAlbumArts(fb.GetNowPlaying().path);
      g_CurrentCover = g_CoverList[cp];
   }
}

//===

function on_paint(gr){
   var ww = window.Width;
   var wh = window.Height;
   if(g_CurrentCover)
      var img = gdi.Image(g_CurrentCover);
   else
      var img = img_nocower;
   gr.DrawImage(img, 0,0, ww,wh, 0,0, img.Width, img.Height);
   gr.DrawImage(img_case, -9,-6, ww+90,wh+18, 0,0, 275, 202);   
   if(ex){
      var w1 = img.Width/ww;
      var h1 = img.Height/wh;
      var w2 = img.Width/6;
      var h2 = img.Height/6;
      if(px > ww - 36) var cx = ww - 36;
      else if(px < 35) var cx = 35;
      else var cx = px;
      if(py > wh - 36) var cy = wh - 36;
      else if(py < 35) var cy = 35;
      else var cy = py;
      var gx = (cx - 35) * ((ww - 31) / (ww - 71));
      var gy = (cy - 35) * ((wh - 31) / (wh - 71));
      gr.DrawImage(img, cx-35,cy-35, 70,70, gx*w1,gy*h1 ,w2,h2);
      gr.DrawRect(cx-35,cy-35, 70,70, 1.0, RGB(150,150,150));
   }
   if(exx){
      var imgnext = gdi.Image(g_CoverList[GetNextCP(cp)]);
      var imgprev = gdi.Image(g_CoverList[GetPrevCP(cp)]);
      gr.DrawImage(imgnext, ww-26,wh-26, 25,25, 0,0, imgnext.Width, imgnext.Height);
      gr.DrawImage(imgprev, 1,wh-26, 25,25, 0,0, imgprev.Width, imgprev.Height);
   }
}

function on_playback_new_track(info){
   step = 0;
   ex = 0;
   exx = 0;
   cp = 0;
   g_CoverList = new GetAlbumArts(info.path);
   g_CurrentCover = g_CoverList[cp];
   window.Repaint();
}

function on_playback_time(time){
   if(SwitchArts && (g_CoverList.length > 1)){
      step++;
      if(step == SwitchTime){
         step = 0;
         if(!ex){
            cp = GetNextCP(cp);
            g_CurrentCover = g_CoverList[cp];
            window.Repaint();
         }
      }
   }
}

function on_mouse_move(x, y){
   var ww = window.Width;
   var wh = window.Height;
   var b = false;
   if(x < 0) px = 0;
   else if(x > ww) px = ww;
   else px = x;
   if(y < 0) py = 0;
   else if(y > wh) py = wh;
   else py = y;
   if(g_CoverList.length > 1){
      if(((px > 1) && (px < 26)) && ((py > wh - 26) && (py < wh - 1))){
         if(!exx && !ex) {
            b = true;
            exx = -1;
         }
      }else if(((px > ww - 26) && (px < ww - 1)) && ((py > wh - 26) && (py < wh - 1))){
         if(!exx && !ex) {
            b = true;
            exx = 1;
         }
      }else
         if(exx){
            exx = 0;
            b = true;
         }
   }
   if(ex || b) window.Repaint();
}

function on_mouse_lbtn_down(x, y){
   px = x;
   py = y;
   if(!exx ){
      ex = true;
      window.Repaint();
   }
}

function on_mouse_lbtn_up(x, y){
   if(ex) step = 0;
   ex = false;
   if(exx == 1){
      step = 0;
      cp = GetNextCP(cp);
      g_CurrentCover = g_CoverList[cp];
   }else if(exx == -1){
      step = 0;
      cp = GetPrevCP(cp);
      g_CurrentCover = g_CoverList[cp];
   }
   window.Repaint();
}

//EOF
добавил прокрутку изображений, если их несколько в директории
при наведении мыши на нижние углы ковера появляются 2 кнопки в виде уменьшенных последующего и предыдущего ковера (см. скрин). При нажатии ковер меняется =) Если количество коверов < 1, то кнопки не появляются
При просмотре ковера через лупу кнопки тоже не появляются.
Изображение
Изображение

Update1: переписал скрипт, убрал неприятный глюк
Update2: исправил глюк с лупой, теперь она работает как в самой первой версии. Добавил автоматическую прокрутку артов, настройка в начале скрипта.
Последний раз редактировалось Shura1oplot 22.01.2008, 02:00, всего редактировалось 1 раз.
Shura1oplot
Репутация: 0
С нами: 18 лет

Сообщение #422 exmi » 16.01.2008, 17:01

МОЛОДЧИНА автор!!! *пыво* не думай даже опускать руки, а продолжай постоянно дорабатывать и улучшать свою сборку! :-| ИМХО вещь просто соверешнно потресающая и небывало стильная! [:-} Просто хай енд винтаж плеер! [:-} Аплодирую, и надеюсь на появление новых версий! Потрясающе! ;)
exmi M
Аватара
Репутация: 0
С нами: 16 лет 10 месяцев

Сообщение #423 Ulm » 17.01.2008, 01:58

у меня в месте, где по видимому должен быть ползунок громкости и тайминг пишет script error. как исправить багу?
Ulm
Репутация: 0
С нами: 16 лет 10 месяцев

Сообщение #424 Russell777 » 17.01.2008, 05:55

Ulm:у меня в месте, где по видимому должен быть ползунок громкости и тайминг пишет script error. как исправить багу?
Правый клик на месте где пишет еррор->Configure,в выпадающей стоке выставь Jscript
вместо VBscript и нажми Apply
Russell777 M
Автор темы
Откуда: Беер Шева
Репутация: 3
С нами: 18 лет 5 месяцев

Сообщение #425 Alex07 » 17.01.2008, 08:13

2Shura1oplot неплохо! спасибо!
2exmi +1
Последний раз редактировалось Alex07 17.01.2008, 08:17, всего редактировалось 1 раз.
Alex07 M
Аватара
Откуда: г. Абакан
Репутация: 0
С нами: 17 лет 5 месяцев

Сообщение #426 Ulm » 17.01.2008, 17:49

Russell777:Правый клик на месте где пишет еррор->Configure,в выпадающей стоке выставь Jscript
вместо VBscript и нажми Apply
Так у меня и стоит изначально Jscript. В "блак гласс" такая же бага была, (2.Перепишите файл default.pui из дериктории "Emergency" в "PanelsUI".Перезапустите плеер-это решит проблему.) помогло. в этой сборке нет emergency, следовательно не счего переписывать. как быть?
Ulm
Репутация: 0
С нами: 16 лет 10 месяцев

Сообщение #427 romk » 19.01.2008, 21:26

IngvarDG:Alex07, ошибка "Microsoft Visual C++ Runtime Library" вылезает при переходе с одного трека на другой или при повторном его проигрывании.

+1, стоит XP SP2, что делать?
romk
Репутация: 0
С нами: 16 лет 10 месяцев

Сообщение #428 GREET » 20.01.2008, 14:29

поставить рентаймы
GREET M
Аватара
Откуда: Kyiv
Репутация: 1
С нами: 18 лет 3 месяца

Сообщение #429 Shura1oplot » 22.01.2008, 02:02

Обновил мод скрипта ковер арта.
профиксил баг с лупой
добавил автоматическую прокрутку артов, настройки вначале скрипта
Shura1oplot
Репутация: 0
С нами: 18 лет

Сообщение #430 uXu » 22.01.2008, 02:07

Убрать надписи script error в WSH панелях (WinXP SP2) и воссоздать полноценный вид помог
WindowsXP-Windows2000-Script56-KB917344-x86-rus.exe
в google =>

надеюсь совет будет полезен)
Автору спасибо за сборку.
Последний раз редактировалось uXu 22.01.2008, 02:11, всего редактировалось 1 раз.
uXu
Репутация: 0
С нами: 16 лет 10 месяцев

Сообщение #431 alab » 24.01.2008, 00:36

Всем привет!

Ребят, подскажите, пожалуйста, где внести какие изменения, чтобы плеер занимал побольше места на экране (со всеми вытекающими: увеличением шрифта, картинки обложки...) и чтобы альбомы сортировались также по году выпуска.

Заранее благодарен.
alab
Репутация: 0
С нами: 17 лет 3 месяца

Сообщение #432 Alex07 » 25.01.2008, 08:56

2alab, уверен, что без серьезных изменений в сборке (руками Рассела) этого сделать нельзя.
Alex07 M
Аватара
Откуда: г. Абакан
Репутация: 0
С нами: 17 лет 5 месяцев

Сообщение #433 jericho » 27.01.2008, 10:54

2Russell777
Очень нравиться твоя сборка, минус для меня только один регулирование громкости и прокрутки трека. Сам ползунок сделан не очень. Можешь если не трудно мне на мыло прислать исходную арт плеера без вот этих вставок
Изображение
jericho
Репутация: 0
С нами: 16 лет 10 месяцев

Сообщение #434 Alex07 » 27.01.2008, 16:10

2jericho, не очень? :-D А, если не сложно, можно по-подробнее?
P.S. В этой сборке просто невозможно сделать эти регуляторы лучше.. imho
Alex07 M
Аватара
Откуда: г. Абакан
Репутация: 0
С нами: 17 лет 5 месяцев

Сообщение #435 jericho » 27.01.2008, 21:35

Неудобно то что они угловые, сам ползунок. Я по другому сделать хочу, для этого мне и нужен оригинал.
jericho
Репутация: 0
С нами: 16 лет 10 месяцев

Сообщение #436 Alex07 » 27.01.2008, 21:38

2jericho в этой сборке все угловое... Задумка такая ;)
Alex07 M
Аватара
Откуда: г. Абакан
Репутация: 0
С нами: 17 лет 5 месяцев

Сообщение #437 romk » 09.02.2008, 22:00

romk:
IngvarDG:Alex07, ошибка "Microsoft Visual C++ Runtime Library" вылезает при переходе с одного трека на другой или при повторном его проигрывании.

+1, стоит XP SP2, что делать?
GREET:поставить рентаймы

У меня стоит .Net Framework 2.0 и 3.0, какой именно runtime ставить?
romk
Репутация: 0
С нами: 16 лет 10 месяцев

Сообщение #438 Aleks.W » 12.02.2008, 03:09

Подскажите пожалуйста, что нужно сделать что бы треки воспроизводились по порядку или в разброс. У меня сейчас только один трек по круги играет. А так сборочка СУПЕР.
В сборку добавлены (но не включены) dsp-плагины foo_channel_mixer(для владельцев 2.1, 5.1 и т.д. аккустики - вещь очень полезная), foo_dsp_bs2b (для более комфортного прослушивания музыки в наушниках), foo_out_ks - для более качественного вывода звука). Так же присутствуют все компоненты, которые идут в foobar2000 0.9.5 beta 6..;
А как их включить?
Вы меня извените, я ещё новичок в этом плеере, и с англ. не дружу
Aleks.W
Репутация: 0
С нами: 16 лет 9 месяцев

Сообщение #439 Smallette » 12.02.2008, 17:20

2 Aleks.W
по первой части не подскажу - этой сборкой не пользуюсь
а плагины включаются в настройках - DSP Manager, выбираешь какие надо активировать в правой панели и стрелочкой перебрасываешь их в левую панель - все, они включились :)
Smallette
Аватара
Репутация: 0
С нами: 18 лет 5 месяцев

Сообщение #440 T1MeTRaSHeR » 12.02.2008, 18:25

По первой части:
Жми сюды
Изображение
Далее пользуеш эту секцию
Изображение
T1MeTRaSHeR M
Аватара
Откуда: A30FF
Репутация: 0
С нами: 17 лет 6 месяцев

Пред.След.

Вернуться в Архив