Latest release/build/beta

Official support for: photosounder.com
Post Reply New Topic
RELATED
PRODUCTS

Post

IanA wrote:I'm having trouble getting Live Synthesis to work. I've enabled it and it shows as ticked in the menu, but I don't hear anything at all when I draw. I can hear what I've drawn when I invert the mask and press play, but I don't hear anything at all when I'm drawing a selection. My machine is reasonable (Intel Core 2 dual CPU 2GHZ/2GHZ, with 4 GB Ram).

I must be doing something wrong?
You mean you don't hear anything when you're not pressing play? No this is natural, this is how it's supposed to be at the moment. Right now the live synthesis doesn't care for what your cursor does, it's only supposed to work like non-live synthesis with the perks of hearing changes with no delay, which means only when you've pressed play, although it won't always be like this (I'll probably add other modes of operations, I'd be happy to hear how you'd like it to work as I have no precise idea). If you turn on the loop playback then it's quite satisfying to hear a loop change as it goes.
Developer of Photosounder (a spectral editor/synth), SplineEQ and Spiral

Post

I'd like to see a mode where you could make a selection and hear the selection only playback immediately. eg drawing a rectangle around a selection would immediately play back just the contents of the rectangle selection.

Simiar to in this demo version of Hit N Mix (free download available) ;

http://www.hitnmix.com/

It could then be taken a step further in that if you used the harmonics tool and spray width settings, you could select what you wanted (which would be higlighted to show the active regions in the selection in a different colour) and immediately hear it play back just your current selection. You could then tweak spray width settings to narrow the selection, and maybe also use Ctrl key to add further selections.

The point of this is to be able to quickly select a small clip, and be able to narrow down the selection to make sure it is right before then performing a mask inversion to extract the required selection. It would just take out the trial and error of not knowing the result until you have performed the mask inversion and then played it back.












A_SN wrote:
IanA wrote:I'm having trouble getting Live Synthesis to work. I've enabled it and it shows as ticked in the menu, but I don't hear anything at all when I draw. I can hear what I've drawn when I invert the mask and press play, but I don't hear anything at all when I'm drawing a selection. My machine is reasonable (Intel Core 2 dual CPU 2GHZ/2GHZ, with 4 GB Ram).

I must be doing something wrong?
You mean you don't hear anything when you're not pressing play? No this is natural, this is how it's supposed to be at the moment. Right now the live synthesis doesn't care for what your cursor does, it's only supposed to work like non-live synthesis with the perks of hearing changes with no delay, which means only when you've pressed play, although it won't always be like this (I'll probably add other modes of operations, I'd be happy to hear how you'd like it to work as I have no precise idea). If you turn on the loop playback then it's quite satisfying to hear a loop change as it goes.

Post

IanA wrote:I'd like to see a mode where you could make a selection and hear the selection only playback immediately. eg drawing a rectangle around a selection would immediately play back just the contents of the rectangle selection.

Simiar to in this demo version of Hit N Mix (free download available) ;

http://www.hitnmix.com/

It could then be taken a step further in that if you used the harmonics tool and spray width settings, you could select what you wanted (which would be higlighted to show the active regions in the selection in a different colour) and immediately hear it play back just your current selection. You could then tweak spray width settings to narrow the selection, and maybe also use Ctrl key to add further selections.

The point of this is to be able to quickly select a small clip, and be able to narrow down the selection to make sure it is right before then performing a mask inversion to extract the required selection. It would just take out the trial and error of not knowing the result until you have performed the mask inversion and then played it back.
I really don't like the concept of selections (even less so rectangular selections), it's not instantaneous enough or fluid enough and it's an extra concept (one that is usually poorly visualised, I mean Photoshop still shows selections as a bunch of black and white lines even though their selection system has partial selections) to juggle with, so I'm not gonna do it that way. I'd rather have something like directly uses the cursor, its position/movement and other characteristics.

I'm already considering the obvious 'you hear what's under your cursor' thing, also possibly something so you only hear the harmonics of the position on the cursor (or if the harmonics are turned off then just what's under the cursor for the size of the tool), it would make it easy to find instruments and their notes. Not sure what else for now, something that'll do pitch shifting will take more work given that you have to interpolate in 2D and not just horizontally, although I can probably find a way to generalise the problem.
Developer of Photosounder (a spectral editor/synth), SplineEQ and Spiral

Post

My main interest is for removing instruments/isolating vocals.

I suggested the rectangular box as it looked a relatively easy way of quickly selecting, but anything that allows more precise control and results sounds good to me :-)



A_SN wrote:
IanA wrote:I'd like to see a mode where you could make a selection and hear the selection only playback immediately. eg drawing a rectangle around a selection would immediately play back just the contents of the rectangle selection.

Simiar to in this demo version of Hit N Mix (free download available) ;

http://www.hitnmix.com/

It could then be taken a step further in that if you used the harmonics tool and spray width settings, you could select what you wanted (which would be higlighted to show the active regions in the selection in a different colour) and immediately hear it play back just your current selection. You could then tweak spray width settings to narrow the selection, and maybe also use Ctrl key to add further selections.

The point of this is to be able to quickly select a small clip, and be able to narrow down the selection to make sure it is right before then performing a mask inversion to extract the required selection. It would just take out the trial and error of not knowing the result until you have performed the mask inversion and then played it back.
I really don't like the concept of selections (even less so rectangular selections), it's not instantaneous enough or fluid enough and it's an extra concept (one that is usually poorly visualised, I mean Photoshop still shows selections as a bunch of black and white lines even though their selection system has partial selections) to juggle with, so I'm not gonna do it that way. I'd rather have something like directly uses the cursor, its position/movement and other characteristics.

I'm already considering the obvious 'you hear what's under your cursor' thing, also possibly something so you only hear the harmonics of the position on the cursor (or if the harmonics are turned off then just what's under the cursor for the size of the tool), it would make it easy to find instruments and their notes. Not sure what else for now, something that'll do pitch shifting will take more work given that you have to interpolate in 2D and not just horizontally, although I can probably find a way to generalise the problem.

Post

New beta out http://photosounder.com/changelog.php . I've fixed a bunch of minor bugs, mostly related to live synthesis. I've also multi-threaded the loading of sounds so it goes faster, and instead of loading from the bottom to the top it processes lines in a random order so you see the whole picture faster plus the effect is kinda cool. Other orders are definitely possible so if there's any interest in that I'd be happy to offer other options.

I've also changed method of communication between threads to something more efficient and reliable. That means less potential race conditions (a kind of bug) and possibly less CPU being used.

After turning on Live Synthesis the interface isn't blocked anymore so you can do things like turning knobs and what not. Also the state of the live synthesis is indicated by the colour of the background of the waveform display. It turns to light blue while it's getting prepared and if it's already prepared then after loading a sound it flashes its colour once to indicate that everything's ready (otherwise it's hard to tell when the analysis ends and when everything's ready).

Not something new, but I've realised that the live synthesis is actually more efficient than I thought, so efficient it's hard to measure on my computer (shows as 1-2% of my 4 cores at 3 GHz when I hide the window so that only the synthesis takes CPU time) so I guess that means it could possibly work smoothly on a 10 year old machine, however I didn't get to try that yet, I'd love if anyone did.
Developer of Photosounder (a spectral editor/synth), SplineEQ and Spiral

Post

Thanks for the new beta. Seems to work fine here. Haven't tested it thoroughly though. I've also got two requests if possible.

1. More Undo steps than just one.

2. Ability to specify the length of the sample when creating a new with 'New'.

Thanks.

Post

I agree that the ability to specify the length and height of new documents would be helpful.

I really like the new way the image shows up. It feels very futurey. :) Stupendous update. I see what you mean about not liking big version # changes. Other than the GUI staying the same the features added between 1.8.2 to 1.8.4 would be a new version in most software.

Changing pixels/second time resolution in real time makes me unreasonably happy. And flipping, oh yeah! I think OSC or MIDI control is even more desirable now.
A_SN wrote:It's starting to feel lonely in this thread. Anyway, here's another beta out.
Haha, I didn't want to keep harassing you.

1.8.4 windows xp sp3 bugs (haven't tested on mac yet):
if you turn on the rhythm overlay on with a blank file photosounder freezes. Rotate 90 or 270 always freezes with a second of audio looping if in live synthesis mode. Rotate in 1.8.2 works, but if you hit the same rotate button twice it hangs.

Not sure if they are bugs:
A rotate of 180 or 0 stops playback in live synth mode. I thought we were supposed to have unlimited undos with the new script files? Undo also doesn't effect layer changes. Why can't you copy and paste between two open photosounder programs? I currently only have access to paint.net and I can only copy images out of photosounder, but not paste into.

To be honest I never even really noticed the rotate commands before because they disappear when you add a new layer when working solely with photosounder's internal drawing and/or with audio files. I did some testing and they stay if you have one "real" image loaded.

If they weren't causing hangs it would be nice to have rotate tools for all layer types all the time. The 4 options now are some of the more musically useful, but a circle or square that went surrounded the rotate commands that you could use to do turn arbitrary amounts would be something I'd be interested in experimenting with.

I have some questions about scripting, but I'll go to that thread.

Post

Thanks a lot for all the bug reports, those are things I wouldn't have necessarily thought of testing. Most of them shouldn't be too hard to fix, it's mostly a case of checking the right things are there or protecting the right parts of the code. Of all this the hardest part is to find reproducible bugs (I quickly tried some of yours and I've got them here too so that's good).
jonahs wrote:I agree that the ability to specify the length and height of new documents would be helpful.

I really like the new way the image shows up. It feels very futurey. :) Stupendous update. I see what you mean about not liking big version # changes. Other than the GUI staying the same the features added between 1.8.2 to 1.8.4 would be a new version in most software.
I'll have to work on a way to input text and even dialogs to do something where you could specify the size of a new document. It's been on my todo list for a long time but I still haven't even decided on how it should look. And yes lots of things have happened with the latest few releases, there are always lots of features that are either badly needed (like the ability to import so as to be able to open many sounds together), features that are needed for other features to happen (like the history feature was needed for the upcoming multiple undos) or features that are just great and that would change things nicely (like the live synthesis). As it is I have roughly 80 items on my development todo list. In the meantime I just write a one-line .pha file by hand that contains a Dimensions or Crop command and load it, that does the trick. In the future I want to make a console, just like developer consoles in video games, so that you can enter certain commands by hand.

And I thought the new way sounds load looked more retroey. I think I've seen that effect to display images in really old computers/consoles or something. Or just something about horizontal graphics, there's something Atariey about that.
jonahs wrote:Changing pixels/second time resolution in real time makes me unreasonably happy. And flipping, oh yeah! I think OSC or MIDI control is even more desirable now.
Yeah that's pretty fun. The cool thing is that you can almost pause the sound by making it go extremely slow and the program doesn't have to get on its knees for that to happen. What do you mean by flipping though? And what about MIDI/OSC control, what would it be used for? I probably wouldn't do it anyway but I think maybe this is the kind of thing that could be done through scripting once it can accept commands through TCP/IP.
jonahs wrote:
A_SN wrote:It's starting to feel lonely in this thread. Anyway, here's another beta out.
Haha, I didn't want to keep harassing you.
Oh don't worry about it, I like feedback and I like to address bug reports (makes me feel closer to having a bug-less program which relieves my fears that unacceptable bugs would occur at the worst times (like a 24 hour Mac Update Promo and that the comments fill up with bug reports) and to know what features are the most wanted helps me prioritise things.
jonahs wrote:I thought we were supposed to have unlimited undos with the new script files? Undo also doesn't effect layer changes.
Not yet, you can have unlimited undos if you're willing to cut some lines at the end of history.pha and then do a Resume Last Session. Of course I have plans to make a proper thing in the GUI for that. I'm thinking probably a menu where you could disable a certain few commands and it would reload the history with those lines commented out or something. The current undo mode is pretty rubbish, it's just one buffer that swaps its data with the current layer, so when you switch layers it forgets about what it had before. Maybe I could simply fix this by keeping track of which layer the undo buffer represents so that it reverts changes to that layer. But even then it wouldn't properly undo most things, so that's still kind rubbish. It's a remnant of when Photosounder's editing was simpler than MS Paint's.

jonahs wrote:Why can't you copy and paste between two open photosounder programs? I currently only have access to paint.net and I can only copy images out of photosounder, but not paste into.
I'm not even sure what to do anymore with copy/paste. Copy only copies the full mix of layers as you see it (because it was implemented back when there was no layer system) and Paste was actually never implemented because that seemed complicated to handle it right. Now I don't know what to do with it. Like, it could copy to an 8-bit image so it could be pasted in other programs, but then it'd make it improper for use in Photosounder as it'd ruin all the 32-bit floating point precision it's supposed to have. Or it could be in 32-bit float but only Photosounder would be able to make sense of that. And then what would it copy, the current layer? The current layer and all its attributes? I don't even know what one would use copy/paste for, inside the program it's useless as you have no selection system so you can just duplicate layers. And pasting will be almost useless when I have a proper import mode.

Here's a wild idea: maybe that Paste could accept Photosounder Archive commands, and Copy could generate those commands depending on what we want it to copy (as in if we want it to copy a layer with all its parameters it could generate a whole paragraph starting with a New layer command and ending with a Base85 command to represent all the pixel data). Maybe there could also be other Copy/Paste commands to copy/paste in regular bitmap. I don't know...
jonahs wrote:To be honest I never even really noticed the rotate commands before because they disappear when you add a new layer when working solely with photosounder's internal drawing and/or with audio files. I did some testing and they stay if you have one "real" image loaded.
The rotate commands go away in lossless mode because you shouldn't rotate in lossless mode, and what you're talking about here is that they go away when you have more than one layer. I considered supporting rotation for more than one layer, but then what do you do, rotate every layer at once? Or just one and if so how would you handle that? I mean, would you keep the original dimensions for the document and just crop the rotated layer?
jonahs wrote:If they weren't causing hangs it would be nice to have rotate tools for all layer types all the time. The 4 options now are some of the more musically useful, but a circle or square that went surrounded the rotate commands that you could use to do turn arbitrary amounts would be something I'd be interested in experimenting with.
I've always considered having a full 360° knob for rotation at any angle, but at the time it didn't seem to be worth the bother and then I didn't know how it'd be handled, as in, if it should be cropped or not. Finally I decided that rotating by most angles doesn't make sense anyway, I mean, what good would that be? Shear transforms/effects are more useful and you can now do those by drawing a diagonal line on a layer with one of the propagation blending modes. Actually you can do a proper rotation by any angle by having at least two of those, one with horizontal propagation and the other one with vertical propagation (it's called 'rotation by shear', it's actually an algorithm that some programs use to rotate bitmap images). If instead of lines you use curves then you can obtain some pretty funny deformations.
jonahs wrote:I have some questions about scripting, but I'll go to that thread.
Please do, the scripting thread and even scripting in general need some love. So far I don't know of anyone who took up scripting and I'd like to see that happen very much!
Developer of Photosounder (a spectral editor/synth), SplineEQ and Spiral

Post

Another one out. There was something very wrong with my new threads thing in yesterday's release, basically nothing was getting protected, I'm surprised it didn't turn into a huge crashfest. That probably accounts for some crashes you might have witnessed too, I'd need to test that.

So that aspect of things is all fixed, I've also arranged how it's done as to be more efficient and while I was at it I optimised quite a bit the functions used for things like processing and displaying the image, so editing/drawing should be smoother than before.
Developer of Photosounder (a spectral editor/synth), SplineEQ and Spiral

Post

Rotation works...but if you hit the same button twice and then hit a different one it crashes. :lol:
A_SN wrote:In the future I want to make a console, just like developer consoles in video games, so that you can enter certain commands by hand.
Yes! I'll write a bit more in the scripting thread, but I think tighter integration between the two sides would be great.
A_SN wrote: And I thought the new way sounds load looked more retroey. I think I've seen that effect to display images in really old computers/consoles or something. Or just something about horizontal graphics, there's something Atariey about that.
Haha, that's true. I guess it's how everything old becomes new again. Plus it's in HD. :lol:
A_SN wrote: What do you mean by flipping though?
The horizontal flip or reverse button. It's also fun to do the EQ flipping.
A_SN wrote: And what about MIDI/OSC control, what would it be used for?
Someday I'll own an ipad :roll: and I'd like to use photosounder with TouchOSC which lets you make your own control surfaces. I'm not sure how well their x/y pad would work for drawing in photosounder, but hands on control for everything else is appealing enough.

I really think you have the start of a brilliant performance tool now with live synthesis.
A_SN wrote:
jonahs wrote:Why can't you copy and paste between two open photosounder programs? I currently only have access to paint.net and I can only copy images out of photosounder, but not paste into.
I'm not even sure what to do anymore with copy/paste.
I can see myself copying between two instances of Photosounder. I probably want to work in a non-standard way and I'm unsure how much scripting and general changes like import will make this idea unnecessary.

Maybe copy could take what you see? You could take the whole sound, a group or a single layer into another instance. A reason for doing this would be if you wanted to crop a few layers. You can do selections with the drawing tools and subtraction now, but things start getting complicated and a window of protection would suit me fine. Another example is you could also have a main say 3 minute long photosounder window to sequence in and have separate instances of photosounder to do deep editing and sound design with and then copy them into the main window. I've been experimenting with sequencing in photosounder and it would be a huge time saver to hit "c", alt-tab to a different window, hit "p" and so on versus saving a bunch of small files and using a few different programs to piece them together.
A_SN wrote: Here's a wild idea: maybe that Paste could accept Photosounder Archive commands, and Copy could generate those commands depending on what we want it to copy (as in if we want it to copy a layer with all its parameters it could generate a whole paragraph starting with a New layer command and ending with a Base85 command to represent all the pixel data).
That does sound wild! I think that would let me do what I want(and more) as well. You'd have to get other opinions, but I don't need the copy functionality as it is now. For my uses the option to export a bitmap later is good enough. If anything I'd want copy and paste for audio between programs.
A_SN wrote: Shear transforms/effects are more useful and you can now do those by drawing a diagonal line on a layer with one of the propagation blending modes. Actually you can do a proper rotation by any angle by having at least two of those, one with horizontal propagation and the other one with vertical propagation (it's called 'rotation by shear', it's actually an algorithm that some programs use to rotate bitmap images). If instead of lines you use curves then you can obtain some pretty funny deformations.
Ahh, okay, cool. I'll mess with a script. I wouldn't mind having rotate work on all layers and having the program use the dimensions of the first image loaded and cropping beyond that.(if you could copy this wouldn't matter :)) I think I had a bug before because rotate was showing up with multiple layers if I loaded an image file, but now it's not(and working as expected).

Post

Another beta out. I've reworked the way synthesis is done so that instead of having to wait like half a second to hear the changes you hear the changes as soon as you seen them on screen. I've also changed the way volume is calculated and changed so that volume changes are done more smoothly (but still in a hundredth of a second) so that it doesn't click, as long as the smooth transition doesn't create samples over the threshold in which case the change will be instantaneous.

Live synthesis itself is pretty much done. Right now I'm considering a potential system to smoothly transition from the image's previous state to its new state as to make changes less clicky (like when you move the image up and down, the changes sound very sharp). Not sure whether or not I'll find a satisfactory way to do that, if I don't it's okay, it's no big deal. All that's left until the release is to smooth a few things around the edges, and maybe cursor time-stretching when holding down the mouse button.

So v1.8.4 will be only about live synthesis and fixing a few bugs and it's for soon, I'm just trying to keep it simple and get it out there and not do like I did with v1.8.3 and end up starting many things and taking 7 months to release it.
Developer of Photosounder (a spectral editor/synth), SplineEQ and Spiral

Post

Hi Michael,
I just tried downloading the new Mac beta, but
was unable to have it expand properly. Could you
check on this please?
Cheers,
Scott

Post

rexlapin wrote:Hi Michael,
I just tried downloading the new Mac beta, but
was unable to have it expand properly. Could you
check on this please?
Cheers,
Scott
Funny, it extracted fine using WinRAR, but not Mac OS's uncompression thing. I think something fishy happened during the upload. Now I just uploaded it again and downloaded it and now it extracts fine.
Developer of Photosounder (a spectral editor/synth), SplineEQ and Spiral

Post

Just updated again. This time I've added control with the cursor, as show in the video from last December. It works using the cursor tool that you use to set the playback thing to the position you want, only if you hold the mouse button down (and naturally if the live synthesis is enabled) then it follows the cursor as long as you hold the button down, then when you release it it resumes normal playback.

I've also fixed a few things, like how enabling/disabling live synthesis is recorded to the history and then read from it, this should work fine. Also now the program remembers if you've left live synthesis on or off the last time you used the program, so if you always use it you won't have to enable it every time you start the program.
Developer of Photosounder (a spectral editor/synth), SplineEQ and Spiral

Post

I've just downloaded the latest beta, and the cursor controlled realtime playback is fantastic! It also makes it much easier to hone in on a required sound in the time domain.
Would it be possible to take it a stage further and also have some form of frequency filtering, to allow individual frequencies to be defined and then heard via the cursor controlled playback?
This is really what I had been suggesting in my last post, but I had thought that live synthesis was the same thing as the cursor controlled playback feature.
The comments in my previous posts are therefore all referring to cursor controlled playback (as shown in the Dec 2010 video) rather than Live Synthesis. Sorry about the confusion!

Post Reply

Return to “Photosounder”