Skip to main content

Notice

Please note that most of the software linked on this forum is likely to be safe to use. If you are unsure, feel free to ask in the relevant topics, or send a private message to an administrator or moderator. To help curb the problems of false positives, or in the event that you do find actual malware, you can contribute through the article linked here.
Topic: Chronflow (Read 479939 times) previous topic - next topic
0 Members and 1 Guest are viewing this topic.

Chronflow

Reply #325
Quote
yes, but it modify playlist order and that is not clean

Have a look at the options for foo_trackpos
Sry, I'm not going to duplicate the functionality of my plugins ^^.

Chronflow

Reply #326
I've encountered a problem I hope can be fixed for the next build:

I put this component into my Panels UI theme where I have a group of other panels that I can switch to and from. In other words, I have assigned this panel a PVAR in a list of other panelsl/pvars. However, when I switch to this one, it likes to stay on top of all the other ones.

This is kind of hard to explain, but basically once I switch to the coverflow, I can't switch back to any other panels because the coverflow stays ontop. The panel IS switched, just the coverflow remains visible.

Hopefully this makes sense, and can be fixed?

Also, a feature request:

Could we maybe have the background be transparent?

EDIT:

I am getting an "ImgTexture Leak: xx" error on exit. Where xx is a random number. I've gotten 47 and 31 so far. Also, it seems that this component freezes foobar at times? I load up foobar, and things are responsive for about 10 seconds until Chronflow starts loading covers... then foobar freezes.
Song List: keikoniumboards.ke.funpic.org/files/songlist.html

Chronflow

Reply #327
Is there a way to get this to work with embedded album art?

Chronflow

Reply #328
I believe it's possible and on the todo list. I think bubbleguuuum's plugin was able to read embedded art

Chronflow

Reply #329
Everything works great for me!



A request maybe for the future :

Would it be possible to :
1) customise reflect on the "ground"?
2) add underlay and overlays to the covers? In order to flow cd cases and not just the covers
3) add a customisable fade in/out for the first and last covers
4) be able to choose the gap between covers (i can't see the covers being just before and just after the one which is selected)
5) be able to have Artist and album names not on the same line

Exemple of how it is with the CD case :


Keep the excellent work up

Chronflow

Reply #330
Quote
Radeon X1600 SE with Omega drivers version 3.8.442.

I guess that's the problem. I use an opengl feature that no game is using. (OpenGl allows me to get the element under the cursor by rendering a hidden frame - that's perfect for me, since it is very easy to implement and 100% accurate, but that's absolutely unusable for a game). These "gaming drivers" might not implement that correctly.
Yep, you're right, or at least close enough.
I removed Omega drivers and installed latest Catalyst (8.3). As a result, the freeze time was reduced to just a second. But it's still there.

Chronflow

Reply #331
Quote
I put this component into my Panels UI theme where I have a group of other panels that I can switch to and from. In other words, I have assigned this panel a PVAR in a list of other panelsl/pvars. However, when I switch to this one, it likes to stay on top of all the other ones.

This is kind of hard to explain, but basically once I switch to the coverflow, I can't switch back to any other panels because the coverflow stays ontop. The panel IS switched, just the coverflow remains visible.

I guess that's a bug of panels ui. It's a very buggy and badly implemented component, so this wouldn't surprise me.


Quote
I am getting an "ImgTexture Leak: xx" error on exit. Where xx is a random number. I've gotten 47 and 31 so far. Also, it seems that this component freezes foobar at times? I load up foobar, and things are responsive for about 10 seconds until Chronflow starts loading covers... then foobar freezes.

Why does chronflow start to load covers after 10 seconds? It should that instantly.

Quote
Quote
Is there a way to get this to work with embedded album art?
believe it's possible and on the todo list. I think bubbleguuuum's plugin was able to read embedded art
Sry, not gonna happen. I don't like embedded art (it's reduntant and unnecessarily difficult to handle - but I'm not going to discuss about this), so I won't spend time to implement this.

Quote
customise reflect on the "ground"?
More details, please.

Quote
add underlay and overlays to the covers? In order to flow cd cases and not just the covers
add a customisable fade in/out for the first and last covers
On the todo list.

Quote
be able to choose the gap between covers (i can't see the covers being just before and just after the one which is selected)

That's completely possible. That's what the cover display tab is for.

Quote
be able to have Artist and album names not on the same line
Just insert $crlf() in your formating string.

Quote
Yep, you're right, or at least close enough.
I removed Omega drivers and installed latest Catalyst (8.3). As a result, the freeze time was reduced to just a second. But it's still there.
Sry - I don't have any idea at all what might cause this.

Chronflow

Reply #332
Quote
I put this component into my Panels UI theme where I have a group of other panels that I can switch to and from. In other words, I have assigned this panel a PVAR in a list of other panelsl/pvars. However, when I switch to this one, it likes to stay on top of all the other ones.

This is kind of hard to explain, but basically once I switch to the coverflow, I can't switch back to any other panels because the coverflow stays ontop. The panel IS switched, just the coverflow remains visible.

I guess that's a bug of panels ui. It's a very buggy and badly implemented component, so this wouldn't surprise me.

basically im doing the same thing and it works fine. so i guess the problem lies with your panels code.
if the code for chronflow is in a trackdisplaypanel try putting it in the main layout...or post again with more info in the panelsui thread and i can try to help with finding a solution...

Chronflow

Reply #333
i never see or hear that panelsUI was buggy (for las official release which is 0.13.8, but thru for the last release  beta 0.14.12because the author has suddenly disappear, and brings a lot of news), except from people who don't use it or doesn't know how works scripting code.

it would be to be said.

so back to Chronflow component

Chronflow

Reply #334
Quote
yes, but it modify playlist order and that is not clean

Have a look at the options for foo_trackpos
Sry, I'm not going to duplicate the functionality of my plugins ^^.


i have looked at the options but no choice that Not affect the active playlist found

it copy or moves the selected song in the playlist to play it after current playing track, how should i do ?

thanx by adavnce

Chronflow

Reply #335
Quote
I put this component into my Panels UI theme where I have a group of other panels that I can switch to and from. In other words, I have assigned this panel a PVAR in a list of other panelsl/pvars. However, when I switch to this one, it likes to stay on top of all the other ones.

This is kind of hard to explain, but basically once I switch to the coverflow, I can't switch back to any other panels because the coverflow stays ontop. The panel IS switched, just the coverflow remains visible.

I guess that's a bug of panels ui. It's a very buggy and badly implemented component, so this wouldn't surprise me.


Quote
I am getting an "ImgTexture Leak: xx" error on exit. Where xx is a random number. I've gotten 47 and 31 so far. Also, it seems that this component freezes foobar at times? I load up foobar, and things are responsive for about 10 seconds until Chronflow starts loading covers... then foobar freezes.

Why does chronflow start to load covers after 10 seconds? It should that instantly.


No other panel does it in Panels UI. I don't find Panels UI buggy at all (it is in non-english OS's I hear, but that doesn't affect me). I'll try and resolve it myself for now .

And it starts to do it after a few seconds because Panels UI is loading everything else, then it loads Chronflow, and then it starts loading the covers. As soon as Chronflow is loaded, the covers load tho.
Song List: keikoniumboards.ke.funpic.org/files/songlist.html

Chronflow

Reply #336
Quote
customise reflect on the "ground"?
More details, please.

Length of the reflecting surface, power of reflection.

Quote
add underlay and overlays to the covers? In order to flow cd cases and not just the covers
add a customisable fade in/out for the first and last covers
On the todo list.

Nice!

Quote
be able to choose the gap between covers (i can't see the covers being just before and just after the one which is selected)

That's completely possible. That's what the cover display tab is for.

Nice! I guess i'll have to check again, i didn't notice this could be done.

Quote
be able to have Artist and album names not on the same line
Just insert $crlf() in your formating string.

Great, thanks!

Chronflow

Reply #337
I currently use this config.

Code: [Select]
// General Notes:
// Most of these functions return an array with 3 elements
// These are the x,y,z coordinates in 3d-space
// x is left to right
// y is bottom to top
// z is front to back


/************************* COVER DISPLAY *****************/
// These functions define the Display of the single Covers
// The given parameter coverId is a floating point number.
// It is 0 for the center cover, 1 for the one right
// beneath it, -1 for the one on the left side and so on.
// During movement the values float between the integer
// values.
function coverPosition(coverId){
   var x, y, z;
   y = 0;
   if (Math.abs(coverId) <= 1){ // The centered cover
      z = 1 + 3 * (1 - Math.abs(coverId));
      x = coverId;
   } else { // The covers on the side
      z = 1 + (Math.abs(coverId)-1) * 1;
      x = 1 + 0.5 * (Math.abs(coverId)-1);
      if (coverId < 0)
         x *= -1;
   }
   return new Array(x, y, z);
}
// return array is (angle, x, ,y, z) - this rotates
// the cover *angle* degrees around the vector (x,y,z)
// With (0,0,0,0) the cover is parallel to the y-z-Plane
function coverRotation(coverId){
   var angle;
   if (Math.abs(coverId) < 1){ // The centered cover
      angle = coverId * -70;
   } else { // The covers on the side
      if (coverId > 0)
         angle = -70;
      else
         angle = 70;
   }
   return new Array(angle, 0, 1, 0);
}

// Sets which point of the cover coverPosition() defines
// (-1,-1) means bottom left, (0,0) means center,
// (1,1) means top right, (0, -1) means bottom center etc.
// The cover is also rotated around this point.
function coverAlign(coverId){
   return new Array(0, -1);
}

// Defines the the size boundaries for the cover.
// Aspect ratio is preserved.
// Return Array is (widht, height)
function coverSizeLimits(coverId){
   if (Math.abs(coverId) < 1){ // The centered cover
      var w, h;
      w = 1;
      h = 1;
      // Shrinks the centered cover to a height of 1
      if (Math.abs(coverId) > 0.5)
         h = 1 + (Math.abs(coverId) - 0.5)*2;
      // Allows the centered cover to have a width of 2.5;
      if (Math.abs(coverId) < 0.5)
         w = 1 + (0.5 - Math.abs(coverId))*3;
      return new Array(1.35, 1.35);
   } else { // The covers on the side
      return new Array(1, 2);
   }
}

// Defines the range of covers to draw.
// Return array is (leftmostCover, rightmostCover)
// This interval shouldn't be larger than 80
// The center cover is 0.
function drawCovers(){
   return new Array(-20, 20);
}


// In which direction should the fov be expanded/shrinked
// when the panel is resized?
// If this returns (0,1), the height is fixed.
// If this returns (1,0), the width is fixed.
// You can also return stuff like (0.5,0.5) or (7, 3)
// The values determine how important it is for this
// dimension to stay fixed.
function aspectBehaviour(){
   return new Array(0,1);
}

/************************** CAMMERA SETUP ****************/
// Position of the viewport
function eyePos(){
    return new Array(0, 0.6, 6);
}
// Defines the point for the eye to look at
function lookAt(){
   return new Array(0, 0.6, 0);
}
// Used to rotate the view.
// The returned Vector points upwards in the viewport.
// This vector must not be parallel to the line of sight from the
// eyePos point to the lookAt point.
function upVector(){
   return new Array(0, 1, 0);  
}

/************************** MIRROR SETUP *****************/
function showMirrorPlane(){
   return true; // return false to hide the mirror
}
// Any Point on the Mirror Plane
function mirrorPoint (){
   return new Array(0, 0, 0);
}
// Normal of the Mirror Plane
function mirrorNormal (){
   return new Array(0, 1, 0);
}

Chronflow

Reply #338
Could you please post a screenshot of what it looks like?

Chronflow

Reply #339
Hi!

PanelsUI, again:

Foo:chronflow Error
Failed To Register The Window Class.

Maybe you have found the problem for that (remove PanelsUI is not a solution , and I have no problems in CUI!).
Let's have a look at new build!

Bye

Chronflow

Reply #340
When I quit  foobar i have an error :
Release OF Rc Failed. (main Win)

I have see that a some people have it

When i make a layout with column ui i have an error with a problem of texture

Nice work

Chronflow

Reply #341
crash report:

will crash instantly when reload the source (or starting foobar) if the cover source contains:
$replace(%path%,%filename_ext%,)..\cover.jpg

Chronflow

Reply #342
Quote
i never see or hear that panelsUI was buggy (for las official release which is 0.13.8, but thru for the last release beta 0.14.12because the author has suddenly disappear, and brings a lot of news), except from people who don't use it or doesn't know how works scripting code.

Well, this plugin is special in many ways (it uses multithreading and opengl eg.), so it runs into more design mistakes of panelsUi than other panels. But actually it doesn't matter if you believe it or not ^^.

Quote
i have looked at the options but no choice that Not affect the active playlist found

it copy or moves the selected song in the playlist to play it after current playing track, how should i do ?

I thought that was what you wanted? What are you looking for? It is by design of foobar that you can only play songs that are in some playlist.


Quote
No other panel does it in Panels UI
Did you have a look at all the problems, bubblegum had with panelsui?


Quote
customise reflect on the "ground": Length of the reflecting surface, power of reflection.

The reflecting surface has no length - it spawn the whole "universe". Power of reflection is depentant on coversize which can be tuned.


Quote
will crash instantly when reload the source (or starting foobar) if the cover source contains:
$replace(%path%,%filename_ext%,)..\cover.jpg

Well, it shouldn't crash, but that's not the right way to it anyways. This will do what you want:
$replace(%path%,$directory(%path%,1)\%_filename_ext%,)cover.jpg

Chronflow

Reply #343
Thanks McMusic, I love it!

Chronflow

Reply #344
Can i show the current playlist.
Has there or Can you add, a possibility to switch between the media library and the current playlist.

Chronflow

Reply #345
I can't get this to load at all.  The last version that worked for me was 1.1!

this is what I get:

[a href="http://xs.to/xs.php?h=xs126&d=08143&f=capture755.png" target="_blank"]

Chronflow

Reply #346
Hi Chronial,

just a bugg to notice : when changing track just after having changing active playlist, cover doesn't change immediatly, i have to press F6 to update it or wait for the delay i have set up to refresh it ...
bugg or normal ? cause in main case, when i don't change the active playlist, it refresh immediatly th main cover when changing track...

Bye

Chronflow

Reply #347
Hey Chronial,

Thank you for your efforts.

I have been trying to make the component work on my work's laptop for a couple of days now. With not no payoff at all.

So, last night, I finally managed to get back home, from work, early enuf to try it out on my desktop machine.
And it worked without a sing error massage, whether starting up, or shutting down.

I was even surprised by how it works harmoniously with UI Panels, mouse scrolling and every thing...
I give you five thumb up for that. 

But... Ive noticed some inconsistency in the component, based on the following assumptions:

My first assumption is that the component browses the library and not the playlist.
If my first assumption is correct, then, my second assumption is that, the component is supposed to load available covers for all library items, grouped of cause.

If thats the case, then the populating of covers is not consistent, and I will break it down:
In my initial load, my playlist had about three albums in it. The coverflow picked up all the entries from the database, but only loaded covers for the albums that are in the playlist. 

Then I added more albums to the playlist and restarted foobar. It loaded covers based on what is in the playlist. Then, I added all my music collation to the playlist and restarted, it loaded all covers accordingly. That is, covers for all library items, even if I cleared the playlist. Now it loads all covers, not based on the playlist, but the library, which its correct based the above assumptions. 

Is this a bug, or is it meant to work this way?
A teacher is a student in denial.

Chronflow

Reply #348
Quote
In my initial load, my playlist had about three albums in it. The coverflow picked up all the entries from the database, but only loaded covers for the albums that are in the playlist.

Then I added more albums to the playlist and restarted foobar. It loaded covers based on what is in the playlist. Then, I added all my music collation to the playlist and restarted, it loaded all covers accordingly. That is, covers for all library items, even if I cleared the playlist. Now it loads all covers, not based on the playlist, but the library, which its correct based the above assumptions.

Well, from my point of view that is simply impossible ^^. I do _never_ access the playlist anywhere in my code. My plugin has no way to even know what's in the playlist and what's not. I guess there was a problem with you database got fixed by adding all the songs to the playlist. Otherwise it's a foobar bug. My plugin can by no means cause that behaviour itself.

Chronflow

Reply #349
I don't know if this is the right thread for this question, but perhaps here are some people who can help me:

I use a custom progress bar, taken from fooblog:
Code: [Select]
$drawrect($eval(%_width%/6),$eval(%_height%-56),$eval(%_width%/6*4),14,brushcolor-0-0-0 pencolor-50-50-50)
$puts(progress,$muldiv(%playback_time_seconds%,$eval(%_width%/6*4-8),%length_seconds%))
$ifgreater($get(progress),0,
$drawrect($eval(%_width%/6+4),$eval(%_height%-52),$get(progress),6,brushcolor-50-50-50 pencolor-50-50-50)
,)


When I start a song by double-click from the playlist or double-click in the album list, everything works fine. When I double-click on a cover in the chronflow panel, the progress bar just doesn't appear. The static frame (first code-line) is there, of course, but the progress bar itself (last code-line) won't show up. The only way to make the bar reappear is restarting the song from the playlist or album list.

Any ideas what I've done wrong?