Performance, and the beginnings of the next set of
features
12/06/06 14:27 |
Permalink
I've now
installed Trac, and put all of my little yellow
sticky notes into it. Trac is nice! I had not really
played with it much before this, and hadn't realized
how simple it is to use. For me, it's brilliant - no
massively complex ticket/bug forms to fill out. 2
text fields, couple of options - and I'm done.
I've been looking at the performance of iShowU. So far I've ignore everything to do with video compression, because I know what I'm going to do there - and I'm not ready to do it yet. I've been using the scenario: "I've loaded iShowU, I'm monitoring audio, not moving the mouse - so why is it taking between 8-15% CPU time?". It turns out that monitoring audio has an overhead of about 5-7% (that'll depend on your machine, of course). The rest was my custom level meter, and also the way in which I handled audio level change events. Shame on me!
Anyway, I've now reduced the amount of work it has to do (drawing all that nice shading takes CPU time), by using CGLayers and pre-rendering everything. According to the CG documentation, CGLayers are cached inside the GPU. This sounds good to me. Still, it has not reduced the drawing time to zero (or close to), which I'd like, so I've posted on to the CG list to see if there's a better/faster way to get the same effect.
Feature wise, I've started looking into a sensible cut/paste/duplicte option for presets - as well as pause of the capture process (which will be hotkey as well). Once I've got the cut/copy/duplicate done, I'll do a 1.14 release.
I've been looking at the performance of iShowU. So far I've ignore everything to do with video compression, because I know what I'm going to do there - and I'm not ready to do it yet. I've been using the scenario: "I've loaded iShowU, I'm monitoring audio, not moving the mouse - so why is it taking between 8-15% CPU time?". It turns out that monitoring audio has an overhead of about 5-7% (that'll depend on your machine, of course). The rest was my custom level meter, and also the way in which I handled audio level change events. Shame on me!
Anyway, I've now reduced the amount of work it has to do (drawing all that nice shading takes CPU time), by using CGLayers and pre-rendering everything. According to the CG documentation, CGLayers are cached inside the GPU. This sounds good to me. Still, it has not reduced the drawing time to zero (or close to), which I'd like, so I've posted on to the CG list to see if there's a better/faster way to get the same effect.
Feature wise, I've started looking into a sensible cut/paste/duplicte option for presets - as well as pause of the capture process (which will be hotkey as well). Once I've got the cut/copy/duplicate done, I'll do a 1.14 release.
|
Post release joy!
01/06/06 22:35 |
Permalink
Post release
has been a great experience. There have been a
reasonable number of purchases (given that I've done
no advertising), and I've had to fix only a few minor
issues. It's been really great seeing people lay down
real cash for iShowU - to me it shows that the Mac
community is happy to pay for good software, and
provides me encouragement to continue.
My next step will be to plan a major change to the video encoding engine, in order to improve performance. I've chosen to do this before attempting to add the 'record sound from an app' feature, primarily because I think it'll be easier. So it's a cheap (time wise) win.
I'm busy with my 'day job' for the moment, and so releases and new features are not coming out as fast as I would like. I have made plans to finish there at the end of August - at which time I will be working full time for shinywhitebox!
My next step will be to plan a major change to the video encoding engine, in order to improve performance. I've chosen to do this before attempting to add the 'record sound from an app' feature, primarily because I think it'll be easier. So it's a cheap (time wise) win.
I'm busy with my 'day job' for the moment, and so releases and new features are not coming out as fast as I would like. I have made plans to finish there at the end of August - at which time I will be working full time for shinywhitebox!