Skip to main content

Topic: YouTube Track Manager Discussion (Read 6539 times) previous topic - next topic

0 Members and 1 Guest are viewing this topic.
  • WilB
  • [*][*][*][*][*]
YouTube Track Manager Discussion
YouTube Track Manager

YouTube Track Manager in conjunction with the foo_youtube plug-in enables streaming content within foobar2000.

Tracks can be chosen based on what’s popular or albums selected using last.fm and MusicBrainz discographies. If preferred you can prioritise playing your own music over adding YouTube links. Click tracks or albums to load. YouTube links can be played as audio only or as video.

YouTube Track Manager also offers auto-pick radio modes for artist, genre, similar artists and similar songs playback. These use track popularity data from external sources (last.fm + echonest) or your own data (media library radio).

A nowplaying panel (toggle display with yT button) shows artist, cover & YouTube pictures and provides track & radio mode info. Mouse left click toggles display type. The nowplaying panel can be set to image only (mouse middle click) so it acts like an albumart viewer for any music, if no longer wish to look at lists etc. It can also cycle through multiple artist images.

See the readme for full info.

Requirements

foo_youtube
JScript Panel

Optional components

m-TAGS (foo_tags).

m-TAGS enables automatic generation of m-TAGS files using album track lists from MusicBrainz and last.fm. If the foobar2000\yttm\albums folder is added as a monitored music folder in preferences\media library the albums will show in the media library. This process can be enabled/disabled at any time.

Playback statistics (foo_playcount). This is recommended for optimal performance of the media library radio. The media library radio also works best where you have a reasonable number of tracks to pick from (nowplaying panel shows pool size).

The versions of these components required, and any requirement changes, will be kept up to date in the download link location.

Set-up

Installation:  Add a JScript Panel to the layout in the usual way. Click the JScript panel (or right click and choose configure) to open the editor. Use the tools button to import the YouTube Track Manager script. Finally, it is recommended to optimise settings under foobar2000\preferences\shell integration : (1) Uncheck "Bring to front when adding new files" to ensure that foobar2000 does not grab focus away from other applications. (2) If the default %path_sort% is present in "Sort incoming files by:" change it to something better like %album artist% - %album% - %tracknumber% - %title% to ensure album tracks are loaded in the correct order.

Many options are on the YouTube Track Manager right click menu. Other options are in panel properties (accessed from the right click menu)

Always check near to the end of this thread for the latest download link.



YouTube Track Manager 2.4
  • Last Edit: 21 January, 2016, 02:07:35 PM by WilB

  • WilB
  • [*][*][*][*][*]
Re: YouTube Track Manager Discussion
Reply #1
New Version: YouTube Track Manager 2.5

Fixed a few minor draw issues

YouTube Track Manager 2.5

  • widerock
  • [*][*][*]
Re: YouTube Track Manager Discussion
Reply #2
I'd like to know how I can reduce the "Left" border width.
I noticed that the border parameter in panel properties is about "Top' border width.
I use this YouTube Track Manager in the panel of somewhat narrow width. So, I want to use the whole panel width as YouTube Manager width.

  • WilB
  • [*][*][*][*][*]
Re: YouTube Track Manager Discussion
Reply #3
The border does control the sides. However, if the scrollbar is shown the script applies a minimum to the left margin to balance the space on the right such that the text and horizontal lines etc are properly centred horizontally. I had previously tried doing it other ways, but these ended up not looking right with a discrete scrollbar... To have zero width at the sides, you can hide the scrollbar, set the border to 0 and use the mouse wheel for scrolling:



HTH
  • Last Edit: 29 January, 2016, 07:42:26 AM by WilB

  • zeremy
  • [*][*][*][*]
Re: YouTube Track Manager Discussion
Reply #4
I'd like to know how I can reduce the "Left" border width.
I noticed that the border parameter in panel properties is about "Top' border width.
I use this YouTube Track Manager in the panel of somewhat narrow width. So, I want to use the whole panel width as YouTube Manager width.

If you are using ColumnsUI , use Panel Stack Splitter with a Forced Layout.



Left: -25
Width : $add(%ps_width%,25)

  • Last Edit: 29 January, 2016, 08:31:25 AM by zeremy

  • widerock
  • [*][*][*]
Re: YouTube Track Manager Discussion
Reply #5
The border does control the sides. However, if the scrollbar is shown the script applies a minimum to the left margin to balance the space on the right such that the text and horizontal lines etc are properly centred horizontally. I had previously tried doing it other ways, but these ended up not looking right with a discrete scrollbar... To have zero width at the sides, you can hide the scrollbar, set the border to 0 and use the mouse wheel for scrolling:
Thank you for your help. That is enough for my usage.

  • widerock
  • [*][*][*]
Re: YouTube Track Manager Discussion
Reply #6
If you are using ColumnsUI , use Panel Stack Splitter with a Forced Layout.

Left: -25
Width : $add(%ps_width%,25)
I'm using DUI. When I use CUI, I'll try your suggestion. Thank you.

  • WilB
  • [*][*][*][*][*]
Re: YouTube Track Manager Discussion
Reply #7
New Version: YouTube Track Manager 2.6

Fixed error regression

Various minor refinements

YouTube Track Manager 2.6

  • samithaj
  • [*][*][*]
Re: YouTube Track Manager Discussion
Reply #8
can you add a option similar in soft playlists :- "Also include partial title matches" or give option to use the title formatting when matching local files
for example:
search string by last.fm:-    "Alesso - Heroes"
matched with:-    "Alesso feat. Tove Lo - Heroes (We Could Be)" in my library 

Removing parentheses may cause to include tracks like "(Acoustic)" but we can use "Track preference" option to negate that :)

I really appreciate continuous improvement on both of your scripts 
Great work!!! :)
  • Last Edit: 07 February, 2016, 04:58:52 AM by samithaj

  • samithaj
  • [*][*][*]
Re: YouTube Track Manager Discussion
Reply #9
Add to the previous comment
This is regarding Top similar songs
I use this feature a lot when finding new songs and also find the songs in my library to be queued to  listen next, which is really cool 8)
In case of free song recommendations (spotify ,deezer)  this has been most promising method to find new music for me  :)

I realized that songs songs in last.fm database are linked to titles with "feat." artist and some are not
and some are  linked to feat.xxx "and" yyy rather than to feat.xxx "&" yyy
so it's sad to see this causes to  "Unrecognized song" just because of spelling difference

so if you could implement a set of title formatting (to check another if one fails)

to look for this slimier tracks so we can guarantee a result.
As per local file searching
I think a another set of title formatting can be to used in the local file matching too
Code: [Select]
user.lastFm TF artist 1: $iflonger($trim($substr(%artist%,1,$sub($strstr(%artist%,' feat.'),1))),2,$trim($substr(%artist%,1,$sub($strstr(%artist%,' feat.'),1))),)  //to remove feat. artists

user.lastFm TF artist 2:some title format  //to add feat. artists

likewise
user.local TF artist 1:
user.local TF artist 2:
user.local TF title 1:
user.local TF title 2:
I donno is this possible but it'll be really helpful to get correct similar track results
  • Last Edit: 07 February, 2016, 09:57:33 AM by samithaj

  • WilB
  • [*][*][*][*][*]
Re: YouTube Track Manager Discussion
Reply #10
Quote
matching local files...

Simplest solution for local file matching is to just split the artist and title name, so as to remove the unwanted extra info that's causing the match to fail. This is best done with regex since it's past titleformatting.

The code snippet adds two new properties:

Library Use Core Names X-0 Title-1 Artist&Title-2; default: 1
Library Name Split; default: \(|\[|feat

Explanation of Library Name Split regex:

| means OR

So default will split the string at first instance of:
( OR
[ OR
feat

Thus the core name will be the part of the name preceding the split, e.g.

"The Real Thing [Wendy and Lisa Flow Jam Mix]" becomes "The Real Thing"
"Rich Girl (feat. Eve)" becomes "Rich Girl"

You can edit it by adding more etc. Note that special regex characters have to be escaped, e.g.
\( is used not (
\[ is used not [
Its case insensitive and is subsequently trimmed of spaces.

Set Library Use Core Names as needed.

Note that the code snippet doesn't affect album track loading in its current form. Also the artist is checked once for either the original name or, if Library Use Core Names is set to 2, the split name. Running artist queries more than once adds too many permutations.

Title is checked 1st for the original library name and if there is no match it is then checked for the split name. Since mostly last.fm seems to manipulate the title probably setting Library Use Core Names to 1 is best.

Note that I haven't extensively tested it. To use replace the whole of "this.in_library = function ...", lines 282 -290 with the snippet below.

HTH

You can tweak it further so it best suits your needs.

Code: [Select]
    var spl = window.GetProperty(" Library Name Split", "\\(|\\[|feat");
    var simple = window.GetProperty(" Library Use Core Names X-0 Title-1 Artist&Title-2", 1);
    this.in_library = function(p_artist, p_title, i) {
        if (!p_artist || !p_title) return false;
        if (simple == 2) p_artist = p_artist.split(RegExp(spl, "gi"))[0].trim();
        if (p_artist != o_artist || !timer.lib) {if (db_art) db_art.Dispose(); try {db_art = fb.GetQueryItems(this.get_lib_items(), "artist IS " + p_artist + " AND NOT %path% HAS !!.tags")} catch(e) {db_art = p.items}; db_art.OrderByFormat(fb.TitleFormat("$rand()"), 1); db_art.OrderByFormat(ml.item_sort, ml.dir);}
        var n = false, p1 = ""; o_artist = p_artist; p_title = p_title.strip(); timer.lib_upd();
        for (var j = 0; j < db_art.Count; j++) if (tf_t.EvalWithMetadb(db_art.Item(j)).strip() == p_title) {if (db_art.Item(j).Path.slice(-5) != ".tags") {p1 = db_art.Item(j).Path; n = true; break;} else if (!p1) p1 = db_art.Item(j);}
        if (!n && p1) {p1 = tf_i.EvalWithMetadb(p1); if (p1.indexOf("file://") != -1) {p1 = p1.replace("file://", ""); if (p.file(p1)) n = true}}
        if (!n && simple == 1) {
            p_title = p_title.split(RegExp(spl, "gi"))[0].trim();
            for (var j = 0; j < db_art.Count; j++) if (tf_t.EvalWithMetadb(db_art.Item(j)).strip() == p_title) {if (db_art.Item(j).Path.slice(-5) != ".tags") {p1 = db_art.Item(j).Path; n = true; break;} else if (!p1) p1 = db_art.Item(j);}
            if (!n && p1) {p1 = tf_i.EvalWithMetadb(p1); if (p1.indexOf("file://") != -1) {p1 = p1.replace("file://", ""); if (p.file(p1)) n = true}}
        }
        if (n) p.add_loc.push({"path":p1,"id":i});
        return n;
    }

For the other point regarding "Unrecognized song", I thought that's why you requested the title-format options that I already added for you - since these determine what artist - title is actually used for the look up at last.fm. So its up to you how you use title-formatting to manipulate the look up. I am not keen on sending a second request to last.fm with an alternative spelling that may or may not be any better. Autocorrect is already used so simple differences are handled. Consider choosing tracks where you want similar songs carefully.
  • Last Edit: 07 February, 2016, 01:49:45 PM by WilB

  • samithaj
  • [*][*][*]
Re: YouTube Track Manager Discussion
Reply #11
Thanks for this WilB !!
had to change line 10
if (!n && simple == 1) {
to
if (!n && simple == 2) {
to Artist&Title to work
it works for some instances
artist - title feat.xxx matches to artist - title

but it doesn't match
artist - title feat.xxx  to artist feat.xxx - title
which is the type my most files are tagged (by picard)
can i do this by RegEx??

as for the Top similar songs lookup
I'm already using title-formatting to manipulate the lookup, but the thing is
some songs are linked to titles with "feat." artist and some are not (donno why last.fm fixes this)
i understand if you don't want to send a second request
  • Last Edit: 08 February, 2016, 08:37:58 AM by samithaj

  • WilB
  • [*][*][*][*][*]
Re: YouTube Track Manager Discussion
Reply #12
@samithaj. I made some improvements + implemented

New Version: YouTube Track Manager 2.7

Media Library Track Matching

Added option to properties: "Library: Include Partial Matches 0 or 1" with separate settings for artist and title (set to 1 to enable).

The partial match criteria can be configured in properties with "ADVANCED.Partial Match Config" - see read me for details (search for reg). Fuzzy matching and/or RegExp clean-up are available.

Similar Song Look Ups

The song name is now directly editable, so extraneous info that could be in the auto-search name, e.g. (feat. artist), and that might result in "Song Unrecognised", can be removed. Use | to separate artist and title.

YouTube Track Manager 2.7
  • Last Edit: 10 February, 2016, 01:00:05 PM by WilB

  • samithaj
  • [*][*][*]
Re: YouTube Track Manager Discussion
Reply #13
Media Library Track Matching
I had to change  the order of matching
2) Fuzzy  3)RegExp to 2) RegExp 3)Fuzzy in order to title truncating to work
before value "n" has been "true" before RegExp step happens so RegExp step will not happen anyway
dunno what really happened though :/

And for case of matching,
artist - title feat.xxx  to artist feat.xxx - title
I changed line 287 (artist searching IS to HAS)
Code: [Select]
if (!p_artist || !p_title) return false; var q = "IS "; if (trunc_art) {p_artist = p_artist.cut().trim(); q = "HAS ";}

to
Code: [Select]
if (!p_artist || !p_title) return false; var q = "HAS "; if (trunc_art) {p_artist = p_artist.cut().trim(); q = "HAS ";}

this will mess up the result in some rare cases(non for so far) but right now i'm really satisfied with this :)
Couldn't thank you enough for you for helping me to get this result  :D

Quote
Similar Song Look Ups
This is really nice when there is no match
and spend some time reading "YouTube Track Manager Readme.txt" and found some interesting stuff that i did't know before O:) , you've done a great job documenting this also 8)
  • Last Edit: 10 February, 2016, 04:15:43 PM by samithaj

  • samithaj
  • [*][*][*]
Re: YouTube Track Manager Discussion
Reply #14
I found this API that can get charts from Billboard.com (aparently it  scrapes data from thier site-  but it's frequantly updated)
so no direct API. I tried to host this in Google app engine and get output as JSON or some format so WSH panel can read this but i'm having some trouble in getting it to work :/
Is there some way python script and foobar2000 can communicate ??
It'll be great if we can play billboard charts from foobar :)

  • WilB
  • [*][*][*][*][*]
Re: YouTube Track Manager Discussion
Reply #15
^ Sorry but I can't help on this occasion.

New Version: YouTube Track Manager 2.8

Minor optimisations

YouTube Track Manager 2.8
  • Last Edit: 15 April, 2016, 11:30:59 AM by WilB

  • FooChick
  • [*]
Re: YouTube Track Manager Discussion
Reply #16
Thanx for 2.8. - and the very informative Read Me file!
You're doing a great job. Can't live without Y.T.M.  :-)

  • WilB
  • [*][*][*][*][*]
Re: YouTube Track Manager Discussion
Reply #17
New Version: YouTube Track Manager 2.9

CHANGELOG

AUTO-PICK RADIO MODES

Last.fm

Music recommendation is now powered exclusively by last.fm, following the demise of the Echonest api. The listening habits of millions of music lovers are analysed to help you find your new favourites. Loads YouTube links (audio only & video) or available library tracks.

Offers single artist, genre/top tags, similar artists or similar songs styles of discovery

Library radio

This avoids YouTube links and uses your own track popularity data in conjunction with in-built algorithms to auto-pick tracks. Offers single artist, genre/top tags and similar artists styles of playback.

Both last.fm and library radio modes are great for listening to music of a chosen style

ALBUM MODES and m-TAGS AUTO-GENERATION

Minor refinements

TOP 40 CHART

Added item to right-click menu to get the UK top 40 singles chart. Loads YouTube links etc into a playlist. The on-line chart source employed updates weekly on Fridays after ~1900 UK time.

If YouTube links loaded are not to your liking, then the main foobar2000 context menu\Youtube Source has options for replacing them with other links. Alternatively, YouTube Track Manager can black list them to permanently stop particular links from being reloaded by the script.

YouTube Track Manager 2.9
  • Last Edit: 31 May, 2016, 08:31:20 AM by WilB

  • WilB
  • [*][*][*][*][*]
Re: YouTube Track Manager Discussion
Reply #18
New Version: YouTube Track Manager 3.0

Fixed regression in album mode.

YouTube Track Manager 3.0

  • Elevory
  • [*]
Re: YouTube Track Manager Discussion
Reply #19
This is really fantastic, thank you.

  • MojoBass
  • [*]
Re: YouTube Track Manager Discussion
Reply #20
I agree - it is a fantastic plugin!!

Two ideas came to my mind when using the radio mode

1. add an optional additional filter for the selected youtube titles. I found that the chosen youtube tracks vary strongly with their sound quality (from cd versions to live versions with 'improvable' sound quality). This reduces fun when I just use it as a radio. Of course the question is which available parameter would correlate to sound quality... I think two ways could improve the selection: one would be to set a minimum number of youtube views (e.g. 100k) - as I found that poor sound quality often has less views- , another would be to exclude tracks with specific key words in the youtube description (e.g. 'live').

2. as I do not rate my library tracks - is there the possibility to have a Last.FM-selection for tracks purely from the library (which of course would mean to jump to next Last.FM proposed track until available in the library)?

But again: I really love it already as it is!

  • YOGAM
  • [*]
Re: YouTube Track Manager Discussion
Reply #21
That's such an amazing script ! Thank you very much WilB.

However, I have a question, I'd like to create "similar artists Radios" using only my own music library, exept for bootlegs (because of the usualy poor quality).
In order to pick only local tracks, I used properties to change SYSTEM.Library Radio to "true". It seems to work fine (guess I was lucky). However, so far, I could exlude bootlegs tack.
Is there a way to do this ? All the bootleg tracks have a specific tag (%BOOT% tagged with 'Bootleg") so I guess I have to find a way to exclude all the tracks from my library including the %BOOT% tag.
Any help would be greatly appreciated. Thanks !
 

  • WilB
  • [*][*][*][*][*]
Re: YouTube Track Manager Discussion
Reply #22
New Version: YouTube Track Manager 3.1

SUMMARY: Added new library radio mode & the ability to create Soft Playlists

CHANGELOG

IMPROVED AUTO-PICK RADIO MODES

Three modes are now offered. The mode is set using the right-click menu: "New Radio...\> Radio..."

Last.fm (similar to before)

Offers music recommendation powered by last.fm. The listening habits of millions of music lovers are analysed to help you find your new favourites. Loads YouTube links (audio only & video) or available library tracks

Offers single artist, genre/tag, similar artists or similar songs styles of discovery

Library Radio

Avoids YouTube links & now has two modes. Both offer single artist, genre/tag & similar artists styles of playback with the iSelect mode also offering the similar songs style of playback

iSelect

Offers internet based selection of tracks from the media library. The library is filtered for tracks in last.fm top tracks lists. Last.fm playcounts & in-built algorithms are employed to bias towards playing the better tracks. This mode avoids the need to have foo_playcount installed to auto-pick library tracks based on track popularity data

Artist variety, which sets the target number of artists, and/or track popularity settings control the pool size of available tracks

Last.fm lists are cached so search speed should improve as local copies are used. To see the search progress, use the nowplaying panel (toggle with yT button). iSelect radio loads, and can be played, as soon as there are enough tracks with any outstanding searches added in the background

MySelect

Uses all your library tracks that match the radio type. "MySelect" employs your own playcounts or ratings & in-built algorithms to bias towards playing favourites or you can pick tracks randomly or by other parameters. Artist variety settings apply. This is the same as the previous library radio apart from a few minor refinements

SOFT PLAYLISTS

iSelect library radio can create Soft Playlists of last.fm top tracks found in the media library, from the lists it uses. These are last.fm related playlists, sorted by last.fm playcount, like those created by foo_softplaylists. You can then play them in any order you like. Soft Playlists can be created for top tracks of an artist, top tracks of a genre or certain tag, top tracks of similar artists & top tracks similar to a song

Offers flexible options + favourites menu + improved speed & robustness as cached last.fm top tracks lists become used

To create Soft Playlists use the right-click menu to:
(1) Set "New Radio...\> Radio..." to "iSelect / Save Soft Playlists"
(2) Choose the music...
(3) By default Soft Playlists activate on create; this behaviour can be changed in panel properties

To see the search progress, use the nowplaying panel (toggle with yT button). iSelect radio still creates & is available

A configurable timeout is available (panel properties: "ADV.Radio iSelect Search Timeout...)

ALBUM MANAGER and m-TAGS AUTO-GENERATION

Minor optimisations

TECHNICAL CHANGES

Nowplaying panel

ADD: Display of track pool sizes for all radio stations. Some refine as more loaded

ADD: New panel properties of "Nowplaying Font" and "Nowplaying Font Max Size". These together with "Image Size.." & "Border" settings make adjustment easier.

ADD: Customisable "Image [Artist] Folder Location" [save &/or load] to panel properties. Supports cycling of artist images, as before. Clicking an image or text toggles display modes

Radio

CHANGE: Improved radio playlist handling

ADD: Configurable radio names for "Last.fm Radio", "iSelect Radio" & "MySelect Radio"... personalise as required in panel properties: "Radio Names..."

ADD: Customisable "Genre/Tag" menu (panel properties: "ADV.Radio Genre/Tag Menu"). Tags can also be searched by typing in the "Open Tag Search..." on the same menu

ADD: Individual settings for 'Best Tracks' bias for all 3 radio modes (panel properties). Range: 10-fold (high) to 1 (no bias - random). High bias favours highly ranked tracks & low bias diversity; e.g. try turning down to 2-fold for more variety. 'Best Tracks' are those with highest last.fm playcount (last.fm & iSelect) or highest playcount, rating or other parameter (MySelect). Bias level affects how tracks are picked from a pool but doesn't change the pool size

ADD: Display of all last.fm feed sizes in panel properties. "Artist" values apply to each artist of "Similar Artists" etc styles. "Genre/Tag" Top Tracks & "Similar Song" defaults are higher as these are single lists. Cap limits apply (see documentation). Last.fm radio may lower the auto-pick range below the feed size for artists lacking sufficient popular tracks commensurate with the preset. For iSelect radio & Soft Playlists creation, the library is always analysed against the full set feed size, to give the best chance of finding a reasonable number of tracks

General

CHANGE: Simplified menus

ADD: YouTube 'Live' Filter. Use to reduce YouTube 'live' versions etc. This is a keyword etc filter applied to the YouTube title & description. Enable/disable in panel properties (default is enabled). It auto-disables if YouTube searches requires a keyword & so should work fine whenever YouTube links are requested. Also consider black listing unwanted YouTube versions for full control & enabling YouTube Track Manager to use the media library if you're only listening to audio ("Manage\Library" menu), so less YouTube links are required

ADD: Configurable YouTube link choice. Either favour those with the most views or most relevance (panel properties: "ADV.YouTube Prefer Most: Relevant-0 Views-1"). Default is relevance & unchanged from before, since in my tests so far it performed better

ADD: "ADV.Library Filter..." to panel properties. Normally this should be left blank to ensure YouTube Track Manager uses the whole media library. However, it enables certain categories of tracks to be excluded from the library copy used by YouTube Track Manager. Enter a query using foobar2000 query syntax. Ensure queries are valid and doing what you want, e.g. test with album list filter. Example usage: bootlegs, but not other tracks, have the field %boot%; bootlegs can then be excluded from the library copy used by YouTube Track Manager using "boot MISSING" (without quotes)

PANEL PROPERTIES, SETTINGS & FURTHER INFO

Always ensure comma "," separators are retained where used. If you break a panel property, it can be reset by delete -> apply. If more info is needed, search the documentation for keywords. The foobar2000 console should report website access issues

YouTube Track Manager 3.1
  • Last Edit: 04 September, 2016, 12:28:54 PM by WilB

  • YOGAM
  • [*]
Re: YouTube Track Manager Discussion
Reply #23
With the "MEDIA LIBRARY FILTERING" feature, I could exclude tracks coming from bootlegs (e.g : demos, lives...) from the library copy used by YouTube Track Manager . It's just great !

I'm sure many users will find this feature very useful, even if they don't have bootlegs in their music collection ( for instance, you can  use "MEDIA LIBRARY FILTERING" in order to exclude official live recordings).

Thanks WilB ! I'm very grateful you include this in your script !!

(BTW sorry I posted my last message on the wrong thread).
  • Last Edit: 05 September, 2016, 08:14:31 AM by YOGAM

  • WilB
  • [*][*][*][*][*]
Re: YouTube Track Manager Discussion
Reply #24
New Version: YouTube Track Manager 3.2

CHANGELOG

Improved iSelect library radio and Soft Playlists. These now use last.fm feeds that are auto-refined, where required, to give better track pools (like last.fm radio)
This behaviour can be switched off, e.g. to always build Soft Playlists from full set feeds like foo_softplaylists ("ADV.Feed..." in panel properties). "Refine" is best left on with last.fm radio

As always, if tracks are not popular enough or too popular, or Soft Playlists are too short or long, it's easy to choose a different preset from the menu

YouTube Track Manager 3.2