500d development - page 116 - DSLR Hack development - CHDK Forum supplierdeeply

500d development

  • 2487 Replies
  • 833783 Views
*

Offline a1ex

  • *****
  • 671
  • ML dev
Re: 500d development
« Reply #1150 on: 19 / May / 2011, 10:26:24 »
Advertisements
Jeremy's tests showed around 4fps in burst mode. One buffer refreshes at 12.5fps on 550D.

On the other hand, saving times are not equal; there may be some caching involved.

Experiment with vsync function: it waits until some value changes (you need to pass a pointer to that value as argument). For very low-res silent pics it may work.

To stop the digic from updating the buffers, you can call SleepLiveViewDevice. But then you have to wake it up again (and I don't know how). This function might reduce power draw, too (i.e. a power saving mode in liveview even stronger than just turning the display off).

Or just find the address of raw/jpeg buffers (which is not used during LiveView, and might be safe to write to them), and copy the silent pic buffer there before saving it on the card.

Re: 500d development
« Reply #1151 on: 19 / May / 2011, 10:47:56 »
While I'm thinking about it: I wanted to make a note here in case it comes up later.  If there are exactly 2 lines for a Hires buffer.  Maybe 5x5 or 3x3 or 2x2 has only 2?.  It's possible to sync up to avoid one of them.  The other can be removed with interlacing. 

I may have to speed up the WriteFile routine to reduce the number of lines to 2 first. 

What good is 5x5 if it only works when the image is completely still?  Can you think of a use for it?
Anyone?  Why not just take a shutter picture?

If you cannot find higher than 500 lines x5 zoom let me know, I found one.  The problem with it is discussed above.

I'm getting way ahead of myself.  Slow down.  Take a breath...

Re: 500d development
« Reply #1152 on: 19 / May / 2011, 10:57:55 »
Great ideas Alex!  I especially like using the raw/jpeg buffers.  With this we may be able to get 5x5 working better!  According to your numbers, that buffer might have 4 lines in it.  3 with syncing.  I'm not suggesting we can keep up with any sized buffer.  But we CAN handle 616 even without using those buffers intermediately.  I can see it's going to get very complicated if we do use them.

Re: 500d development
« Reply #1153 on: 19 / May / 2011, 11:10:43 »
Will you please try a test for me?  Use SleepLiveViewDevice to stop the Digic.  Then require the user to manually start it?  By toggling the Liveview button?  Or would you have to turn it off completely?  This would be wonderful for individual 5x5 shots!  Not Timelapse obviously.


*

Offline Jamez

  • **
  • 91
Re: 500d development
« Reply #1154 on: 19 / May / 2011, 11:52:26 »
Id prefer to just get things working solidly before developing things further as per your suggestions sbright. As you say nothing works quite correctly at the moment so I find it bizarre that your suggesting improvements at this stage, no?

From what Im reading Alex is giving details as to why your suggestions cant be done?
Canon Kiss x3 Owner running...
Magic Lantern for 500D/T1i/Kiss X3
Canon EOS 500D/T1i - Magic Lantern Firmware Wiki

*

Offline a1ex

  • *****
  • 671
  • ML dev
Re: 500d development
« Reply #1155 on: 19 / May / 2011, 12:11:58 »
My ideas won't help at all with matrix (i.e. hi-res) modes. They may only help with a single silent pic, but they are not easy to do. I did a few experiments with SleepLiveViewDevice; it froze LiveView, but then got err70. It's only a starting point for investigation, and you do need to be familiar with the code to try this. Before posting, try to understand how things work, don't just fill the forum with nonsense.

Re: 500d development
« Reply #1156 on: 19 / May / 2011, 13:57:30 »
I'm noting this bug here, because I don't have an official build.  Although it's happened 3x before, last month.  I turned my 500d off normally at night, with a fully charged battery.  Using the off switch.  In the morning it's dead.  Anyone else?

Re: 500d development
« Reply #1157 on: 19 / May / 2011, 14:05:49 »
@Jamez - I agree completely!  First step is stability.  I was just thinking ahead.  Sometimes it helps us to think before we plan specifics or begin to implement.  Notice I have not begun coding my ideas.  There are many problems with the 616 buffer build.  Too many to list.  I will be the first one to test it as it gets closer to working.  I seem to be the best person at making it fail!  In many different ways.  It's my specialty ;)

Your SleepLiveView would help!  I agree the intermediate buffer will be difficult.  Way down the road.  I will be familiar with your code before I begin changing it.  That's why I asked for your test results.  I think some of my ideas are good like using your Vsync function.

I am great at testing and documenting bugs.  I am an expert in C and C++, just not this particular code.  I have worked on a similar project involving video sampling years ago.  There were similar issues in synching to overcome.  I don't mean to sound like a know it all.  I just wanted to express my ideas in case they are useful.  If not, you are welcome to ignore them!  I realize your understanding is far advanced to mine when it comes to Magic Lantern.  Coutts and Alex.  Hence the questions.

Have a Great Day!


*

Offline Jamez

  • **
  • 91
Re: 500d development
« Reply #1158 on: 19 / May / 2011, 14:15:32 »
It would be nice to see some of this expertise come out in the code then sbright :)
Its easy to test something and say it doesnt work....
Canon Kiss x3 Owner running...
Magic Lantern for 500D/T1i/Kiss X3
Canon EOS 500D/T1i - Magic Lantern Firmware Wiki

Re: 500d development
« Reply #1159 on: 19 / May / 2011, 14:35:47 »
I will be happy to contribute when it comes time to implement my syncing idea.  Yes, you are right, it is easy to test and say it doesn't work.  Someone has to do this testing properly!  The sync problem must be solved.  First as an idea.  Then implemented.  Otherwise HD Silent Picture is not useful in the real world.  You would not even be able to make a Time Lapse.  Agreed?

We need a project manager to assign tasks.  What specifically can I do to help?

 

Related Topics