Latest release/build/beta
-
- KVRian
- Topic Starter
- 1051 posts since 6 May, 2008 from Poland
Good news everyone! Photosounder 1.9.0 with live synthesis is here, in beta/release candidate form! If people both on Mac and PC could test and tell me if there's any crashes or bugs that would be really helpful thank you .
Windows 1.9.0 demo : http://photosounder.com/photosounder-la ... mo_win.zip
Mac OS 1.9.0 demo : http://photosounder.com/photosounder-la ... mo_mac.zip
What's new is live synthesis, which you can turn on from the Options menu. It takes a few second to get it ready, but once it's ready everything is audible in real time, which is really great for hearing your modifications/drawings in real time, it really does make Photosounder a lot cooler to use.
There are other things, some of which I kind of forgot, but I fixed drawing (I kinda messed it up in 1.8.3 by doing a queue system that would draw lines between the points sometimes in the wrong order (the idea was to put the actual drawing in a separate non-blocking thread so you could have a smoother drawing by enqueuing points to be drawn later), now that's fixed), I totally changed rotation which was a problem from day one, now when you rotate instead of changing the dimensions of the document it keeps the same dimensions, so your image always keeps a height of 571 pixels, and thanks to this now you can rotate independent layers (until now you could only rotate when there was just one layer). I removed the rotation button to put the rotations in the Operations menu. Also now they're not absolute anymore, they're relative as is the usual in image editors which is why there's no rotate to 0° option because that would be a no-op. I seem to recall that I fixed a bunch of bugs too. Oh and the sound analysis is parallelised too so that it goes faster, and I cut the number of processing threads to your processor core count minus one to leave some for the other stuff, so in my case with 4 cores I get 3 concurrent threads running.
Oh and with the live synthesis thing you have an option to save all that the live synthesis outputs to an audio file, which is cool if you want to use the whole live synthesis for some... live stuff. Also you can turn layers on/off with the T key, and as with everything else in live synthesis the time resolution knob responds instantly, so you can turn it all the way down during playback to pretty much freeze the playback (actually just make it play back super slow, iirc it makes the full image from beginning to end play back in about 12 hours).
The story of why it took two years to finish this thing is that two years ago I had the brilliant idea of trying to change everything from simple function calls to a string-based communication scheme, I worked on that for a long time and had it halfway done but it was a big mess. Then I chose to start doing SplineEQ, and ever since then everytime I tried diving back into finishing the transition I started I quickly became dispirited with the mess that was before my eyes. So finally a few days ago I realised that it was a shame to let that bad decision get in the way of finishing the good hard work I put into the live synthesis and other things, so I went back to older code, fixed what had to be fixed and here we are. Most of the work was done over two years ago so forgive me if I might forget what things I added since 1.8.3 .
I don't seem to recall putting any silence thing for the demo in live synthesis, maybe I should do something about that, no? Also I'm thinking maybe I can add the line tool in 1.9.1, I'll see about that. I can slap new features on top of this thing but I still cannot do profound changes like adding true stereo support or offering any way to enter values or anything like that, that will have to wait for the rewrite.
Windows 1.9.0 demo : http://photosounder.com/photosounder-la ... mo_win.zip
Mac OS 1.9.0 demo : http://photosounder.com/photosounder-la ... mo_mac.zip
What's new is live synthesis, which you can turn on from the Options menu. It takes a few second to get it ready, but once it's ready everything is audible in real time, which is really great for hearing your modifications/drawings in real time, it really does make Photosounder a lot cooler to use.
There are other things, some of which I kind of forgot, but I fixed drawing (I kinda messed it up in 1.8.3 by doing a queue system that would draw lines between the points sometimes in the wrong order (the idea was to put the actual drawing in a separate non-blocking thread so you could have a smoother drawing by enqueuing points to be drawn later), now that's fixed), I totally changed rotation which was a problem from day one, now when you rotate instead of changing the dimensions of the document it keeps the same dimensions, so your image always keeps a height of 571 pixels, and thanks to this now you can rotate independent layers (until now you could only rotate when there was just one layer). I removed the rotation button to put the rotations in the Operations menu. Also now they're not absolute anymore, they're relative as is the usual in image editors which is why there's no rotate to 0° option because that would be a no-op. I seem to recall that I fixed a bunch of bugs too. Oh and the sound analysis is parallelised too so that it goes faster, and I cut the number of processing threads to your processor core count minus one to leave some for the other stuff, so in my case with 4 cores I get 3 concurrent threads running.
Oh and with the live synthesis thing you have an option to save all that the live synthesis outputs to an audio file, which is cool if you want to use the whole live synthesis for some... live stuff. Also you can turn layers on/off with the T key, and as with everything else in live synthesis the time resolution knob responds instantly, so you can turn it all the way down during playback to pretty much freeze the playback (actually just make it play back super slow, iirc it makes the full image from beginning to end play back in about 12 hours).
The story of why it took two years to finish this thing is that two years ago I had the brilliant idea of trying to change everything from simple function calls to a string-based communication scheme, I worked on that for a long time and had it halfway done but it was a big mess. Then I chose to start doing SplineEQ, and ever since then everytime I tried diving back into finishing the transition I started I quickly became dispirited with the mess that was before my eyes. So finally a few days ago I realised that it was a shame to let that bad decision get in the way of finishing the good hard work I put into the live synthesis and other things, so I went back to older code, fixed what had to be fixed and here we are. Most of the work was done over two years ago so forgive me if I might forget what things I added since 1.8.3 .
I don't seem to recall putting any silence thing for the demo in live synthesis, maybe I should do something about that, no? Also I'm thinking maybe I can add the line tool in 1.9.1, I'll see about that. I can slap new features on top of this thing but I still cannot do profound changes like adding true stereo support or offering any way to enter values or anything like that, that will have to wait for the rewrite.
-
- KVRAF
- 4237 posts since 15 Sep, 2010
↑ interesting! ↑
Looking forward to try it.
Looking forward to try it.
-
- KVRAF
- 4237 posts since 15 Sep, 2010
@A_SN: can you give a beta version to existing users instead of just a demo?
-
- KVRian
- Topic Starter
- 1051 posts since 6 May, 2008 from Poland
Can anyone just tell me if it all works fine so I can release it? It would be simpler like this.
-
- KVRAF
- 4237 posts since 15 Sep, 2010
I'll give it a try as soon as I have the time and the chance.A_SN wrote:Can anyone just tell me if it all works fine so I can release it? It would be simpler like this.
-
- KVRian
- Topic Starter
- 1051 posts since 6 May, 2008 from Poland
Alright, working on it!acousmod wrote:Hi,
Nice to see a hope for a regular version without the silence cuts of the demo
For me, this 1.9 seems to work as well as the 1.84 beta : go for release !
I realised maybe people might miss out on the Live Synthesis mode since it's just a menu option...
-
- KVRian
- Topic Starter
- 1051 posts since 6 May, 2008 from Poland
Oh and since you have access to the latest beta I made 1.9 be the latest "beta" so you can use the full version right now (before everyone else hehe).acousmod wrote:Hi,
Nice to see a hope for a regular version without the silence cuts of the demo
For me, this 1.9 seems to work as well as the 1.84 beta : go for release !
-
- KVRian
- Topic Starter
- 1051 posts since 6 May, 2008 from Poland
I'm thinking of scrapping the non-live version of the non-lossless synthesis since it's kinda buggy and doesn't have a lot of advantages over the live version. Yay? Nay?
-
- KVRian
- 976 posts since 27 Jun, 2011
Sorry, I only check here from time to time...A_SN wrote:I'm thinking of scrapping the non-live version of the non-lossless synthesis since it's kinda buggy and doesn't have a lot of advantages over the live version. Yay? Nay?
Live and lossless ist fine with me. The only real difference using it is the ability to drag the playback cursor, right?
A nice addition would be 'snap to' scales and chords rather than just 'snap to nearest semitone'.
Any chance of a VSTi version now that it's moving more towards live synthesis?
-
- KVRian
- Topic Starter
- 1051 posts since 6 May, 2008 from Poland
I was thinking maybe when dragging the playback cursor it could temporarily switch to non-lossless as to be useful in that situation.wasi wrote:Sorry, I only check here from time to time...A_SN wrote:I'm thinking of scrapping the non-live version of the non-lossless synthesis since it's kinda buggy and doesn't have a lot of advantages over the live version. Yay? Nay?
Live and lossless ist fine with me. The only real difference using it is the ability to drag the playback cursor, right?
A nice addition would be 'snap to' scales and chords rather than just 'snap to nearest semitone'.
Any chance of a VSTi version now that it's moving more towards live synthesis?
Snapping to scales could be nice, the only problem would be an interface problem in how to choose the scale. Or I could make it snap to A minor/C major in one option and the other option the same except pentatonic. The limitations of Photosounder's interface (as in I can only add permanent knobs and menu entries) kind of gets in the way of things, which is why I want to start over again, but that's gonna take so long.
How would a VSTi version work at all? Keep in mind that you cannot automate anything with images, you can only save slider values.
-
- KVRian
- 976 posts since 27 Jun, 2011
Sounds good to me...A_SN wrote:I was thinking maybe when dragging the playback cursor it could temporarily switch to non-lossless as to be useful in that situation.
Yeah, I was actually thinking of the menu item 'group to nearest semitone' being restructured asA_SN wrote:Snapping to scales could be nice, the only problem would be an interface problem in how to choose the scale. Or I could make it snap to A minor/C major in one option and the other option the same except pentatonic. The limitations of Photosounder's interface (as in I can only add permanent knobs and menu entries) kind of gets in the way of things, which is why I want to start over again, but that's gonna take so long.
-group to:
--nearest semitone
--scale:
---Major
---Minor
---Lydian
---etc.
The root would either be hardwired, set in the ini of have another button (worst to best solution IMO)
All I'm thinking of for now is running it inside a host to get rid of the routing problems to add effects and such. Maybe optionally sync playback start to the host, but that's it. I'm not sure how much sense it would make but certainly more sense than performing with it in standalone. Just an idea though, wouldn't use it for performing myself, but it would cut back on the whole 'export/import' workflow.A_SN wrote:How would a VSTi version work at all? Keep in mind that you cannot automate anything with images, you can only save slider values.
You may want to do a user survey before you do any heavy lifting re-writing.
-
- KVRian
- Topic Starter
- 1051 posts since 6 May, 2008 from Poland
Well I don't think you'd need different options for major, minor, lydian since they're all just different modes of the same scale. What would you use that option for? Because there's a slight problem which is whether or not to sum pixels or average them. If you want to apply that operation on a thin curve then you'd want to add things so that the volume remains constant, but if you want to apply that to something much fuller like an image then if you add then some notes would consistently be louder than others. But really though I'm just curious to know what you'd actually want to do with that.wasi wrote:Sounds good to me...A_SN wrote:I was thinking maybe when dragging the playback cursor it could temporarily switch to non-lossless as to be useful in that situation.
Yeah, I was actually thinking of the menu item 'group to nearest semitone' being restructured asA_SN wrote:Snapping to scales could be nice, the only problem would be an interface problem in how to choose the scale. Or I could make it snap to A minor/C major in one option and the other option the same except pentatonic. The limitations of Photosounder's interface (as in I can only add permanent knobs and menu entries) kind of gets in the way of things, which is why I want to start over again, but that's gonna take so long.
-group to:
--nearest semitone
--scale:
---Major
---Minor
---Lydian
---etc.
The root would either be hardwired, set in the ini of have another button (worst to best solution IMO)
All I'm thinking of for now is running it inside a host to get rid of the routing problems to add effects and such. Maybe optionally sync playback start to the host, but that's it. I'm not sure how much sense it would make but certainly more sense than performing with it in standalone. Just an idea though, wouldn't use it for performing myself, but it would cut back on the whole 'export/import' workflow.A_SN wrote:How would a VSTi version work at all? Keep in mind that you cannot automate anything with images, you can only save slider values.
You may want to do a user survey before you do any heavy lifting re-writing.
Yeah the whole export/import thing sucks, so your idea is good, I was afraid you were going to suggest something more sophisticated. It wouldn't be hard to make, I'd just have to have Photosounder send the whole sound to the VSTi plugin everytime it changes. Just one thing though, how would you typically trigger something like that from a host? I mean the playback thing. I've never done a VSTi nor really used any so I have no idea how it usually works. And a slight problem would be that you obviously would have to launch and prepare Photosounder yourself when you load the whole project in your DAW. But it would definitely help tremendously at least when you're prototyping a sound, I guess after that when you're done you can just export/import the wav.
And since the plugin itself would be so simple and dumb I'd just open source it, and again since it would be so simple it might even benefit from that, because it would be easy to mod.
-
- KVRian
- 976 posts since 27 Jun, 2011
Well, I'm mostly looking for a more 'harmonic' manner to process an atonal sound than 'snap to nearest semitone'. As far as I'm concerned it doesn't have to be an elaborate chord or scale dictionary, I just don't find snap to semitone very useful.A_SN wrote:Well I don't think you'd need different options for major, minor, lydian since they're all just different modes of the same scale. What would you use that option for? Because there's a slight problem which is whether or not to sum pixels or average them. If you want to apply that operation on a thin curve then you'd want to add things so that the volume remains constant, but if you want to apply that to something much fuller like an image then if you add then some notes would consistently be louder than others. But really though I'm just curious to know what you'd actually want to do with that.
Well, I can't speak for the technical side, but from a user perspective, either you would make the play button midi-mappable or you'd just sync it to the host playback, i.e. when the host plays the plugin plays.A_SN wrote:Yeah the whole export/import thing sucks, so your idea is good, I was afraid you were going to suggest something more sophisticated. It wouldn't be hard to make, I'd just have to have Photosounder send the whole sound to the VSTi plugin everytime it changes. Just one thing though, how would you typically trigger something like that from a host? I mean the playback thing. I've never done a VSTi nor really used any so I have no idea how it usually works.
I think to generate some broader interest you'd have to have the playback position ('scrub') controllable by midi as well.
That sounds interesting.A_SN wrote:And a slight problem would be that you obviously would have to launch and prepare Photosounder yourself when you load the whole project in your DAW. But it would definitely help tremendously at least when you're prototyping a sound, I guess after that when you're done you can just export/import the wav.
And since the plugin itself would be so simple and dumb I'd just open source it, and again since it would be so simple it might even benefit from that, because it would be easy to mod.