Jump to content

tenorman

Member
  • Posts

    18
  • Joined

  • Last visited

tenorman's Achievements

Newbie

Newbie (1/14)

0

Reputation

  1. I assume Scripter doesn't see meta events in Logic 10.4.8?? If it does see script below. If not, thank you for your help! These are the meta events I want to work with: Dynamic markings meta events, pppp through ffff. Meta event# 0-ppp to CC2 value 10 or note velocity 10 Meta event# 1-pp to CC2 value 20 or note velocity 20 Meta event# 2-p to CC2 value 35 or note velocity 35 Meta event# 3-mp to CC2 value 50 or note velocity 50 Meta event# 4-mf to CC2 value 65 or note velocity 65 Meta event# 5-f to CC2 value 85 or note velocity 85 Meta event# 6-ff to CC2value 105 or note velocity 105 Meta event# 7-fff to CC2 value 115 or note velocity 115 Meta event# 12-ffff to CC2 value 127 or note velocity 127 Meta event# 13 pppp to CC2 value 5 or note velocity 5 I had this script written several years back, might this be edited for my purpose. // // Score to ArtID // // Created by Attila Enhardt on 2016-03-07 // Copyright LogicScripts 2016. // var PluginParameters = []; var debug = 1; var scriptName = 'Score to ArtID v.0.1'; //var NeedsTimingInfo = true; //var updateGUI = 0; var artIDs = []; var activeArticulation = 0; var oneShot = 0; var shotNote = []; var metas = [{ name : 'Select Meta + infinite/one-shot below' } ]; function ArtID(name, number, value, oS, ix) { this.name = name; this.number = number; this.value = value; this.oS = oS; this.ix = i; this.set = function (args) { if (typeof args[0] == number) this.oneShot = args[0]; if (typeof args[1] == 'number') this.number = args[1]; if (typeof args[2] == 'number') this.value = args[2]; }; artIDs.push(this); this.activate = function () { activeArticulation = ix + 1; // double check the +1 oneShot = oS; }; this.ppinit = (function () { new Parameter(name + ' Ⓜ ' , 'menu', ['artNum',ix], metas.map(function (obj) { return obj.name; })); new Parameter('⟾ / ① ', 'menu', ['oneShot', ix], ['Standard', 'One-Shot']); })(); } function Meta(name, n, v) { this.name = v < 10 ? 'Meta n:' + n + ' v: ' + v + ' | ' + name : 'Meta n:' + n + ' v:' + v + ' | ' + name; this.number = n; this.value = v; this.set = function(p) { artIDs[p].set(['',this.number,this.value]); }; metas.push(this); } function Parameter(n, t, pc, vs, miv, mav, def, nos, unit) { if (t == 'checkbox') { this.name = n; this.type = t; this.pc = pc; this.defaultValue = 0; PluginParameters.push(this); } else if (t == 'div') { this.name = '⥰⥰⥰⥰⥰⥰⥰⥰⥰⥰⥰⥰⥰⥰⥰⥰⥰⥰⥰⥰'; this.type = 'text'; this.defaultValue = 0; PluginParameters.push(this); } else { this.name = n; this.type = t; this.valueStrings = vs ? vs : 0; this.minValue = miv ? miv : 0; this.maxValue = mav ? mav : 0; this.defaultValue = def ? def : 0; this.numberOfSteps = nos ? nos : 0; this.unit = unit; this.pc = pc; PluginParameters.push(this); } this.index = PluginParameters.length - 1; this.remove = function () { PluginParameters.splice(index, 1); }; } m601 = new Meta('Arco (text)', 60, 1); m602 = new Meta('Pizzicato (text)', 60, 2); m603 = new Meta('Spiccato (text)', 60, 3); m604 = new Meta('Trill ½ step (text)', 60, 4); m605 = new Meta('Trill 1 step (text)', 60, 5); metas.push({ name : '▬▬▬▬▬▬▬▬▬▬▬▬▬▬▬▬▬▬▬▬▬▬▬▬▬▬▬▬▬▬▬▬▬▬▬▬' }); //U25AC var m673 = new Meta('Staccato', 67, 3); m675 = new Meta('Accent', 67, 5); m677 = new Meta('Marcato', 67, 7); m678 = new Meta('Spiccato', 67, 8); m679 = new Meta('Legato', 67, 9); m6712 = new Meta('Harmonics', 67, 12); m676 = new Meta('Up bow', 67, 6); m6711 = new Meta('Down bow', 67, 11); m667 = new Meta('Tremolo', 66, 6); function ppOrnament() { new Parameter('⥰⥰⥰⥰⥰⥰⥰⥰⥰⥰⥰⥰⥰⥰⥰⥰⥰⥰⥰⥰', 'text'); } function ppText(t) { new Parameter(t, 'text'); } function createGUI() { ppScriptName = new ppText(scriptName); for (i = 0; i < 16; i++) { artIDs = new ArtID('Articulation ID ' + (i + 1),0,0,0,i); } } function HandleMIDI(e) { if (e instanceof ControlChange && e.channel == 16) { for (var i = 0; i < artIDs.length ; i++) { if (artIDs.number == e.number) { artIDs.activate(); return; } } } if (e instanceof Note) { if (activeArticulation) { e.articulationID = activeArticulation; switch (true) { case (e instanceof NoteOn): shotNote.push(e); break; case (e instanceof NoteOff): if (e.pitch == shotNote.pitch) { oneShot = 0; shotNote.splice(0, 1); } break; default: } } e.send(); if (debug) e.trace(); } } function ParameterChanged(p, v) { var pcNo = PluginParameters[p].pc[1], pcName = PluginParameters[p].pc[0]; switch (pcName) { case 'artNum': if(v) metas[v].set(pcNo); break; case 'oneShot': if(v) artIDs[pcNo].set(v); break; default: } } createGUI();
  2. Hello, I am an arranger and realize MIDI mockups. Was wondering if anyone might write a script that converts Meta events to CC events or note velocity? I would like to be able to choose which Meta event and value to CC# and value or velocity and value. Hopefully this makes sense. Post questions. I will compensate, no problem. Thanks! Tom
  3. Hello, Here's the script I've been using written by speakerfood to change Region Fade Out Type using BetterTouchTool. But since I upgraded to LPX 10.4.6 it doesn't work. Might anyone know how to modify the script so it works again? tell application "Logic Pro X 10.4.6" tell application "System Events" tell process "Logic Pro X" set tracks_window to title of first window whose title contains "- Tracks" if (description of group 1 of window tracks_window = "Control Bar") then set group_nr to 2 else set group_nr to 1 end if if (value of static text 1 of group 1 of list 1 of group group_nr of window tracks_window is "Movie") then set sub_group_nr to 2 else set sub_group_nr to 1 end if tell pop up button 1 of row 15 of outline 1 of scroll area 1 of group sub_group_nr of list 1 of group group_nr of window tracks_window click delay 0.2 key code 125 key code 36 end tell end tell end tell end tell Thanks so much for any help!
  4. I've upgraded to LPX 10.4.6 and the key commands no longer work. Do I need to update the scripts in BetterTouchTool? Thanks!
  5. speakerfood - thanks so much. Exactly what I was looking for and works perfectly!
  6. My apologies for the typo. I meant the Fade Out Type in the Inspector window. There are 4 values: Out, X, EqP, and X S. The below AppleScript was posted earlier to change the Region Gain (and works perfectly). Can this be modified to change the Fader Out Type? Thanks for the help! tell application "System Events" tell process "Logic Pro X" tell row 8 of outline 1 of scroll area 1 of group 1 of list 1 of group 2 of (first window whose name contains "- Tracks") set x to (get value of slider 1) set value of slider 1 to (x + 30) end tell end tell end tell
  7. What would the AppleScript be if I wanted to change the Fader Type in the Inspector window? I'm using BetterTouchTool to trigger the script. Thanks!
  8. I attached 2 short videos (in the zip file) with both an audio track with a little audio region (of silence) and MIDI tracks. The clicks happen at exactly the same place with every playback on both audio and MIDI. ClicksExample.zip
  9. Thanks for your reply David. I tried your suggestion and I still get the clicks. What's really strange is it happens on MIDI tracks as well. As soon as the note begins the click sounds. I tried increasing the pre-roll on the entire song and it still happens. Might you have any other suggestions? Thanks again.
  10. I'm getting clicks and pops when I use binaural panning, I've attached a short movie with several examples (I had to zip it to attach). It happens on audio or instrument tracks. I believe I'm using the plugin correctly. Anyone else having this problem? Thanks for any help! P.S. It also happens on my MacBook Pro 2.53 GHz Intel Core i5, 8 GB ram OS 10.6.7, Logic Pro 9.1.3 Binaural Panning Problem.mov.zip
  11. I'm trying to assign channel controls in the Controller Assignment window. I click Learn Mode then click Channel 1's volume fader and when I move the fader on my keyboard it controls Channel 3's volume fader. Everything is offset by 2 Channel strips. Any help? Thanks!
  12. Everyone works a little differently. And everything is contextual. For every rule or convention there is an exception. I think the point might be to not get too bogged down with convention at the expense of the creative process and sometimes a simple explanation can remove any vagueness. Sometimes three weeks of email can be eliminated with a three minute phone conversation or a clarification at rehearsal. : )
  13. Generally you would start the slur or tie a little to the right of the center of the notehead.
×
×
  • Create New...