Adding feature support "File Write Task" (FWT): 52 Cams || 41 done || 11 to go

  • 254 Replies
  • 33196 Views
*

Offline koshy

  • *****
  • 799
Advertisements
Patch for a800. Version 3
This one uses #define CAM_FILEWRITETASK_MULTIPASS

Without CAM_FILEWRITETASK_MULTIPASS FWT in single shot mode crashes the A800 and in continuous mode it reports memory card error. Is that interesting, should I get ROMLOG etc. ?

With CAM_FILEWRITETASK_MULTIPASS FWT in single mode works fine including switching to play and back afterwards using the B&W grid and super fine JPEG quality.

The display problem I reported before is fixed enough to see what's going on. Some CHDK elements are white type on white ground in CHDKPTP but the native camera stuff is well visible now.
« Last Edit: 11 / October / 2014, 11:28:27 by koshy »

(Slightly off topic post but this seems like good place to put it.)

@koshy :  while you & nafraf are correcting other things on your various cameras, I wonder if it's worth looking at their color palette usage?  One annoyance I have when I'm in scripting mode is not knowing for sure how the colors I select in the GUI parts of the code are going to actually look on any of the 130+ CHDK supported cameras. 

Ideally,  each of those camera would have the "custom color palette" patch (although I'm not sure it's been tried on VxWorks cameras).   Alternatively,  it would be good to check that the palette / colors selected for each camera (via gui_draw.h) actually looked like they are supposed to.   Even if all we knew is that every camera has BLACK, WHITE, RED, BLUE correct (in shooting or playback modes) for example, it would be a help.

I would be easy to whip up a test script for this.
Ported :   A1200    SD940   G10    Powershot N    G16

*

Offline nafraf

  • *****
  • 1303
Patch for a800. Version 3
This one uses #define CAM_FILEWRITETASK_MULTIPASS

Without CAM_FILEWRITETASK_MULTIPASS FWT in single shot mode crashes the A800 and in continuous mode it reports memory card error. Is that interesting, should I get ROMLOG etc. ?

With CAM_FILEWRITETASK_MULTIPASS FWT in single mode works fine including switching to play and back afterwards using the B&W grid and super fine JPEG quality.
Please set cli_verbose=2 chdkptp command before rs and post the debug messages.
Please post the ROMLOG too.

Does DNG capture (using camera button) work?

*

Offline nafraf

  • *****
  • 1303
Patch for ixus80. Please do a full test, port was rewritten using code_gen.


*

Offline koshy

  • *****
  • 799
Does DNG capture (using camera button) work?
Yes it does. Sorry I forgot to mention that.
Please set cli_verbose=2 chdkptp command before rs and post the debug messages.
Please post the ROMLOG too.

Again for theses tests CAM_FILEWRITETASK_MULTIPASS was disabled.
The camera crashed in all three cases so I have three ROMLOGS to attach. FWT in single and continuous mode as well as remote DNG in single mode.

FWT continuous mode output (ends in memory card error and crash)
Code: [Select]
> rs -jpg -cont=5
rs_init
rs_shoot
get data 1
rc file IMG_0025.jpg 1
rc chunk get IMG_0025.jpg 1 0
rc chunk size:989184 offset:nil last:true
get data 2
rc file IMG_0025.jpg 1
rc chunk get IMG_0025.jpg 1 0
WARNING: capture_get_data error C:\Users\web\Downloads\chdkptp-r599-win32\lua\chdku.lua:1150: General Error
sending stop message
script wait time 0.0540
ERROR: C:\Users\web\Downloads\chdkptp-r599-win32\lua\chdku.lua:1150: General Error
live timer update error

Remote DNG single mode output (also resulted in crash but a DNG was transferred):
Code: [Select]
rs_shoot
get data 1
rc chunk get 4 0
rc chunk size:1348 offset:nil last:true
rc file IMG_0025.dng 2
rc chunk get IMG_0025.dng 2
rc chunk size:15467760 offset:nil last:true
dng 3720x2772x12
creating thumb: 128x96
WARNING: error waiting for shot script nil
script wait time 1.5761
ERROR: C:\Users\web\Downloads\chdkptp-r599-win32\lua\cli.lua:1903: attempt to concatenate local 'err' (a boolean value)
stack traceback:
[C]: in function 'xpcall'
C:\Users\web\Downloads\chdkptp-r599-win32\lua\cli.lua:244: in function 'execute'
C:\Users\web\Downloads\chdkptp-r599-win32\lua\gui_user.lua:83: in function <C:\Users\web\Downloads\chdkptp-r599-win32\lua\gui_user.lua:81>
(...tail calls...)
[C]: in function 'MainLoop'
C:\Users\web\Downloads\chdkptp-r599-win32\lua\gui.lua:749: in function <C:\Users\web\Downloads\chdkptp-r599-win32\lua\gui.lua:721>
(...tail calls...)
C:\Users\web\Downloads\chdkptp-r599-win32\lua\main.lua:266: in main chunk
[C]: in function 'require'
[string "require('main')"]:1: in main chunk

*

Offline koshy

  • *****
  • 799
Patch for ixus80. Please do a full test, port was rewritten using code_gen.
- IXUS 80 boots using power button
- IXUS 80 shoots DNG on quick full shutter press without waiting for AF
- IXUS 80 shoots DNG on regular camera operation
- Video Quality overrides (5 and 90) were tested and work
- ETR was tested with 00:01:31 and worked
- FWT was tested in single and continuous mode
    - it worked including switching to playback and back to Rec mode afterwards
- remote DNG capture works

All pretty good. There was one bug: Video bitrate meter and quality info read out stick when switching from video to photo mode. DNG gets disabled in photo mode after that switch. Camera needs to be rebooted to get normal photo behaviour back.

*

Offline nafraf

  • *****
  • 1303
Patch for ixus80_sd1100 version 2. Thanks.

*

Offline koshy

  • *****
  • 799
Patch for ixus80_sd1100 version 2. Thanks.
That fixes it. I re-tested video quality 5 and 90, DNG on full and half shutter press and switching between photo and video mode. Didn't re-test ETR and FWT as they were fine before. I think that makes IXUS 80 complete, too.


*

Offline koshy

  • *****
  • 799
I saw that IXUS 80 was updated in trunk. Changeset 3660.  Thank you.

*

Offline srsa_4c

  • ******
  • 3728
Ideally,  each of those camera would have the "custom color palette" patch (although I'm not sure it's been tried on VxWorks cameras).
As far as I know, the CHDK custom palette is only possible on cameras which use a full 256 entry palette.
DIGIC III and earlier processors only support a limited palette (16 colors (?)), the rest of the colors (240) is somehow computed from these. Early DIGIC 4 cameras (for example my ixus870) also operate in this limited mode.
If the Canon GUI uses gradients, the camera is in full palette mode.

edit:
I'm not sure why the a800 is crashing, the crash happens in a task that shouldn't be influenced by CHDK.
« Last Edit: 12 / October / 2014, 13:25:15 by srsa_4c »

 

Related Topics