Differing Input and Output Targets

Discuss the current and future development of Max.
Post Reply
dsp
Posts: 12
Joined: Mon Nov 20, 2006 10:13 pm
Location: US

Differing Input and Output Targets

Post by dsp » Mon Nov 20, 2006 11:11 pm

Being new to Max, I hope I haven't just missed seeing/finding this feature, but here's what I'd like to see....

Suppose you have a collection of music organized in a typical tree structure organized like:

Drive 1
Artist 1
Album 1
Track 1
Track 2
Track N
Album 2
Track N
Album N
Artist 2
Artist 3

Let's say that all of the tracks are expressed as wav files and someone wants to:

1. Convert all of the wav files to aiff.
2. Place the new aiff files on a different drive than that holding the wav files.
3. Utilize the same file (tree) structure for the aiff files on the target drive.

Why? 1) Say you have many 500 GB drives holding the wav files and there is no room to add duplicate copies of the files (and you don't want to delete the source files). 2) Say you have room on the existing drive for a copy of each file, but don't want to suffer the performance hit of waiting for the drive to swing back and forth on its platters from the beginning of the drive to the end of the drive to peprform the read/write operations.

How? Since Max already reads through a tree structure like the one I described above and places converted files back in the folder from which the source came, it already knows the structure and could easily create the required folders on the target drive.

For me, this would save a lot of time and suffering to handle manually.

dsp
Posts: 12
Joined: Mon Nov 20, 2006 10:13 pm
Location: US

Post by dsp » Mon Nov 20, 2006 11:13 pm

Shoot, the lelading spaces in my tree structure got lost. It should look like:

Drive 1
...Artist 1
......Album 1
.........Track 1
.........Track 2
.........Track N
......Album 2
.........Track N
......Album N
...Artist 2
...Artist 3

Yonzie
Posts: 41
Joined: Mon May 01, 2006 9:29 pm
Contact:

Post by Yonzie » Tue Nov 21, 2006 3:02 pm

Possible solution:
Get someone to make a script, shouldn't be too hard (probably in perl). The script renames all your files to something like "Artist - Album - Track"
Then you "encode" everything to AIFF on the other drive. One big folder with your ~18000 AIFF files.
Use Media Rage to guess tags based on the file name and tag everything. This might take a while. Hope you don't have "-" in your file names other than between the artist/album/track stuff. If you do, you may want to choose another separator.
Then you "encode" everything to AIFF and back to the first drive, this time using a custom format for output file naming like this: "{albumArtist}/{albumTitle}/{trackNumber} - {trackTitle}".

Why not use something like ALAC, FLAC or the other lossless formats out there? This can be put in in place of AIFF, although you probably want to wait with the actual encoding until the last step if you use the above solution.
Project complete: 625 CDs containing 8574 tracks ripped and scanned.

dsp
Posts: 12
Joined: Mon Nov 20, 2006 10:13 pm
Location: US

Post by dsp » Tue Nov 21, 2006 10:26 pm

Yonzie-

Thanks for trying to help out, but I don't understand how your solution solves my problem/request.

In my opinion, the problem with nearly all of these types of applications is that they generally assume the user wants to dump all of the processed output (pictures, sound tracks, etc.) which came from a variety of different folders in either (i) one folder - like the desktop, or (ii) the specific folder in which the source file resides.

To me, this is too simplistic a view. What I am requesting is that the output files get deposited in a new folder structure that is identical to the one from which the soource files came. I'm not looking to have the processor tag or rename the files, but to simply create the tree structure (just a bunch of folders) at some user-specific location and deposit the results of its conversion (in my case the aiff files) in the appropriate locations.

Yonzie
Posts: 41
Joined: Mon May 01, 2006 9:29 pm
Contact:

Post by Yonzie » Wed Nov 22, 2006 11:50 am

It solves it by automating the process, and at the end the files will have the proper folder structure like you wanted :D
It does take some extra operations though.

The problem is that Max can't read folders as tags, and therefore it can't create a folder structure based on the tags (since they don't exist). If you tag the files first (not possible with WAV), then Max will be able to create a folder structure when it saves the file, and you'll even get the tags in your player of choice.

Therefore, what must be done is rename the files so that the filename of each file contains all needed data. Then, convert the WAVs to another format that supports tagging (like AIFF), tag them (by reading the file names and guessing), and then "convert" them to the format you want (AIFF) while creating folders automatically.

I know it's a bit (OK, OK, a lot) round-the-block, but it can at least automate the process for you.
Project complete: 625 CDs containing 8574 tracks ripped and scanned.

dsp
Posts: 12
Joined: Mon Nov 20, 2006 10:13 pm
Location: US

Post by dsp » Thu Nov 23, 2006 12:24 am

Yonzie-

I understand. I've already worked around the problem another way, but to me, all of these workarounds are ridiculous.

BTW, I don't see why you say "The problem is that Max can't read folders as tags, and therefore it can't create a folder structure based on the tags (since they don't exist)." Max may not be able to read folders as tags, but Max already does read and utilize folders. For example, if I feed Max a folder that contains N sub-folders that each contain some number of additional folders or files (wav files in my case) and specify that Max is to create an aiff file for each music file encountered and to place it back in the folder from which the corresponding wav was held, it will do so.

While Max may not know about folders by reading a tag, it sure does understand the folder (tree) structure. So all I'm asking Max to do is use its knowledge of the source tree structure to create some parallel set of folders in another location in which to deposit the converted files.

User avatar
sbooth
Site Admin
Posts: 2445
Joined: Fri Dec 23, 2005 7:45 am
Location: USA
Contact:

Post by sbooth » Thu Nov 23, 2006 2:44 am

I'll chime in with my $.02 here- I understand where dsp is coming from, and this is a feature I plan to add to Max at some point in the future. The issue of how it should be implemented is what has kept it from showing up yet (it isn't too hard to implement, or shouldn't be).

For example, on my machine I have several folders containing music: /Music, /Users/me/Music, etc. Obviously at the most basic level copying the tree/directory structure will end up placing the output files in the same folder as the input files. Since this is certainly not the behavior we are talking about, the issue that comes up is how many paths should be stripped from the file to produce the desired output?

It makes sense to me that when the user selects a folder (by dragging or with an open dialog) and then says 'preserve directory structure' they mean from the folder they selected on down. This should be possible to implement.

Any thoughts on this? Is this how it should work?

edit: speling
Last edited by sbooth on Sat Nov 25, 2006 8:47 pm, edited 1 time in total.

dsp
Posts: 12
Joined: Mon Nov 20, 2006 10:13 pm
Location: US

Post by dsp » Sat Nov 25, 2006 6:14 pm

sbooth-

You got it! The only thing I would add is that when a user wants to preserve the tree structure they should specify from where on the tree does it start (i.e., the source folder from which everything from that point to the end of the branch is to included in the action) and to where do they want it output (i.e., the target location to which the selected branch is to to be placed).

Of course, the target location could be anywhere on the computer (e.g., same drive, different drive).

Post Reply

Who is online

Users browsing this forum: No registered users and 2 guests