supplierdeeply

G7 X porting thread

  • 147 Replies
  • 93604 Views
Re: G7 X porting thread
« Reply #20 on: 31 / March / 2016, 17:08:17 »
Advertisements
if this helps you can also use this one
https://www.dropbox.com/s/6pwev6mo68l0grf/arial30.rbf?dl=0

Re: G7 X porting thread
« Reply #21 on: 01 / April / 2016, 04:35:45 »
You can build your own rbf font with the rbf editor. => http://chdk.wikia.com/wiki/RBF_fonts#Tutorial:_How_to_make_RBF_fonts

Thanks fort that.
But it might be helpful for all users to have at least one larger font in the build.

if this helps you can also use this one
https://www.dropbox.com/s/6pwev6mo68l0grf/arial30.rbf?dl=0

Thanks. This font looks good for me…


Re: G7 X porting thread
« Reply #22 on: 09 / April / 2016, 13:18:12 »
I’m not sure if this the right place to post here…

I want to test the sharpness of the G7x on different focal length. I wrote a small script which made 5 pictures with different apertures. After every half shoot I print the focus.

Before I start the script I locked the focus in the canon menu (Camera was on MF). Everything else about focus was switched off (Continuous, Safety focus).

On my S110 and G1x the focus never changed on this 5 pictures.

But on the G7x this value always changed. I tried also set_mf or set_aflock but the results don’t change. For me it looks like, that the focus is really changing when the aperture changes. Is this normal?

Result from Script:
Code: [Select]
Actual Focus =   301 mm
Actual Focus =   301 mm
Actual Focus =   289 mm
Actual Focus =   275 mm
Actual Focus =   275 mm

The result of these was also interesting. The sharpness at 24mm and Av=1.8 was not bad in the corners, better as I expected. But the sharpness goes bad at Av=5.6 and goes better at Av=8.0. I haven’t expected this.

The Script:

Code: [Select]
function fastshoot()
  press("shoot_half")
  repeat
    sleep(10)
  until get_shooting() == true
               print("Actual Focus =  ",get_focus(),"mm") 
  press("shoot_full")
  release("shoot_full")
  release("shoot_half")
  repeat
    sleep(1)
  until get_shooting() ~= true
end



--start script
print_screen(get_day_seconds()/10)
print("My Av:",os.date("%d.%m.%Y %X"))


bv96 = 0
av96 = 0
sv96 = 0
tv96 = 0


press("shoot_half")
repeat
  sleep(10)
until get_shooting() == true

tv96     = get_tv96()
av96     = get_av96()
bv96     = get_bv96()
sv96     = get_sv96()


print("Actual Focus =  ",get_focus(),"mm") 


release("shoot_half")
sleep(200)

-----------------------------------------------------------------


fastshoot()
sleep(1000)

av96 = 288
tv96 = ((bv96 + sv96) - av96)
set_av96_direct(av96)
set_tv96_direct(tv96)

fastshoot()
sleep(1000)

av96 = 480
tv96 = ((bv96 + sv96) - av96)
set_av96_direct(av96)
set_tv96_direct(tv96)

fastshoot()
sleep(1000)

av96 = 576
tv96 = ((bv96 + sv96) - av96)
set_av96_direct(av96)
set_tv96_direct(tv96)

fastshoot()
sleep(1000)

av96 = 672
tv96 = ((bv96 + sv96) - av96)
set_av96_direct(av96)
set_tv96_direct(tv96)

fastshoot()
sleep(1000)

print("End")




« Last Edit: 09 / April / 2016, 13:21:36 by c_joerg »

*

Offline reyalp

  • ******
  • 11591
Re: G7 X porting thread
« Reply #23 on: 09 / April / 2016, 16:08:41 »
I’m not sure if this the right place to post here…
Yes. Interesting results.

I don't have any explanation. It's possible something involved in get_focus is wrong, or the camera is actually doing something funny. I've haven't spent much time investigating the focus stuff.

One thing you could do is log the SUBJECT_DIST1 and SUBJECT_DIST2 propcases as well as the get_focus result.

Something like
Quote
props=require'propcase'
...
print("get_focus",get_focus(),"sd1",get_prop(props.SUBJECT_DIST1),"sd2",get_prop(props.SUBJECT_DIST2))

The value from get_focus comes from shooting_update_dof_values (core/shooting.c) which is quite complicated and depends on some menu settings. In the default settings, I believe the value should come from _GetFocusLensSubjectDistanceFromLens. I may not have identified this function correctly, I only verified that the value looked approximately right: a few cm less than the propcase values.

It would also be interesting to know if the results are repeatable. E.g. for a similar starting focus distance, does the SD value always decrease by a similar amount with the aperture change.
Don't forget what the H stands for.


Re: G7 X porting thread
« Reply #24 on: 09 / April / 2016, 17:08:46 »
It would also be interesting to know if the results are repeatable. E.g. for a similar starting focus distance, does the SD value always decrease by a similar amount with the aperture change.

When I compare the pictures in the centre, for me it looks like that the focus really changes. But the difference is very small, hard to say…

I investigate some more runs which I had.

On 24mm I had 2 runs with same start value and yes the results are repeatable. I had one run with 50mm and these values are constant. On 100mm only the values for 8.0 and 11.0 are different.


Code: [Select]
24mm runs:

Actual Focus =   301 mm
Actual Focus =   301 mm
Actual Focus =   289 mm
Actual Focus =   275 mm
Actual Focus =   275 mm

Actual Focus =   301 mm
Actual Focus =   301 mm
Actual Focus =   289 mm
Actual Focus =   275 mm
Actual Focus =   275 mm

Actual Focus =   303 mm
Actual Focus =   303 mm
Actual Focus =   291 mm
Actual Focus =   277 mm
Actual Focus =   277 mm

50mm run:

Actual Focus =   497 mm
Actual Focus =   497 mm
Actual Focus =   497 mm
Actual Focus =   497 mm
Actual Focus =   497 mm

100mm run:

Actual Focus =   1063 mm
Actual Focus =   1063 mm
Actual Focus =   1063 mm
Actual Focus =   1085 mm
Actual Focus =   1085 mm



Re: G7 X porting thread
« Reply #25 on: 10 / April / 2016, 04:03:05 »
I made another 5 runs with the modified print as you suggest.
The values from get_focus changing but the values from SUBJECT_DIST are constant.

Code: [Select]
Run1) 24mm
get_focus 286 sd1 334 sd2 334
get_focus 286 sd1 334 sd2 334
get_focus 275 sd1 334 sd2 334
get_focus 262 sd1 334 sd2 334
get_focus 262 sd1 334 sd2 334

Run2) 24mm with the same AF lock as Run 1
get_focus 268 sd1 334 sd2 334
get_focus 268 sd1 334 sd2 334
get_focus 259 sd1 334 sd2 334
get_focus 247 sd1 334 sd2 334
get_focus 247 sd1 334 sd2 334

Run3) 24mm with new focus lock
get_focus 279 sd1 327 sd2 327
get_focus 279 sd1 327 sd2 327
get_focus 268 sd1 327 sd2 327
get_focus 256 sd1 327 sd2 327
get_focus 256 sd1 327 sd2 327

Run4) 24mm with other distance and new AF lock
get_focus 1213 sd1 1023 sd2 1023
get_focus 1213 sd1 1023 sd2 1023
get_focus 1213 sd1 1023 sd2 1023
get_focus 1154 sd1 1023 sd2 1023
get_focus 1154 sd1 1023 sd2 1023

Run5) 50mm
get_focus 525 sd1 585 sd2 585
get_focus 525 sd1 585 sd2 585
get_focus 525 sd1 585 sd2 585
get_focus 525 sd1 585 sd2 585
get_focus 525 sd1 585 sd2 585

I have attached to pictures (AV = 2.8 and AV = 5..6) from my sharpness result

I photographed with my G7x a A3 graph paper. The millimeter however become by copying to 1.2mm. With the lights and the alignment, I have not given me a lot of effort. In the middle / bottom can e.g. the shadow of the camera view.
I then simply copied from the camera JPG respectively 300 * 300 pixels at the corners / side / center to an image.
I find the results at f 1.8 and 2.8 now not so bad. What is, however, surprising and bothers me that the result in the corners at Av=5.6 is worse. I would not have expected.. With larger apertures corners are then better again.

Re: G7 X porting thread
« Reply #26 on: 12 / April / 2016, 13:42:31 »
Hi all,

I recently got a G7 X and in general, I'm really happy with it. But I'm a bit disappointed with the lack of timelapse options, so Google brought me here. I have two questions about the CHDK test build for the G7 X:

1. I know there's always some risk involved with these things. Do you think the risk of damaging the camera using this test build is higher than the average CHDK build?

2. Will the "Ultra Intervalometer" timelapse script work with this build? (http://chdk.wikia.com/wiki/UBASIC/Scripts:_Ultra_Intervalometer)

Thanks in advance!
-Stefan

*

Offline reyalp

  • ******
  • 11591
Re: G7 X porting thread
« Reply #27 on: 12 / April / 2016, 16:05:23 »
1. I know there's always some risk involved with these things. Do you think the risk of damaging the camera using this test build is higher than the average CHDK build?
Unfortunately, it's really hard to quantify. Because this port is new, on a camera that is quite different from other cameras, the room "unknown unknowns" is definitely bigger. I put a fairly strong warning on the test builds because of this, and the fact that it's a relatively expensive camera.

I don't worry about it too much myself, in the ~9 year history oF CHDK, there have only been a handful of reported brickings that plausibly attributed to it. At the same time, I can't guarantee this camera won't be different.
Quote
2. Will the "Ultra Intervalometer" timelapse script work with this build? (http://chdk.wikia.com/wiki/UBASIC/Scripts:_Ultra_Intervalometer)
I have not tried that script, but in general, most script features should work. If there are port bugs that prevent it from working, I will probably fix them.

Skimming what's posted on that page, I see some versions use set_prop 23 to set the jpeg quality. This is not correct on any camera newer than propset 1 (digic II) and actually sets the AV propcase on many (which probably has no effect, being set outside of half shoot), but can easily be commented out or replaced with set_quality.

If you want something more sophisticated, I have briefly tested my Raw Meter Intervalometer script, and it seems to work fine.

Another alternative is waterwingz Ultimate Intervalometer. I have not tested this, but it should probably work, and again, I'd expect to fix port specific bugs that prevent it from working.
Don't forget what the H stands for.


*

Offline reyalp

  • ******
  • 11591
Re: G7 X porting thread
« Reply #28 on: 12 / April / 2016, 16:09:20 »
I made another 5 runs with the modified print as you suggest.
The values from get_focus changing but the values from SUBJECT_DIST are constant.
Interesting stuff. I briefly tried to replicate this manually, with the following procedure:
Servo, Safety and Continuous MF off
Set Av mode
Lock focus in canon UI with half shoot + left
half press or shoot and get_focus
change Av
half press or shoot and get_focus

I didn't see any changes in the get_focus value.
Don't forget what the H stands for.

Re: G7 X porting thread
« Reply #29 on: 13 / April / 2016, 02:15:06 »
1. I know there's always some risk involved with these things. Do you think the risk of damaging the camera using this test build is higher than the average CHDK build?
Unfortunately, it's really hard to quantify. Because this port is new, on a camera that is quite different from other cameras, the room "unknown unknowns" is definitely bigger. I put a fairly strong warning on the test builds because of this, and the fact that it's a relatively expensive camera.

I don't worry about it too much myself, in the ~9 year history oF CHDK, there have only been a handful of reported brickings that plausibly attributed to it. At the same time, I can't guarantee this camera won't be different.
Quote
2. Will the "Ultra Intervalometer" timelapse script work with this build? (http://chdk.wikia.com/wiki/UBASIC/Scripts:_Ultra_Intervalometer)
I have not tried that script, but in general, most script features should work. If there are port bugs that prevent it from working, I will probably fix them.

Skimming what's posted on that page, I see some versions use set_prop 23 to set the jpeg quality. This is not correct on any camera newer than propset 1 (digic II) and actually sets the AV propcase on many (which probably has no effect, being set outside of half shoot), but can easily be commented out or replaced with set_quality.

If you want something more sophisticated, I have briefly tested my Raw Meter Intervalometer script, and it seems to work fine.

Another alternative is waterwingz Ultimate Intervalometer. I have not tested this, but it should probably work, and again, I'd expect to fix port specific bugs that prevent it from working.
Thanks for your detailed answer! I'll think about whether the risk is worth it for me. I mean, the longer I wait, the lower the risk will be. If I try it out, I'll use your script first.

 

Related Topics