Ignore:
Timestamp:
09/05/11 09:34:01 (21 months ago)
Author:
philmoz
Message:

PTP 'Live View' extensions.
Based on mweerden's original work - https://github.com/mweerden/CHDKPTPRemote/tree/remote-preview
Tested on G12, SX30, SX130IS and IXUS310.
Sample .Net client code - http://chdk.setepontos.com/index.php?topic=4338.msg72684#msg72684
Pre-compiled sample client - http://chdk.setepontos.com/index.php?topic=4338.msg72684#msg72684
Sample client is in the early stages and still needs work.

File:
1 edited

Legend:

Unmodified
Added
Removed
  • trunk/platform/g12/lib.c

    r1145 r1316  
    7070long vid_get_bitmap_buffer_height() { return 270; } 
    7171 
    72 int vid_get_viewport_buffer_width() { return 720; }     // G12 - buffer is twice as wide as viewport 
     72int vid_get_viewport_buffer_width() { return 720; }     // G12 - viewport is actually 480 high, CHDK not set up for this so we skip every 2nd row 
    7373 
    7474int vid_get_viewport_width() 
     
    115115        return (vid_get_viewport_buffer_width() - vid_get_viewport_width()) * 3; 
    116116} 
     117 
     118// Functions for PTP Live View system 
     119 
     120int vid_get_viewport_xoffset_proper()           { return vid_get_viewport_xoffset() * 2; } 
     121int vid_get_viewport_yoffset_proper()           { return vid_get_viewport_yoffset() * 2; } 
     122int vid_get_viewport_width_proper()             { return vid_get_viewport_width() * 2; } 
     123int vid_get_viewport_height_proper()            { return vid_get_viewport_height() * 2; } 
     124int vid_get_viewport_max_height()               { return 480; } 
     125int vid_get_palette_type()                      { return 3; } 
     126int vid_get_palette_size()                      { return 256 * 4; } 
     127 
     128void *vid_get_bitmap_active_buffer() 
     129{ 
     130    extern int active_bitmap_buffer; 
     131    extern char* bitmap_buffer[]; 
     132    return bitmap_buffer[active_bitmap_buffer]; 
     133} 
     134 
     135void *vid_get_bitmap_active_palette() 
     136{ 
     137    extern int active_palette_buffer; 
     138    extern char* palette_buffer[]; 
     139    return (palette_buffer[active_palette_buffer]+8); 
     140} 
Note: See TracChangeset for help on using the changeset viewer.