Magic Lantern Forum

Developing Magic Lantern => General Development => Topic started by: Greg on September 28, 2013, 01:35:15 AM

Title: Fast Advanced Bracket
Post by: Greg on September 28, 2013, 01:35:15 AM
Bracketing ML is slow. I decided to change it.  ;)

(http://imageshack.us/a/img196/7326/yd4q.png)

This work on 500D.

Example video :
http://www.youtube.com/watch?v=uc0ykWnwIqU&feature=youtu.be

Here is the code (requires cleaning, maybe tomorrow):
https://bitbucket.org/Gr3g01/ml-hdr/commits/d0d618ba2cb62533757311e4112378ed50bbfa0d

New repository :
https://bitbucket.org/Gr3g01/ml-hdr2/compare#diff
Title: Re: Fast Advanced Bracket
Post by: Doyle4 on September 28, 2013, 03:01:55 AM
Can you explain how its faster than ML standard please? :)
Title: Re: Fast Advanced Bracket
Post by: a1ex on September 28, 2013, 09:01:53 AM
Nice!

5D2, 4x2EV: 1/30 <delay> 1/125 1/125 1/125. Boo...

@Doyle4: his video is very clear, try watching it ;)
Title: Re: Fast Advanced Bracket
Post by: engardeknave on September 28, 2013, 11:38:34 AM
Extremely relevant to my interests. Not sure why it's so slow now. I tried to do fast silent pic hdr with pico c but it took forever.
Title: Re: Fast Advanced Bracket
Post by: Doyle4 on September 28, 2013, 12:16:28 PM
Quote from: a1ex on September 28, 2013, 09:01:53 AM
@Doyle4: his video is very clear, try watching it ;)

Oops... didnt see the links underneath :P what late nights do to you, looks great!
Title: Re: Fast Advanced Bracket
Post by: Doyle4 on September 28, 2013, 12:23:55 PM
When its been cleaned etc, do you think Dual Iso could be synced along side with it?
Title: Re: Fast Advanced Bracket
Post by: c2s07 on September 28, 2013, 01:01:18 PM
I was hoping the tweak eliminated the mirror slap between exposures. :)
Title: Re: Fast Advanced Bracket
Post by: Doyle4 on September 28, 2013, 01:37:45 PM
once cleaned im sure itll run nice along silent shutter :)
Title: Re: Fast Advanced Bracket
Post by: Greg on September 28, 2013, 08:13:20 PM
Now works with Intervalometer.
Fast bracketing 15EV, Sequence (0 - --), EV increment (0.5 EV) sounds like an start old engine LOL  ;D

Ops damaged the SD card.
Card work, the housing is in 2 parts  :(

We need fast DOF bracketing? Each code optimization is useful when continuous shooting.
Title: Re: Fast Advanced Bracket
Post by: engardeknave on September 29, 2013, 08:44:34 AM
QuoteWe need fast DOF bracketing

yesssss
Title: Re: Fast Advanced Bracket
Post by: Greg on September 29, 2013, 08:19:21 PM
Quote from: engardeknave on September 29, 2013, 08:44:34 AM
yesssss

Working - http://www.youtube.com/watch?v=NQLxQmdYOIo&feature=youtu.be

Code - https://bitbucket.org/Gr3g01/ml-hdr/compare#diff   ;)
Title: Re: Fast Advanced Bracket
Post by: engardeknave on September 30, 2013, 02:50:00 AM
This is exciting. Should make DOF bracketing a lot more practical.
Title: Re: Fast Advanced Bracket
Post by: Greg on September 30, 2013, 07:38:40 PM
Do you know something about LockSw? - http://magiclantern.wikia.com/wiki/Tx19a

If this lock SW1 and SW2, it would be useful for the Bulb Timer and Fast Bracketing.


Speed fix - https://bitbucket.org/Gr3g01/ml-hdr/commits/46b86f6f5b9c681ea1d898d561f272da3cc5b9a7
Verifying "get_halfshutter_pressed()" take too long.
Title: Re: Fast Advanced Bracket
Post by: Greg on October 02, 2013, 12:05:54 AM
Tested on another camera than the 500D?
Title: Re: Fast Advanced Bracket
Post by: gerk.raisen on October 02, 2013, 01:44:50 PM
Excellent work Greg.
When a pull request? :)
:P I can't wait to test it on my 60D ;D
Title: Re: Fast Advanced Bracket
Post by: a1ex on October 02, 2013, 02:38:29 PM
My results on 60D:

- sometimes it takes the bracketing correctly, but slow (just like before)
- sometimes it takes first shot at 0 EV, then a small delay, then all the remaining shots are taken quickly, but all of them (except the first) have the same exposure.

Example (5x2 EV, speed tweak on, everything else default):
- 1/500, 1/2000, 1/125, 1/8000, 1/30 (slow)
- 1/500, 1/2000, 1/2000, 1/2000, 1/2000 (fast)

This is with both high-speed and normal continuous modes. I just take a few bracketed sequences with the same settings, and the odds of getting either behavior seem roughly 50/50.
Title: Re: Fast Advanced Bracket
Post by: Greg on October 02, 2013, 05:49:00 PM
It seems that when you take a picture, we can not change the shutter speed.
Maybe it does not work on cameras with two displays?


I think it could work like this:
SW2(0,50);
SW1(0,50);

if (shutterhdr) shutterhdr = COERCE(shutterhdr, 16, FASTEST_SHUTTER_SPEED_RAW); // 30s ... 1/8000 or 1/4000
prop_request_change_wait( PROP_SHUTTER, &shutterhdr, 4, 200);

SW2(1,50);
SW1(1,50);

It is too slow
Title: Re: Fast Advanced Bracket
Post by: gerk.raisen on October 11, 2013, 06:55:53 PM
Hello Greg,

Have you made progress about this idea? It seems very promising, maybe why not try to port it to a module? :)
Title: Re: Fast Advanced Bracket
Post by: Greg on October 11, 2013, 07:24:03 PM
Quote from: gerk.raisen on October 11, 2013, 06:55:53 PM
Hello Greg,

Have you made progress about this idea? It seems very promising, maybe why not try to port it to a module? :)

We can add it to the repository, it works only on the 500D. I do not have another camera to check/change the code.
Maybe it will work on the 550D/600D.
Title: Re: Fast Advanced Bracket
Post by: Greg on October 14, 2013, 07:30:15 PM
Quote from: c2s07 on September 28, 2013, 01:01:18 PM
I was hoping the tweak eliminated the mirror slap between exposures. :)

It works, the mirror does not move!  ;D

(http://imageshack.us/a/img850/6920/3p3n.jpg)
Title: Re: Fast Advanced Bracket
Post by: c2s07 on October 14, 2013, 09:37:05 PM
That cannot work... it's not duct tape! :)
Title: Re: Fast Advanced Bracket
Post by: Greg on October 14, 2013, 09:54:34 PM
I think we can not do this function.
500D has one motor in the mirror box, he is responsible for the mirror and shutter.
For example, the 50D has two motors.
Title: Re: Fast Advanced Bracket
Post by: nanomad on October 15, 2013, 02:44:26 PM
Correct, all the rebels have mirror motion linked with shutter operation.
Title: Re: Fast Advanced Bracket
Post by: Greg on October 15, 2013, 09:05:25 PM
Motor control is via Tx19a?
Title: Re: Fast Advanced Bracket
Post by: nanomad on October 16, 2013, 10:22:18 AM
Probably  >:(
Title: Re: Fast Advanced Bracket
Post by: Greg on October 16, 2013, 04:20:06 PM
40D/50D/60D/70D/7D/5D II/5D III/6D have this function in live view.
It would be great in photo mode.

If someone has one of these cameras, you may see how it works in live view.
Title: Re: Fast Advanced Bracket
Post by: Greg on October 21, 2013, 05:47:00 PM
My friend says it's working on 5D2 (speed tweak) - https://bitbucket.org/Gr3g01/ml-hdr-all-cameras/commits/259e4a797664e228c23765e7a9a6b93dab40c19f

This is the test code needs to be fixed.
Title: Re: Fast Advanced Bracket
Post by: a1ex on October 21, 2013, 05:53:55 PM
Great find. It's very similar to what I'm doing in normal HDR bracketing.

I'll take a look at the msleep, since I'm not sure whether msleep(1) is msleep(10) or NOP or something else.
Title: Re: Fast Advanced Bracket
Post by: Greg on October 21, 2013, 08:38:54 PM
It is much faster, but you can not get a full FPS camera (5D2).
The 500D push two times the shutter button, do quickly two pictures in the series (full FPS). 5D II does not allow this, it is lag. >:(

Only 500D is a fast camera? lol  ;D
Title: Re: Fast Advanced Bracket
Post by: Marsu42 on October 24, 2013, 10:26:05 AM
Quote from: Greg on October 16, 2013, 04:20:06 PM
If someone has one of these cameras, you may see how it works in live view.

Hmmm, this doesn't seem to work on my 60d at all - obviously I did something wrong since alex got it to work: In lv and M mode, I enable "speed tweak" with mf & high speed continuous drive - and it shoots the set bracket very fast alright, but it's all the same picture? I tried both bracket types, DOF and Exposure... I really hope it's not yet another compiler problem over here, everything else in ml works by now :-o

Btw: The .help "Tv or DOF only!" is ambiguous - is it about Tv *bracketing* (in M and/or Av mode) or Tv *mode*?
Title: Re: Fast Advanced Bracket
Post by: a1ex on October 24, 2013, 10:28:35 AM
I didn't get it to work on 60D (same problem).
Title: Re: Fast Advanced Bracket
Post by: Marsu42 on October 24, 2013, 10:34:25 AM
Quote from: a1ex on October 24, 2013, 10:28:35 AM
I didn't get it to work on 60D (same problem).

Ah, ok, then I mis-read your above post which seemed to indicate you've got it working, but unreliably so.

Edit: I also tried it with the 5d2 fix from above, doesn't work either, but even has horrible side effects on the 60d.
Title: Re: Fast Advanced Bracket
Post by: Greg on October 24, 2013, 01:28:58 PM
Quote from: Greg on October 16, 2013, 04:20:06 PM

If someone has one of these cameras, you may see how it works in live view.
I mean, to see how this feature works and move it to the photo mode.

The 500D code works perfectly well. The camera takes a bracketing at full speed burst mode.
Title: Re: Fast Advanced Bracket
Post by: Greg on October 24, 2013, 11:23:18 PM
Canon bracketing range prop 8000000b
1/3 EV     - val = 3
2/3EV      - val = 5
1EV         - val = 8
1 1/3EV   - val = 11
1 2/3EV   - val = 13
2EV         - val = 16
3EV         - val = 24
4EV         - val = 32
5EV         - val = 40
Title: Re: Fast Advanced Bracket
Post by: Marsu42 on October 25, 2013, 10:43:48 AM
Quote from: Greg on October 24, 2013, 11:23:18 PM
Canon bracketing range prop 8000000b
1/3 EV     - val = 3
2/3EV      - val = 5
1EV         - val = 8
1 1/3EV   - val = 11
1 2/3EV   - val = 13
2EV         - val = 16
3EV         - val = 24
4EV         - val = 32
5EV         - val = 40

Btw there are now macros for these obscure values in lens.h, so 2EV is 2*EXPO_FULL_STOP and 1 2/3EV is EXPO_FULL_STOP+EXPO_2_3_STOP ... the camera either sets 1/2 or 1/3 stops in bracketing, exposure ec and flash ec according to c.fn I-1 (exposure level increments), you can get/set it through the set/getcfn() functions.
Title: Re: Fast Advanced Bracket
Post by: boogotti84 on November 04, 2013, 01:43:42 PM
Can you do a mirror lockup with hdri Bracketing?
6D canon
Title: Re: Fast Advanced Bracket
Post by: Greg on November 04, 2013, 03:53:47 PM
Quote from: boogotti84 on November 04, 2013, 01:43:42 PM
Can you do a mirror lockup with hdri Bracketing?
6D canon

6D do not have ML bracketing?


The new repository, work well on a 500D. You can check the 550D and 600D.
https://bitbucket.org/Gr3g01/ml-hdr2/compare#diff
Title: Re: Fast Advanced Bracket
Post by: boogotti84 on November 04, 2013, 04:24:31 PM
yes 6D has ML Bracketing. but what im asking is can you do mirror lockup in ML, for bracketing hdri's?
because the mirror movement can cause images to be miss aligned very slightly with the vibration. And possibly be fast capturing?
Title: Re: Fast Advanced Bracket
Post by: Greg on November 04, 2013, 05:18:02 PM
Use live view and Canon silent  mode.


Someone understand this code?
ID:8(9)
    tv 65
    range tv 98,10
    aeb_count 2
bindReceiveNewTFTOLC
GUI_Control:63 0xb3e20c
ID:8000002C(10)
PROP:0x8000002c
Value:0x65
ptpReleaseParamChangeCBR [d102][8000002c]
copyOlcDataToStorage Length(16)group1(0x42)group2(0x00)
copyOlcDataToStorage data02[0x01]
copyOlcDataToStorage data03[0x01]
copyOlcDataToStorage data04[0x98]
copyOlcDataToStorage data05[0x10]
copyOlcDataToStorage data06[0x00]
copyOlcDataToStorage data07[0x65]    // shutter speed
copyOlcDataToStorage data08[0x01]
copyOlcDataToStorage data09[0x02]
copyOlcDataToStorage data10[0xa8]
copyOlcDataToStorage data11[0x00]
copyOlcDataToStorage data12[0x00]
copyOlcDataToStorage data13[0x00]
copyOlcDataToStorage data14[0x02]    // photo number AEB
copyOlcDataToStorage data15[0x00]


It is used to display value in the menu...
(http://imageshack.us/a/img35/192/c1o.BMP) (http://imageshack.us/a/img27/3663/a2g1.png) (http://imageshack.us/a/img826/6438/euxb.png)
Title: Re: Fast Advanced Bracket
Post by: Greg on November 17, 2013, 02:25:25 PM
Quote from: Greg on November 04, 2013, 03:53:47 PM
The new repository, work well on a 500D. You can check the 550D and 600D.
https://bitbucket.org/Gr3g01/ml-hdr2/compare#diff
Speed ​​tweak, work well on the 550D, full speed continuous mode.


Edit:
works on 500D, 550D, 600D.
Title: Re: Fast Advanced Bracket
Post by: [email protected] on March 03, 2017, 08:47:56 PM
Hello Greg,

I just found this thread and looked very interesting, altough I have an 100d/SL1. It seems to me, that creating good videos on 5d is the primary objective of the creators of ML, but if Rebel users could use advanced bracket not only from tripod (if I understand it correctly), that would add hugely to the value of ML even as an additional modul or an experiment. Unfortunately the links are dead, and I didn't found any more about it in this forum .
If accidentally you read this, could you think on it, please?
Thanks in advance.
Title: Re: Fast Advanced Bracket
Post by: Greg on March 04, 2017, 02:18:47 PM
This code only works on the 500D/550D/600D.
That was four years ago, today we should do it for all ML cameras.

But who will do it? I do not have a canon camera.