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: Formats with subsong index > 0 (Read 813 times) previous topic - next topic
0 Members and 1 Guest are viewing this topic.

Formats with subsong index > 0

I have a technical question about the reported subsong field. Which formats use a subsong index different than zero-based?
Is it guaranteed that anything using a value > 0 should have multiple tracks?

For ex. the .dsf files report a value of 1, since it seems to be sourced from the SACD plugin.
https://hydrogenaud.io/index.php/topic,117722.0.html

I'm trying to code something around file paths, so I have to differentiate between containers really having multiple tracks and dsd files (and wv+dsf?) which seem to report a wrong value. Is there anything else out there not following the rule at top?

So I want to know if checking for index !== 0 and extension not .dsf (or codec DSD and extension .wv) is good enough or I need something else.

Re: Formats with subsong index > 0

Reply #1
MIDI and SID files.

Re: Formats with subsong index > 0

Reply #2
MIDI and SID files.
So those files also report subsong greater than 0 while being single track-files? :'(

Re: Formats with subsong index > 0

Reply #3
Anything that uses a cuesheet (external or embedded) and audio CDs also shows values greater than 0 in foobar2000.

Re: Formats with subsong index > 0

Reply #4
I think you are not understanding my question. I already know that.

I'm asking for file formats which show value greater than 0 AND the container source file having a single track.

And as far as I know, only DSD files do that due to exotic behavior by SACD component.
https://hydrogenaud.io/index.php/topic,117722.0.html

See the image: (every track reports subsong 1, but every track has its own file)
X
X

Obviously iso, cue, etc. report multiple subsong idx for every track. But the point is those files are containers which have multiple tracks, which is fine.

I want to know if this weird behavior is also present in other formats different than DSD files, or just them.


Re: Formats with subsong index > 0

Reply #6
MIDI and SID files.
So those files also report subsong greater than 0 while being single track-files? :'(
The subsong is a zero-based index.

The first song reports 0. The next songs, if available, report 1, 2, ...
That's the desired behavior. I'm asking for formats, like DSD which dont do that. .dsf files report 1 for first song, even if there are no more songs.

Re: Formats with subsong index > 0

Reply #7
So I want to know if checking for index !== 0 and extension not .dsf (or codec DSD and extension .wv) is good enough or I need something else.
Sadly it is not good enough with the visible subsong index. The SDK doesn't force or even suggest to map internal subsong zero to return zero to outside world.

But if you can use the API commands to query the internal index for visible value and that returns higher than zero, then you know you are dealing with real multisubsong track.

 

Re: Formats with subsong index > 0

Reply #8
I see, so... if someone wants to check it using only TF, it must be done for every known extension which behaves badly (which may change in the future).