Hey all, first thanks for all your great work so far! I have bought an M3 and not a different model/brand because CHDK is running there :-)
@srsa_4c: I have build rev. 5021 for firmware 1.20f. The bitrate changing feature works like a charm without crashes there. One quirk however ist that the reported byterates for cbr mode are varying (ex.: at 0.25 modifier, byterates vary between 384KB/s and around 700KB/s), I have not checked the encoded video if it varies there too. But I guess this is expected behaviour and just really a minor issue.
I have one big problem with CHDK on my M3 and this is the menu flickering issue reported on the M10.
It is very strange that this issue is not present on the timelapse tutorial here:
https://chdk.setepontos.com/index.php?topic=12542.msg135299;topicseen#msg135299To eliminate any software differences I downgraded to 1.01a and used rev4794 as in the tutorial. In contrast to the video however, I am experiencing alot of flickering on my M3 even in manual record mode. Only in playback mode it is possible to go through the menus without. But this would mean that there are at least two hardware revision of the M3 with very different behaviour, which should however be usually controlled by the firmware. This is a big mystery to me, and I want to ask if anybody else is experiencing this flickering on their M3's?
Second question is if its possible to get rid of it (I would offer time / code to help here):
In the chdk code I have seen that for all DIGIT6 processors only draw to the active buffer is implemented.
Could a workaround be to implement drawing to both (or are there even more?) bitmap buffers simultaneously like for the older models done?
Of course this would be slow because redundant draw calls have to be done. A better strategy might be to blit one buffer after completed drawing a frame to the other or get to know when the active buffer changes? Do we have any information about such event?
I have not fully understand the rendering paths of the chdk osd, maybe someone can help me here out with more details?
Some questions:
I guess those bitmap_buffers are handled by the canon firmware and canon also uses exactly these to draw their osds, is that correct? Does canon clear the whole buffer before redraw? It seems some chdk osd items like the battery indicator flicker faster, because maybe they are overwritten by the canon osd before being redrawn. However some items like the chdk menu is only flickering between two states (because of the active buffer switch) but is not cleared at all.
How/when does chdk decide to redraw their osd stuff?
If in record mode, I can workaround the active buffer menu flickering if I half press the shutter. After a few frames the menu does not flicker anymore. Flickers again if I move the cursor in the menu. Is chdk responing to the half press and does a redraw or is this handled internally by the canon firmware?
EDIT: What is the buffer setup for the canon firmware / chdk? How do all the buffers work together?
best
Martin