TR&S basically lets us use the same file in multiple places, but saves space by replacing all but one instance of that file with a smaller reference file. If you were to just make a copy of the Master file and move it, and edit the Metadata to reflect it's new position, what would change and what would stay the same?ZvezdanD wrote:No, the main purpose of this script was at begin to replace some audio file with much smaller redirecting file which should have same metadata as replaced file. If this small file has same metadata as master track then you would lose its main advantage, so you could use simple .m3u or .pls files instead. If I have two same tracks from two different albums, I want to see different metadata for those two tracks, e.g. metadata of official album and metadata of compilation album. If I put metadata of master tracks into .asx files, then I would lose information about compilation (album name, release year, publisher...).benzo8 wrote:I can't quite see why this should be the case for bitrate or track volume. Surely the data that MediaMonkey needs to refer to is that of the file that actually gets played, not of the file that's been deleted?
I think there are two types of metadata that need to be considered:
1. Textual (and other) data describing the replaced track: Artist, AlbumName, AlbumArtist, Year, ArtWork, etc. In the .asx, these should come from the Replaced track. In the "actual file" situation above, these are things that should change. The album is different, the year of release, etc.
2. Technical data utilised by MediaMonkey to play the track: BitRate, FileLength, SampleRate, TrackVolume, etc. In the .asx, these should come from the Master track. In the "actual file" situation above, these things remain the same - the file itself hasn't changed. This data should be consistent, in the eyes of MM, with the file that actually gets played once the .asx is chosen.
AlbumVolume is (the only instance that I can see of) a 3rd type of data - it's technical data for MediaMonkey, but you don't actually have it, either in the Reference Track, or in the Master Track. In terms of our the "actual file" situation above you would need to recalculate the AlbumGain, so I guess that for your .asx's, technically, the correct thing to do would be to do just that... I can see that that would be a pain for you, but it would be the most comprehensive, professional approach. Is there not a way of hooking into the MediaMonkey methods to just say "Here, I've given you a new file - calculate its gain please?"ZvezdanD wrote:Your description seem to be very reasonable and maybe I could make an exception with the track volume, but what about the album volume? If the replaced track had 2.1 dB, when I change the track volume of .asx file to -4.2 dB the album volume of all tracks from that album should change as well. So, I need to calculate that new album volume and to put it into all tracks from that album. This is something that I don't like to do.
Again, while I can see it's a lot of work for you, the correct thing to do would be to recalculate the gains again - after all, you're adding a new file to the database (despite it replacing an old one "identically") and it has data that needs to be correct.ZvezdanD wrote:One more thing, what if some user change mind and decide to apply Remove Redirection from the Track option? The .asx file would be replaced with the originally replaced audio file which have 2.1 dB in your case, but database contains information of -4.2 dB about it taken from master file. So, if the user decide to apply the mentioned option I need to extract the original track volume from the audio file somehow and to put it back into database which is another thing that I don't like.