Сборка LED Ferrite

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

Описание: Проверенные финальные версии сборок.

Сообщение #1 maklaud » 30.11.2015, 21:01

Код: Выделить всё
Дата сборки: 29.11.2015
Автор: maklaud
Версия: 0.1
Код: Выделить всё
foobar2000 v1.3.9

Скриншот + краткое описание:
LED_Ferrite.png


Гифка:
Спойлер
LED_Ferrite_any2.gif


СКАЧАТЬ 11,1 МБ: Яндекс.Диск, Google Диск

DirectX 9 (26,1 МБ) нужен для работы Waveform Seekbar!
RuntimePack (74,5 МБ) пак библиотек Microsoft Visual C++ нужен для работы foo_plorg!
Сочетание: правый CTRL + DEL - удалит файл трека в корзину!


Плюсы и минусы:
Код: Выделить всё
+Простой, удобный интерфейс
+Масштабируемость интерфейса
-Возможно придётся настроить горячие клавиши под себя (глобальные горячие клавиши на нумпаде!)
-Встроены только х64 версии энкодоров для MP3 и OGG, кроме того для работы FLACCL энкодера потребуется OpenCL

Стандартные плагины:
Код: Выделить всё
foo_albumlist
foo_cdda
foo_converter
foo_fileops

Дополнительные плагины:
Код: Выделить всё
foo_cuefilter   0.1.7.0
foo_input_monkey   2.1.7
foo_keep_queue   0.3.5
foo_playcount   3.0.2
foo_plorg   2.6
foo_queuecontents   0.5.1
foo_quicksearch   3.6
foo_run   0.3.7
foo_ui_columns   0.3.9.1
foo_ui_hacks   2013-02-19
foo_uie_albumlist   0.3.5
foo_uie_elplaylist   0.6.9.1.2(beta)
foo_uie_esplaylist   0.1.3.9
foo_uie_panel_splitter   0.3.8.3(alpha)
foo_wave_seekbar   0.2.45
Последний раз редактировалось maklaud 09.01.2016, 20:46, всего редактировалось 1 раз.
maklaud
Автор темы, Бывалый
Аватара
Репутация: 28
С нами: 1 год 10 месяцев

Сообщение #2 maklaud » 08.01.2016, 14:12

Я гляжу моя сборка пользуется особой популярностью :smile: :cry:
maklaud
Автор темы, Бывалый
Аватара
Репутация: 28
С нами: 1 год 10 месяцев

Сообщение #3 macarych » 08.01.2016, 17:32

maklaud писал(а):Я гляжу моя сборка пользуется особой популярностью
И?!

что дальше?
macarych M
Гуру
Репутация: 236
С нами: 8 лет 4 месяца

Сообщение #4 maklaud » 08.01.2016, 17:40

Шутка такая, никто даже не скачал :smile: .
А думал хорошую сделал, удобную. Для себя же делал, старался :toothless:
Не пойму, что не так?
maklaud
Автор темы, Бывалый
Аватара
Репутация: 28
С нами: 1 год 10 месяцев

Сообщение #5 macarych » 08.01.2016, 17:57

ХЗ. Однозначного ответа нет. Но в вашем случае не так безнадежно как у simmons'a, simmons, без обид :)
macarych M
Гуру
Репутация: 236
С нами: 8 лет 4 месяца

Сообщение #6 AHAPXICT » 08.01.2016, 21:05

maklaud, я уже давно скачал и по тестировал. То что отзывов никто не пишет, так это и к лучшему, а то залезет в тему какой то умник....)))) На моей системе пошла без проблем, только трусит её при переключении режимов. Хотел посоветовать под wave seekbar подставить WSH панель, для CD и стримов, очень удобно, сам себе так сделал.
Код: Выделить всё
//WSH Seekbar

DT_CENTER = 0x00000001;
DT_VCENTER = 0x00000004;
DT_SINGLELINE = 0x00000020;
MF_SEPARATOR = 0x00000800;
MF_STRING = 0x00000000;

function RGB(r,g,b){ return (0xff000000|(r<<16)|(g<<8)|(b)); }

var g_font = gdi.Font("Arial", 14, 0);
var g_drag = 0;
var g_drag_seek = 0;
var tfo = fb.TitleFormat("%playback_time%/%length%/%playback_time_remaining%  $if(%ispaused%,PAUSE,     )         '('$max(0,$left($muldiv(%playback_time_seconds%,1000,%length_seconds%),$sub($len($muldiv(%playback_time_seconds%,1000,%length_seconds%)),1)))'.'$right(  $muldiv(%playback_time_seconds%,1000,%length_seconds%),1)'%)'");
get_color();   

function TimeFmt(t){
  var zpad = function(n){
      var str = n.toString();
      return (str.length<2) ? "0"+str : str;
  }
  var h = Math.floor(t/3600); t-=h*3600;
  var m = Math.floor(t/60); t-=m*60;
  var s = Math.floor(t);
  if(h>0) return h.toString()+":"+zpad(m)+":"+zpad(s);
  return m.toString()+":"+zpad(s);
}

function on_paint(gr){
  var txt = "";
  var pos =0;
         
  if(fb.PlaybackTime > 0){
      if(g_drag){
          pos = window.Width * g_drag_seek;
          txt = "Seek " + TimeFmt(g_drag_seek * fb.PlaybackLength) + "/" + TimeFmt(fb.PlaybackLength);
      }
      else{
          pos = window.Width * (fb.PlaybackTime / fb.PlaybackLength);
          txt = tfo.Eval();
      }

  }else
  {
  txt = "PLAYBACK STOPPED";
  }
 
 
  gr.FillGradRect(  0, 0,    pos, window.Height, 90, RGB(51,80,102), back_rgb);
  gr.FillGradRect(pos, 0, window.Width-pos, window.Height, 90, RGB(26,48,63), RGB(19,30,38));
  gr.GdiDrawText(txt, g_font, font_rgb, 0, 0, window.Width, window.Height, DT_CENTER | DT_VCENTER | DT_SINGLELINE);
  gr.DrawRect(0,0, window.Width-1, window.Height-1, 1.0, RGB(26,48,63));
}

// ========MENU======== //
function on_mouse_rbtn_up(x, y) {

    var _menu = window.CreatePopupMenu();
   
    _menu.AppendMenuItem(MF_STRING, 1, "Default");
    _menu.AppendMenuItem(MF_STRING, 2, "Blue");
    _menu.AppendMenuItem(MF_STRING, 3, "Green");
    _menu.AppendMenuItem(MF_STRING, 4, "Red");
    _menu.AppendMenuItem(MF_STRING, 5, "White");
    _menu.AppendMenuItem(MF_STRING, 6, "Yellow")
    _menu.AppendMenuItem(MF_STRING, 7, "Grey")
    _menu.CheckMenuRadioItem(1, 7, window.GetProperty("Color", 1));   
    _menu.AppendMenuItem(MF_SEPARATOR, 0, 0)
    _menu.AppendMenuItem(MF_STRING, 8, "Properties...");
    _menu.AppendMenuItem(MF_STRING, 9, "Configure...");

    idx = _menu.TrackPopupMenu(x, y);
    switch (idx) {
    case 1:
    case 2:
    case 3:
    case 4:
    case 5:
    case 6:
    case 7:
       
        ch_color(idx);
   
        break;   
    case 8:
        window.ShowProperties();
        break;
    case 9:
        window.ShowConfigure();
        break;
}
    _menu.Dispose();
    return true
}

//=======================//
var back_rgb, font_rgb;

function get_color() {
    if (window.GetProperty("Color") == 1)  font_rgb = RGB(191,228,255), back_rgb = RGB(24,37,46);   //Default   
    if (window.GetProperty("Color") == 2)  font_rgb = RGB(128,192,255), back_rgb = RGB(22,36,46);   //Blue   
    if (window.GetProperty("Color") == 3)  font_rgb = RGB(0,255,0), back_rgb = RGB(18,38,38);       //Green   
    if (window.GetProperty("Color") == 4)  font_rgb = RGB(255,0,0), back_rgb = RGB(38,26,34);       //Red   
    if (window.GetProperty("Color") == 5)  font_rgb = RGB(255,255,255), back_rgb = RGB(26,38,46);   //White   
    if (window.GetProperty("Color") == 6)  font_rgb = RGB(255,255,0), back_rgb = RGB(26,38,38);     //Yellow
    if (window.GetProperty("Color") == 7)  font_rgb = RGB(76,121,153), back_rgb = RGB(21,41,52);    //Grey
}

function getRed(color) {
   return ((color >> 16) & 0xff);
}

function getGreen(color) {
   return ((color >> 8) & 0xff);
}

function getBlue(color) {
   return (color & 0xff);
}

var g_timer;

function ch_color(idx) {
    get_color();

    old_R = getRed(font_rgb);   
    old_G = getGreen(font_rgb);   
    old_B = getBlue(font_rgb);

    window.SetProperty("Color", idx);   

   
    get_color();

    new_R = getRed(font_rgb);   
    new_G = getGreen(font_rgb);   
    new_B = getBlue(font_rgb);

    step_R = (new_R - old_R)/255; step_G = (new_G - old_G)/255; step_B = (new_B - old_B)/255;

    g_timer = window.SetInterval(function() {
        old_R = old_R + step_R; old_G = old_G + step_G; old_B = old_B + step_B;
        R = old_R; G = old_G; B = old_B;
        font_rgb = RGB(R,G,B)
        window.Repaint();
       
        if (
            step_R < 0 && R <= new_R || step_G < 0 && G <= new_G || step_B < 0 && B <= new_B ||
            step_R > 0 && R >= new_R || step_G > 0 && G >= new_G || step_B > 0 && B >= new_B
        ) {window.ClearInterval(g_timer); R = new_R; G = new_G; B = new_B; font_rgb = RGB(R,G,B)};
    }, 5);
}

function on_mouse_lbtn_down(x,y){
  g_drag = 1;
}

function on_mouse_lbtn_up(x,y){
  if(g_drag){
      g_drag = 0;
      g_drag_seek = x / window.Width;
      g_drag_seek = (g_drag_seek<0) ? 0 : (g_drag_seek<1) ? g_drag_seek : 1;
      fb.PlaybackTime = fb.PlaybackLength * g_drag_seek;
  }
}

function on_mouse_move(x,y){
  if(g_drag){
      g_drag_seek = x / window.Width;
      g_drag_seek = (g_drag_seek<0) ? 0 : (g_drag_seek<1) ? g_drag_seek : 1;
      window.Repaint();
  }
}

function on_mouse_wheel(step) {
   fb.PlaybackTime += step;
}

function on_playback_seek(time) {
   window.Repaint();
}

function on_playback_time(time){
  window.Repaint();
}

function on_playback_stop(){
      window.Repaint();
}

function on_playback_starting(cmd, paused){
   window.Repaint();
}
function on_playback_new_track(info){
  window.Repaint();
}
//EOF
AHAPXICT M
Мастер
Аватара
Возраст: 46
Откуда: Киев
Репутация: 97
С нами: 3 года 6 месяцев

Сообщение #7 maklaud » 09.01.2016, 20:36

AHAPXICT, Спасибо за коммент!
А как трусит? Что-то дёргается или мелькает? (Если меняется градиент на фоне - это нормально, так и задумано).
За идею с WSH спасибо, попробую на вэйвформсекбар прикрутить.
maklaud
Автор темы, Бывалый
Аватара
Репутация: 28
С нами: 1 год 10 месяцев

Сообщение #8 AHAPXICT » 09.01.2016, 23:52

maklaud, спасибо за понимание))) Я ведь с этим намёком по поводу WSH умышленно подкатил. Я когда первый раз запустил, ещё в прошлом месяце, подумал что вся сборка на WSH panel и скрипты не оптимизированы под ХР. В общем беда такая: Всё что мы видим на экране превращается в стробоскоп... Я сначала забил на это дело, а сегодня вернулся и разобрался. Нужно обновить foo_ui_columns-0.3.9.1 на 0.3.9.2, об этом мы уже говорили на форуме. И тогда сборка работает без проблем на таких компьютерах "мастодонтах" как у меня))))
AHAPXICT M
Мастер
Аватара
Возраст: 46
Откуда: Киев
Репутация: 97
С нами: 3 года 6 месяцев

Сообщение #9 maklaud » 10.01.2016, 00:08

AHAPXICT, спасибо, в следующей версии обновлю. Как же я обнову не заметил. :toothless:
maklaud
Автор темы, Бывалый
Аватара
Репутация: 28
С нами: 1 год 10 месяцев


Вернуться в Релизы сборок

Кто сейчас на форуме (по активности за 10 минут)

Сейчас этот раздел просматривают: 2 гостя