INTERACT FORUM

More => Old Versions => JRiver Media Center 19 for Windows => Topic started by: 6233638 on May 09, 2014, 09:28:25 am

Title: Track 0
Post by: 6233638 on May 09, 2014, 09:28:25 am
I've just imported another album which has a hidden first track and it reminded me that Media Center rejects 0 as a track number.
Without a track number, this pushes the track to the end of the list, and Media Center thinks the album is incomplete.
 
Any chance of this being added?
 
There doesn't seem to be any problem using 0 in fields like [Series]
Title: Re: Track 0
Post by: Awesome Donkey on May 09, 2014, 05:24:56 pm
Indeed, I've noticed this issue too with albums with pregap tracks like Queens Of The Stone Age's Songs For The Deaf.
Title: Re: Track 0
Post by: syndromeofadown on May 09, 2014, 09:43:40 pm
I would also like the ability to have pregap tracks in the correct order.
I don't care what the number is though. It could be track 0.1, or -1 instead of 0.
Title: Re: Track 0
Post by: glynor on May 09, 2014, 09:55:34 pm
I would also like the ability to have pregap tracks in the correct order.
I don't care what the number is though. It could be track 0.1, or -1 instead of 0.

This works.  You can tag a track -1 and it'll sort in the proper order (and -2, -3, etc continuing on in reverse order).

[Track #] is, internally an int32 field, which means it can contain signed integers from -2,147,483,648 to 2,147,483,647.  0 is just special inside MC.  Because in C++ (and many other languages) null is 0 for an int (they aren't nullable), the only way to have a "clear" value (that doesn't show in the UI at all) is to assign it 0.  Or, I suppose, you could choose some other value at random to stand in for null (which would be bad because it would be impossible to "figure out" unless you knew the secret)...

It is a decent compromise.  Since these tracks are few and far between, I'd either use -1 or disable Tools > Options > Tree and View > Sorting > Sort Empty Strings Last.
Title: Re: Track 0
Post by: Frobozz on May 10, 2014, 12:54:29 am
I also rip HTOA tracks if a CD has them.
I've also been trying to come up with a good way to manage them as part of the album.  I had been giving them a track# of "-1" if the track fit as an intro to the CD.  Or an empty track# if the track fit more as a bonus extra track but didn't fit as an intro.  That works, but did result in the album being considered incomplete.  Also created a bit of a playback problem because I don't always want to play the HTOA track when I play the album because some of the HTOA tracks are rather odd and don't really fit the flow of the album.

This thread got me to rethink how to manage the HTOA tracks.
I decided to try giving the HTOA tracks a disc# of "-1" (can't give them a number "0" probably for the same reason that we can't give them a track# "0").  And give the HTOA track a track# of "1".  With it's own disc# it becomes an album of one track.  Separate from the main album.  Both parts are considered complete.  No longer considered an incomplete album.  I'll try it this way and see how it goes.

This is an uncommon issue.  I only have three CDs that have an HTOA track.  Even more uncommon for people to rip the HTOA track.  This is a problem only for weirdos like us.
Title: Re: Track 0
Post by: glynor on May 10, 2014, 12:59:26 am
(can't give them a number "0" probably for the same reason that we can't give them a track# "0").

Yes.  It applies to all Integer type fields in MC.  How you clear an Integer field is to set it to zero.  They do actually contain zero when they're cleared, MC just doesn't show you the number.

In the vast majority of the cases, this is the correct choice (otherwise all items in your Library with pieces of metadata not filled out would be filled with zeroes).  There is no way to distinguish between an "I set this to zero intentionally" and a "I just imported this, and this field was empty, so it gets assigned zero" values.
Title: Re: Track 0
Post by: Frobozz on May 10, 2014, 01:22:10 am
Yes.  It applies to all Integer type fields in MC.  How you clear an Integer field is to set it to zero.  They do actually contain zero when they're cleared, MC just doesn't show you the number.

In the vast majority of the cases, this is the correct choice (otherwise all items in your Library with pieces of metadata not filled out would be filled with zeroes).  There is no way to distinguish between an "I set this to zero intentionally" and a "I just imported this, and this field was empty, so it gets assigned zero" values.

There are ways to distinguish between "I set this to zero intentionally" and NULL. Just need to port JR Media Center to all Java, with no C or assembly.  A win win.  We'll get to have track 0 and JRiver Media Center will be cross platform.   ;D

I understand the issue with how C and assembly handle NULL and 0.  There's not going to be an elegant solution for that.  I'll have to null any wishing for a track 0 or disc 0 integer values.