Old 12-29-2023, 03:44 PM   #1
matt_t
Human being with feelings
 
Join Date: Nov 2012
Location: West Midlands, UK
Posts: 379
Default v7.07+dev1229 - December 29 2023

v7.07+dev1229 - December 29 2023

  • * Includes feature branch: notify user if default menu changed after a menu was customized
  • * Includes feature branch: media item edits in comping lane optionally affect media item edges in source lane
  • * Includes feature branch: extended ASCII encoding for .wav file text metadata
  • * Includes feature branch: preserve metadata when rendering media items
  • * Includes feature branch: envelope list window improvements
  • * Includes feature branch: video processors in containers
  • * Includes feature branch: media items on higher numbered lanes optionally mask playback of lower lanes
  • * Includes feature branch: large number of video items CPU use optimizations
  • * Includes feature branch: record armed tracks obeying 'do not run muted tracks' preference
  • * Includes feature branch: increase fixed lane limit to 256 lanes
  • + Media items: fix preference to display overlapping media items as opaque [t=286664]
  • + ReaScript/JSFX: gfx_getchar(65536) optimized mouse hit testing check [p=2745361]
  • + ReaScript/JSFX: gfx_getchar(65537) queries status but doesn't hit-test mouse [p=2745361]
  • + ReaScript: optimize MIDI_GetRecentInputEvent(0) when no new MIDI events are present [p=2745361]
  • + VST: fix macOS/Linux keyboard message sending issues
  • # Envelope manager: fix extra context menu on Windows
This thread is for pre-release features discussion. Use the Feature Requests forum for other requests.

Changelog - Pre-Releases

Generated by X-Raym's REAPER ChangeLog to BBCode
matt_t is offline   Reply With Quote
Old 12-30-2023, 05:53 AM   #2
FeedTheCat
Human being with feelings
 
FeedTheCat's Avatar
 
Join Date: May 2019
Location: Berlin
Posts: 2,164
Default

Quote:
Originally Posted by matt_t View Post
+ ReaScript/JSFX: gfx_getchar(65536) optimized mouse hit testing check [p=2745361]
+ ReaScript/JSFX: gfx_getchar(65537) queries status but doesn't hit-test mouse [p=2745361]
Thanks!
Quote:
Originally Posted by matt_t View Post
+ ReaScript: optimize MIDI_GetRecentInputEvent(0) when no new MIDI events are present [p=2745361]
Hmm, unfortunately I can't measure a difference. I even disconnected all MIDI controllers. MIDI_GetRecentInputEvent is still one of the most expensive functions. Almost seems like CPU usage increased a bit in this dev.

v7.07+dev1226a


v7.07+dev1229
__________________
Featured scripts: REAPER Update UtilityLil ChordboxGridbox/Adaptive gridMX TunerRS5K LinkMIDI Editor Magic Donate💝: PayPal|ko-fi
FeedTheCat is online now   Reply With Quote
Old 12-30-2023, 06:01 AM   #3
Justin
Administrator
 
Justin's Avatar
 
Join Date: Jan 2005
Location: NYC
Posts: 15,721
Default

Quote:
Originally Posted by FeedTheCat View Post
Thanks!


Hmm, unfortunately I can't measure a difference. I even disconnected all MIDI controllers. MIDI_GetRecentInputEvent is still one of the most expensive functions. Almost seems like CPU usage increased a bit in this dev.

v7.07+dev1226a


v7.07+dev1229

With no (or few) events being returned the difference will be negligible. If returning 10,000 unchanged events it should be measurable.


If no (or few) events are being returned, what you're probably measuring is the time it takes to acquire a lock. I suppose in this case it's not strictly necessary to take the lock.


Re; higher CPU use, those values in the screenshots are likely all within sampling errors.
Justin is offline   Reply With Quote
Old 12-30-2023, 08:08 AM   #4
FeedTheCat
Human being with feelings
 
FeedTheCat's Avatar
 
Join Date: May 2019
Location: Berlin
Posts: 2,164
Default

Quote:
Originally Posted by Justin View Post
With no (or few) events being returned the difference will be negligible. If returning 10,000 unchanged events it should be measurable.
Ah ok, I misunderstood. I thought it would also improve the case where no events are returned. (in following defer cycles etc.)

Quote:
Originally Posted by Justin View Post
If no (or few) events are being returned, what you're probably measuring is the time it takes to acquire a lock. I suppose in this case it's not strictly necessary to take the lock.
Ok, that makes sense. Would be nice if the lock in this case could be avoided, but don't bother if it's non-trivial. In the past few days I tried minimizing idle CPU usage of my background scripts. Apparently MIDI_GetRecentInputEvent doesn't even hold a candle to reaper.GetMousePosition (which most of my scripts also use).

Here's Lil Chordbox idle CPU usage:


Ya know... that age old thing about optimizations...
__________________
Featured scripts: REAPER Update UtilityLil ChordboxGridbox/Adaptive gridMX TunerRS5K LinkMIDI Editor Magic Donate💝: PayPal|ko-fi
FeedTheCat is online now   Reply With Quote
Old 12-30-2023, 09:17 AM   #5
BenK-msx
Human being with feelings
 
BenK-msx's Avatar
 
Join Date: Jun 2008
Location: Whales, UK
Posts: 6,009
Default

Please forgive the 'unrelated to the dev build' but can I request
a litte help regard my docker/all dockers/floating toolbars going completely AWOL, (it's not just off screen) issue.
It's too weird to just mention somewhere else.

Mac m1. Suspect dual screen related.

Not how i wanted my 6000th post to go but thanks for the memories good luck in 2024!
__________________
JS Super8 Looper Template & intro | BCF2000 uber info Thread | Who killed the Lounge?
BenK-msx is offline   Reply With Quote
Old 12-30-2023, 10:04 AM   #6
Justin
Administrator
 
Justin's Avatar
 
Join Date: Jan 2005
Location: NYC
Posts: 15,721
Default

Quote:
Originally Posted by FeedTheCat View Post
Ah ok, I misunderstood. I thought it would also improve the case where no events are returned. (in following defer cycles etc.)


Ok, that makes sense. Would be nice if the lock in this case could be avoided, but don't bother if it's non-trivial. In the past few days I tried minimizing idle CPU usage of my background scripts. Apparently MIDI_GetRecentInputEvent doesn't even hold a candle to reaper.GetMousePosition (which most of my scripts also use).

Here's Lil Chordbox idle CPU usage:


Ya know... that age old thing about optimizations...

Heh well actually I think MIDI_GetRecentInputEvent() is worth optimizing for the case where there are 100,000 MIDI events in the history, doing that...
Justin is offline   Reply With Quote
Reply

Thread Tools
Display Modes

Posting Rules
You may not post new threads
You may not post replies
You may not post attachments
You may not edit your posts

BB code is On
Smilies are On
[IMG] code is On
HTML code is Off

Forum Jump


All times are GMT -7. The time now is 04:15 PM.


Powered by vBulletin® Version 3.8.11
Copyright ©2000 - 2024, vBulletin Solutions Inc.