Started 2 yr 11 mo ago
Took 3 min 10 sec

Success Build #42 (Aug 26, 2017 11:25:58 PM)

Build Artifacts
mlv_dump.exe760.05 KB view
mlv_dump.linux525.60 KB view
mlv_dump.osx176.28 KB view
magiclantern-crop_rec_4k.2017Aug26.5D3113.zip1.82 MB view
magiclantern-crop_rec_4k.2017Aug26.5D3123.zip1.82 MB view
magiclantern-crop_rec_4k.2017Aug26.700D114.zip1.81 MB view
magiclantern-crop_rec_4k.2017Aug26.EOSM202.zip1.80 MB view
Changes
  1. crop_rec: 1040p48 appears to work after latest changes
    (1060p48 also works with some tweaking) (detail / bitbucket)
  2. Raw backend: attempt to handle raw_lv_request called outside LiveView (race condition?) (detail / bitbucket)
  3. mlv_lite: blacken H.264 frames not covered by RAW recording
    (poor man's sync between RAW and H.264 proxy - just trim the black frames from H.264) (detail / bitbucket)
  4. fps-engio: experimental support for bias frames (with zero exposure time) (detail / bitbucket)
  5. mlv_lite: H.264 proxy works again (detail / bitbucket)
  6. console: enable in LiveView alongside with ML overlays (experimental) (detail / bitbucket)
  7. exmem, gui-common: simplified UILock handling; debug info (detail / bitbucket)
  8. mlv_lite: keep memory allocated during standby (experiment)
    advantages:
    - recording starts right away, with minimal delay
      (allocating the entire RAM is slow - 1 or 2 seconds - now it's done in advance)
    - we always have temporary RAM for estimating compression ratio
      (estimating compression ratio in dummy mode - without actual output - was unreliable, giving corrupted frames)
    - possible to implement full-time pre-recording, without pressing REC twice (todo)
    problems:
    - possible thread safety issues (to be tested)
    - SRM use after free is disabled, needs more work
    - H.264 proxy also needs more work (detail / bitbucket)
  9. mlv_lite: renamed raw_preview_lock to settings_sem; more thread safety annotations (detail / bitbucket)
  10. lossless: backout d50e3ab (disable dummy operation - unreliable) (detail / bitbucket)
  11. cropmarks: minor boundary fix (detail / bitbucket)
  12. mlv_lite: fix audio meters with H.264 proxy
    (change required after 0475c45) (detail / bitbucket)
  13. mlv_lite: report all compression errors (detail / bitbucket)
  14. mlv_lite: silence thread safety warnings in measure_compression_ratio (detail / bitbucket)
  15. mlv_lite: cleaned up some raw_rec_task variables (detail / bitbucket)
  16. mlv_lite: ignore thread safety warnings for buffer_full
    (0 when recording starts; set to 1 from either LiveViewTask or compress_task; read from many places ) (detail / bitbucket)
  17. mlv_lite: fix possible race condition
    (identified by thread safety analysis) (detail / bitbucket)
  18. mlv_lite: fix possible lockup
    (identified by thread safety analysis) (detail / bitbucket)
  19. mlv_lite: updated some thread safety annotations (detail / bitbucket)
  20. Merged thread-safety into crop_rec_4k (detail / bitbucket)
  21. Makefile: workaround for compiling backtrace.t
    (fixme: what's going on?) (detail / bitbucket)
  22. Makefile: fix dependency rules (regression)
    note: -Wp,-MP conflicts with backtrace rules from Makefile.src (detail / bitbucket)
  23. mlv_lite: forgot to call init_vsync_vars; ignore thread safety warning for this call (detail / bitbucket)
  24. mutex.h: macro to skip thread safety analysis on some particular function call (detail / bitbucket)
  25. mlv_lite: more thread safety annotations (detail / bitbucket)
  26. property.h: annotated PROP_HANDLER with thread role (detail / bitbucket)
  27. Merged lua_fix into thread-safety (detail / bitbucket)
  28. Merged lua_fix into crop_rec_4k (detail / bitbucket)
  29. Merged unified into lua_fix (detail / bitbucket)
  30. menu: do not discard customization data for menus that are not yet loaded
    (e.g. for modules/scripts and other dynamic menus) (detail / bitbucket)
  31. menu: do not overwrite existing customization data when reloading
    (only reload data for newly added menu entries) (detail / bitbucket)
  32. menu: fix usage counters for menu items with placeholders (detail / bitbucket)
  33. menu: allow simple submenus in Recent menu (detail / bitbucket)
  34. menu: allow Debug entries in Junkie mode (detail / bitbucket)
  35. Modules: make sure we can really use up to 64 of them (fix commit 8ad0912) (detail / bitbucket)
  36. file_man: show status in main menu, if busy (detail / bitbucket)
  37. file_man: disable powersaving during long copy/move operations (detail / bitbucket)
  38. file_man: unified FileCopy and FileMove tasks to avoid duplicate code;
    report all errors to console and show a simple progress indicator (detail / bitbucket)
  39. file_man: show timestamp for each file; align date/time column (detail / bitbucket)
  40. menu: fix Junkie short text overflowing in some cases (detail / bitbucket)
  41. menu: attempt to balance the automatic My Menu in Junkie mode
    (with many submenu entries used frequently, this menu could end up a lot more cluttered than regular menus) (detail / bitbucket)
  42. menu: fix submenu entries disappearing in Junkie menu
    (frequently used submenu items shouldn't be moved to My Menu; they should be just copied) (detail / bitbucket)
  43. menu: better duplicate menu warning; minor rename (detail / bitbucket)
  44. mlv_lite: pause LiveView while flushing the buffers at the end of recording; simple progress indicator
    http://www.magiclantern.fm/forum/index.php?topic=19300.msg185905#msg185905
    note: undoing the Frozen LV hack is no longer needed, as pausing/resuming LiveView takes care of that (detail / bitbucket)
  45. crop_rec: reduced resolution from 1080p48 to 1020 to avoid corrupted frames
    (to get the old configuration, set Target YRES to 1080 and Delta HEAD3 to -20 in the crop_rec submenu) (detail / bitbucket)
  46. mlv_lite: annotate new functions, fix thread safety warnings (detail / bitbucket)
  47. lvinfo.c: updated with EXCLUDES(lvinfo_sem)
    (just for consistency) (detail / bitbucket)
  48. menu.c: updated to prevent taking menu_sem twice (detail / bitbucket)
  49. mutex-test: updated to prevent taking a semaphore twice (detail / bitbucket)
  50. menu.c: fix orphaned give_semaphore call (detail / bitbucket)
  51. Merged lua_fix into thread-safety (detail / bitbucket)
  52. Merged lua_fix into thread-safety (detail / bitbucket)
  53. selftest: compile-time option to test the behavior of DryOS tasks with identical priorities (detail / bitbucket)
  54. selftest: experimental thread safety tests (WIP) (detail / bitbucket)
  55. Merged task_name into thread-safety (detail / bitbucket)
  56. ml-cbr: fix warning (detail / bitbucket)
  57. lvinfo: annotated for thread safety analysis
    (all OK, just a false warning) (detail / bitbucket)
  58. Thread safety analysis: ignore read warnings for now (detail / bitbucket)
  59. mlv_lite: annotated some variables for thread safety analysis (experiment) (detail / bitbucket)
  60. mutex.h: some common thread roles (detail / bitbucket)
  61. Merged unified into thread-safety (detail / bitbucket)
  62. arm-mcr.h: annotated cli/sei for clang thread safety analysis (detail / bitbucket)
  63. Experiment: clang thread safety warnings during compilation
    Had to use gcc preprocessor (conflicts with clang includes?)
    make PREPRO=1 (detail / bitbucket)
  64. Internal vsync functions are now private (not exposed to modules) (detail / bitbucket)
  65. dryos.h: annotated semaphores for clang thread safety analysis (detail / bitbucket)
  66. Makefile: always allow .i rules
    (they no longer conflict with .c dependency rules) (detail / bitbucket)
  67. lens.h: fix compiling with clang (detail / bitbucket)
  68. Minimal example of clang's thread safety analysis (detail / bitbucket)
  69. check-tasks.py: do not tag PROP_INTs (detail / bitbucket)
  70. check-tasks.py: show function name when it's not obvious from the context (detail / bitbucket)
  71. Removed some pycparser workarounds (detail / bitbucket)
  72. Integrated task annotations script in the build process, as suggested by g3gg0 (detail / bitbucket)
  73. Makefile: experiment - save preprocessed C files during compilation (*.c -> *.i -> *.o)
    To enable, run "make PREPRO=y" or set PREPRO=y in Makefile.user (detail / bitbucket)
  74. Makefile: remove *.i and *.s on make clean (detail / bitbucket)
  75. Makefile: cleaned up file rules a bit (detail / bitbucket)
  76. Merged dynamic-my-menu into thread-safety (detail / bitbucket)
  77. Experiment: tag each ML function with the task(s) where it's called from
    (static analysis with pycparser) (detail / bitbucket)
  78. Some patches to allow parsing ML code with pycparser (detail / bitbucket)
  79. Updated some macros to allow pycparser compatibility (detail / bitbucket)

Started by user Alex

Revision: cffeb4898221dbeab9848361d530db1ae9021cc8