How to find TG_FREQ_NTSC_SHUTTER - FPS override.

Started by 1%, June 08, 2013, 01:55:56 AM

Previous topic - Next topic

0 Members and 1 Guest are viewing this topic.


I think TG_FREQ_NTSC_SHUTTER might be wrong on some digic V. Where do I find this? Copying 5d3 for 6D seemed to give better shutter speeds but still didn't seem correct.


It's the value that gives 1/60.000 shutter speed when Canon shutter is set to 1/60 (of course, in a NTSC video mode, e.g. 30p and 24p).


#elif defined(CONFIG_7D)
    #define TG_FREQ_BASE 24000000
    #define TG_FREQ_SHUTTER (ntsc ? 51120000 : 50000000) // todo, just copied
    #define FPS_TIMER_A_MIN MIN(fps_timer_a_orig - (ZOOM ? 0 : 20), ZOOM ? 0x262 : 0x228) // todo

Have we settled on these values for 7D? If not, can someone please tell me how to find the correct values?


My goal is to find the necessary values to implement HIGH FPS on 7D:  (these are for 600D)

   #define NEW_FPS_METHOD 1
    #define VIDEO_PARAMETERS_SRC_3 0x70AE8 // notation from g3gg0
    #undef FPS_TIMER_B_MIN
    #define FPS_TIMER_B_MIN MIN(fps_timer_b_orig, 1420)

can I use the procedure described here:

to find these values? Or is there a different/better way?  Or is it not possible/outside the scope of our understanding with the dual processors?


The solution for high FPS is to let Canon code know the value of timer B, so it can optimize the shutter blanking and other timings. Some hints here:

There is a FPS table on old cameras too, for example, on 5D2 it's at MEM(0x44F8); however, on these cameras, the table must be patched outside LiveView (otherwise the camera will lockup, not sure why). This means the current method of patching the table probably must be changed.

BTW, you no longer need to find TG_FREQ_NTSC_SHUTTER - it's simply MainClock / timerA. I'm doing some major cleanup here, on the fps-override branch, and I hope to come up with a portable implementation that works on all cameras (including high FPS and correct shutter speeds, and without requiring a ton of ifdefs and magic numbers).