supplierdeeply

HF10 & HV30 (Digic DV II) decrypted!

  • 212 Replies
  • 64412 Views
*

Offline cail

  • *
  • 49
  • Publish
    Re: HF10 & HV30 (Digic DV II) decrypted!
    « Reply #60 on: 12 / August / 2008, 02:03:48 »
    Advertisements
    Ok, thanks, I'll try to checkout the same for HV30.

    s10sh is very interesting. I've also tried (under win32) and failed to compile it properly. Sources contain a private canon's usb protocol to interact with the camera. Definitely something similar should be available for our camcorders too.

    I've discovered similar protocol within Canon's CALIB.DLL (part of f/w update):

    ConnectCamera
    CreateCameraObject
    DestroyCameraObject
    DisconnectCamera

    And many other service functions, including for example

    ComMethod_CancelWaitReceive
    ComMethod_FinishReceive
    ComMethod_FinishSend
    ComMethod_ReceiveData
    ComMethod_SendData
    ComMethod_StartReceive
    ComMethod_StartSend

    These could be a serial access - and probably an internal shell is available via this API somehow.

    I've managed to connect the camera via CALIB.DLL and readout its properties, however other methods are very difficult to test because of unknown signatures.

  • Publish
    Re: HF10 & HV30 (Digic DV II) decrypted!
    « Reply #61 on: 12 / August / 2008, 03:28:41 »
    that's a great idea! why write it by yourself if canon provides it for free :)

    oh btw. I forgot in my previous answer, yes I discovered the service menue by resource strings. there's a function that enters the service menue and shows the versions of different parts of the fw software and if I remember correctly there's also a switch for different subpages of the menue.

    *

    Offline cail

    • *
    • 49
  • Publish
    Re: HF10 & HV30 (Digic DV II) decrypted!
    « Reply #62 on: 12 / August / 2008, 05:04:57 »
    btw, probably this may help you (it helps me greatly) in code analysis:

    IDA visual call graph scripts

  • Publish
    Re: HF10 & HV30 (Digic DV II) decrypted!
    « Reply #63 on: 12 / August / 2008, 05:30:17 »
    At the risk of disturbing you guys with the brilliant work you're doing,

    I just want you to know that I love you :-)


    *

    Offline kmaage

    • *
    • 12
    • HV20, Norway, Newborn, Software Developer
  • Publish
    Re: HF10 & HV30 (Digic DV II) decrypted!
    « Reply #64 on: 12 / August / 2008, 08:57:31 »
    Love is an understatement. I really hope you enjoy this kind of thing, because you're certainly spending hours and hours on it. I would help, if I knew what the heck to do :(

    It's been exciting simply following the discussion, though. Great job!

  • Publish
    Re: HF10 & HV30 (Digic DV II) decrypted!
    « Reply #65 on: 12 / August / 2008, 14:49:54 »
    Possible location of video compression bitrates (AVCHD VBR) for HF100 / HF10 at offset 0x46BCF8 of decrypted firmware "VEE1-decrypted.FIM.code-4000000" (firmware decrypted using cail's tools)

    For firmware decrypted using hf10x.exe (see 5 posts below), the correct offset is 0x66BD18

    Page 36 of HF100 / HF10 manual states that the camera uses VBR (variable bitrate)

    Bitrates are 2 byte Big-Endian. Example 0x4650 = 18000 Kbps = 18 Mbps

    For simplicity, some of the values have been rounded off ...

    Rec BitRate XP = 4650 3E80 3E1C 3DB8 36B0 08D0 = 18Mbps, 16Mbps, 15.9Mbps, 15.8Mbps, 14Mbps, 2.2Mbps
    Rec BitRate HQ+ = 3584 2EE0 2E7C 2C88 2AF8 0B95 = 13.7 Mbps, 12Mbps, 11.9Mbps, 11.4Mbps, 11Mbps, 3Mbps
    Rec BitRate HQ = 3584 2EE0 2E7C 20D0 157C 0B95 = 13.7 Mbps, 12Mbps, 11.9Mbps, 8.4Mbps, 5.5Mbps, 3Mbps
    Rec BitRate LP = 3584 2EE0 2454 1A2C 0FA0 0B95 = 13.7 Mbps, 12Mbps, 9.3Mbps, 6.7Mbps, 4Mbps, 3Mbps
    Rec BitRate SP = 3584 2EE0 1900 1388 0FA0 0B95 = 13.7 Mbps, 12Mbps, 6.4Mbps, 5Mbps, 4Mbps, 3Mbps

    NOTE : As Wiesel pointed out, "A little problem with changing the FW and testing with it is (beside the big risk of bricking the cam) that you can only upgrade the FW if the version number is higher than the current one"

    Risky guy (or someone with a broken cam) may try to increase bitrate to 24mbs ...

    Best of luck.




    « Last Edit: 16 / August / 2008, 16:36:38 by mkhozi »

  • Publish
    Re: HF10 & HV30 (Digic DV II) decrypted!
    « Reply #66 on: 12 / August / 2008, 15:42:28 »
    Possible location of video compression bitrates (AVCHD VBR) for HF100 / HF10 at offset 0x46BCF8 of decrypted firmware "VEE1-decrypted.FIM.code-4000000" (firmware decrypted using cail's tools, see post 31)

    Cool finding, I never noticed that it uses VBR. How did you convert the hex numbers to the mbps numbers?
    Btw, HF10/100 only have 4 quality presets: FXP (17Mbps), XP+(12Mbps), SP (7Mbps) & LP (5Mbps). So your numbers are either something else (hopefully not) or the HF10/100 have only 4 out of 5 presets activated. The upcoming HF11 features 5 quality presets adding MXP+ (24Mbps).

    edit: ideed, it internally has those 5 presets :)
    « Last Edit: 12 / August / 2008, 16:28:27 by Wiesel »

  • Publish
    Re: HF10 & HV30 (Digic DV II) decrypted!
    « Reply #67 on: 12 / August / 2008, 15:51:02 »
    Regarding the s10sh utility:
    I set up an old debian 3.1 in a virtualbox vm with kernel 2.4 and could successfully compile and run v0.2.4 (btw, the makefile has an error which needs to be corrected to be able to compile).

    It successfully connects to the cam but I didn't get a response to any of the control codes I sent :/
    edit: I just got a response :)
    « Last Edit: 12 / August / 2008, 18:41:54 by Wiesel »


  • Publish
    Re: HF10 & HV30 (Digic DV II) decrypted!
    « Reply #68 on: 13 / August / 2008, 05:48:09 »
    Guys - what would be the best cam or potential cams we can get to play with? (Hopefully broken)
    Gemme priorities too

    *

    Offline cail

    • *
    • 49
  • Publish
    Re: HF10 & HV30 (Digic DV II) decrypted!
    « Reply #69 on: 13 / August / 2008, 07:16:32 »
    For the moment these should be the only units with the f/w available. I.e. HF10/100 and HV30.
    Note that firmware for HF and HV are quite different, so these most probably will be two rather separate branches (although with many things shared).

     

    Related Topics