I see this topic has been discussed on at least twice before in the last three years on this forum, but here goes again.
I want to make an external editor modify wav files under the feet of ardour or else be persuaded this is not the best option. In my case, the external editor is either a homebrew version of melodyne (monophonic) or also the real Melodyne running under wine. This real Melodyne was integrated in to the Traction DAW on linux to some extent, but I decided I don’t like Traction as much as I like Ardour.
My proposed work flow is:
1 Render a single channel as a 24-bit stem export wav file using Ardour.
2 Reload the exported stem as a fresh track into ardour. [I think Ardour will copy if from exported to interchange sub folder in my project?]
3 My external tool automatically finds this in the interchange folder using a couple of heuristics and also loads it.
4 I manually use the external tool to change the now-shared file contents but not duration and not any other significant aspect of metainfo, format or layout, such as offset of the PCM from file start. I hit save in the external tool window and return my focus to the Ardour windows.
5 I do nothing explicitly in Ardour but expect Ardour to play and export the modified sound and display a modified envelope and metainfo through the Ardour GUI, such as update time in the right-hand-side sources listing.
6 Repeat steps 4 and 5 as much as I like.
Reading the previous posts on this topic, I suspect most of this to work fairly well? Am I mad?
I have not looked at the coding or behaviour of how Ardour pre-caches an envelope display. On other DAWs, this information is stored in auxiliary files and the last modification time of the files is used to determine if the cached information is dirty. Perhaps Ardour just keeps this in core instead of secondary storeage?
An earlier post by Robin suggests that Ardour is coded assuming all saved files are `imutable’. What I really need to know is will something go unexpectedly and badly wrong if this assumption is voilated in the way I propose. I think he also mentioned the need to do a session reload after proceeding in this way.