Display (bitmap overlay) - page 31 - General Discussion and Assistance - CHDK Forum
supplierdeeply

Display (bitmap overlay)

  • 342 Replies
  • 67389 Views
*

Offline srsa_4c

  • ******
  • 4414
Re: Display (bitmap overlay)
« Reply #300 on: 30 / May / 2021, 17:10:30 »
Advertisements
One detail I'm not happy with is the vid_bitmap_refresh() implementation. This function is now called at least 10 times a second and it writes 2 entries in camera log.
As it turned out, the variant with two transfer_src_overlay calls doesn't write unnecessary camera log entries. The firmware, however, does lots of VTMLock/Unlock when using a mode with frequent display updates (face tracking, "scene intelligent auto"). I made the mistake of dumping camera log while in such mode.

I noticed that the "fallback" HDMI mode (probably 480p) is not handled correctly on my camera with the current code (I still need to dump the ximr struct to see what's going on). This results in completely garbage display. I'm able to force the camera into this mode with some of my HDMI devices, but I'm not sure if others can do that. Connecting the camera to a digital monitor/TV with less than full HD native resolution should in theory help.

*

Offline philmoz

  • *****
  • 3320
    • Photos
Re: Display (bitmap overlay)
« Reply #301 on: 30 / May / 2021, 17:58:26 »
I noticed that the "fallback" HDMI mode (probably 480p) is not handled correctly on my camera with the current code (I still need to dump the ximr struct to see what's going on). This results in completely garbage display. I'm able to force the camera into this mode with some of my HDMI devices, but I'm not sure if others can do that. Connecting the camera to a digital monitor/TV with less than full HD native resolution should in theory help.


@srsa_4c


Is it just the CHDK display that is garbled or does it affect the Canon OSD as well?

CHDK ports:
  sx30is (1.00c, 1.00h, 1.00l, 1.00n & 1.00p)
  g12 (1.00c, 1.00e, 1.00f & 1.00g)
  sx130is (1.01d & 1.01f)
  ixus310hs (1.00a & 1.01a)
  sx40hs (1.00d, 1.00g & 1.00i)
  g1x (1.00e, 1.00f & 1.00g)
  g5x (1.00c, 1.01a, 1.01b)
  g7x2 (1.01a, 1.01b, 1.10b)

*

Offline srsa_4c

  • ******
  • 4414
Re: Display (bitmap overlay)
« Reply #302 on: 30 / May / 2021, 18:16:14 »
Is it just the CHDK display that is garbled or does it affect the Canon OSD as well?
Both are affected. The buffer dimensions and aspect ratios are different, so it's not too surprising. It remains to be seen whether the firmware's implementation (of that display mode) on different models is similar or different.

*

Offline philmoz

  • *****
  • 3320
    • Photos
Re: Display (bitmap overlay)
« Reply #303 on: 30 / May / 2021, 19:30:34 »
I had been pointed to this thread due to the boring flickering of CHDK OSD and menues on DIGIC-6 cams. As far as I understood the discussion there are builds under development for M3 and G7X that try to avoid this and probably some other flaws.
I can offer to test those stuff on my SX700HS (that has DIGIC-6 proc too) if someone can provide an appropriate build.

@CanonUser9000

SX700 test versions uploaded to the link below.
Note the SX700 appears to have a different screen size to the other cameras already implemented so I've had to make some guesses here.

https://drive.google.com/drive/folders/1drk1xi6kMMIeF5xSqXgnpjGCffF8CVkd?usp=sharing
CHDK ports:
  sx30is (1.00c, 1.00h, 1.00l, 1.00n & 1.00p)
  g12 (1.00c, 1.00e, 1.00f & 1.00g)
  sx130is (1.01d & 1.01f)
  ixus310hs (1.00a & 1.01a)
  sx40hs (1.00d, 1.00g & 1.00i)
  g1x (1.00e, 1.00f & 1.00g)
  g5x (1.00c, 1.01a, 1.01b)
  g7x2 (1.01a, 1.01b, 1.10b)


*

Offline CanonUser9000

  • *
  • 27
  • A570 - S95 - S100 - SX220 - SX700 - EOSM
Re: Display (bitmap overlay)
« Reply #304 on: 31 / May / 2021, 05:20:37 »
@philmoz:
Thanks a lot.
I've tested the bulid for FW version 100e: not flickering any more and all the menues can be accessed.

Quote
Note the SX700 appears to have a different screen size to the other cameras already implemented
To help alignment of the OSD and CHDK menues I've atteched some screen shoots in comparison with build 1.6.0-5727 (DE).


*

Offline philmoz

  • *****
  • 3320
    • Photos
Re: Display (bitmap overlay)
« Reply #305 on: 31 / May / 2021, 05:42:35 »
To help alignment of the OSD and CHDK menues I've atteched some screen shoots in comparison with build 1.6.0-5727 (DE).


@CanonUser9000

I've uploaded a new version (file name is the same in Google Drive).

Can you see if this fixes the cropping on the right side.
CHDK ports:
  sx30is (1.00c, 1.00h, 1.00l, 1.00n & 1.00p)
  g12 (1.00c, 1.00e, 1.00f & 1.00g)
  sx130is (1.01d & 1.01f)
  ixus310hs (1.00a & 1.01a)
  sx40hs (1.00d, 1.00g & 1.00i)
  g1x (1.00e, 1.00f & 1.00g)
  g5x (1.00c, 1.01a, 1.01b)
  g7x2 (1.01a, 1.01b, 1.10b)

*

Offline CanonUser9000

  • *
  • 27
  • A570 - S95 - S100 - SX220 - SX700 - EOSM
Re: Display (bitmap overlay)
« Reply #306 on: 01 / June / 2021, 08:29:43 »
@philmoz:

I've tested sx700hs-100e-1.6.0-5929-full.zip-20210601T083032Z-001:

OSD now perfectly aligned, no cropping any more, no flickering

Thank's a lot  ::)

*

Offline philmoz

  • *****
  • 3320
    • Photos
Re: Display (bitmap overlay)
« Reply #307 on: 01 / June / 2021, 20:34:42 »
OSD now perfectly aligned, no cropping any more, no flickering


@CanonUser9000


Thanks for the update.


When you have time can you please test zebra and edge overlay.

CHDK ports:
  sx30is (1.00c, 1.00h, 1.00l, 1.00n & 1.00p)
  g12 (1.00c, 1.00e, 1.00f & 1.00g)
  sx130is (1.01d & 1.01f)
  ixus310hs (1.00a & 1.01a)
  sx40hs (1.00d, 1.00g & 1.00i)
  g1x (1.00e, 1.00f & 1.00g)
  g5x (1.00c, 1.01a, 1.01b)
  g7x2 (1.01a, 1.01b, 1.10b)


*

Offline reyalp

  • ******
  • 13231
Re: Display (bitmap overlay)
« Reply #308 on: 01 / June / 2021, 23:06:41 »
I finally got around to trying the xmir build on g7x (thanks again philmoz for doing that :)) and noticed CHDK histogram was wildly different from the trunk, which probably explains at least some of what pigeonhill saw in https://chdk.setepontos.com/index.php?topic=14342.msg146058#msg146058

Turns out it was showing only the lower half, due to a THUMB_FW / LARGE_HISTO mixup. Update in r5938 should fix this (but not other various histogram bugs)

Note ifdefs depending on CAM_DRAW_RGBA in module / platform independent code breaks our portability rules and will need to be resolved before this gets merged into the trunk.  Should be fine for development though if non-CAM_DRAW_RGBA aren't being built without a clean in between. (edit: oops :-[)

Other observations:
The UI is so stable and smooooooooth, even with Canon histogram or electronic level active. Huge improvement.
Zebra doesn't seem to draw at all on my g7x. Edge overlay works.
« Last Edit: 01 / June / 2021, 23:56:08 by reyalp »
Don't forget what the H stands for.

*

Offline philmoz

  • *****
  • 3320
    • Photos
Re: Display (bitmap overlay)
« Reply #309 on: 01 / June / 2021, 23:46:59 »
Turns out it was showing only the lower half, due to a THUMB_FW / LARGE_HISTO mixup. Update in r5938 should fix this (but not other various histogram bugs)

Thanks for that.

Quote
Note ifdefs depending on CAM_DRAW_RGBA in module / platform independent code breaks our portability rules and will need to be resolved before this gets merged into the trunk.  Should be fine for development though if non-CAM_DRAW_RGBA aren't being built without a clean in between.

I thought this was covered by having CAM_DRAW_RGBA build into the .o4 and .o5 directories (makefile_base.inc).
Did I miss something?
CHDK ports:
  sx30is (1.00c, 1.00h, 1.00l, 1.00n & 1.00p)
  g12 (1.00c, 1.00e, 1.00f & 1.00g)
  sx130is (1.01d & 1.01f)
  ixus310hs (1.00a & 1.01a)
  sx40hs (1.00d, 1.00g & 1.00i)
  g1x (1.00e, 1.00f & 1.00g)
  g5x (1.00c, 1.01a, 1.01b)
  g7x2 (1.01a, 1.01b, 1.10b)

 

Related Topics