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: foo_skip: skip tracks that match a specified search query (Read 335172 times) previous topic - next topic
0 Members and 2 Guests are viewing this topic.

Re: foo_skip: skip tracks that match a specified search query

Reply #575
New version out with the change introduced in v1.17 removed...
Huge thanks, especially for your responsiveness !

... and instead timestamp parsing requires the time to include colons or dots.
Why this ?  Does that mean that %SKIP%=1 means skip the whole track ?
If it's the case, why not consider that everything else (including 1- and -1) mean skip from/to the specified time ?

Re: foo_skip: skip tracks that match a specified search query

Reply #576
... and instead timestamp parsing requires the time to include colons or dots.
Why this ?
To fix the original problem anamorphic had with his tag usage. Apparent skipping of a manually selected track (though it didn't fully skip it as it only played the first second).

Does that mean that %SKIP%=1 means skip the whole track ?
No, but you can use a skip query to achieve that. SKIP=1 alone in a tag with default config now means nothing.

If it's the case, why not consider that everything else (including 1- and -1) mean skip from/to the specified time ?
That is what the timestamp based skipping is meant for. But I realized I added my check to a wrong function in 1.24 and this kind of usage broke. New version with a fix is out. Though 1- now means nothing, used to mean skip after 1 second.
If you write SKIP=0:00.000001- the track will be skipped after playing it for a microsecond. Zero second timestamp isn't accepted here.

Re: foo_skip: skip tracks that match a specified search query

Reply #577
Oh, fantastic. Sounds like the best of both worlds!

Many thanks :)

Re: foo_skip: skip tracks that match a specified search query

Reply #578
Though 1- now means nothing, used to mean skip after 1 second.
That's not what I'm seeing.  1- skips the whole track after 1 second, without the need to add a : or a dot.  This is perfect for me, because most of my %SKIP% are integers.  So, please, don't change anything more !  ;-)
Thanks again !

Re: foo_skip: skip tracks that match a specified search query

Reply #579
Hi @Case ,
A stupid question from me: doest it look familiar to you: 30b06b29-13fa-12af-894b-63a99f642e02 ?
Why I am asking:
Recently I updated lots of plugs after more than a year. I wasn't paying much attention to my saved DSP chains, until I saw that I have "missing DSP: 30b06b29-13fa-12af-894b-63a99f642e02.
I started looking for what it could be and I think I could have Skip Tracks DSP in my chain, but I am not sure now, as it was changing as development of component was going... I noticed that in console I can read that foobar very often is making some strange operations like:
"2020-04-19 19:01:38.307 thread 4980
> Using decoder shim instead of DSP: Skip Track
and rarely:
2020-04-19 18:39:13.814 thread 2256
> Automatic resampling: using Resampler (PPHS)
but I do not have automatic resampling rules set...

Could this mess be caused by newest version Skip Track component?

Re: foo_skip: skip tracks that match a specified search query

Reply #580
The missing DSP GUID must be from the old Skip Track version but it looks like there's a single digit difference. Your post has "-12af-" but old source shows "-42af-". You can remove the DSP from the chain.

The first console message is foobar reporting that there's an otherwise invisible DSP-like decoder active.

The automatic resampler message doesn't come from Skip Track. Automatic resampling is available even if you haven't configured any rules for it. ReplayGain scanner for example uses it if you have True Peak scanning enabled or inaudible frequency filtering active.
DirectSound output uses it if you play a file with over 200 kHz sample rate.
My WASAPI shared output uses it for all content that differs from Windows mixer frequency.
My Waveform Minibar component uses resampling to upsample short samples to improve their visuals.

Re: foo_skip: skip tracks that match a specified search query

Reply #581
Thank you for the answer :)
Yes, it is 42af, my mistake. So I replaced old one with new one in my chains.
It is possible that I use True Peak scan and for sure I was playing with RG scanning recently.
So you solved all my doubts :)

Re: foo_skip: skip tracks that match a specified search query

Reply #582
Hi Folks,
it seems I'm to stupid to get it work  :(
I would like to skip every track after 10 Seconds, so my string is SKIP=10-
From my library I choose an album and send to new playlist, in playlist STRG-A and from Playback I choose add Skiptrack Bookmark.
Skip Tracks & use bookmarks is activated, but nothing happened.
I also tried 00:00:10- but didn't work.

What is wrong?

Regards

Re: foo_skip: skip tracks that match a specified search query

Reply #583
That's not how this component works. The skip query is performed for each track to check if that particular track is to be skipped. As you may have seen from documentation the component would by default skip all tracks that the user has rated with the worst one star rating.

And SKIP tag is to be placed inside each track where there are parts that you want to skip. For example a track may have spoken intro that you don't want to hear every time, you can add a SKIP tag to that track and make the component skip past it.

What is the purpose of wanting to skip 10 seconds of absolutely every track? If there's sensible need and no component allows to do that, I can make a component for it.


Re: foo_skip: skip tracks that match a specified search query

Reply #585
Hi Folks,
it seems I'm to stupid to get it work  :(
I would like to skip every track after 10 Seconds, so my string is SKIP=10-
From my library I choose an album and send to new playlist, in playlist STRG-A and from Playback I choose add Skiptrack Bookmark.
Skip Tracks & use bookmarks is activated, but nothing happened.
I also tried 00:00:10- but didn't work.

What is wrong?

Regards

Download foo_seek http://www.hydrogenaud.io/forums/index.php?showtopic=88654
Download foo_seek_1.2.zip

Settings for foo_seek:

1)Playback - Seek control - Loop length - default
2)Playback - Seek control - Preview length - default
3)Playback - Seek control - Loop length - default

4)Advanced - Playback - Seek - Preview - Playback position - 0 (from beging of the track -  0 ms)
Preview length – 10000 ms  (10 sec)

5)Check on:
Reset next track to playback position preview
Skip shorter tracks in preview

6)Apply - ok – close and restart F2K app
7)Playback - Seek control - Preview is cheked

Re: foo_skip: skip tracks that match a specified search query

Reply #586
@Case Thanks for your answer, I nearly thought that it is the MP3 Tag.
@Priest_1 Thanks for your suggestion, it seems that is what I'm searching for.
@snotlicker Thanks, I will have a look at this, i f the other one by Priest_1 is not what I need.

I have a huge database and I like to add Lyrics. The known plugins don't find so much synced lyrics but Minilyrics can do the Job. I'm tired to skip the tracks by hand and so I was searching a plugin to do that. For missing Lyrics I can use Lyrics3.
Thanks again
Heinz

Re: foo_skip: skip tracks that match a specified search query

Reply #587
Hi Case, :)

Over in the suggestions thread @lody asked -

Something I would like to have is, alongside the PLAY , NEXT , PREV hotkeys...

A 'SKIP ALBUM' hotkey for when you are in Shuffle (albums) order and want to skip this album via a hotkey

I was thinking this might be a nice fit for foo_skip thanks to the fast decoder skipping. Could be a simple (perhaps hidden) menu command - Playback > Skip album - that when activated, checks %album% field and immediately skips the following tracks that match it. I guess it could work for any playback order.

What do you think?

Cheers

Re: foo_skip: skip tracks that match a specified search query

Reply #588
I don't think that belongs in foo_skip. But give this old component a try: https://foobar.hyv.fi/?view=foo_skip_album. It can skip album even faster than foo_skip.

Re: foo_skip: skip tracks that match a specified search query

Reply #589
Oh! I might've known you had one already :D

By the way, it seems fast for everything except Shuffle (albums) / (folders), where it skips each track one at a time. (Not sure if normal?)

Re: foo_skip: skip tracks that match a specified search query

Reply #590
It was done that way out of laziness as handling it better is quite a bit of work. But in the newly released version those two shuffle modes work considerably faster.

Re: foo_skip: skip tracks that match a specified search query

Reply #591
foo_skip v1.26 when playback order is "Repeat (track)", skip does not work (keeps repeating).

Previously (v1.9.7), skip used to skip on "Repeat (track)". This is how it should be. Could you please revert back to the previous way? Or have an option in preferences for this?


Most importantly Case. Thank you so much for making this.

Re: foo_skip: skip tracks that match a specified search query

Reply #592
What should it skip to? The player would need to be told to skip to another file. This component (I guess) works by internally ending playback on the current track, not by altering the playback order.

Re: foo_skip: skip tracks that match a specified search query

Reply #593
@kode54
What I meant was:

Yes, foo_skip needs to skip irrespective of the playback order (your logic is correct). This used to be the default previously.

BUT

In the current version 1.26, foo_skip does not skip if the playback order is set to "Repeat (track)".

Hope this makes sense? (Please try it once)


Download Old foo_skip v1.9.7 (from 2016 I guess), which skips irrespective of playback order. But still working with my foobar 1.5.4 (2020-06).

Re: foo_skip: skip tracks that match a specified search query

Reply #594
Released a new version with fix for skipping tracks with the "Repeat (track)" playback order. This version also keeps count how many times tracks get skipped. Counts are stored using the built-in indexing feature and pinned to metadata using similar rules as official Playback Statistics uses. The component regards a track skipped if the entire track gets skipped by the component or partial skip rules allow less than one minute of the track to play.

Re: foo_skip: skip tracks that match a specified search query

Reply #595
@Case
Thank You so much for looking into this.

I just checked on a fresh foobar with only foo_skip installed. And its not skipping the "Repeat". Could you please check.

Console log foo_skip 1.27:
.....
Startup time : 0:00.380842
Skip Track debug: on_playback_starting
Skip Track debug: g_playing_playlist_name = default, g_active_playlist_name = default, g_playback_order_name = repeat (track)
Skip Track debug: track_command_settrack
Opening track for playback: "Z:\media\u\data\a\test\short_clip\09sec.opus"
Skip Track debug: on_playback_new_track
Opening track for playback: "Z:\media\u\data\a\test\short_clip\09sec.opus"
Skip Track debug: on_playback_new_track
....


When using old foo_skip 1.9.7
log:
....
Startup time : 0:00.373146
Opening track for playback: "Z:\media\u\data\a\test\short_clip\09sec.opus"
Opening track for playback: "Z:\media\u\data\a\test\short_clip\09sec.opus"
Skipping track...
Opening track for playback: "Z:\media\u\data\a\test\short_clip\10sec.opus"
....

Re: foo_skip: skip tracks that match a specified search query

Reply #596
Seems I forgot debug logging enabled, but it was fortunate. The track_command_settrack reveals you manually double clicked on the track. By default manually picking a track that way allows it to play. You can change that setting in preferences, it's labeled "Skip even manually selected tracks".

Re: foo_skip: skip tracks that match a specified search query

Reply #597
@Case
Yes, that was indeed fortunate.

Normally how I use it is (1.9.7):

1. A track will be playing (repeat is always on).
2. I give it a rating using a quick keyboard shortcut.
3. At the end of the track based on rating it skips or not (how I entered the track did not matter)

And.

I frequently enter a badly rated file because I had forgotten what it was, or to just listen one time. If I wanted to play it continuously, I turn skip off, or gave it a better rating.

So the old skip method was better. The skip functionality was changing on the fly, intuitively. That was very comfortable.

Also because I have been using skip for over a decade, the new method 'feels' wrong.

What do you feel?

If more users like the present method better, could you have an option in preferences for skipping based on how we entered the file?

Re: foo_skip: skip tracks that match a specified search query

Reply #598
I released a new version that skips a skippable track after single playback with the loop mode. As the check is done in the decoder initialization with the new shim engine, it will accidentally trigger if you for example change output device while playing such a track. But I think that's such a minor issue it's not worth adding complex hacks to circumvent it.

Re: foo_skip: skip tracks that match a specified search query

Reply #599
@Case 
v1.28 does the job perfectly.
THANK YOU. :-)...