SuccessChanges

Summary

  1. Merged crop_rec_4k into crop_rec_4k_mlv_lite_snd
  2. mlv_snd: made mlv_rec_queue_block optional - reduces the execution time of raw_rec_cbr_started in the vsync hook - fixes memory leak (mlv_snd expects mlv_rec to free queued blocks)
  3. mlv_snd: made slot count and maximum blocks per slot configurable
  4. mlv_snd: reworked to achieve better sync with mlv_lite: - sound buffer allocation is done in raw_rec_cbr_starting (which must now be called after video memory allocation) - raw_rec_cbr_started may optionally be called from the vsync hook (which runs from a task with very high priority) mlv_lite: call raw_rec_cbr_started from the vsync hook, on first frame - result: first audio frame is started ~ 2ms after the first video frame is fully captured mlv_rec: moved raw_rec_cbr_starting after memory allocation - required for mlv_snd to complete the audio memory allocation
  5. mlv_snd: rather than trying to queue a WAVI block into the MLV recorder, provide a mlv_fill_wavi this way, the MLV recording module can place this block wherever it wants (not necessarily in the queue) previous method still kept for compatibility with mlv_rec mlv_lite: refactored with mlv_fill_wavi and moved raw_rec_cbr_started right before the recording loop (where it should be) this should fix audio sync issues when recording starts; not tested
  6. Merged lua_fix into crop_rec_4k (timer functions refactor)
  7. Intervalometer: attempt to get sligthly better timing accuracy, to be tested http://www.magiclantern.fm/forum/index.php?topic=21617.msg197314#msg197314
  8. Moved timer functions to timer.h (always included from dryos.h) Renamed get_ms_clock_value / get_us_clock_value to get_ms_clock / get_us_clock Replaced all hardcoded references to 0xC0242014 with GET_DIGIC_TIMER() ``` find . -not -path '*/\.*' -type f -name '*.c' -o -name '*.h' -exec sed -i 's/get_ms_clock_value/get_ms_clock/g' {} + find . -not -path '*/\.*' -type f -name '*.c' -o -name '*.h' -exec sed -i 's/get_us_clock_value/get_us_clock/g' {} + sed -i 's/\*(volatile uint32_t \*)0xC0242014/GET_DIGIC_TIMER()/' */*.c ... ```
  9. Reworked get_ms_clock_value / get_us_clock_value / get_seconds_clock - only update the 64-bit us_clock on each call (overhead from ~ 4us reduced to less than 1us) - lower-resolution clocks are always derived from the microsecond clock and computed only on request - dropped get_ms_clock_value_fast
  10. imath.h: fix comments for FMT_FIXEDPOINT*; added FMT_FIXEDPOINT6
  11. Merged 70D_merge_fw112 into crop_rec_4k (dummy, except for a minor whitespace fix)
  12. Merged patchmgr into 70D_merge_fw112
  13. Merged lua_fix into 70D_merge_fw112
  14. Merged lua_fix into crop_rec_4k
  15. SRM_BUFFER_SIZE for 600D found using QEMU
  16. SRM_BUFFER_SIZE for 60D
  17. SRM_BUFFER_SIZE for several ML cameras
  18. Full-res LV is not available on cameras other than the 5D3 so remove it from the menu if the camera isn't a 5D3.
  19. Merged patchmgr into crop_rec_4k
  20. Fix compiling with CONFIG_DIGIC_POKE
  21. Modules: patch.h no longer needed
  22. Modules: fix enabling "long" modules when using config presets (issue #2789) to reproduce: arkanoid.mo -> ML/SETTINGS/MENU.KEY/arkanoid. -> file create error on exfat modules with shorter name: adv_int.mo -> ML/SETTINGS/MENU.KEY/adv_int.e -> it appears to work fine, but it's incorrect worst case: arkanoid.mo -> ML/SETTINGS/MYPRESET.NAM/adv_i -> it appears to work fine, possible name clash with other modules
  23. shoot: attempt to make public photo capture functions thread safe, to some extent a bit of a hack; some serious rework needed to fix this properly at least it appears to fix http://www.magiclantern.fm/forum/index.php?topic=21590.0
  24. Bracketing: debug messages for troubleshooting http://www.magiclantern.fm/forum/index.php?topic=21590.0
  25. shoot: make the so-called remote_shoot always take pictures, not movies (moved movie functionality in lcdsensor/lightsensor - anything else broken?)
  26. lens_take_picture: always wait until the image capture process starts (and optionally wait for it to finish)
  27. Lua: fix camera.wait() not appearing in API docs
  28. selftest: also test get_task_name_from_id, not just get_current_task_name (they use different Canon APIs)
  29. Attempt to fix conflict between ML and Canon overlays on recent DIGIC 4 models confirmed on 1200D, likely applies to 1300D as well http://www.magiclantern.fm/forum/index.php?topic=12627.msg196304#msg196304
  30. gui-common: remove outdated comment
  31. Re-applied 2642fbe (fix issue #2844)
  32. Patch manager: nicer way to avoid calling _reapply_cache_patches when not present (fixes compiling the installer target and removes the need for defining NO_CACHE_PATCHES)
  33. Merged unified into patchmgr
  34. Patch manager: moved reapply_cache_patches into sync_caches also made it private
  35. Merged unified into patchmgr
  36. chdk-dng: fix saving uncompressed files after a lossless DNG http://www.magiclantern.fm/forum/index.php?topic=19300.msg196806#msg196806
Changeset 14990:02e5918a6ed5 by alex@thinkpad:
Merged crop_rec_4k into crop_rec_4k_mlv_lite_snd
Changeset 14989:301961548997 by alex@thinkpad:
mlv_snd: made mlv_rec_queue_block optional<br>- reduces the execution time of raw_rec_cbr_started in the vsync hook<br>- fixes memory leak (mlv_snd expects mlv_rec to free queued blocks)
The file was modifiedmodules/mlv_lite/mlv_lite.c (diff)
The file was modifiedmodules/mlv_snd/mlv_snd.c (diff)
Changeset 14988:dc5ecfbbe1cc by g3gg0:
mlv_snd: made slot count and maximum blocks per slot configurable
The file was modifiedmodules/mlv_snd/mlv_snd.c (diff)
Changeset 14987:7fcd17733b77 by alex@thinkpad:
mlv_snd: reworked to achieve better sync with mlv_lite:<br>- sound buffer allocation is done in raw_rec_cbr_starting (which must now be called after video memory allocation)<br>- raw_rec_cbr_started may optionally be called from the vsync hook (which runs from a task with very high priority)<br><br>mlv_lite: call raw_rec_cbr_started from the vsync hook, on first frame<br>- result: first audio frame is started ~ 2ms after the first video frame is fully captured<br><br>mlv_rec: moved raw_rec_cbr_starting after memory allocation<br>- required for mlv_snd to complete the audio memory allocation
The file was modifiedmodules/mlv_lite/mlv_lite.c (diff)
The file was modifiedmodules/mlv_rec/mlv_rec.c (diff)
The file was modifiedmodules/mlv_snd/mlv_snd.c (diff)
Changeset 14986:ecc32ff158ed by alex@thinkpad:
mlv_snd: rather than trying to queue a WAVI block into the MLV recorder, provide a mlv_fill_wavi<br>this way, the MLV recording module can place this block wherever it wants (not necessarily in the queue)<br>previous method still kept for compatibility with mlv_rec<br><br>mlv_lite: refactored with mlv_fill_wavi and moved raw_rec_cbr_started right before the recording loop (where it should be)<br>this should fix audio sync issues when recording starts; not tested
The file was modifiedmodules/mlv_lite/mlv_lite.c (diff)
The file was modifiedmodules/mlv_rec/mlv.h (diff)
The file was modifiedmodules/mlv_snd/mlv_snd.c (diff)
Changeset 14985:5138c0050854 by alex@thinkpad:
Merged lua_fix into crop_rec_4k<br>(timer functions refactor)
Changeset 14984:d28868575447 by alex@thinkpad:
Intervalometer: attempt to get sligthly better timing accuracy, to be tested<br>http://www.magiclantern.fm/forum/index.php?topic=21617.msg197314#msg197314
The file was modifiedsrc/shoot.c (diff)
Changeset 14983:bcbabb33f220 by alex@thinkpad:
Moved timer functions to timer.h (always included from dryos.h)<br>Renamed get_ms_clock_value / get_us_clock_value to get_ms_clock / get_us_clock<br>Replaced all hardcoded references to 0xC0242014 with GET_DIGIC_TIMER()<br>```<br>find . -not -path &#039;*/\.*&#039; -type f -name &#039;*.c&#039; -o -name &#039;*.h&#039; -exec sed -i &#039;s/get_ms_clock_value/get_ms_clock/g&#039; {} +<br>find . -not -path &#039;*/\.*&#039; -type f -name &#039;*.c&#039; -o -name &#039;*.h&#039; -exec sed -i &#039;s/get_us_clock_value/get_us_clock/g&#039; {} +<br>sed -i &#039;s/\*(volatile uint32_t \*)0xC0242014/GET_DIGIC_TIMER()/&#039; */*.c<br>...<br>```
The file was modifiedminimal/qemu-frsp/minimal.c (diff)
The file was modifiedmodules/bench/card_bench.c (diff)
The file was modifiedmodules/bench/mem_bench.c (diff)
The file was modifiedmodules/bench/mem_perf.c (diff)
The file was modifiedmodules/bulb_nd/bulb_nd.c (diff)
The file was modifiedmodules/edmac/edmac.c (diff)
The file was modifiedmodules/edmac/edmac_test.c (diff)
The file was modifiedmodules/file_man/file_man.c (diff)
The file was modifiedmodules/io_crypt/io_crypt.c (diff)
The file was modifiedmodules/lua/lua_dryos.c (diff)
The file was modifiedmodules/lua/lua_lens.c (diff)
The file was modifiedmodules/lv_rec/lv_rec.c (diff)
The file was modifiedmodules/mlv_lite/mlv_lite.c (diff)
The file was modifiedmodules/mlv_play/mlv_play.c (diff)
The file was modifiedmodules/mlv_rec/mlv.c (diff)
The file was modifiedmodules/mlv_rec/mlv_rec.c (diff)
The file was modifiedmodules/mlv_snd/mlv_snd.c (diff)
The file was modifiedmodules/selftest/selftest.c (diff)
The file was modifiedmodules/silent/silent.c (diff)
The file was modifiedmodules/trace/trace.c (diff)
The file was modifiedsrc/chdk-dng.c (diff)
The file was modifiedsrc/debug.c (diff)
The file was modifiedsrc/dryos.h (diff)
The file was modifiedsrc/fps-engio.c (diff)
The file was modifiedsrc/gui-common.c (diff)
The file was modifiedsrc/histogram.c (diff)
The file was modifiedsrc/installer.c (diff)
The file was modifiedsrc/lvinfo.c (diff)
The file was modifiedsrc/mem.c (diff)
The file was modifiedsrc/menu.c (diff)
The file was modifiedsrc/ml_rpc.c (diff)
The file was modifiedsrc/module.c (diff)
The file was modifiedsrc/rand.c (diff)
The file was modifiedsrc/raw.c (diff)
The file was modifiedsrc/shoot.c (diff)
The file was modifiedsrc/timer.h (diff)
The file was modifiedsrc/tskmon.c (diff)
The file was modifiedsrc/tweaks.c (diff)
The file was modifiedsrc/zebra.c (diff)
Changeset 14982:7cdf3152f685 by alex@thinkpad:
Reworked get_ms_clock_value / get_us_clock_value / get_seconds_clock<br>- only update the 64-bit us_clock on each call (overhead from ~ 4us reduced to less than 1us)<br>- lower-resolution clocks are always derived from the microsecond clock and computed only on request<br>- dropped get_ms_clock_value_fast
The file was modifiedmodules/bench/mem_bench.c (diff)
The file was modifiedsrc/chdk-dng.c (diff)
The file was modifiedsrc/dryos.h (diff)
The file was modifiedsrc/fps-engio.c (diff)
The file was modifiedsrc/menu.c (diff)
The file was modifiedsrc/shoot.c (diff)
Changeset 14981:420833b0f258 by alex@thinkpad:
imath.h: fix comments for FMT_FIXEDPOINT*; added FMT_FIXEDPOINT6
The file was modifiedsrc/imath.h (diff)
Changeset 14980:5aa7ec638c90 by alex@thinkpad:
Merged 70D_merge_fw112 into crop_rec_4k<br>(dummy, except for a minor whitespace fix)
Changeset 14979:8e53e66c7f7c by alex@thinkpad:
Merged patchmgr into 70D_merge_fw112
Changeset 14978:41088c569bc1 by alex@thinkpad:
Merged lua_fix into 70D_merge_fw112
Changeset 14977:4458f69ab184 by alex@thinkpad:
Merged lua_fix into crop_rec_4k
Changeset 14976:8b0cd1977ef7 by daniel fort _dan@digiola.com_:
SRM_BUFFER_SIZE for 600D found using QEMU
The file was modifiedplatform/600D.102/consts.h (diff)
Changeset 14975:693369c3c2a9 by daniel fort _dan@digiola.com_:
SRM_BUFFER_SIZE for 60D
The file was modifiedplatform/60D.111/consts.h (diff)
Changeset 14974:f0c9e08a990a by daniel fort _dan@digiola.com_:
SRM_BUFFER_SIZE for several ML cameras
The file was modifiedplatform/1100D.105/consts.h (diff)
The file was modifiedplatform/500D.111/consts.h (diff)
The file was modifiedplatform/50D.109/consts.h (diff)
The file was modifiedplatform/5D2.212/consts.h (diff)
The file was modifiedplatform/6D.116/consts.h (diff)
The file was modifiedplatform/7D.203/consts.h (diff)
Changeset 14973:d1c712b2cf96 by daniel fort _dan@digiola.com_:
Full-res LV is not available on cameras other than the 5D3 so remove it from the menu if the camera isn&#039;t a 5D3.
The file was modifiedmodules/silent/silent.c (diff)
Changeset 14972:c751a267c31e by alex@thinkpad:
Merged patchmgr into crop_rec_4k
Changeset 14971:b6328559bfcf by alex@thinkpad:
Fix compiling with CONFIG_DIGIC_POKE
The file was modifiedsrc/lv-img-engio.c (diff)
Changeset 14970:deeeced6ccd7 by alex@thinkpad:
Modules: patch.h no longer needed
The file was modifiedsrc/module.c (diff)
Changeset 14969:20a52d50f61b by alex@thinkpad.localdomain:
Modules: fix enabling &quot;long&quot; modules when using config presets (issue #2789)<br>to reproduce: arkanoid.mo -&gt; ML/SETTINGS/MENU.KEY/arkanoid. -&gt; file create error on exfat<br>modules with shorter name: adv_int.mo -&gt; ML/SETTINGS/MENU.KEY/adv_int.e -&gt; it appears to work fine, but it&#039;s incorrect<br>worst case: arkanoid.mo -&gt; ML/SETTINGS/MYPRESET.NAM/adv_i -&gt; it appears to work fine, possible name clash with other modules
The file was modifiedsrc/module.c (diff)
Changeset 14968:cb083db1c8c5 by alex@thinkpad:
shoot: attempt to make public photo capture functions thread safe, to some extent<br>a bit of a hack; some serious rework needed to fix this properly<br>at least it appears to fix http://www.magiclantern.fm/forum/index.php?topic=21590.0
The file was modifiedsrc/lens.c (diff)
The file was modifiedsrc/shoot.c (diff)
Changeset 14967:b8626f4177ca by alex@thinkpad:
Bracketing: debug messages for troubleshooting http://www.magiclantern.fm/forum/index.php?topic=21590.0
The file was modifiedsrc/shoot.c (diff)
Changeset 14966:379b1afdee92 by alex@thinkpad:
shoot: make the so-called remote_shoot always take pictures, not movies<br>(moved movie functionality in lcdsensor/lightsensor - anything else broken?)
The file was modifiedsrc/lcdsensor.c (diff)
The file was modifiedsrc/lightsensor.c (diff)
The file was modifiedsrc/shoot.c (diff)
Changeset 14965:5d7a200eb63c by alex@thinkpad:
lens_take_picture: always wait until the image capture process starts (and optionally wait for it to finish)
The file was modifiedsrc/lens.c (diff)
The file was modifiedsrc/lens.h (diff)
Changeset 14964:d592d0a2b339 by alex@thinkpad:
Lua: fix camera.wait() not appearing in API docs
The file was modifiedmodules/lua/lua_camera.c (diff)
Changeset 14963:25a4a032f7ea by alex@thinkpad:
selftest: also test get_task_name_from_id, not just get_current_task_name<br>(they use different Canon APIs)
The file was modifiedmodules/selftest/selftest.c (diff)
Changeset 14962:867744137fd1 by alex@thinkpad:
Attempt to fix conflict between ML and Canon overlays on recent DIGIC 4 models<br>confirmed on 1200D, likely applies to 1300D as well<br>http://www.magiclantern.fm/forum/index.php?topic=12627.msg196304#msg196304
The file was modifiedsrc/propvalues.c (diff)
Changeset 14961:2d21002b3fa6 by alex@thinkpad:
gui-common: remove outdated comment
The file was modifiedsrc/gui-common.c (diff)
Changeset 14960:5367643a920a by alex@thinkpad:
Re-applied 2642fbe (fix issue #2844)
The file was modifiedsrc/tweaks.c (diff)
Changeset 14959:4e2447037ef8 by alex@thinkpad:
Patch manager: nicer way to avoid calling _reapply_cache_patches when not present<br>(fixes compiling the installer target and removes the need for defining NO_CACHE_PATCHES)
The file was modifiedsrc/arm-mcr.h (diff)
The file was modifiedsrc/reboot.c (diff)
Changeset 14958:ac33688aae07 by alex@thinkpad:
Merged unified into patchmgr
Changeset 14957:e7a7eadbe2a0 by alex@thinkpad:
Patch manager: moved reapply_cache_patches into sync_caches<br>also made it private
The file was modifiedsrc/arm-mcr.h (diff)
The file was modifiedsrc/module.c (diff)
The file was modifiedsrc/patch.c (diff)
The file was modifiedsrc/patch.h (diff)
The file was modifiedsrc/reboot.c (diff)
The file was modifiedsrc/reloc.c (diff)
Changeset 14956:51f0aa815d16 by alex@thinkpad.localdomain:
Merged unified into patchmgr
Changeset 14955:db1d2c027f7a by alex@thinkpad:
chdk-dng: fix saving uncompressed files after a lossless DNG<br>http://www.magiclantern.fm/forum/index.php?topic=19300.msg196806#msg196806
The file was modifiedsrc/chdk-dng.c (diff)