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: Biography Discussion (Read 223757 times) previous topic - next topic
0 Members and 3 Guests are viewing this topic.

Re: Biography Discussion

Reply #750

Cover image is working here as expected from your snippet. Note that it checks for a local or saved cover first & will only download if that's not found.

Of course, I realized that the script pulls the cover from the local folder, I really want the local file to be displayed in my playlist like everyone else, and in your panel the cover with the lastfm was displayed in parallel, for comparison, and also downloaded to the designated folder

Re: Biography Discussion

Reply #751
And I also don't understand how to update, I copy with a replacement, but the paths and other settings are not saved, as if a new installation

>>> c:\Portable App\Foobar2000\foo_spider_monkey_panel\packages\{BA9557CE-7B4B-4E0E-9373-99F511E81252}\

Re: Biography Discussion

Reply #752
How to make a ribbon not with circles but with squares? ffilmstrip

Re: Biography Discussion

Reply #753
Options > panel settings > image tab

The filmstrip setting you want are top right

Choose auto-fill for square or regular to keep aspect ratio

Re: Biography Discussion

Reply #754
@WilB    tell me the answer to my questions on the previous page?  Reply #698 Reply #699

Re: Biography Discussion

Reply #755
Updating a package should be as simple as importing the new biography zip (full instructions are in download location). I've sent you a pm with more info & a response to your other post.

Re: Biography Discussion

Reply #756

   - View by listeners: example patterns for library viewers:

Library tree:
Code: [Select]
$nodisplay{$sub(999999999,$replace([%Artist Listeners Last.fm%],',',,.,, ,)) - %artist%}[%Artist Listeners Last.fm% - ]%artist%|%album%|[[%discnumber%.]%tracknumber%. ][%track artist% - ]%title%

Album list:
Code: [Select]
[$replace(%Artist Listeners Last.fm%,',',,.,, ,) - ] %artist%|%album%|[[%discnumber%.]%tracknumber%. ][%track artist% - ]%title%

For Album list the sorting it's in ascending order. How can we sort in descending order ? For Library tree the sorting is ok

Re: Biography Discussion

Reply #757

   - View by listeners: example patterns for library viewers:

Library tree:
Code: [Select]
$nodisplay{$sub(999999999,$replace([%Artist Listeners Last.fm%],',',,.,, ,)) - %artist%}[%Artist Listeners Last.fm% - ]%artist%|%album%|[[%discnumber%.]%tracknumber%. ][%track artist% - ]%title%

Album list:
Code: [Select]
[$replace(%Artist Listeners Last.fm%,',',,.,, ,) - ] %artist%|%album%|[[%discnumber%.]%tracknumber%. ][%track artist% - ]%title%

For Album list the sorting it's in ascending order. How can we sort in descending order ? For Library tree the sorting is ok
You have to use the $sub(999999999 part. It does 9999... - X, so the greater X values will output lower final values... thus inverting the sort order. Btw you can play with sorting using Playlist Tools since it allows you to input a TF expression, so you can see in real live the changes in a playlist (and then copy back to any other plugin, the library views or into foobar2000 sorting contextual menu).

I may have copied it wrong, but you get the idea...
Code: [Select]
[$sub(999999999,$replace(%Artist Listeners Last.fm%,',',,.,, ,)) - ] %artist%|%album%|[[%discnumber%.]%tracknumber%. ][%track artist% - ]%title%

EDIT: note the $nodisplay is a library tree thing. If you sort by a value in other viewers, the value must be shown at the viewer! i.e. the listening count (reversed with 9999...) will be the first value on the previous example.

Re: Biography Discussion

Reply #758
Yes, now it's working,  @regor Thanks for explaining :)

Re: Biography Discussion

Reply #759
@WilB
I'm using your Biography script and intercepting the 'on_notify_data' event to update album and artist related data in my script. I'm using the name = "bio_getText" to refresh this data. Is there any way that I can distinguish between album reviews and artist biography texts being received? Ideally I'd like to test the info field contents to target my refresh operations. Any ideas?


Re: Biography Discussion

Reply #761
@snotlicker
Thanks for the reply. I'd already considered this approach but I don't like custom solutions - they get lost! Anyways I've done as you suggested and modified WilB's script (web.js - 4 lines). Just hope I remember to re-instate them on the next version. Thanks for the push though.

Re: Biography Discussion

Reply #762
Alternatively you can also add your own code to a new file and just include it on every release.

Callbacks can be wrapped, thus allowing you to add additional lines of code without touching the original one (or you may also replace the original code) (*).
Such example can be found in World-Map-SMP , attached it here for informative purpose.
You would have to remember to re-add the include line of your script into bio, but you can safely reuse it on future releases.
Code: [Select]
include('YOUR_PATH_OUTSIDE_BIO_PACKAGE\biography_mod_1_2_X_xxx.js');

(*) If you are replacing an specific switch case (instead of adding a new one), you may simply add a check and swap the order calling first your own version: (let's say you replace 'bio_XXX' instead of adding 'bio_focusPpt' like the example)
Code: [Select]
if (typeof on_notify_data !== 'undefined') {
const oldFunc = on_notify_data;
on_notify_data = function(name, info) {
onNotifyData(name, info); // Note it has been swapped with original callback position -oldFunc- on the js file example.
if (name === 'bio_XXX') {return;} // Always skips original callback when it's the replaced case
oldFunc(name, info);

}
} else {var on_notify_data = onNotifyData;}

Or you may simply add a cloned modified version of 'bio_getText' and call it 'bio_getText_YOURSUFIX', not needing at all to replace the original one. Then listen for that one in your scripts and done.

This method has the bonus of being easily expandable if you code additional things on the future. And you will never lose your changes by accident, since it's an external file to the package.

Re: Biography Discussion

Reply #763
This is a bit random and a little off-topic, but I've been searching for a replacement for the SoftPlaylists component for a long time since it's basically broken and unsupported these days.

So, my new idea to replicate some of what SoftPlaylists used to do is to bring "popularity" metadata right into the tags of my files. Then I could sort the playlist viewer using popularity, create smart playlists with it, etc. I've been experimenting with a newish tagging tool (OneTagger), that after suggesting to the developer, can now bring in Spotify's popularity score and tag it to the file's ID3 (lookups based on Artist/Title match), and it's working out great in my initial tests. For example, I can now use the tag score in combo with the Random Pools component to quickly make playlists (or autoplaylists) like "give me the top two rated tracks of each artist in xyz genre." 

Anyway, I'm also a user of SMP/Biography (thanks for this awesome script!), and its display of Last.fm scrobbles for tracks got me thinking if it could be leveraged for the same type of thing. Or if maybe it could be tweaked for use with Playlist Tools (which I don't have much experience with). So, query Last.fm for total scrobbles of a track, then tag it to the MP3 or Flac file using a custom tag ("Popularity") -- in more of a bulk updater kind of way. I wonder how hard it might be to leverage some of this code to do that?

Crazy idea, apologies for semi-off topic rambling...

Re: Biography Discussion

Reply #764
@Taynt3d I think it's a good idea . LastFm Artist listeners and LastFm Album listeners can be added to tags using Biography script , but LastFm listeners for a Track it's not possible until now, to add this data to tags. Hopefully it will be.

BTW , I used OneTagger a few weeks ago (and I tried again now) but I didn't noticed Spotify's popularity score .....How do you add that tag? Didn't noticed that in the settings....

Re: Biography Discussion

Reply #765
BTW , I used OneTagger a few weeks ago (and I tried again now) but I didn't noticed Spotify's popularity score .....How do you add that tag? Didn't noticed that in the settings....

I had an exchange with one of the developers, and he added it at my request! But not sure if it's in the official builds yet. You should be able to get the build with it added at this link (you need to be logged into GitHub to grab it).



Re: Biography Discussion

Reply #768
EDIT: note the $nodisplay is a library tree thing. If you sort by a value in other viewers, the value must be shown at the viewer! i.e. the listening count (reversed with 9999...) will be the first value on the previous example.

Already warned you about that at the bottom. You can't sort without also showing the value used for sorting, unless you are using a non native library viewer with extended TF expressions for sorting or not displaying a value. So you will always have a number at the beginning if using CUI or DUI viewer...

Re: Biography Discussion

Reply #769
For information Find & Play has a lot of the functionality that was present in foo_softplaylists, if Find & Play is used in one of it's library modes.

Next version of Find & Play should also have on the fly tagging for last.fm track scrobbles & listeners. It's a bit more relevant there than here in bio. I've already tagged mine!

Re: Biography Discussion

Reply #770
@regor sorry, I totally forgot about the last thing you wrote then.

@WilB  "Next version of Find & Play should also have on the fly tagging for last.fm track scrobbles & listeners"

  That's good news. I don't really care if this can be done with the bio script or Find & Play (I use both scripts).

Re: Biography Discussion

Reply #771
Hi. First of all thanks for the great job. I'm setting up this panel on an old skin and would like to know how I can add the review stars where the arrow points in the image.

Spoiler (click to show/hide)

Re: Biography Discussion

Reply #772
i already got it.  :)

Spoiler (click to show/hide)

Very good script, keep it up!

Re: Biography Discussion

Reply #773
I have a strange issue per image.

Biography panel displays correctly on play, but changes content while track is playing (no clear pattern of when; maybe on server connection?, but does not appear in console). The header switches to a different release and images default to empty.
Also seems to happen more consistently (every track) when app is in background.

If I reload the panel, display is correct again.

Re: Biography Discussion

Reply #774
maybe on server connection?

This seems to be the case - console does report - when allmusic server request returns not found the display changes.

"Biography Server: allmusic album review: ------: not found"