Started 2 yr 5 mo ago
Took 4 min 56 sec

Success Build #70 (Feb 17, 2018 11:17:36 PM)

Build Artifacts
mlv_dump.exe960.41 KB view
mlv_dump.linux733.54 KB view
mlv_dump.osx228.33 KB view
magiclantern-crop_rec_4k.2018Feb17.100D101.zip1.85 MB view
magiclantern-crop_rec_4k.2018Feb17.5D3113.zip1.89 MB view
magiclantern-crop_rec_4k.2018Feb17.5D3123.zip1.89 MB view
magiclantern-crop_rec_4k.2018Feb17.700D115.zip1.85 MB view
magiclantern-crop_rec_4k.2018Feb17.EOSM202.zip1.87 MB view
  1. Merged crop_rec_4k into crop_rec_4k_mlv_lite_snd (detail / bitbucket)
  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) (detail / bitbucket)
  3. mlv_snd: made slot count and maximum blocks per slot configurable (detail / bitbucket)
  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 (detail / bitbucket)
  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 (detail / bitbucket)
  6. Merged lua_fix into crop_rec_4k
    (timer functions refactor) (detail / bitbucket)
  7. Intervalometer: attempt to get sligthly better timing accuracy, to be tested (detail / bitbucket)
  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
    ``` (detail / bitbucket)
  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 (detail / bitbucket)
  10. imath.h: fix comments for FMT_FIXEDPOINT*; added FMT_FIXEDPOINT6 (detail / bitbucket)
  11. Merged 70D_merge_fw112 into crop_rec_4k
    (dummy, except for a minor whitespace fix) (detail / bitbucket)
  12. Merged patchmgr into 70D_merge_fw112 (detail / bitbucket)
  13. Merged lua_fix into 70D_merge_fw112 (detail / bitbucket)
  14. Merged lua_fix into crop_rec_4k (detail / bitbucket)
  15. SRM_BUFFER_SIZE for 600D found using QEMU (detail / bitbucket)
  16. SRM_BUFFER_SIZE for 60D (detail / bitbucket)
  17. SRM_BUFFER_SIZE for several ML cameras (detail / bitbucket)
  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. (detail / bitbucket)
  19. Merged patchmgr into crop_rec_4k (detail / bitbucket)
  20. Fix compiling with CONFIG_DIGIC_POKE (detail / bitbucket)
  21. Modules: patch.h no longer needed (detail / bitbucket)
  22. Modules: fix enabling "long" modules when using config presets (issue #2789)
    to reproduce: -> ML/SETTINGS/MENU.KEY/arkanoid. -> file create error on exfat
    modules with shorter name: -> ML/SETTINGS/MENU.KEY/adv_int.e -> it appears to work fine, but it's incorrect
    worst case: -> ML/SETTINGS/MYPRESET.NAM/adv_i -> it appears to work fine, possible name clash with other modules (detail / bitbucket)
  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 (detail / bitbucket)
  24. Bracketing: debug messages for troubleshooting (detail / bitbucket)
  25. shoot: make the so-called remote_shoot always take pictures, not movies
    (moved movie functionality in lcdsensor/lightsensor - anything else broken?) (detail / bitbucket)
  26. lens_take_picture: always wait until the image capture process starts (and optionally wait for it to finish) (detail / bitbucket)
  27. Lua: fix camera.wait() not appearing in API docs (detail / bitbucket)
  28. selftest: also test get_task_name_from_id, not just get_current_task_name
    (they use different Canon APIs) (detail / bitbucket)
  29. Attempt to fix conflict between ML and Canon overlays on recent DIGIC 4 models
    confirmed on 1200D, likely applies to 1300D as well (detail / bitbucket)
  30. gui-common: remove outdated comment (detail / bitbucket)
  31. Re-applied 2642fbe (fix issue #2844) (detail / bitbucket)
  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) (detail / bitbucket)
  33. Merged unified into patchmgr (detail / bitbucket)
  34. Patch manager: moved reapply_cache_patches into sync_caches
    also made it private (detail / bitbucket)
  35. Merged unified into patchmgr (detail / bitbucket)
  36. chdk-dng: fix saving uncompressed files after a lossless DNG (detail / bitbucket)

Started by user Alex

Revision: 02e5918a6ed5f4e21f2e50d84744f5adddcc0771