CINXE.COM
Music Production 101 Course - Berklee Online
<!DOCTYPE html> <!--[if lt IE 7 ]> <html lang="en" class="ie6"> <![endif]--> <!--[if IE 7 ]> <html lang="en" class="ie7"> <![endif]--> <!--[if IE 8 ]> <html lang="en" class="ie8"> <![endif]--> <!--[if IE 9 ]> <html lang="en" class="ie9"> <![endif]--> <head> <link href='https://fonts.googleapis.com' rel='preconnect'> <link href='https://assets.online.berklee.edu' rel='preconnect'> <link href='https://www.googletagmanager.com' rel='preconnect'> <link href='https://kit.fontawesome.com' rel='preconnect'> <script> (function(w,d,s,l,i){w[l]=w[l]||[];w[l].push({'gtm.start': new Date().getTime(),event:'gtm.js'});var f=d.getElementsByTagName(s)[0], j=d.createElement(s),dl=l!='dataLayer'?'&l='+l:'';j.async=true;j.src= 'https://www.googletagmanager.com/gtm.js?id='+i+dl;f.parentNode.insertBefore(j,f); })(window,document,'script','dataLayer','GTM-WD67JCX'); // swiftype search (function(w,d,t,u,n,s,e){w['SwiftypeObject']=n;w[n]=w[n]||function(){ (w[n].q=w[n].q||[]).push(arguments);};s=d.createElement(t); e=d.getElementsByTagName(t)[0];s.async=1;s.src=u;e.parentNode.insertBefore(s,e); })(window,document,'script','//s.swiftypecdn.com/install/v2/st.js','_st'); _st('install','p1vCAcxCzxQgDzni-7Vh','2.0.0'); </script> <meta charset='utf-8'> <script type="text/javascript">window.NREUM||(NREUM={});NREUM.info={"beacon":"bam.nr-data.net","errorBeacon":"bam.nr-data.net","licenseKey":"70f3b191a7","applicationID":"17051529","transactionName":"dl5eQUtZWQoHEUoCXkBDQ1BKGUYODRQ=","queueTime":0,"applicationTime":79,"agent":""}</script> <script type="text/javascript">(window.NREUM||(NREUM={})).init={privacy:{cookies_enabled:true},ajax:{deny_list:[]},distributed_tracing:{enabled:true}};(window.NREUM||(NREUM={})).loader_config={agentID:"96658315",accountID:"8536",trustKey:"8536",xpid:"XAMEV0VSDwMFVVRQDg==",licenseKey:"70f3b191a7",applicationID:"17051529"};;/*! For license information please see nr-loader-spa-1.284.1.min.js.LICENSE.txt */ (()=>{var e,t,r={8122:(e,t,r)=>{"use strict";r.d(t,{a:()=>i});var n=r(944);function i(e,t){try{if(!e||"object"!=typeof e)return(0,n.R)(3);if(!t||"object"!=typeof t)return(0,n.R)(4);const r=Object.create(Object.getPrototypeOf(t),Object.getOwnPropertyDescriptors(t)),o=0===Object.keys(r).length?e:r;for(let a in o)if(void 0!==e[a])try{if(null===e[a]){r[a]=null;continue}Array.isArray(e[a])&&Array.isArray(t[a])?r[a]=Array.from(new Set([...e[a],...t[a]])):"object"==typeof e[a]&&"object"==typeof t[a]?r[a]=i(e[a],t[a]):r[a]=e[a]}catch(e){(0,n.R)(1,e)}return r}catch(e){(0,n.R)(2,e)}}},2555:(e,t,r)=>{"use strict";r.d(t,{Vp:()=>c,fn:()=>s,x1:()=>u});var n=r(384),i=r(8122);const o={beacon:n.NT.beacon,errorBeacon:n.NT.errorBeacon,licenseKey:void 0,applicationID:void 0,sa:void 0,queueTime:void 0,applicationTime:void 0,ttGuid:void 0,user:void 0,account:void 0,product:void 0,extra:void 0,jsAttributes:{},userAttributes:void 0,atts:void 0,transactionName:void 0,tNamePlain:void 0},a={};function s(e){try{const t=c(e);return!!t.licenseKey&&!!t.errorBeacon&&!!t.applicationID}catch(e){return!1}}function c(e){if(!e)throw new Error("All info objects require an agent identifier!");if(!a[e])throw new Error("Info for ".concat(e," was never set"));return a[e]}function u(e,t){if(!e)throw new Error("All info objects require an agent identifier!");a[e]=(0,i.a)(t,o);const r=(0,n.nY)(e);r&&(r.info=a[e])}},9417:(e,t,r)=>{"use strict";r.d(t,{D0:()=>h,gD:()=>g,xN:()=>p});var n=r(3333);const i=e=>{if(!e||"string"!=typeof e)return!1;try{document.createDocumentFragment().querySelector(e)}catch{return!1}return!0};var o=r(2614),a=r(944),s=r(384),c=r(8122);const u="[data-nr-mask]",d=()=>{const e={feature_flags:[],experimental:{marks:!1,measures:!1,resources:!1},mask_selector:"*",block_selector:"[data-nr-block]",mask_input_options:{color:!1,date:!1,"datetime-local":!1,email:!1,month:!1,number:!1,range:!1,search:!1,tel:!1,text:!1,time:!1,url:!1,week:!1,textarea:!1,select:!1,password:!0}};return{ajax:{deny_list:void 0,block_internal:!0,enabled:!0,autoStart:!0},distributed_tracing:{enabled:void 0,exclude_newrelic_header:void 0,cors_use_newrelic_header:void 0,cors_use_tracecontext_headers:void 0,allowed_origins:void 0},get feature_flags(){return e.feature_flags},set feature_flags(t){e.feature_flags=t},generic_events:{enabled:!0,autoStart:!0},harvest:{interval:30},jserrors:{enabled:!0,autoStart:!0},logging:{enabled:!0,autoStart:!0},metrics:{enabled:!0,autoStart:!0},obfuscate:void 0,page_action:{enabled:!0},page_view_event:{enabled:!0,autoStart:!0},page_view_timing:{enabled:!0,autoStart:!0},performance:{get capture_marks(){return e.feature_flags.includes(n.$v.MARKS)||e.experimental.marks},set capture_marks(t){e.experimental.marks=t},get capture_measures(){return e.feature_flags.includes(n.$v.MEASURES)||e.experimental.measures},set capture_measures(t){e.experimental.measures=t},capture_detail:!0,resources:{get enabled(){return e.feature_flags.includes(n.$v.RESOURCES)||e.experimental.resources},set enabled(t){e.experimental.resources=t},asset_types:[],first_party_domains:[],ignore_newrelic:!0}},privacy:{cookies_enabled:!0},proxy:{assets:void 0,beacon:void 0},session:{expiresMs:o.wk,inactiveMs:o.BB},session_replay:{autoStart:!0,enabled:!1,preload:!1,sampling_rate:10,error_sampling_rate:100,collect_fonts:!1,inline_images:!1,fix_stylesheets:!0,mask_all_inputs:!0,get mask_text_selector(){return e.mask_selector},set mask_text_selector(t){i(t)?e.mask_selector="".concat(t,",").concat(u):""===t||null===t?e.mask_selector=u:(0,a.R)(5,t)},get block_class(){return"nr-block"},get ignore_class(){return"nr-ignore"},get mask_text_class(){return"nr-mask"},get block_selector(){return e.block_selector},set block_selector(t){i(t)?e.block_selector+=",".concat(t):""!==t&&(0,a.R)(6,t)},get mask_input_options(){return e.mask_input_options},set mask_input_options(t){t&&"object"==typeof t?e.mask_input_options={...t,password:!0}:(0,a.R)(7,t)}},session_trace:{enabled:!0,autoStart:!0},soft_navigations:{enabled:!0,autoStart:!0},spa:{enabled:!0,autoStart:!0},ssl:void 0,user_actions:{enabled:!0,elementAttributes:["id","className","tagName","type"]}}},l={},f="All configuration objects require an agent identifier!";function h(e){if(!e)throw new Error(f);if(!l[e])throw new Error("Configuration for ".concat(e," was never set"));return l[e]}function p(e,t){if(!e)throw new Error(f);l[e]=(0,c.a)(t,d());const r=(0,s.nY)(e);r&&(r.init=l[e])}function g(e,t){if(!e)throw new Error(f);var r=h(e);if(r){for(var n=t.split("."),i=0;i<n.length-1;i++)if("object"!=typeof(r=r[n[i]]))return;r=r[n[n.length-1]]}return r}},5603:(e,t,r)=>{"use strict";r.d(t,{a:()=>c,o:()=>s});var n=r(384),i=r(8122);const o={accountID:void 0,trustKey:void 0,agentID:void 0,licenseKey:void 0,applicationID:void 0,xpid:void 0},a={};function s(e){if(!e)throw new Error("All loader-config objects require an agent identifier!");if(!a[e])throw new Error("LoaderConfig for ".concat(e," was never set"));return a[e]}function c(e,t){if(!e)throw new Error("All loader-config objects require an agent identifier!");a[e]=(0,i.a)(t,o);const r=(0,n.nY)(e);r&&(r.loader_config=a[e])}},3371:(e,t,r)=>{"use strict";r.d(t,{V:()=>f,f:()=>l});var n=r(8122),i=r(384),o=r(6154),a=r(9324);let s=0;const c={buildEnv:a.F3,distMethod:a.Xs,version:a.xv,originTime:o.WN},u={customTransaction:void 0,disabled:!1,isolatedBacklog:!1,loaderType:void 0,maxBytes:3e4,onerror:void 0,ptid:void 0,releaseIds:{},appMetadata:{},session:void 0,denyList:void 0,timeKeeper:void 0,obfuscator:void 0,harvester:void 0},d={};function l(e){if(!e)throw new Error("All runtime objects require an agent identifier!");if(!d[e])throw new Error("Runtime for ".concat(e," was never set"));return d[e]}function f(e,t){if(!e)throw new Error("All runtime objects require an agent identifier!");d[e]={...(0,n.a)(t,u),...c},Object.hasOwnProperty.call(d[e],"harvestCount")||Object.defineProperty(d[e],"harvestCount",{get:()=>++s});const r=(0,i.nY)(e);r&&(r.runtime=d[e])}},9324:(e,t,r)=>{"use strict";r.d(t,{F3:()=>i,Xs:()=>o,Yq:()=>a,xv:()=>n});const n="1.284.1",i="PROD",o="CDN",a="^2.0.0-alpha.18"},6154:(e,t,r)=>{"use strict";r.d(t,{A4:()=>s,OF:()=>d,RI:()=>i,WN:()=>h,bv:()=>o,gm:()=>a,lR:()=>f,m:()=>u,mw:()=>c,sb:()=>l});var n=r(1863);const i="undefined"!=typeof window&&!!window.document,o="undefined"!=typeof WorkerGlobalScope&&("undefined"!=typeof self&&self instanceof WorkerGlobalScope&&self.navigator instanceof WorkerNavigator||"undefined"!=typeof globalThis&&globalThis instanceof WorkerGlobalScope&&globalThis.navigator instanceof WorkerNavigator),a=i?window:"undefined"!=typeof WorkerGlobalScope&&("undefined"!=typeof self&&self instanceof WorkerGlobalScope&&self||"undefined"!=typeof globalThis&&globalThis instanceof WorkerGlobalScope&&globalThis),s="complete"===a?.document?.readyState,c=Boolean("hidden"===a?.document?.visibilityState),u=""+a?.location,d=/iPad|iPhone|iPod/.test(a.navigator?.userAgent),l=d&&"undefined"==typeof SharedWorker,f=(()=>{const e=a.navigator?.userAgent?.match(/Firefox[/\s](\d+\.\d+)/);return Array.isArray(e)&&e.length>=2?+e[1]:0})(),h=Date.now()-(0,n.t)()},7295:(e,t,r)=>{"use strict";r.d(t,{Xv:()=>a,gX:()=>i,iW:()=>o});var n=[];function i(e){if(!e||o(e))return!1;if(0===n.length)return!0;for(var t=0;t<n.length;t++){var r=n[t];if("*"===r.hostname)return!1;if(s(r.hostname,e.hostname)&&c(r.pathname,e.pathname))return!1}return!0}function o(e){return void 0===e.hostname}function a(e){if(n=[],e&&e.length)for(var t=0;t<e.length;t++){let r=e[t];if(!r)continue;0===r.indexOf("http://")?r=r.substring(7):0===r.indexOf("https://")&&(r=r.substring(8));const i=r.indexOf("/");let o,a;i>0?(o=r.substring(0,i),a=r.substring(i)):(o=r,a="");let[s]=o.split(":");n.push({hostname:s,pathname:a})}}function s(e,t){return!(e.length>t.length)&&t.indexOf(e)===t.length-e.length}function c(e,t){return 0===e.indexOf("/")&&(e=e.substring(1)),0===t.indexOf("/")&&(t=t.substring(1)),""===e||e===t}},1687:(e,t,r)=>{"use strict";r.d(t,{Ak:()=>c,Ze:()=>l,x3:()=>u});var n=r(7836),i=r(3606),o=r(860),a=r(2646);const s={};function c(e,t){const r={staged:!1,priority:o.P3[t]||0};d(e),s[e].get(t)||s[e].set(t,r)}function u(e,t){e&&s[e]&&(s[e].get(t)&&s[e].delete(t),h(e,t,!1),s[e].size&&f(e))}function d(e){if(!e)throw new Error("agentIdentifier required");s[e]||(s[e]=new Map)}function l(e="",t="feature",r=!1){if(d(e),!e||!s[e].get(t)||r)return h(e,t);s[e].get(t).staged=!0,f(e)}function f(e){const t=Array.from(s[e]);t.every((([e,t])=>t.staged))&&(t.sort(((e,t)=>e[1].priority-t[1].priority)),t.forEach((([t])=>{s[e].delete(t),h(e,t)})))}function h(e,t,r=!0){const o=e?n.ee.get(e):n.ee,s=i.i.handlers;if(!o.aborted&&o.backlog&&s){if(r){const e=o.backlog[t],r=s[t];if(r){for(let t=0;e&&t<e.length;++t)p(e[t],r);Object.entries(r).forEach((([e,t])=>{Object.values(t||{}).forEach((t=>{t[0]?.on&&t[0]?.context()instanceof a.y&&t[0].on(e,t[1])}))}))}}o.isolatedBacklog||delete s[t],o.backlog[t]=null,o.emit("drain-"+t,[])}}function p(e,t){var r=e[1];Object.values(t[r]||{}).forEach((t=>{var r=e[0];if(t[0]===r){var n=t[1],i=e[3],o=e[2];n.apply(i,o)}}))}},7836:(e,t,r)=>{"use strict";r.d(t,{P:()=>c,ee:()=>u});var n=r(384),i=r(8990),o=r(3371),a=r(2646),s=r(5607);const c="nr@context:".concat(s.W),u=function e(t,r){var n={},s={},d={},l=!1;try{l=16===r.length&&(0,o.f)(r).isolatedBacklog}catch(e){}var f={on:p,addEventListener:p,removeEventListener:function(e,t){var r=n[e];if(!r)return;for(var i=0;i<r.length;i++)r[i]===t&&r.splice(i,1)},emit:function(e,r,n,i,o){!1!==o&&(o=!0);if(u.aborted&&!i)return;t&&o&&t.emit(e,r,n);for(var a=h(n),c=g(e),d=c.length,l=0;l<d;l++)c[l].apply(a,r);var p=v()[s[e]];p&&p.push([f,e,r,a]);return a},get:m,listeners:g,context:h,buffer:function(e,t){const r=v();if(t=t||"feature",f.aborted)return;Object.entries(e||{}).forEach((([e,n])=>{s[n]=t,t in r||(r[t]=[])}))},abort:function(){f._aborted=!0,Object.keys(f.backlog).forEach((e=>{delete f.backlog[e]}))},isBuffering:function(e){return!!v()[s[e]]},debugId:r,backlog:l?{}:t&&"object"==typeof t.backlog?t.backlog:{},isolatedBacklog:l};return Object.defineProperty(f,"aborted",{get:()=>{let e=f._aborted||!1;return e||(t&&(e=t.aborted),e)}}),f;function h(e){return e&&e instanceof a.y?e:e?(0,i.I)(e,c,(()=>new a.y(c))):new a.y(c)}function p(e,t){n[e]=g(e).concat(t)}function g(e){return n[e]||[]}function m(t){return d[t]=d[t]||e(f,t)}function v(){return f.backlog}}(void 0,"globalEE"),d=(0,n.Zm)();d.ee||(d.ee=u)},2646:(e,t,r)=>{"use strict";r.d(t,{y:()=>n});class n{constructor(e){this.contextId=e}}},9908:(e,t,r)=>{"use strict";r.d(t,{d:()=>n,p:()=>i});var n=r(7836).ee.get("handle");function i(e,t,r,i,o){o?(o.buffer([e],i),o.emit(e,t,r)):(n.buffer([e],i),n.emit(e,t,r))}},3606:(e,t,r)=>{"use strict";r.d(t,{i:()=>o});var n=r(9908);o.on=a;var i=o.handlers={};function o(e,t,r,o){a(o||n.d,i,e,t,r)}function a(e,t,r,i,o){o||(o="feature"),e||(e=n.d);var a=t[o]=t[o]||{};(a[r]=a[r]||[]).push([e,i])}},3878:(e,t,r)=>{"use strict";function n(e,t){return{capture:e,passive:!1,signal:t}}function i(e,t,r=!1,i){window.addEventListener(e,t,n(r,i))}function o(e,t,r=!1,i){document.addEventListener(e,t,n(r,i))}r.d(t,{DD:()=>o,jT:()=>n,sp:()=>i})},5607:(e,t,r)=>{"use strict";r.d(t,{W:()=>n});const n=(0,r(9566).bz)()},9566:(e,t,r)=>{"use strict";r.d(t,{LA:()=>s,ZF:()=>c,bz:()=>a,el:()=>u});var n=r(6154);const i="xxxxxxxx-xxxx-4xxx-yxxx-xxxxxxxxxxxx";function o(e,t){return e?15&e[t]:16*Math.random()|0}function a(){const e=n.gm?.crypto||n.gm?.msCrypto;let t,r=0;return e&&e.getRandomValues&&(t=e.getRandomValues(new Uint8Array(30))),i.split("").map((e=>"x"===e?o(t,r++).toString(16):"y"===e?(3&o()|8).toString(16):e)).join("")}function s(e){const t=n.gm?.crypto||n.gm?.msCrypto;let r,i=0;t&&t.getRandomValues&&(r=t.getRandomValues(new Uint8Array(e)));const a=[];for(var s=0;s<e;s++)a.push(o(r,i++).toString(16));return a.join("")}function c(){return s(16)}function u(){return s(32)}},2614:(e,t,r)=>{"use strict";r.d(t,{BB:()=>a,H3:()=>n,g:()=>u,iL:()=>c,tS:()=>s,uh:()=>i,wk:()=>o});const n="NRBA",i="SESSION",o=144e5,a=18e5,s={STARTED:"session-started",PAUSE:"session-pause",RESET:"session-reset",RESUME:"session-resume",UPDATE:"session-update"},c={SAME_TAB:"same-tab",CROSS_TAB:"cross-tab"},u={OFF:0,FULL:1,ERROR:2}},1863:(e,t,r)=>{"use strict";function n(){return Math.floor(performance.now())}r.d(t,{t:()=>n})},7485:(e,t,r)=>{"use strict";r.d(t,{D:()=>i});var n=r(6154);function i(e){if(0===(e||"").indexOf("data:"))return{protocol:"data"};try{const t=new URL(e,location.href),r={port:t.port,hostname:t.hostname,pathname:t.pathname,search:t.search,protocol:t.protocol.slice(0,t.protocol.indexOf(":")),sameOrigin:t.protocol===n.gm?.location?.protocol&&t.host===n.gm?.location?.host};return r.port&&""!==r.port||("http:"===t.protocol&&(r.port="80"),"https:"===t.protocol&&(r.port="443")),r.pathname&&""!==r.pathname?r.pathname.startsWith("/")||(r.pathname="/".concat(r.pathname)):r.pathname="/",r}catch(e){return{}}}},944:(e,t,r)=>{"use strict";function n(e,t){"function"==typeof console.debug&&console.debug("New Relic Warning: https://github.com/newrelic/newrelic-browser-agent/blob/main/docs/warning-codes.md#".concat(e),t)}r.d(t,{R:()=>n})},5284:(e,t,r)=>{"use strict";r.d(t,{t:()=>c,B:()=>s});var n=r(7836),i=r(6154);const o="newrelic";const a=new Set,s={};function c(e,t){const r=n.ee.get(t);s[t]??={},e&&"object"==typeof e&&(a.has(t)||(r.emit("rumresp",[e]),s[t]=e,a.add(t),function(e={}){try{i.gm.dispatchEvent(new CustomEvent(o,{detail:e}))}catch(e){}}({loaded:!0})))}},8990:(e,t,r)=>{"use strict";r.d(t,{I:()=>i});var n=Object.prototype.hasOwnProperty;function i(e,t,r){if(n.call(e,t))return e[t];var i=r();if(Object.defineProperty&&Object.keys)try{return Object.defineProperty(e,t,{value:i,writable:!0,enumerable:!1}),i}catch(e){}return e[t]=i,i}},6389:(e,t,r)=>{"use strict";function n(e,t=500,r={}){const n=r?.leading||!1;let i;return(...r)=>{n&&void 0===i&&(e.apply(this,r),i=setTimeout((()=>{i=clearTimeout(i)}),t)),n||(clearTimeout(i),i=setTimeout((()=>{e.apply(this,r)}),t))}}function i(e){let t=!1;return(...r)=>{t||(t=!0,e.apply(this,r))}}r.d(t,{J:()=>i,s:()=>n})},3304:(e,t,r)=>{"use strict";r.d(t,{A:()=>o});var n=r(7836);const i=()=>{const e=new WeakSet;return(t,r)=>{if("object"==typeof r&&null!==r){if(e.has(r))return;e.add(r)}return r}};function o(e){try{return JSON.stringify(e,i())??""}catch(e){try{n.ee.emit("internal-error",[e])}catch(e){}return""}}},5289:(e,t,r)=>{"use strict";r.d(t,{GG:()=>o,sB:()=>a});var n=r(3878);function i(){return"undefined"==typeof document||"complete"===document.readyState}function o(e,t){if(i())return e();(0,n.sp)("load",e,t)}function a(e){if(i())return e();(0,n.DD)("DOMContentLoaded",e)}},384:(e,t,r)=>{"use strict";r.d(t,{NT:()=>o,US:()=>d,Zm:()=>a,bQ:()=>c,dV:()=>s,nY:()=>u,pV:()=>l});var n=r(6154),i=r(1863);const o={beacon:"bam.nr-data.net",errorBeacon:"bam.nr-data.net"};function a(){return n.gm.NREUM||(n.gm.NREUM={}),void 0===n.gm.newrelic&&(n.gm.newrelic=n.gm.NREUM),n.gm.NREUM}function s(){let e=a();return e.o||(e.o={ST:n.gm.setTimeout,SI:n.gm.setImmediate,CT:n.gm.clearTimeout,XHR:n.gm.XMLHttpRequest,REQ:n.gm.Request,EV:n.gm.Event,PR:n.gm.Promise,MO:n.gm.MutationObserver,FETCH:n.gm.fetch,WS:n.gm.WebSocket}),e}function c(e,t){let r=a();r.initializedAgents??={},t.initializedAt={ms:(0,i.t)(),date:new Date},r.initializedAgents[e]=t}function u(e){let t=a();return t.initializedAgents?.[e]}function d(e,t){a()[e]=t}function l(){return function(){let e=a();const t=e.info||{};e.info={beacon:o.beacon,errorBeacon:o.errorBeacon,...t}}(),function(){let e=a();const t=e.init||{};e.init={...t}}(),s(),function(){let e=a();const t=e.loader_config||{};e.loader_config={...t}}(),a()}},2843:(e,t,r)=>{"use strict";r.d(t,{u:()=>i});var n=r(3878);function i(e,t=!1,r,i){(0,n.DD)("visibilitychange",(function(){if(t)return void("hidden"===document.visibilityState&&e());e(document.visibilityState)}),r,i)}},8139:(e,t,r)=>{"use strict";r.d(t,{u:()=>f});var n=r(7836),i=r(3434),o=r(8990),a=r(6154);const s={},c=a.gm.XMLHttpRequest,u="addEventListener",d="removeEventListener",l="nr@wrapped:".concat(n.P);function f(e){var t=function(e){return(e||n.ee).get("events")}(e);if(s[t.debugId]++)return t;s[t.debugId]=1;var r=(0,i.YM)(t,!0);function f(e){r.inPlace(e,[u,d],"-",p)}function p(e,t){return e[1]}return"getPrototypeOf"in Object&&(a.RI&&h(document,f),c&&h(c.prototype,f),h(a.gm,f)),t.on(u+"-start",(function(e,t){var n=e[1];if(null!==n&&("function"==typeof n||"object"==typeof n)){var i=(0,o.I)(n,l,(function(){var e={object:function(){if("function"!=typeof n.handleEvent)return;return n.handleEvent.apply(n,arguments)},function:n}[typeof n];return e?r(e,"fn-",null,e.name||"anonymous"):n}));this.wrapped=e[1]=i}})),t.on(d+"-start",(function(e){e[1]=this.wrapped||e[1]})),t}function h(e,t,...r){let n=e;for(;"object"==typeof n&&!Object.prototype.hasOwnProperty.call(n,u);)n=Object.getPrototypeOf(n);n&&t(n,...r)}},3434:(e,t,r)=>{"use strict";r.d(t,{Jt:()=>o,YM:()=>c});var n=r(7836),i=r(5607);const o="nr@original:".concat(i.W);var a=Object.prototype.hasOwnProperty,s=!1;function c(e,t){return e||(e=n.ee),r.inPlace=function(e,t,n,i,o){n||(n="");const a="-"===n.charAt(0);for(let s=0;s<t.length;s++){const c=t[s],u=e[c];d(u)||(e[c]=r(u,a?c+n:n,i,c,o))}},r.flag=o,r;function r(t,r,n,s,c){return d(t)?t:(r||(r=""),nrWrapper[o]=t,function(e,t,r){if(Object.defineProperty&&Object.keys)try{return Object.keys(e).forEach((function(r){Object.defineProperty(t,r,{get:function(){return e[r]},set:function(t){return e[r]=t,t}})})),t}catch(e){u([e],r)}for(var n in e)a.call(e,n)&&(t[n]=e[n])}(t,nrWrapper,e),nrWrapper);function nrWrapper(){var o,a,d,l;try{a=this,o=[...arguments],d="function"==typeof n?n(o,a):n||{}}catch(t){u([t,"",[o,a,s],d],e)}i(r+"start",[o,a,s],d,c);try{return l=t.apply(a,o)}catch(e){throw i(r+"err",[o,a,e],d,c),e}finally{i(r+"end",[o,a,l],d,c)}}}function i(r,n,i,o){if(!s||t){var a=s;s=!0;try{e.emit(r,n,i,t,o)}catch(t){u([t,r,n,i],e)}s=a}}}function u(e,t){t||(t=n.ee);try{t.emit("internal-error",e)}catch(e){}}function d(e){return!(e&&"function"==typeof e&&e.apply&&!e[o])}},9414:(e,t,r)=>{"use strict";r.d(t,{J:()=>c});var n=r(7836),i=r(2646),o=r(944),a=r(3434);const s=new Map;function c(e,t,r,c){if("object"!=typeof t||!t||"string"!=typeof r||!r||"function"!=typeof t[r])return(0,o.R)(29);const u=function(e){return(e||n.ee).get("logger")}(e),d=(0,a.YM)(u),l=new i.y(n.P);l.level=c.level,l.customAttributes=c.customAttributes;const f=t[r]?.[a.Jt]||t[r];return s.set(f,l),d.inPlace(t,[r],"wrap-logger-",(()=>s.get(f))),u}},9300:(e,t,r)=>{"use strict";r.d(t,{T:()=>n});const n=r(860).K7.ajax},3333:(e,t,r)=>{"use strict";r.d(t,{$v:()=>u,TZ:()=>n,Zp:()=>i,kd:()=>c,mq:()=>s,nf:()=>a,qN:()=>o});const n=r(860).K7.genericEvents,i=["auxclick","click","copy","keydown","paste","scrollend"],o=["focus","blur"],a=4,s=1e3,c=["PageAction","UserAction","BrowserPerformance"],u={MARKS:"experimental.marks",MEASURES:"experimental.measures",RESOURCES:"experimental.resources"}},6774:(e,t,r)=>{"use strict";r.d(t,{T:()=>n});const n=r(860).K7.jserrors},993:(e,t,r)=>{"use strict";r.d(t,{A$:()=>o,ET:()=>a,TZ:()=>s,p_:()=>i});var n=r(860);const i={ERROR:"ERROR",WARN:"WARN",INFO:"INFO",DEBUG:"DEBUG",TRACE:"TRACE"},o={OFF:0,ERROR:1,WARN:2,INFO:3,DEBUG:4,TRACE:5},a="log",s=n.K7.logging},3785:(e,t,r)=>{"use strict";r.d(t,{R:()=>c,b:()=>u});var n=r(9908),i=r(1863),o=r(860),a=r(8154),s=r(993);function c(e,t,r={},c=s.p_.INFO){(0,n.p)(a.xV,["API/logging/".concat(c.toLowerCase(),"/called")],void 0,o.K7.metrics,e),(0,n.p)(s.ET,[(0,i.t)(),t,r,c],void 0,o.K7.logging,e)}function u(e){return"string"==typeof e&&Object.values(s.p_).some((t=>t===e.toUpperCase().trim()))}},8154:(e,t,r)=>{"use strict";r.d(t,{z_:()=>o,XG:()=>s,TZ:()=>n,rs:()=>i,xV:()=>a});r(6154),r(9566),r(384);const n=r(860).K7.metrics,i="sm",o="cm",a="storeSupportabilityMetrics",s="storeEventMetrics"},6630:(e,t,r)=>{"use strict";r.d(t,{T:()=>n});const n=r(860).K7.pageViewEvent},782:(e,t,r)=>{"use strict";r.d(t,{T:()=>n});const n=r(860).K7.pageViewTiming},6344:(e,t,r)=>{"use strict";r.d(t,{BB:()=>d,G4:()=>o,Qb:()=>l,TZ:()=>i,Ug:()=>a,_s:()=>s,bc:()=>u,yP:()=>c});var n=r(2614);const i=r(860).K7.sessionReplay,o={RECORD:"recordReplay",PAUSE:"pauseReplay",REPLAY_RUNNING:"replayRunning",ERROR_DURING_REPLAY:"errorDuringReplay"},a=.12,s={DomContentLoaded:0,Load:1,FullSnapshot:2,IncrementalSnapshot:3,Meta:4,Custom:5},c={[n.g.ERROR]:15e3,[n.g.FULL]:3e5,[n.g.OFF]:0},u={RESET:{message:"Session was reset",sm:"Reset"},IMPORT:{message:"Recorder failed to import",sm:"Import"},TOO_MANY:{message:"429: Too Many Requests",sm:"Too-Many"},TOO_BIG:{message:"Payload was too large",sm:"Too-Big"},CROSS_TAB:{message:"Session Entity was set to OFF on another tab",sm:"Cross-Tab"},ENTITLEMENTS:{message:"Session Replay is not allowed and will not be started",sm:"Entitlement"}},d=5e3,l={API:"api"}},5270:(e,t,r)=>{"use strict";r.d(t,{Aw:()=>c,CT:()=>u,SR:()=>s});var n=r(384),i=r(9417),o=r(7767),a=r(6154);function s(e){return!!(0,n.dV)().o.MO&&(0,o.V)(e)&&!0===(0,i.gD)(e,"session_trace.enabled")}function c(e){return!0===(0,i.gD)(e,"session_replay.preload")&&s(e)}function u(e,t){const r=t.correctAbsoluteTimestamp(e);return{originalTimestamp:e,correctedTimestamp:r,timestampDiff:e-r,originTime:a.WN,correctedOriginTime:t.correctedOriginTime,originTimeDiff:Math.floor(a.WN-t.correctedOriginTime)}}},3738:(e,t,r)=>{"use strict";r.d(t,{He:()=>i,Kp:()=>s,Lc:()=>u,Rz:()=>d,TZ:()=>n,bD:()=>o,d3:()=>a,jx:()=>l,uP:()=>c});const n=r(860).K7.sessionTrace,i="bstResource",o="resource",a="-start",s="-end",c="fn"+a,u="fn"+s,d="pushState",l=1e3},3962:(e,t,r)=>{"use strict";r.d(t,{AM:()=>o,O2:()=>c,Qu:()=>u,TZ:()=>s,ih:()=>d,pP:()=>a,tC:()=>i});var n=r(860);const i=["click","keydown","submit","popstate"],o="api",a="initialPageLoad",s=n.K7.softNav,c={INITIAL_PAGE_LOAD:"",ROUTE_CHANGE:1,UNSPECIFIED:2},u={INTERACTION:1,AJAX:2,CUSTOM_END:3,CUSTOM_TRACER:4},d={IP:"in progress",FIN:"finished",CAN:"cancelled"}},7378:(e,t,r)=>{"use strict";r.d(t,{$p:()=>x,BR:()=>b,Kp:()=>R,L3:()=>y,Lc:()=>c,NC:()=>o,SG:()=>d,TZ:()=>i,U6:()=>p,UT:()=>m,d3:()=>w,dT:()=>f,e5:()=>A,gx:()=>v,l9:()=>l,oW:()=>h,op:()=>g,rw:()=>u,tH:()=>T,uP:()=>s,wW:()=>E,xq:()=>a});var n=r(384);const i=r(860).K7.spa,o=["click","submit","keypress","keydown","keyup","change"],a=999,s="fn-start",c="fn-end",u="cb-start",d="api-ixn-",l="remaining",f="interaction",h="spaNode",p="jsonpNode",g="fetch-start",m="fetch-done",v="fetch-body-",b="jsonp-end",y=(0,n.dV)().o.ST,w="-start",R="-end",x="-body",E="cb"+R,A="jsTime",T="fetch"},4234:(e,t,r)=>{"use strict";r.d(t,{W:()=>o});var n=r(7836),i=r(1687);class o{constructor(e,t){this.agentIdentifier=e,this.ee=n.ee.get(e),this.featureName=t,this.blocked=!1}deregisterDrain(){(0,i.x3)(this.agentIdentifier,this.featureName)}}},7767:(e,t,r)=>{"use strict";r.d(t,{V:()=>o});var n=r(9417),i=r(6154);const o=e=>i.RI&&!0===(0,n.gD)(e,"privacy.cookies_enabled")},8969:(e,t,r)=>{"use strict";r.d(t,{j:()=>O});var n=r(860),i=r(2555),o=r(3371),a=r(9908),s=r(7836),c=r(1687),u=r(5289),d=r(6154),l=r(944),f=r(8154),h=r(384),p=r(6344);const g=["setErrorHandler","finished","addToTrace","addRelease","recordCustomEvent","addPageAction","setCurrentRouteName","setPageViewName","setCustomAttribute","interaction","noticeError","setUserId","setApplicationVersion","start",p.G4.RECORD,p.G4.PAUSE,"log","wrapLogger"],m=["setErrorHandler","finished","addToTrace","addRelease"];var v=r(1863),b=r(2614),y=r(993),w=r(3785),R=r(9414);function x(){const e=(0,h.pV)();g.forEach((t=>{e[t]=(...r)=>function(t,...r){let n=[];return Object.values(e.initializedAgents).forEach((e=>{e&&e.api?e.exposed&&e.api[t]&&n.push(e.api[t](...r)):(0,l.R)(38,t)})),n.length>1?n:n[0]}(t,...r)}))}const E={};var A=r(9417),T=r(5603),N=r(5284);const S=e=>{const t=e.startsWith("http");e+="/",r.p=t?e:"https://"+e};let _=!1;function O(e,t={},g,O){let{init:I,info:P,loader_config:j,runtime:C={},exposed:k=!0}=t;C.loaderType=g;const L=(0,h.pV)();P||(I=L.init,P=L.info,j=L.loader_config),(0,A.xN)(e.agentIdentifier,I||{}),(0,T.a)(e.agentIdentifier,j||{}),P.jsAttributes??={},d.bv&&(P.jsAttributes.isWorker=!0),(0,i.x1)(e.agentIdentifier,P);const H=(0,A.D0)(e.agentIdentifier),M=[P.beacon,P.errorBeacon];_||(H.proxy.assets&&(S(H.proxy.assets),M.push(H.proxy.assets)),H.proxy.beacon&&M.push(H.proxy.beacon),x(),(0,h.US)("activatedFeatures",N.B),e.runSoftNavOverSpa&&=!0===H.soft_navigations.enabled&&H.feature_flags.includes("soft_nav")),C.denyList=[...H.ajax.deny_list||[],...H.ajax.block_internal?M:[]],C.ptid=e.agentIdentifier,(0,o.V)(e.agentIdentifier,C),e.ee=s.ee.get(e.agentIdentifier),void 0===e.api&&(e.api=function(e,t,h=!1){t||(0,c.Ak)(e,"api");const g={};var x=s.ee.get(e),A=x.get("tracer");E[e]=b.g.OFF,x.on(p.G4.REPLAY_RUNNING,(t=>{E[e]=t}));var T="api-",N=T+"ixn-";function S(t,r,n,o){const a=(0,i.Vp)(e);return null===r?delete a.jsAttributes[t]:(0,i.x1)(e,{...a,jsAttributes:{...a.jsAttributes,[t]:r}}),I(T,n,!0,o||null===r?"session":void 0)(t,r)}function _(){}g.log=function(e,{customAttributes:t={},level:r=y.p_.INFO}={}){(0,a.p)(f.xV,["API/log/called"],void 0,n.K7.metrics,x),(0,w.R)(x,e,t,r)},g.wrapLogger=(e,t,{customAttributes:r={},level:i=y.p_.INFO}={})=>{(0,a.p)(f.xV,["API/wrapLogger/called"],void 0,n.K7.metrics,x),(0,R.J)(x,e,t,{customAttributes:r,level:i})},m.forEach((e=>{g[e]=I(T,e,!0,"api")})),g.addPageAction=I(T,"addPageAction",!0,n.K7.genericEvents),g.recordCustomEvent=I(T,"recordCustomEvent",!0,n.K7.genericEvents),g.setPageViewName=function(t,r){if("string"==typeof t)return"/"!==t.charAt(0)&&(t="/"+t),(0,o.f)(e).customTransaction=(r||"http://custom.transaction")+t,I(T,"setPageViewName",!0)()},g.setCustomAttribute=function(e,t,r=!1){if("string"==typeof e){if(["string","number","boolean"].includes(typeof t)||null===t)return S(e,t,"setCustomAttribute",r);(0,l.R)(40,typeof t)}else(0,l.R)(39,typeof e)},g.setUserId=function(e){if("string"==typeof e||null===e)return S("enduser.id",e,"setUserId",!0);(0,l.R)(41,typeof e)},g.setApplicationVersion=function(e){if("string"==typeof e||null===e)return S("application.version",e,"setApplicationVersion",!1);(0,l.R)(42,typeof e)},g.start=()=>{try{(0,a.p)(f.xV,["API/start/called"],void 0,n.K7.metrics,x),x.emit("manual-start-all")}catch(e){(0,l.R)(23,e)}},g[p.G4.RECORD]=function(){(0,a.p)(f.xV,["API/recordReplay/called"],void 0,n.K7.metrics,x),(0,a.p)(p.G4.RECORD,[],void 0,n.K7.sessionReplay,x)},g[p.G4.PAUSE]=function(){(0,a.p)(f.xV,["API/pauseReplay/called"],void 0,n.K7.metrics,x),(0,a.p)(p.G4.PAUSE,[],void 0,n.K7.sessionReplay,x)},g.interaction=function(e){return(new _).get("object"==typeof e?e:{})};const O=_.prototype={createTracer:function(e,t){var r={},i=this,o="function"==typeof t;return(0,a.p)(f.xV,["API/createTracer/called"],void 0,n.K7.metrics,x),h||(0,a.p)(N+"tracer",[(0,v.t)(),e,r],i,n.K7.spa,x),function(){if(A.emit((o?"":"no-")+"fn-start",[(0,v.t)(),i,o],r),o)try{return t.apply(this,arguments)}catch(e){const t="string"==typeof e?new Error(e):e;throw A.emit("fn-err",[arguments,this,t],r),t}finally{A.emit("fn-end",[(0,v.t)()],r)}}}};function I(e,t,r,i){return function(){return(0,a.p)(f.xV,["API/"+t+"/called"],void 0,n.K7.metrics,x),i&&(0,a.p)(e+t,[r?(0,v.t)():performance.now(),...arguments],r?null:this,i,x),r?void 0:this}}function P(){r.e(478).then(r.bind(r,8778)).then((({setAPI:t})=>{t(e),(0,c.Ze)(e,"api")})).catch((e=>{(0,l.R)(27,e),x.abort()}))}return["actionText","setName","setAttribute","save","ignore","onEnd","getContext","end","get"].forEach((e=>{O[e]=I(N,e,void 0,h?n.K7.softNav:n.K7.spa)})),g.setCurrentRouteName=h?I(N,"routeName",void 0,n.K7.softNav):I(T,"routeName",!0,n.K7.spa),g.noticeError=function(t,r){"string"==typeof t&&(t=new Error(t)),(0,a.p)(f.xV,["API/noticeError/called"],void 0,n.K7.metrics,x),(0,a.p)("err",[t,(0,v.t)(),!1,r,!!E[e]],void 0,n.K7.jserrors,x)},d.RI?(0,u.GG)((()=>P()),!0):P(),g}(e.agentIdentifier,O,e.runSoftNavOverSpa)),void 0===e.exposed&&(e.exposed=k),_=!0}},8374:(e,t,r)=>{r.nc=(()=>{try{return document?.currentScript?.nonce}catch(e){}return""})()},860:(e,t,r)=>{"use strict";r.d(t,{$J:()=>u,K7:()=>s,P3:()=>c,XX:()=>i,qY:()=>n,v4:()=>a});const n="events",i="jserrors",o="browser/blobs",a="rum",s={ajax:"ajax",genericEvents:"generic_events",jserrors:i,logging:"logging",metrics:"metrics",pageAction:"page_action",pageViewEvent:"page_view_event",pageViewTiming:"page_view_timing",sessionReplay:"session_replay",sessionTrace:"session_trace",softNav:"soft_navigations",spa:"spa"},c={[s.pageViewEvent]:1,[s.pageViewTiming]:2,[s.metrics]:3,[s.jserrors]:4,[s.spa]:5,[s.ajax]:6,[s.sessionTrace]:7,[s.softNav]:8,[s.sessionReplay]:9,[s.logging]:10,[s.genericEvents]:11},u={[s.pageViewEvent]:a,[s.pageViewTiming]:n,[s.ajax]:n,[s.spa]:n,[s.softNav]:n,[s.metrics]:i,[s.jserrors]:i,[s.sessionTrace]:o,[s.sessionReplay]:o,[s.logging]:"browser/logs",[s.genericEvents]:"ins"}}},n={};function i(e){var t=n[e];if(void 0!==t)return t.exports;var o=n[e]={exports:{}};return r[e](o,o.exports,i),o.exports}i.m=r,i.d=(e,t)=>{for(var r in t)i.o(t,r)&&!i.o(e,r)&&Object.defineProperty(e,r,{enumerable:!0,get:t[r]})},i.f={},i.e=e=>Promise.all(Object.keys(i.f).reduce(((t,r)=>(i.f[r](e,t),t)),[])),i.u=e=>({212:"nr-spa-compressor",249:"nr-spa-recorder",478:"nr-spa"}[e]+"-1.284.1.min.js"),i.o=(e,t)=>Object.prototype.hasOwnProperty.call(e,t),e={},t="NRBA-1.284.1.PROD:",i.l=(r,n,o,a)=>{if(e[r])e[r].push(n);else{var s,c;if(void 0!==o)for(var u=document.getElementsByTagName("script"),d=0;d<u.length;d++){var l=u[d];if(l.getAttribute("src")==r||l.getAttribute("data-webpack")==t+o){s=l;break}}if(!s){c=!0;var f={478:"sha512-VWXyHiJymB8Fhqc5jWlZ1CWrtlNWMPhm+PNnjWX1CfW9gQedReF5MFo3k8skdB5TlR837ofwtBeSzIE69RbCwQ==",249:"sha512-e1fXm1ZkMilKv1yUjmoJw7TU5bCKK/7Xaa/Ta9opkyurmkWtIKPd4CMfU2dRHGr9+brXynQnY3wwY838aQPhVw==",212:"sha512-zX52gEnN9DOzLrxU+zqxDl8R/t9rkdZavljSVjdAYS3BNoZH304PhVRnFEdwyYNCN9QcuGDBMMJ8U6XYtxAL0g=="};(s=document.createElement("script")).charset="utf-8",s.timeout=120,i.nc&&s.setAttribute("nonce",i.nc),s.setAttribute("data-webpack",t+o),s.src=r,0!==s.src.indexOf(window.location.origin+"/")&&(s.crossOrigin="anonymous"),f[a]&&(s.integrity=f[a])}e[r]=[n];var h=(t,n)=>{s.onerror=s.onload=null,clearTimeout(p);var i=e[r];if(delete e[r],s.parentNode&&s.parentNode.removeChild(s),i&&i.forEach((e=>e(n))),t)return t(n)},p=setTimeout(h.bind(null,void 0,{type:"timeout",target:s}),12e4);s.onerror=h.bind(null,s.onerror),s.onload=h.bind(null,s.onload),c&&document.head.appendChild(s)}},i.r=e=>{"undefined"!=typeof Symbol&&Symbol.toStringTag&&Object.defineProperty(e,Symbol.toStringTag,{value:"Module"}),Object.defineProperty(e,"__esModule",{value:!0})},i.p="https://js-agent.newrelic.com/",(()=>{var e={38:0,788:0};i.f.j=(t,r)=>{var n=i.o(e,t)?e[t]:void 0;if(0!==n)if(n)r.push(n[2]);else{var o=new Promise(((r,i)=>n=e[t]=[r,i]));r.push(n[2]=o);var a=i.p+i.u(t),s=new Error;i.l(a,(r=>{if(i.o(e,t)&&(0!==(n=e[t])&&(e[t]=void 0),n)){var o=r&&("load"===r.type?"missing":r.type),a=r&&r.target&&r.target.src;s.message="Loading chunk "+t+" failed.\n("+o+": "+a+")",s.name="ChunkLoadError",s.type=o,s.request=a,n[1](s)}}),"chunk-"+t,t)}};var t=(t,r)=>{var n,o,[a,s,c]=r,u=0;if(a.some((t=>0!==e[t]))){for(n in s)i.o(s,n)&&(i.m[n]=s[n]);if(c)c(i)}for(t&&t(r);u<a.length;u++)o=a[u],i.o(e,o)&&e[o]&&e[o][0](),e[o]=0},r=self["webpackChunk:NRBA-1.284.1.PROD"]=self["webpackChunk:NRBA-1.284.1.PROD"]||[];r.forEach(t.bind(null,0)),r.push=t.bind(null,r.push.bind(r))})(),(()=>{"use strict";i(8374);var e=i(944),t=i(6344),r=i(9566);class n{agentIdentifier;constructor(){this.agentIdentifier=(0,r.LA)(16)}#e(t,...r){if("function"==typeof this.api?.[t])return this.api[t](...r);(0,e.R)(35,t)}addPageAction(e,t){return this.#e("addPageAction",e,t)}recordCustomEvent(e,t){return this.#e("recordCustomEvent",e,t)}setPageViewName(e,t){return this.#e("setPageViewName",e,t)}setCustomAttribute(e,t,r){return this.#e("setCustomAttribute",e,t,r)}noticeError(e,t){return this.#e("noticeError",e,t)}setUserId(e){return this.#e("setUserId",e)}setApplicationVersion(e){return this.#e("setApplicationVersion",e)}setErrorHandler(e){return this.#e("setErrorHandler",e)}addRelease(e,t){return this.#e("addRelease",e,t)}log(e,t){return this.#e("log",e,t)}}class o extends n{#e(t,...r){if("function"==typeof this.api?.[t])return this.api[t](...r);(0,e.R)(35,t)}start(){return this.#e("start")}finished(e){return this.#e("finished",e)}recordReplay(){return this.#e(t.G4.RECORD)}pauseReplay(){return this.#e(t.G4.PAUSE)}addToTrace(e){return this.#e("addToTrace",e)}setCurrentRouteName(e){return this.#e("setCurrentRouteName",e)}interaction(){return this.#e("interaction")}wrapLogger(e,t,r){return this.#e("wrapLogger",e,t,r)}}var a=i(860),s=i(9417);const c=Object.values(a.K7);function u(e){const t={};return c.forEach((r=>{t[r]=function(e,t){return!0===(0,s.gD)(t,"".concat(e,".enabled"))}(r,e)})),t}var d=i(8969);var l=i(1687),f=i(4234),h=i(5289),p=i(6154),g=i(5270),m=i(7767),v=i(6389);class b extends f.W{constructor(e,t,r=!0){super(e.agentIdentifier,t),this.auto=r,this.abortHandler=void 0,this.featAggregate=void 0,this.onAggregateImported=void 0,!1===e.init[this.featureName].autoStart&&(this.auto=!1),this.auto?(0,l.Ak)(e.agentIdentifier,t):this.ee.on("manual-start-all",(0,v.J)((()=>{(0,l.Ak)(e.agentIdentifier,this.featureName),this.auto=!0,this.importAggregator(e)})))}importAggregator(t,r={}){if(this.featAggregate||!this.auto)return;let n;this.onAggregateImported=new Promise((e=>{n=e}));const o=async()=>{let o;try{if((0,m.V)(this.agentIdentifier)){const{setupAgentSession:e}=await i.e(478).then(i.bind(i,6526));o=e(t)}}catch(t){(0,e.R)(20,t),this.ee.emit("internal-error",[t]),this.featureName===a.K7.sessionReplay&&this.abortHandler?.()}try{if(!this.#t(this.featureName,o))return(0,l.Ze)(this.agentIdentifier,this.featureName),void n(!1);const{lazyFeatureLoader:e}=await i.e(478).then(i.bind(i,6103)),{Aggregate:a}=await e(this.featureName,"aggregate");this.featAggregate=new a(t,r),t.runtime.harvester.initializedAggregates.push(this.featAggregate),n(!0)}catch(t){(0,e.R)(34,t),this.abortHandler?.(),(0,l.Ze)(this.agentIdentifier,this.featureName,!0),n(!1),this.ee&&this.ee.abort()}};p.RI?(0,h.GG)((()=>o()),!0):o()}#t(e,t){switch(e){case a.K7.sessionReplay:return(0,g.SR)(this.agentIdentifier)&&!!t;case a.K7.sessionTrace:return!!t;default:return!0}}}var y=i(6630);class w extends b{static featureName=y.T;constructor(e,t=!0){super(e,y.T,t),this.importAggregator(e)}}var R=i(384);var x=i(9908),E=i(2843),A=i(3878),T=i(782),N=i(1863);class S extends b{static featureName=T.T;constructor(e,t=!0){super(e,T.T,t),p.RI&&((0,E.u)((()=>(0,x.p)("docHidden",[(0,N.t)()],void 0,T.T,this.ee)),!0),(0,A.sp)("pagehide",(()=>(0,x.p)("winPagehide",[(0,N.t)()],void 0,T.T,this.ee))),this.importAggregator(e))}}var _=i(8154);class O extends b{static featureName=_.TZ;constructor(e,t=!0){super(e,_.TZ,t),p.RI&&document.addEventListener("securitypolicyviolation",(e=>{(0,x.p)(_.xV,["Generic/CSPViolation/Detected"],void 0,this.featureName,this.ee)})),this.importAggregator(e)}}var I=i(6774),P=i(3304);class j{constructor(e,t,r,n,i){this.name="UncaughtError",this.message="string"==typeof e?e:(0,P.A)(e),this.sourceURL=t,this.line=r,this.column=n,this.__newrelic=i}}function C(e){return H(e)?e:new j(void 0!==e?.message?e.message:e,e?.filename||e?.sourceURL,e?.lineno||e?.line,e?.colno||e?.col,e?.__newrelic)}function k(e){const t="Unhandled Promise Rejection: ";if(!e?.reason)return;if(H(e.reason)){try{e.reason.message.startsWith(t)||(e.reason.message=t+e.reason.message)}catch(e){}return C(e.reason)}const r=C(e.reason);return(r.message||"").startsWith(t)||(r.message=t+r.message),r}function L(e){if(e.error instanceof SyntaxError&&!/:\d+$/.test(e.error.stack?.trim())){const t=new j(e.message,e.filename,e.lineno,e.colno,e.error.__newrelic);return t.name=SyntaxError.name,t}return H(e.error)?e.error:C(e)}function H(e){return e instanceof Error&&!!e.stack}class M extends b{static featureName=I.T;#r=!1;constructor(e,r=!0){super(e,I.T,r);try{this.removeOnAbort=new AbortController}catch(e){}this.ee.on("internal-error",((e,t)=>{this.abortHandler&&(0,x.p)("ierr",[C(e),(0,N.t)(),!0,{},this.#r,t],void 0,this.featureName,this.ee)})),this.ee.on(t.G4.REPLAY_RUNNING,(e=>{this.#r=e})),p.gm.addEventListener("unhandledrejection",(e=>{this.abortHandler&&(0,x.p)("err",[k(e),(0,N.t)(),!1,{unhandledPromiseRejection:1},this.#r],void 0,this.featureName,this.ee)}),(0,A.jT)(!1,this.removeOnAbort?.signal)),p.gm.addEventListener("error",(e=>{this.abortHandler&&(0,x.p)("err",[L(e),(0,N.t)(),!1,{},this.#r],void 0,this.featureName,this.ee)}),(0,A.jT)(!1,this.removeOnAbort?.signal)),this.abortHandler=this.#n,this.importAggregator(e)}#n(){this.removeOnAbort?.abort(),this.abortHandler=void 0}}var D=i(8990);let K=1;const U="nr@id";function V(e){const t=typeof e;return!e||"object"!==t&&"function"!==t?-1:e===p.gm?0:(0,D.I)(e,U,(function(){return K++}))}function G(e){if("string"==typeof e&&e.length)return e.length;if("object"==typeof e){if("undefined"!=typeof ArrayBuffer&&e instanceof ArrayBuffer&&e.byteLength)return e.byteLength;if("undefined"!=typeof Blob&&e instanceof Blob&&e.size)return e.size;if(!("undefined"!=typeof FormData&&e instanceof FormData))try{return(0,P.A)(e).length}catch(e){return}}}var F=i(8139),B=i(7836),W=i(3434);const z={},q=["open","send"];function Z(t){var r=t||B.ee;const n=function(e){return(e||B.ee).get("xhr")}(r);if(void 0===p.gm.XMLHttpRequest)return n;if(z[n.debugId]++)return n;z[n.debugId]=1,(0,F.u)(r);var i=(0,W.YM)(n),o=p.gm.XMLHttpRequest,a=p.gm.MutationObserver,s=p.gm.Promise,c=p.gm.setInterval,u="readystatechange",d=["onload","onerror","onabort","onloadstart","onloadend","onprogress","ontimeout"],l=[],f=p.gm.XMLHttpRequest=function(t){const r=new o(t),a=n.context(r);try{n.emit("new-xhr",[r],a),r.addEventListener(u,(s=a,function(){var e=this;e.readyState>3&&!s.resolved&&(s.resolved=!0,n.emit("xhr-resolved",[],e)),i.inPlace(e,d,"fn-",y)}),(0,A.jT)(!1))}catch(t){(0,e.R)(15,t);try{n.emit("internal-error",[t])}catch(e){}}var s;return r};function h(e,t){i.inPlace(t,["onreadystatechange"],"fn-",y)}if(function(e,t){for(var r in e)t[r]=e[r]}(o,f),f.prototype=o.prototype,i.inPlace(f.prototype,q,"-xhr-",y),n.on("send-xhr-start",(function(e,t){h(e,t),function(e){l.push(e),a&&(g?g.then(b):c?c(b):(m=-m,v.data=m))}(t)})),n.on("open-xhr-start",h),a){var g=s&&s.resolve();if(!c&&!s){var m=1,v=document.createTextNode(m);new a(b).observe(v,{characterData:!0})}}else r.on("fn-end",(function(e){e[0]&&e[0].type===u||b()}));function b(){for(var e=0;e<l.length;e++)h(0,l[e]);l.length&&(l=[])}function y(e,t){return t}return n}var Y="fetch-",J=Y+"body-",X=["arrayBuffer","blob","json","text","formData"],Q=p.gm.Request,ee=p.gm.Response,te="prototype";const re={};function ne(e){const t=function(e){return(e||B.ee).get("fetch")}(e);if(!(Q&&ee&&p.gm.fetch))return t;if(re[t.debugId]++)return t;function r(e,r,n){var i=e[r];"function"==typeof i&&(e[r]=function(){var e,r=[...arguments],o={};t.emit(n+"before-start",[r],o),o[B.P]&&o[B.P].dt&&(e=o[B.P].dt);var a=i.apply(this,r);return t.emit(n+"start",[r,e],a),a.then((function(e){return t.emit(n+"end",[null,e],a),e}),(function(e){throw t.emit(n+"end",[e],a),e}))})}return re[t.debugId]=1,X.forEach((e=>{r(Q[te],e,J),r(ee[te],e,J)})),r(p.gm,"fetch",Y),t.on(Y+"end",(function(e,r){var n=this;if(r){var i=r.headers.get("content-length");null!==i&&(n.rxSize=i),t.emit(Y+"done",[null,r],n)}else t.emit(Y+"done",[e],n)})),t}var ie=i(7485),oe=i(5603);class ae{constructor(e){this.agentIdentifier=e}generateTracePayload(e){if(!this.shouldGenerateTrace(e))return null;var t=(0,oe.o)(this.agentIdentifier);if(!t)return null;var n=(t.accountID||"").toString()||null,i=(t.agentID||"").toString()||null,o=(t.trustKey||"").toString()||null;if(!n||!i)return null;var a=(0,r.ZF)(),s=(0,r.el)(),c=Date.now(),u={spanId:a,traceId:s,timestamp:c};return(e.sameOrigin||this.isAllowedOrigin(e)&&this.useTraceContextHeadersForCors())&&(u.traceContextParentHeader=this.generateTraceContextParentHeader(a,s),u.traceContextStateHeader=this.generateTraceContextStateHeader(a,c,n,i,o)),(e.sameOrigin&&!this.excludeNewrelicHeader()||!e.sameOrigin&&this.isAllowedOrigin(e)&&this.useNewrelicHeaderForCors())&&(u.newrelicHeader=this.generateTraceHeader(a,s,c,n,i,o)),u}generateTraceContextParentHeader(e,t){return"00-"+t+"-"+e+"-01"}generateTraceContextStateHeader(e,t,r,n,i){return i+"@nr=0-1-"+r+"-"+n+"-"+e+"----"+t}generateTraceHeader(e,t,r,n,i,o){if(!("function"==typeof p.gm?.btoa))return null;var a={v:[0,1],d:{ty:"Browser",ac:n,ap:i,id:e,tr:t,ti:r}};return o&&n!==o&&(a.d.tk=o),btoa((0,P.A)(a))}shouldGenerateTrace(e){return this.isDtEnabled()&&this.isAllowedOrigin(e)}isAllowedOrigin(e){var t=!1,r={};if((0,s.gD)(this.agentIdentifier,"distributed_tracing")&&(r=(0,s.D0)(this.agentIdentifier).distributed_tracing),e.sameOrigin)t=!0;else if(r.allowed_origins instanceof Array)for(var n=0;n<r.allowed_origins.length;n++){var i=(0,ie.D)(r.allowed_origins[n]);if(e.hostname===i.hostname&&e.protocol===i.protocol&&e.port===i.port){t=!0;break}}return t}isDtEnabled(){var e=(0,s.gD)(this.agentIdentifier,"distributed_tracing");return!!e&&!!e.enabled}excludeNewrelicHeader(){var e=(0,s.gD)(this.agentIdentifier,"distributed_tracing");return!!e&&!!e.exclude_newrelic_header}useNewrelicHeaderForCors(){var e=(0,s.gD)(this.agentIdentifier,"distributed_tracing");return!!e&&!1!==e.cors_use_newrelic_header}useTraceContextHeadersForCors(){var e=(0,s.gD)(this.agentIdentifier,"distributed_tracing");return!!e&&!!e.cors_use_tracecontext_headers}}var se=i(9300),ce=i(7295),ue=["load","error","abort","timeout"],de=ue.length,le=(0,R.dV)().o.REQ,fe=(0,R.dV)().o.XHR;const he="X-NewRelic-App-Data";class pe extends b{static featureName=se.T;constructor(e,t=!0){super(e,se.T,t),this.dt=new ae(e.agentIdentifier),this.handler=(e,t,r,n)=>(0,x.p)(e,t,r,n,this.ee);try{const e={xmlhttprequest:"xhr",fetch:"fetch",beacon:"beacon"};p.gm?.performance?.getEntriesByType("resource").forEach((t=>{if(t.initiatorType in e&&0!==t.responseStatus){const r={status:t.responseStatus},n={rxSize:t.transferSize,duration:Math.floor(t.duration),cbTime:0};ge(r,t.name),this.handler("xhr",[r,n,t.startTime,t.responseEnd,e[t.initiatorType]],void 0,a.K7.ajax)}}))}catch(e){}ne(this.ee),Z(this.ee),function(e,t,r,n){function i(e){var t=this;t.totalCbs=0,t.called=0,t.cbTime=0,t.end=R,t.ended=!1,t.xhrGuids={},t.lastSize=null,t.loadCaptureCalled=!1,t.params=this.params||{},t.metrics=this.metrics||{},e.addEventListener("load",(function(r){E(t,e)}),(0,A.jT)(!1)),p.lR||e.addEventListener("progress",(function(e){t.lastSize=e.loaded}),(0,A.jT)(!1))}function o(e){this.params={method:e[0]},ge(this,e[1]),this.metrics={}}function s(t,r){e.loader_config.xpid&&this.sameOrigin&&r.setRequestHeader("X-NewRelic-ID",e.loader_config.xpid);var i=n.generateTracePayload(this.parsedOrigin);if(i){var o=!1;i.newrelicHeader&&(r.setRequestHeader("newrelic",i.newrelicHeader),o=!0),i.traceContextParentHeader&&(r.setRequestHeader("traceparent",i.traceContextParentHeader),i.traceContextStateHeader&&r.setRequestHeader("tracestate",i.traceContextStateHeader),o=!0),o&&(this.dt=i)}}function c(e,r){var n=this.metrics,i=e[0],o=this;if(n&&i){var a=G(i);a&&(n.txSize=a)}this.startTime=(0,N.t)(),this.body=i,this.listener=function(e){try{"abort"!==e.type||o.loadCaptureCalled||(o.params.aborted=!0),("load"!==e.type||o.called===o.totalCbs&&(o.onloadCalled||"function"!=typeof r.onload)&&"function"==typeof o.end)&&o.end(r)}catch(e){try{t.emit("internal-error",[e])}catch(e){}}};for(var s=0;s<de;s++)r.addEventListener(ue[s],this.listener,(0,A.jT)(!1))}function u(e,t,r){this.cbTime+=e,t?this.onloadCalled=!0:this.called+=1,this.called!==this.totalCbs||!this.onloadCalled&&"function"==typeof r.onload||"function"!=typeof this.end||this.end(r)}function d(e,t){var r=""+V(e)+!!t;this.xhrGuids&&!this.xhrGuids[r]&&(this.xhrGuids[r]=!0,this.totalCbs+=1)}function l(e,t){var r=""+V(e)+!!t;this.xhrGuids&&this.xhrGuids[r]&&(delete this.xhrGuids[r],this.totalCbs-=1)}function f(){this.endTime=(0,N.t)()}function h(e,r){r instanceof fe&&"load"===e[0]&&t.emit("xhr-load-added",[e[1],e[2]],r)}function g(e,r){r instanceof fe&&"load"===e[0]&&t.emit("xhr-load-removed",[e[1],e[2]],r)}function m(e,t,r){t instanceof fe&&("onload"===r&&(this.onload=!0),("load"===(e[0]&&e[0].type)||this.onload)&&(this.xhrCbStart=(0,N.t)()))}function v(e,r){this.xhrCbStart&&t.emit("xhr-cb-time",[(0,N.t)()-this.xhrCbStart,this.onload,r],r)}function b(e){var t,r=e[1]||{};if("string"==typeof e[0]?0===(t=e[0]).length&&p.RI&&(t=""+p.gm.location.href):e[0]&&e[0].url?t=e[0].url:p.gm?.URL&&e[0]&&e[0]instanceof URL?t=e[0].href:"function"==typeof e[0].toString&&(t=e[0].toString()),"string"==typeof t&&0!==t.length){t&&(this.parsedOrigin=(0,ie.D)(t),this.sameOrigin=this.parsedOrigin.sameOrigin);var i=n.generateTracePayload(this.parsedOrigin);if(i&&(i.newrelicHeader||i.traceContextParentHeader))if(e[0]&&e[0].headers)s(e[0].headers,i)&&(this.dt=i);else{var o={};for(var a in r)o[a]=r[a];o.headers=new Headers(r.headers||{}),s(o.headers,i)&&(this.dt=i),e.length>1?e[1]=o:e.push(o)}}function s(e,t){var r=!1;return t.newrelicHeader&&(e.set("newrelic",t.newrelicHeader),r=!0),t.traceContextParentHeader&&(e.set("traceparent",t.traceContextParentHeader),t.traceContextStateHeader&&e.set("tracestate",t.traceContextStateHeader),r=!0),r}}function y(e,t){this.params={},this.metrics={},this.startTime=(0,N.t)(),this.dt=t,e.length>=1&&(this.target=e[0]),e.length>=2&&(this.opts=e[1]);var r,n=this.opts||{},i=this.target;"string"==typeof i?r=i:"object"==typeof i&&i instanceof le?r=i.url:p.gm?.URL&&"object"==typeof i&&i instanceof URL&&(r=i.href),ge(this,r);var o=(""+(i&&i instanceof le&&i.method||n.method||"GET")).toUpperCase();this.params.method=o,this.body=n.body,this.txSize=G(n.body)||0}function w(e,t){if(this.endTime=(0,N.t)(),this.params||(this.params={}),(0,ce.iW)(this.params))return;let n;this.params.status=t?t.status:0,"string"==typeof this.rxSize&&this.rxSize.length>0&&(n=+this.rxSize);const i={txSize:this.txSize,rxSize:n,duration:(0,N.t)()-this.startTime};r("xhr",[this.params,i,this.startTime,this.endTime,"fetch"],this,a.K7.ajax)}function R(e){const t=this.params,n=this.metrics;if(!this.ended){this.ended=!0;for(let t=0;t<de;t++)e.removeEventListener(ue[t],this.listener,!1);t.aborted||(0,ce.iW)(t)||(n.duration=(0,N.t)()-this.startTime,this.loadCaptureCalled||4!==e.readyState?null==t.status&&(t.status=0):E(this,e),n.cbTime=this.cbTime,r("xhr",[t,n,this.startTime,this.endTime,"xhr"],this,a.K7.ajax))}}function E(e,r){e.params.status=r.status;var n=function(e,t){var r=e.responseType;return"json"===r&&null!==t?t:"arraybuffer"===r||"blob"===r||"json"===r?G(e.response):"text"===r||""===r||void 0===r?G(e.responseText):void 0}(r,e.lastSize);if(n&&(e.metrics.rxSize=n),e.sameOrigin&&r.getAllResponseHeaders().indexOf(he)>=0){var i=r.getResponseHeader(he);i&&((0,x.p)(_.rs,["Ajax/CrossApplicationTracing/Header/Seen"],void 0,a.K7.metrics,t),e.params.cat=i.split(", ").pop())}e.loadCaptureCalled=!0}t.on("new-xhr",i),t.on("open-xhr-start",o),t.on("open-xhr-end",s),t.on("send-xhr-start",c),t.on("xhr-cb-time",u),t.on("xhr-load-added",d),t.on("xhr-load-removed",l),t.on("xhr-resolved",f),t.on("addEventListener-end",h),t.on("removeEventListener-end",g),t.on("fn-end",v),t.on("fetch-before-start",b),t.on("fetch-start",y),t.on("fn-start",m),t.on("fetch-done",w)}(e,this.ee,this.handler,this.dt),this.importAggregator(e)}}function ge(e,t){var r=(0,ie.D)(t),n=e.params||e;n.hostname=r.hostname,n.port=r.port,n.protocol=r.protocol,n.host=r.hostname+":"+r.port,n.pathname=r.pathname,e.parsedOrigin=r,e.sameOrigin=r.sameOrigin}const me={},ve=["pushState","replaceState"];function be(e){const t=function(e){return(e||B.ee).get("history")}(e);return!p.RI||me[t.debugId]++||(me[t.debugId]=1,(0,W.YM)(t).inPlace(window.history,ve,"-")),t}var ye=i(3738);const{He:we,bD:Re,d3:xe,Kp:Ee,TZ:Ae,Lc:Te,uP:Ne,Rz:Se}=ye;class _e extends b{static featureName=Ae;constructor(e,t=!0){super(e,Ae,t);if(!(0,m.V)(this.agentIdentifier))return void this.deregisterDrain();const r=this.ee;let n;be(r),this.eventsEE=(0,F.u)(r),this.eventsEE.on(Ne,(function(e,t){this.bstStart=(0,N.t)()})),this.eventsEE.on(Te,(function(e,t){(0,x.p)("bst",[e[0],t,this.bstStart,(0,N.t)()],void 0,a.K7.sessionTrace,r)})),r.on(Se+xe,(function(e){this.time=(0,N.t)(),this.startPath=location.pathname+location.hash})),r.on(Se+Ee,(function(e){(0,x.p)("bstHist",[location.pathname+location.hash,this.startPath,this.time],void 0,a.K7.sessionTrace,r)}));try{n=new PerformanceObserver((e=>{const t=e.getEntries();(0,x.p)(we,[t],void 0,a.K7.sessionTrace,r)})),n.observe({type:Re,buffered:!0})}catch(e){}this.importAggregator(e,{resourceObserver:n})}}var Oe=i(2614);class Ie extends b{static featureName=t.TZ;#i;#o;constructor(e,r=!0){let n;super(e,t.TZ,r),this.replayRunning=!1,this.#o=e;try{n=JSON.parse(localStorage.getItem("".concat(Oe.H3,"_").concat(Oe.uh)))}catch(e){}(0,g.SR)(e.agentIdentifier)&&this.ee.on(t.G4.RECORD,(()=>this.#a())),this.#s(n)?(this.#i=n?.sessionReplayMode,this.#c()):this.importAggregator(e),this.ee.on("err",(e=>{this.replayRunning&&(this.errorNoticed=!0,(0,x.p)(t.G4.ERROR_DURING_REPLAY,[e],void 0,this.featureName,this.ee))})),this.ee.on(t.G4.REPLAY_RUNNING,(e=>{this.replayRunning=e}))}#s(e){return e&&(e.sessionReplayMode===Oe.g.FULL||e.sessionReplayMode===Oe.g.ERROR)||(0,g.Aw)(this.agentIdentifier)}#u=!1;async#c(e){if(!this.#u){this.#u=!0;try{const{Recorder:t}=await Promise.all([i.e(478),i.e(249)]).then(i.bind(i,8589));this.recorder??=new t({mode:this.#i,agentIdentifier:this.agentIdentifier,trigger:e,ee:this.ee,agentRef:this.#o}),this.recorder.startRecording(),this.abortHandler=this.recorder.stopRecording}catch(e){}this.importAggregator(this.#o,{recorder:this.recorder,errorNoticed:this.errorNoticed})}}#a(){this.featAggregate?this.featAggregate.mode!==Oe.g.FULL&&this.featAggregate.initializeRecording(Oe.g.FULL,!0):(this.#i=Oe.g.FULL,this.#c(t.Qb.API),this.recorder&&this.recorder.parent.mode!==Oe.g.FULL&&(this.recorder.parent.mode=Oe.g.FULL,this.recorder.stopRecording(),this.recorder.startRecording(),this.abortHandler=this.recorder.stopRecording))}}var Pe=i(3962);class je extends b{static featureName=Pe.TZ;constructor(e,t=!0){if(super(e,Pe.TZ,t),!p.RI||!(0,R.dV)().o.MO)return;const r=be(this.ee);Pe.tC.forEach((e=>{(0,A.sp)(e,(e=>{a(e)}),!0)}));const n=()=>(0,x.p)("newURL",[(0,N.t)(),""+window.location],void 0,this.featureName,this.ee);r.on("pushState-end",n),r.on("replaceState-end",n);try{this.removeOnAbort=new AbortController}catch(e){}(0,A.sp)("popstate",(e=>(0,x.p)("newURL",[e.timeStamp,""+window.location],void 0,this.featureName,this.ee)),!0,this.removeOnAbort?.signal);let i=!1;const o=new((0,R.dV)().o.MO)(((e,t)=>{i||(i=!0,requestAnimationFrame((()=>{(0,x.p)("newDom",[(0,N.t)()],void 0,this.featureName,this.ee),i=!1})))})),a=(0,v.s)((e=>{(0,x.p)("newUIEvent",[e],void 0,this.featureName,this.ee),o.observe(document.body,{attributes:!0,childList:!0,subtree:!0,characterData:!0})}),100,{leading:!0});this.abortHandler=function(){this.removeOnAbort?.abort(),o.disconnect(),this.abortHandler=void 0},this.importAggregator(e,{domObserver:o})}}var Ce=i(7378);const ke={},Le=["appendChild","insertBefore","replaceChild"];function He(e){const t=function(e){return(e||B.ee).get("jsonp")}(e);if(!p.RI||ke[t.debugId])return t;ke[t.debugId]=!0;var r=(0,W.YM)(t),n=/[?&](?:callback|cb)=([^&#]+)/,i=/(.*)\.([^.]+)/,o=/^(\w+)(\.|$)(.*)$/;function a(e,t){if(!e)return t;const r=e.match(o),n=r[1];return a(r[3],t[n])}return r.inPlace(Node.prototype,Le,"dom-"),t.on("dom-start",(function(e){!function(e){if(!e||"string"!=typeof e.nodeName||"script"!==e.nodeName.toLowerCase())return;if("function"!=typeof e.addEventListener)return;var o=(s=e.src,c=s.match(n),c?c[1]:null);var s,c;if(!o)return;var u=function(e){var t=e.match(i);if(t&&t.length>=3)return{key:t[2],parent:a(t[1],window)};return{key:e,parent:window}}(o);if("function"!=typeof u.parent[u.key])return;var d={};function l(){t.emit("jsonp-end",[],d),e.removeEventListener("load",l,(0,A.jT)(!1)),e.removeEventListener("error",f,(0,A.jT)(!1))}function f(){t.emit("jsonp-error",[],d),t.emit("jsonp-end",[],d),e.removeEventListener("load",l,(0,A.jT)(!1)),e.removeEventListener("error",f,(0,A.jT)(!1))}r.inPlace(u.parent,[u.key],"cb-",d),e.addEventListener("load",l,(0,A.jT)(!1)),e.addEventListener("error",f,(0,A.jT)(!1)),t.emit("new-jsonp",[e.src],d)}(e[0])})),t}const Me={};function De(e){const t=function(e){return(e||B.ee).get("promise")}(e);if(Me[t.debugId])return t;Me[t.debugId]=!0;var r=t.context,n=(0,W.YM)(t),i=p.gm.Promise;return i&&function(){function e(r){var o=t.context(),a=n(r,"executor-",o,null,!1);const s=Reflect.construct(i,[a],e);return t.context(s).getCtx=function(){return o},s}p.gm.Promise=e,Object.defineProperty(e,"name",{value:"Promise"}),e.toString=function(){return i.toString()},Object.setPrototypeOf(e,i),["all","race"].forEach((function(r){const n=i[r];e[r]=function(e){let i=!1;[...e||[]].forEach((e=>{this.resolve(e).then(a("all"===r),a(!1))}));const o=n.apply(this,arguments);return o;function a(e){return function(){t.emit("propagate",[null,!i],o,!1,!1),i=i||!e}}}})),["resolve","reject"].forEach((function(r){const n=i[r];e[r]=function(e){const r=n.apply(this,arguments);return e!==r&&t.emit("propagate",[e,!0],r,!1,!1),r}})),e.prototype=i.prototype;const o=i.prototype.then;i.prototype.then=function(...e){var i=this,a=r(i);a.promise=i,e[0]=n(e[0],"cb-",a,null,!1),e[1]=n(e[1],"cb-",a,null,!1);const s=o.apply(this,e);return a.nextPromise=s,t.emit("propagate",[i,!0],s,!1,!1),s},i.prototype.then[W.Jt]=o,t.on("executor-start",(function(e){e[0]=n(e[0],"resolve-",this,null,!1),e[1]=n(e[1],"resolve-",this,null,!1)})),t.on("executor-err",(function(e,t,r){e[1](r)})),t.on("cb-end",(function(e,r,n){t.emit("propagate",[n,!0],this.nextPromise,!1,!1)})),t.on("propagate",(function(e,r,n){this.getCtx&&!r||(this.getCtx=function(){if(e instanceof Promise)var r=t.context(e);return r&&r.getCtx?r.getCtx():this})}))}(),t}const Ke={},Ue="setTimeout",Ve="setInterval",Ge="clearTimeout",Fe="-start",Be=[Ue,"setImmediate",Ve,Ge,"clearImmediate"];function We(e){const t=function(e){return(e||B.ee).get("timer")}(e);if(Ke[t.debugId]++)return t;Ke[t.debugId]=1;var r=(0,W.YM)(t);return r.inPlace(p.gm,Be.slice(0,2),Ue+"-"),r.inPlace(p.gm,Be.slice(2,3),Ve+"-"),r.inPlace(p.gm,Be.slice(3),Ge+"-"),t.on(Ve+Fe,(function(e,t,n){e[0]=r(e[0],"fn-",null,n)})),t.on(Ue+Fe,(function(e,t,n){this.method=n,this.timerDuration=isNaN(e[1])?0:+e[1],e[0]=r(e[0],"fn-",this,n)})),t}const ze={};function qe(e){const t=function(e){return(e||B.ee).get("mutation")}(e);if(!p.RI||ze[t.debugId])return t;ze[t.debugId]=!0;var r=(0,W.YM)(t),n=p.gm.MutationObserver;return n&&(window.MutationObserver=function(e){return this instanceof n?new n(r(e,"fn-")):n.apply(this,arguments)},MutationObserver.prototype=n.prototype),t}const{TZ:Ze,d3:Ye,Kp:Je,$p:Xe,wW:$e,e5:Qe,tH:et,uP:tt,rw:rt,Lc:nt}=Ce;class it extends b{static featureName=Ze;constructor(e,t=!0){if(super(e,Ze,t),!p.RI)return;try{this.removeOnAbort=new AbortController}catch(e){}let r,n=0;const i=this.ee.get("tracer"),o=He(this.ee),a=De(this.ee),s=We(this.ee),c=Z(this.ee),u=this.ee.get("events"),d=ne(this.ee),l=be(this.ee),f=qe(this.ee);function h(e,t){l.emit("newURL",[""+window.location,t])}function g(){n++,r=window.location.hash,this[tt]=(0,N.t)()}function m(){n--,window.location.hash!==r&&h(0,!0);var e=(0,N.t)();this[Qe]=~~this[Qe]+e-this[tt],this[nt]=e}function v(e,t){e.on(t,(function(){this[t]=(0,N.t)()}))}this.ee.on(tt,g),a.on(rt,g),o.on(rt,g),this.ee.on(nt,m),a.on($e,m),o.on($e,m),this.ee.on("fn-err",((...t)=>{t[2]?.__newrelic?.[e.agentIdentifier]||(0,x.p)("function-err",[...t],void 0,this.featureName,this.ee)})),this.ee.buffer([tt,nt,"xhr-resolved"],this.featureName),u.buffer([tt],this.featureName),s.buffer(["setTimeout"+Je,"clearTimeout"+Ye,tt],this.featureName),c.buffer([tt,"new-xhr","send-xhr"+Ye],this.featureName),d.buffer([et+Ye,et+"-done",et+Xe+Ye,et+Xe+Je],this.featureName),l.buffer(["newURL"],this.featureName),f.buffer([tt],this.featureName),a.buffer(["propagate",rt,$e,"executor-err","resolve"+Ye],this.featureName),i.buffer([tt,"no-"+tt],this.featureName),o.buffer(["new-jsonp","cb-start","jsonp-error","jsonp-end"],this.featureName),v(d,et+Ye),v(d,et+"-done"),v(o,"new-jsonp"),v(o,"jsonp-end"),v(o,"cb-start"),l.on("pushState-end",h),l.on("replaceState-end",h),window.addEventListener("hashchange",h,(0,A.jT)(!0,this.removeOnAbort?.signal)),window.addEventListener("load",h,(0,A.jT)(!0,this.removeOnAbort?.signal)),window.addEventListener("popstate",(function(){h(0,n>1)}),(0,A.jT)(!0,this.removeOnAbort?.signal)),this.abortHandler=this.#n,this.importAggregator(e)}#n(){this.removeOnAbort?.abort(),this.abortHandler=void 0}}var ot=i(3333);class at extends b{static featureName=ot.TZ;constructor(e,t=!0){super(e,ot.TZ,t);const r=[e.init.page_action.enabled,e.init.performance.capture_marks,e.init.performance.capture_measures,e.init.user_actions.enabled,e.init.performance.resources.enabled];if(p.RI&&(e.init.user_actions.enabled&&(ot.Zp.forEach((e=>(0,A.sp)(e,(e=>(0,x.p)("ua",[e],void 0,this.featureName,this.ee)),!0))),ot.qN.forEach((e=>{const t=(0,v.s)((e=>{(0,x.p)("ua",[e],void 0,this.featureName,this.ee)}),500,{leading:!0});(0,A.sp)(e,t)}))),e.init.performance.resources.enabled&&p.gm.PerformanceObserver?.supportedEntryTypes.includes("resource"))){new PerformanceObserver((e=>{e.getEntries().forEach((e=>{(0,x.p)("browserPerformance.resource",[e],void 0,this.featureName,this.ee)}))})).observe({type:"resource",buffered:!0})}r.some((e=>e))?this.importAggregator(e):this.deregisterDrain()}}var st=i(993),ct=i(3785),ut=i(9414);class dt extends b{static featureName=st.TZ;constructor(e,t=!0){super(e,st.TZ,t);const r=this.ee;(0,ut.J)(r,p.gm.console,"log",{level:"info"}),(0,ut.J)(r,p.gm.console,"error",{level:"error"}),(0,ut.J)(r,p.gm.console,"warn",{level:"warn"}),(0,ut.J)(r,p.gm.console,"info",{level:"info"}),(0,ut.J)(r,p.gm.console,"debug",{level:"debug"}),(0,ut.J)(r,p.gm.console,"trace",{level:"trace"}),this.ee.on("wrap-logger-end",(function([e]){const{level:t,customAttributes:n}=this;(0,ct.R)(r,e,n,t)})),this.importAggregator(e)}}new class extends o{constructor(t){super(),p.gm?(this.features={},(0,R.bQ)(this.agentIdentifier,this),this.desiredFeatures=new Set(t.features||[]),this.desiredFeatures.add(w),this.runSoftNavOverSpa=[...this.desiredFeatures].some((e=>e.featureName===a.K7.softNav)),(0,d.j)(this,t,t.loaderType||"agent"),this.run()):(0,e.R)(21)}get config(){return{info:this.info,init:this.init,loader_config:this.loader_config,runtime:this.runtime}}run(){try{const t=u(this.agentIdentifier),r=[...this.desiredFeatures];r.sort(((e,t)=>a.P3[e.featureName]-a.P3[t.featureName])),r.forEach((r=>{if(!t[r.featureName]&&r.featureName!==a.K7.pageViewEvent)return;if(this.runSoftNavOverSpa&&r.featureName===a.K7.spa)return;if(!this.runSoftNavOverSpa&&r.featureName===a.K7.softNav)return;const n=function(e){switch(e){case a.K7.ajax:return[a.K7.jserrors];case a.K7.sessionTrace:return[a.K7.ajax,a.K7.pageViewEvent];case a.K7.sessionReplay:return[a.K7.sessionTrace];case a.K7.pageViewTiming:return[a.K7.pageViewEvent];default:return[]}}(r.featureName).filter((e=>!(e in this.features)));n.length>0&&(0,e.R)(36,{targetFeature:r.featureName,missingDependencies:n}),this.features[r.featureName]=new r(this)}))}catch(t){(0,e.R)(22,t);for(const e in this.features)this.features[e].abortHandler?.();const r=(0,R.Zm)();delete r.initializedAgents[this.agentIdentifier]?.api,delete r.initializedAgents[this.agentIdentifier]?.features,delete this.sharedAggregator;return r.ee.get(this.agentIdentifier).abort(),!1}}}({features:[pe,w,S,_e,Ie,O,M,at,dt,je,it],loaderType:"spa"})})()})();</script> <meta content='width=device-width, initial-scale=1.0, maximum-scale=1.0, user-scalable=no' name='viewport'> <meta content='03F74A8B60154C9A9FBD22440A0F6BB8' name='msvalidate.01'> <meta content='EGK3R_F_3Thqbni0TJnnea-0s0x2qs5e2pWYt4F397Y' name='google-site-verification'> <meta content='2ba55cf44829b06ae2bbfb8d40477867' name='p:domain_verify'> <title>Music Production 101 Course - Berklee Online</title> <meta name="description" content="By the end of the course, you’ll be able to configure a personal production workspace and use software instruments and audio recordings to produce music." /> <meta name="keywords" content="Music Production 101 Course, Berklee College of Music Online, Berklee Online, music production, guitar, bass, drums, performance, theory, keyboard, online music instruction, Berklee method, Private lessons, largest online music school, award-winning online music instruction" /> <meta property="og:image" content="https://assets.online.berklee.edu/catalog-site-heroes/BOL-og-image-min.jpg" /> <meta class="swiftype" name="result_facet" data-type="string" content="Courses" /> <meta class="swiftype" name="result_title" data-type="string" content="Music Production 101" /> <meta class="swiftype" name="result_type" data-type="string" content="12-Week Course" /> <meta class="swiftype" name="result_description" data-type="string" content="By the end of the course, you’ll be able to configure a personal production workspace and use software instruments and audio recordings to produce music." /> <meta name="csrf-param" content="authenticity_token" /> <meta name="csrf-token" content="rO/mUkEzhmwuMMz2osY4UyF4SZL4T3SolzmJUuhlrk5ydBugZJV3MIreNsS35/wMFr0BAiSqhS8XMLpUUTBW0w==" /> <link href='//assets.online.berklee.edu/favicon.ico' rel='shortcut icon' type='image/x-icon'> <link href='//assets.online.berklee.edu/apple-touch-icon-57x57.png' rel='apple-touch-icon' sizes='57x57'> <link href='//assets.online.berklee.edu/apple-touch-icon-60x60.png' rel='apple-touch-icon' sizes='60x60'> <link href='//assets.online.berklee.edu/apple-touch-icon-72x72.png' rel='apple-touch-icon' sizes='72x72'> <link href='//assets.online.berklee.edu/apple-touch-icon-76x76.png' rel='apple-touch-icon' sizes='76x76'> <link href='//assets.online.berklee.edu/apple-touch-icon-114x114.png' rel='apple-touch-icon' sizes='114x114'> <link href='//assets.online.berklee.edu/apple-touch-icon-120x120.png' rel='apple-touch-icon' sizes='120x120'> <link href='//assets.online.berklee.edu/apple-touch-icon-144x144.png' rel='apple-touch-icon' sizes='144x144'> <link href='//assets.online.berklee.edu/apple-touch-icon-152x152.png' rel='apple-touch-icon' sizes='152x152'> <link href='//assets.online.berklee.edu/apple-touch-icon-180x180.png' rel='apple-touch-icon' sizes='180x180'> <link href='//assets.online.berklee.edu/favicon-16x16.png' rel='icon' sizes='16x16' type='image/png'> <link href='//assets.online.berklee.edu/favicon-32x32.png' rel='icon' sizes='32x32' type='image/png'> <link href='//assets.online.berklee.edu/favicon-96x96.png' rel='icon' sizes='96x96' type='image/png'> <link href='//assets.online.berklee.edu/android-chrome-192x192.png' rel='icon' sizes='192x192' type='image/png'> <meta content='//assets.online.berklee.edu/smalltile.png' name='msapplication-square70x70logo'> <meta content='//assets.online.berklee.edu/mediumtile.png' name='msapplication-square150x150logo'> <meta content='//assets.online.berklee.edu/largetile.png' name='msapplication-square310x310logo'> <link href='https://online.berklee.edu/courses/music-production-101' rel='canonical'> <link rel="stylesheet" media="all" href="https://assets.online.berklee.edu/catalog/assets/4d4a3c43620add7f52f97c02254d2d4f604b5c53/packs/css/application-f9289207.css" /> <link rel="stylesheet" media="all" href="//fonts.googleapis.com/css2?family=Nunito+Sans:ital,wght@0,300;0,400;0,600;0,700;0,800;1,300;1,400;1,600;1,700;1,800&family=Carrois+Gothic&display=swap" /> <meta content='summary' name='twitter:card'> <meta content='@BerkleeOnline' name='twitter:site'> <meta content='https://online.berklee.edu/courses/music-production-101' property='og:url'> <meta content='product' property='og:type'> <meta content='Music Production 101' property='og:title'> <meta content='By the end of the course, you’ll be able to configure a personal production workspace and use software instruments and audio recordings to produce music.' property='og:description'> <meta content='20508699923' property='fb:profile_id'> <meta content='693976273963843' property='fb:app_id'> <meta content='https://assets.online.berklee.edu/open-graph/berklee-online-general-music-studies.jpg' property='og:image'> <style> .sub-nav.admissions .sub-nav-group:nth-child(5) li:nth-child(5) { display: none; } /* used for the coming soon courses' projected enrollment date */ .coming-soon-course-callout { background: #FFF; display: flex; flex-direction: row; align-items: center; margin: 0 0 15px 0; padding: 20px; } .coming-soon-course-callout h4{ padding: 0; margin: 3px 0 0 0; } .coming-soon-course-callout svg { color: #ee243c; font-size: 2.3rem; margin-right: 10px; } .nav-menu li:nth-child(2) .sub-nav-group:nth-child(2) li:nth-child(5) a:after { display: none; } /* tightens up the line-height on the leadership team titles */ .leaders .leadership-team-content h2 span { line-height: 1.5; } .degree-program .degree-curriculum ul li { text-align: left; } .is-known-lead .unknown.h2, .is-known-lead h2.unknown, .logged_in .unknown.h2, .logged_in h2.unknown, .logged_in h2.application-closed, .logged_out.is-known-lead h2.unknown, .logged_out.is-known-lead h2.application-closed, .logged_out .known.h2, .logged_out h2.known, .application_closed.logged_out:not(.is-known-lead) h2.unknown, .application_closed.logged_out:not(.is-known-lead) h2.known, .logged_out:not(.application_closed) h2.application-closed { display: none; } .nav-menu li:nth-child(2) .sub-nav-group:nth-child(1) li:nth-child(13) a:after { content: "New!"; color: #ee243c; font-weight: 800; padding-left: 7px; } .bo-banner-footer, .bo-banner-top { background: #ee243c !important; border: none; } .bo-banner-footer a, .bo-banner-top a { color: white; } .bo-banner-footer .fa-arrow-circle-right, .bo-banner-top .fa-arrow-circle-right { color: white; }.bo-banner-footer a:hover, .bo-banner-top a:hover { color: white; text-decoration: underline; } .key-course-level .key-course-text.graduate-level h4 {display: block;}.key-course-level .key-course-text.graduate-level h4 span {padding-left: 38px;} @media(max-width:550px) { #gdpr-notification {bottom: 73px;}}@media (max-width: 768px) { .degree-info #main-content {padding-top: 0;}}@media(max-width: 550px) {.deals .featured__hero-bg {width: auto;} .carousel-control-prev {left: auto;right: 50px;}}@media (max-width: 768px) {.deals .featured__control {top: 88%; background: #000; height: 40px;border-radius: 20px;width: 40px;border: 1px solid #FFF;}}@media(max-width: 768px) {.bio-block__image-wrap {min-height: auto;}} /* header .nav-menu .nav-item:nth-child(4) .sub-nav .drop-info, header .nav-menu .nav-item:nth-child(3) .sub-nav .drop-info { border: none; padding: 0; } */ .sub-nav .absolute-drop-footer { border-top: none; bottom: 0; left: 0; right: 0; margin-left: auto; margin-right: auto; padding-left: 0; position: absolute; text-align: center; width: 100%; background: #eff1f3; padding: 12px 0; } .product .content-head.overview-video { background-size: auto; background-position-x: right; }@media (min-width: 1900px) { .degrees .content-head .col-xl-5 { flex: 0 0 auto; width: 52%; }} </style> </head> <body class='undergraduate-course product courses catalog_site logged_out '> <noscript> <iframe height='0' src='https://www.googletagmanager.com/ns.html?id=GTM-WD67JCX' style='display:none;visibility:hidden' width='0'></iframe> </noscript> <div class='full-width-overlay'></div> <div class='animate__animated animate__slideInRight animate__faster' id='details_show'> <a class='close-detail-overlay' href='#' rel='nofollow'> Close <i class='far fa-times-circle'></i> </a> <div class='spinner-overlay text-center'> <i class='far fa-circle-notch fa-spin'></i> <p>Getting Details...</p> </div> <div class='details_show_content'></div> </div> <div id='content-container'> <script> //document.body.classList.add("special-notice"); </script> <div id="special-notice" style="display:none;"> <div class="container-fluid"> <div class="col-12 text-center"> <a href="/early-enrollment" id="cta-special-notice-live" target="_blank"> <h5> LAST DAY: Save up to $200 on eligible courses when you enroll by 5:00 PM ET! <span class="btn-live-qa-cta">View Eligible Courses & Certificates</span> </h5> </a> <!--<a href="/music-degrees" id="cta-special-notice-live" target="_blank"> <h5> Degree Applicants: Apply in as little as 15 minutes by March 10 for April 7 semester start. Get a decision within 1 week. <span class="btn-live-qa-cta">View All Degree Programs</span> </h5> </a> --> </div> </div> </div> <style> .home_page .hero-slant h4 a, .hero-slant h4 a:visited { color: #222; } body.scroll .mast-wrap { top: -1px; } .summer_areas .program-feature h1 { font-size: 3rem; line-height: 1.25; max-width: 100%; } .quote-slot .carousel-control-next, .quote-slot .carousel-control-prev { z-index: 100; } @media(max-width: 768px) { .summer_areas .program-feature h1 { font-size: 2.5rem; line-height: 1.15; } } #special-notice { padding-top: 8px; padding-bottom: 8px; } #special-notice a h5 { margin: 0; font-weight: 700; } #special-notice .container-fluid { padding-left: 0 !important; padding-right: 0 !important; max-width: 100%; transition: background ease 0.2s; } #special-notice:hover, #special-notice:focus { background: #E7E7E7; } #special-notice a:hover { text-decoration: none; box-shadow: none; } a#cta-special-notice-live:focus { text-decoration: none; } #special-notice .title-bar__live-indicator { border-right: 1px solid #222; font-weight: 700; margin-right: 20px; padding-left: 20px; padding-right: 20px; position: relative; } #special-notice .title-bar__live-indicator:after { -webkit-animation-delay: 1s; -webkit-animation: ripple 1.2s ease-out infinite; animation-delay: 1s; animation: ripple 1.2s ease-out infinite; background: rgba(255, 255, 255, 0.5); border-radius: 100%; content: ''; height: 16px; left: 43px; mix-blend-mode: screen; opacity: 0; position: absolute; top: 1px; transform-origin: 50% 50%; width: 16px; } #special-notice .btn-live-qa-cta { background: none; color: #222; border-radius: 2px; font-size: 1.2rem; font-weight: 400; display: inline-block; margin-top: -1.5px; margin-left: 10px; padding: 1px 10px; text-decoration: underline; font-weight: 900; } @media (max-width: 991px) { #special-notice a h5 span { display: none; } #special-notice .btn-live-qa-cta { border-radius: 2px; margin-top: 4px; padding: 0 10px; } } @media (max-width: 768px) { .details-container ul { display: none; } } .summer_areas #special-notice { display: none !important; } .curriculum-toggle li span strong { margin: 3px 0 0 5px; font-weight: 400; } .sr-only { position: absolute; left: -10000px; top: auto; width: 1px; height: 1px; overflow: hidden; } .side-nav-main { position: relative; } /* uncomment when a red bar is desired */ #special-notice { background: #ee243c; border-bottom: 1px solid #c00f24; padding-bottom: 6px; } #special-notice:hover { background: #c00f24; } #special-notice a h5 { color: #FFF; } #special-notice .title-bar__live-indicator { border-right: 1px solid #FFF; } @media(max-width: 768px) { #special-notice .title-bar__live-indicator { display: none; } } #special-notice .btn-live-qa-cta { color: #FFF } /* end red bar styles */ </style> <header aria-label='global-header' class='global-header d-none d-lg-block' data-swiftype-index='false'> <div class='row align-items-center'> <div class='col global-header__left'> <div class='dropdown'> <a class="dropdown-toggle global-header__parent-link first" id="campus-switcher" data-bs-toggle="dropdown" rel="nofollow" href="#">Campuses and Schools <i class='fas fa-angle-down arrow'></i> </a><div aria-labelledby='campus-switcher' class='campuses dropdown-menu'> <a class='dropdown-item' href='https://www.berklee.edu'>Berklee.edu Main Site</a> <a class='dropdown-item' href='https://college.berklee.edu'>Berklee College of Music</a> <a class='dropdown-item' href='https://bostonconservatory.berklee.edu'>Boston Conservatory at Berklee</a> <a class='dropdown-item' href='https://valencia.berklee.edu/'>Berklee Valencia</a> <a class='dropdown-item' href='https://nyc.berklee.edu'>Berklee NYC</a> <a class='dropdown-item' href='https://online.berklee.edu'>Berklee Online</a> <a class='dropdown-item' href='https://summer.berklee.edu'>Summer Programs</a> </div> </div> </div> <div class='col global-header__right'> <a class='global-header__parent-link' href='/sample-a-lesson'>Sample a Lesson</a> <div class='dropdown'> <a class="dropdown-toggle global-header__parent-link" id="contact-us" data-bs-toggle="dropdown" rel="nofollow" href="#"><i class='fas fa-phone'></i> Contact Us <i class='fas fa-angle-down arrow'></i> </a><div aria-labelledby='contact-us' class='dropdown-menu drop-contact'> <h3>1-866-BERKLEE</h3> <h5>Int'l +1-617-747-2146</h5> <h5> <a class='' href='mailto:advisors@online.berklee.edu'> advisors@online.berklee.edu </a> </h5> </div> </div> <a class='global-header__parent-link apply' href='/apply' target='_blank'> <i class='fas fa-pencil-alt'></i> Apply </a> <a class='fc-mini-cart global-header__parent-link' data-fc-id='minicart' href='https://checkout.online.berklee.edu/cart?cart=view' style='display: none;'> <i class='far fa-shopping-cart cart'></i> <span class='mini-cart-quantity' data-fc-id='minicart-quantity'>0</span> </a> </div> </div> </header> <div class='mast-wrap' data-swiftype-index='false'> <a class='sr-only sr-only-focusable' data-swiftype-index='false' href='#main-content'>Skip to main content</a> <script> window.foxy_store_hostname = "checkout.online.berklee.edu"; </script> <header id='masthead'> <nav class='navbar navbar-toggleable-lg navbar-light navbar-expand-xl' id='mast-simple'> <button aria-controls='bo-collapse-nav' aria-expanded='false' aria-label='Toggle navigation' class='navbar-toggler navbar-toggler-left' type='button'> <span class='navbar-toggler-icon'></span> </button> <a class='navbar-brand' href='/'> <img alt='Berklee Online logo' class='logo-color img-logo' height='47' loading='eager' src='//assets.online.berklee.edu/berklee-online-logo.svg?v=3' width='220'> </a> <!-- / standard sitewide nav --> <nav class='collapse navbar-collapse' id='navbarSupportedContent' role='navigation'> <ul class='nav-menu navbar-nav center'> <li class='nav-item'> <a href='#' onclick='return false;'> All Programs </a> <div class='sub-nav all-programs'> <ul class='sub-nav-group two-col no-margin'> <li class='header'> <h4> Degrees, Certificates, and Courses by Interest </h4> </li> <li> <a href='/music-production' itemprop='url'>Music Production</a> </li> <li> <a href='/music-business' itemprop='url'>Music Business</a> </li> <li> <a href='/music-theory-harmony-and-ear-training'>Music Theory, Harmony, and Ear Training</a> </li> <li> <a href='/guitar' itemprop='url'>Guitar</a> </li> <li> <a href='/songwriting' itemprop='url'>Songwriting</a> </li> <li> <a href='/music-for-film-tv-and-games' itemprop='url'>Music for Film, TV, and Games</a> </li> <li> <a href='/arranging'>Arranging</a> </li> <li> <a href='/music-history-and-liberal-arts'>Music History and Liberal Arts</a> </li> <li> <a href='/piano-and-keyboard'>Piano and Keyboard</a> </li> <li> <a href='/voice'>Voice</a> </li> <li> <a href='/improvisation'>Improvisation</a> </li> <li> <a href='/dance-music-and-theater'> Dance, Music, and Theater </a> </li> <li> <a href='/orchestration'>Orchestration</a> </li> <li> <a href='/drums'>Drums</a> </li> <li> <a href='/bass'>Bass</a> </li> <li> <a href='/music-therapy-health-and-neuroscience'>Music Therapy, Health, and Neuroscience</a> </li> <li class='footer'> <a href='/about/compare-online-music-education-offerings'> Compare Our Offerings </a> <a href='/sample-a-lesson'> Sample a Lesson / How It Works </a> </li> </ul> <ul class='sub-nav-group'> <li> <div class='drop-info promo'> <span class="new new-corner">New!</span> <a href="https://online.berklee.edu/masterclasses/playing-with-pink-making-it-as-a-touring-musician" style="padding: 0; margin: 0;"> <img src="//assets.online.berklee.edu/catalog-site-heroes/live-workshops/lw-card--playing-with-pink-making-it-as-a-touring-musician-final.jpg" width="353"> </a> <div class="drop-info-content" style="position: relative;"> <!--<h3 style="font-weight:800; color: #FFF; position: absolute; left: 0; right: 0; top: -68px; width: 100%; padding-left: 20px; background: linear-gradient(0deg, rgba(0,0,0,1) -11%, rgba(12,45,72,0) 100%);padding-top: 3rem; padding-bottom: .5rem; z-index: 100;">Manage Your Stress with Music</h3>--> <strong style="text-transform: uppercase; font-size: .95rem; letter-spacing: .5px; font-weight: 900;">MASTERCLASS</strong><br/> <p style="margin-top: -3px; line-height: 1.3;"><strong> Playing with P!NK: Making it as a Touring Musician</strong></p> <p> In this Masterclass, you’ll dive into the suitcase of one of P!NK’s seasoned touring musicians and learn the skills needed to find success. </p> <p><strong style="padding-top: 1rem;">Thurs., June 5, only $99</strong></p> <a class="drop-info-cta" href="https://online.berklee.edu/masterclasses/playing-with-pink-making-it-as-a-touring-musician">Learn More & Enroll</a> </div> </div> </li> </ul> </div> </li> <li class='nav-item'> <a href='#' onclick='return false;'> Degrees </a> <div class='sub-nav absolute-footer'> <ul class='sub-nav-group'> <li> <h4> Undergraduate Degrees </h4> </li> <li><a href="/music-degrees/undergraduate/overview">Overview</a></li><li><a href="/music-degrees/undergraduate/music-production">Music Production</a></li><li><a href="/music-degrees/undergraduate/guitar-performance">Guitar Performance</a></li><li><a href="/music-degrees/undergraduate/music-business">Music Business</a></li><li><a href="/music-degrees/undergraduate/songwriting">Songwriting</a></li><li><a href="/music-degrees/undergraduate/songwriting-and-producing-music">Songwriting and Producing Music</a></li><li><a href="/music-degrees/undergraduate/electronic-music-production-and-sound-design">Electronic Music Production and Sound Design</a></li><li><a href="/music-degrees/undergraduate/music-composition-for-film-tv-and-games">Music Composition for Film, TV, and Games</a></li><li><a href="/music-degrees/undergraduate/piano-performance">Piano Performance</a></li><li><a href="/music-degrees/undergraduate/interdisciplinary-music-studies-create-your-own-major">Interdisciplinary Music Studies (Create Your Own Major)</a></li><li><a href="/music-degrees/undergraduate/voice-performance">Voice Performance</a></li><li><a href="/music-degrees/undergraduate/music-composition">Music Composition</a></li><li><a href="/music-degrees/undergraduate/undeclared-option">Undeclared Option</a></li> </ul> <ul class='sub-nav-group'> <li> <h4> Graduate Degrees </h4> </li> <li><a href="/music-degrees/graduate/overview">Overview</a></li><li><a href="/music-degrees/graduate/music-production">Music Production</a></li><li><a href="/music-degrees/graduate/music-business">Music Business</a></li><li><a href="/music-degrees/graduate/songwriting">Songwriting</a></li><li><a href="/music-degrees/graduate/film-scoring">Film Scoring</a></li><li><a href="/music-degrees/graduate/interdisciplinary-music-studies">Interdisciplinary Music Studies</a></li> </ul> <ul class='sub-nav-group'> <li> <h4> <span class='new' style='font-weight:800; margin-top: -17px;'>New!</span> Undergraduate Minors </h4> </li> <li><a href="/minors/overview">Overview</a></li><li><a href="/minors/film-and-media-scoring">Film and Media Scoring</a></li><li><a href="/minors/music-industry-entrepreneurship">Music Industry Entrepreneurship</a></li><li><a href="/minors/music-production-and-recording">Music Production and Recording</a></li> </ul> <div class='absolute-drop-footer'> <span><a href="/apply" style="margin-left: 0;color: #ee243c; padding: 0; border: 0; text-decoration: underline; font-weight: 800;" target="_blank">Apply</a> by May 5 for June 30 semester start, and get a decision within 1 week</span><br><span style="font-weight:800;">$75 application fee waived • Apply in as little time as 15 minutes</span></span> </div> </div> </li> <li class='nav-item'> <a href='#' onclick='return false;'> Certificates </a> <div class='sub-nav'> <ul class='sub-nav-group'> <li> <div class='drop-info'> <h3>No application required</h3> <h5>to enroll in a certificate.</h5> <hr role="separator"> <div class="cert-course-dates" style="display: flex;"> <em> <svg style="padding-top: 6px; padding-right: 7px;" class="svg-inline--fa fa-clock" data-prefix="far" data-icon="clock" role="img" xmlns="http://www.w3.org/2000/svg" viewBox="0 0 512 512" data-fa-i2svg=""><path fill="currentColor" d="M464 256A208 208 0 1 1 48 256a208 208 0 1 1 416 0zM0 256a256 256 0 1 0 512 0A256 256 0 1 0 0 256zM232 120V256c0 8 4 15.5 10.7 20l96 64c11 7.4 25.9 4.4 33.3-6.7s4.4-25.9-6.7-33.3L280 243.2V120c0-13.3-10.7-24-24-24s-24 10.7-24 24z"></path></svg> </em> <a href="/certificates" target="blank"> Next semester starts April 7 </a> </div> <!-- <div class="drop-info-ee"> <h3>Non-Degree Students: LAST DAY to save up to $200!</h3> <h4 style="border: none;">Enroll in an eligible certificate by 5:00 PM ET, and save.</h4> <svg style="width: 20px;" class="svg-inline--fa fa-clock" data-prefix="fas" data-icon="clock" role="img" xmlns="http://www.w3.org/2000/svg" viewBox="0 0 512 512" data-fa-i2svg=""> <path fill="currentColor" d="M256 0a256 256 0 1 1 0 512A256 256 0 1 1 256 0zM232 120V256c0 8 4 15.5 10.7 20l96 64c11 7.4 25.9 4.4 33.3-6.7s4.4-25.9-6.7-33.3L280 243.2V120c0-13.3-10.7-24-24-24s-24 10.7-24 24z"></path> </svg> Next semester starts April 7. <div>No application required.</div> <a href="/early-enrollment" target="blank"> View Eligible Courses & Certificates </a> </div> --> <style> .drop-info-ee { background: #ee243c; border: none; color: #FFF; padding: 1.5rem;text-align: center; } .drop-info-ee h5 { font-size: 1rem; letter-spacing: .5px; text-transform: uppercase; } .drop-info-ee a, .drop-info-ee a:visited { background: #FFF;border: 1px solid #FFF; color: #ee243c !important; font-weight: 800; display: block !important; margin: 15px auto !important; padding: 10px 10px !important; text-align: center; border-radius: 2px; width: 85%; } .drop-info-ee a:hover { background: #ee243c !important; border: 1px solid #FFF; color: #fff !important; } </style> </div> </li> </ul> <ul class='sub-nav-group certificates'> <li> <a href='/certificates' itemprop='url'>All Certificates</a> </li> <li> <a href='/about/payment-options'> Certificate Payment Options </a> </li> <li> <a href='/about/undergraduate-certificate-programs-tuition-and-fees'> Undergraduate Certificate Programs Tuition and Fees </a> </li> <li> <a href='/about/graduate-certificate-programs-tuition-and-fees'> Graduate Certificate Programs Tuition and Fees </a> </li> <li> <a href='/about/academic-calendar'> Academic Calendar </a> </li> <li> <a href='/scholarships'> Scholarships </a> </li> </ul> </div> </li> <li class='nav-item'> <a href='#' onclick='return false;'> Courses </a> <div class='sub-nav courses'> <ul class='sub-nav-group'> <li> <div class='drop-info'> <h3>No application required</h3> <h5>to enroll in a certificate.</h5> <hr role="separator"> <div class="cert-course-dates" style="display: flex;"> <em> <svg style="padding-top: 6px; padding-right: 7px;" class="svg-inline--fa fa-clock" data-prefix="far" data-icon="clock" role="img" xmlns="http://www.w3.org/2000/svg" viewBox="0 0 512 512" data-fa-i2svg=""><path fill="currentColor" d="M464 256A208 208 0 1 1 48 256a208 208 0 1 1 416 0zM0 256a256 256 0 1 0 512 0A256 256 0 1 0 0 256zM232 120V256c0 8 4 15.5 10.7 20l96 64c11 7.4 25.9 4.4 33.3-6.7s4.4-25.9-6.7-33.3L280 243.2V120c0-13.3-10.7-24-24-24s-24 10.7-24 24z"></path></svg> </em> <a href="/certificates" target="blank"> Next semester starts April 7 </a> </div> <!-- <div class="drop-info-ee"> <h3>Non-Degree Students: LAST DAY to save up to $200!</h3> <h4 style="border: none;">Enroll in an eligible certificate by 5:00 PM ET, and save.</h4> <svg style="width: 20px;" class="svg-inline--fa fa-clock" data-prefix="fas" data-icon="clock" role="img" xmlns="http://www.w3.org/2000/svg" viewBox="0 0 512 512" data-fa-i2svg=""> <path fill="currentColor" d="M256 0a256 256 0 1 1 0 512A256 256 0 1 1 256 0zM232 120V256c0 8 4 15.5 10.7 20l96 64c11 7.4 25.9 4.4 33.3-6.7s4.4-25.9-6.7-33.3L280 243.2V120c0-13.3-10.7-24-24-24s-24 10.7-24 24z"></path> </svg> Next semester starts April 7. <div>No application required.</div> <a href="/early-enrollment" target="blank"> View Eligible Courses & Certificates </a> </div> --> <style> .drop-info-ee { background: #ee243c; border: none; color: #FFF; padding: 1.5rem;text-align: center; } .drop-info-ee h5 { font-size: 1rem; letter-spacing: .5px; text-transform: uppercase; } .drop-info-ee a, .drop-info-ee a:visited { background: #FFF;border: 1px solid #FFF; color: #ee243c !important; font-weight: 800; display: block !important; margin: 15px auto !important; padding: 10px 10px !important; text-align: center; border-radius: 2px; width: 85%; } .drop-info-ee a:hover { background: #ee243c !important; border: 1px solid #FFF; color: #fff !important; } </style> </div> </li> </ul> <ul class='sub-nav-group courses'> <li> <a href='/courses' itemprop='url'>All Courses</a> </li> <li> <a href='/about/payment-options'> Course Payment Options </a> </li> <li> <a href='/about/undergraduate-and-graduate-individual-credit-and-non-credit-course-tuition-and-fees'> Undergraduate and Graduate Course Tuition and Fees </a> </li> <li> <a href='/about/academic-calendar'> Academic Calendar </a> </li> <li> <a href='/scholarships'> Scholarships </a> </li> <a class='btn-primary-outline course-drop' href='/coming-soon'> New & Updated Courses </a> </ul> </div> </li> <li class='nav-item'> <a href='#' onclick='return false;'> Admissions </a> <div class='sub-nav admissions'> <ul class='sub-nav-group'> <li> <h4> Undergraduate Admissions </h4> <li><a class="undergraduate-degree-admissions-requirements" href="/degrees/about/undergraduate-degree-admissions-requirements"> Admissions Requirements</a></li><li><a class="undergraduate-degree-tuition-financial-aid" href="/degrees/about/undergraduate-degree-tuition-financial-aid"> Tuition & Financial Aid</a></li><li><a class="undergraduate-degree-scholarships" href="/degrees/about/undergraduate-degree-scholarships"> Scholarships</a></li><li><a class="undergraduate-degree-academic-calendar" href="/degrees/about/undergraduate-degree-academic-calendar"> Academic Calendar</a></li><li><a class="undergraduate-degree-program-internships" href="/degrees/about/undergraduate-degree-program-internships"> Program Internships</a></li><li><a class="undergraduate-degree-completion" href="/degrees/about/undergraduate-degree-completion">Degree Completion</a></li><li><a class="undergraduate-prior-learning-credit" href="/degrees/about/undergraduate-prior-learning-credit"> Prior Learning Credit</a></li><li><a class="undergraduate-degree-transfer-credits" href="/degrees/about/undergraduate-degree-transfer-credits"> Transfer Credits</a></li><li><a class="undergraduate-degree-program-policies-and-forms" href="/degrees/about/undergraduate-degree-program-policies-and-forms"> Program Policies and Forms</a></li><li><a class="undergraduate-degree-program-faqs" href="/degrees/about/undergraduate-degree-program-faqs"> Program FAQs</a></li><li><a class="undergraduate-international-students" href="/degrees/about/undergraduate-international-students"> International Students</a></li> </li> </ul> <ul class='sub-nav-group'> <li> <h4>Graduate Admissions</h4> <li><a class="graduate-degree-admissions-requirements" href="/degrees/about/graduate-degree-admissions-requirements"> Admissions Requirements</a></li><li><a class="graduate-degree-tuition-financial-aid" href="/degrees/about/graduate-degree-tuition-financial-aid"> Tuition & Financial Aid</a></li><li><a class="graduate-degree-program-internships" href="/degrees/about/graduate-degree-program-internships"> Program Internships</a></li><li><a class="graduate-degree-academic-calendar" href="/degrees/about/graduate-degree-academic-calendar"> Academic Calendar</a></li><li><a class="graduate-degree-transfer-credits" href="/degrees/about/graduate-degree-transfer-credits"> Transfer Credits</a></li><li><a class="graduate-international-students" href="/degrees/about/graduate-international-students"> International Students</a></li><li><a class="graduate-degree-program-policies-and-forms" href="/degrees/about/graduate-degree-program-policies-and-forms"> Program Policies and Forms</a></li> </li> </ul> <ul class='sub-nav-group'> <li> <h4>Transfer Students</h4> <a href='/degrees/about/undergraduate-degree-transfer-credits'>Undergraduate Transfer Credits</a> <a href='/degrees/about/graduate-degree-transfer-credits'>Graduate Transfer Credits</a> <a href='/degrees/about/undergraduate-prior-learning-credit'>Prior Learning Credit</a> <a href='/transfer-partner-schools'>Transfer Partner Schools</a> </li> </ul> <ul class='sub-nav-group'> <li> <h4>International Students</h4> <a href='/degrees/about/undergraduate-international-students'>Undergraduate Admission Requirements</a> <a href='/degrees/about/graduate-international-students'>Graduate Admission Requirements</a> </li> </ul> <ul class='sub-nav-group military'> <li> <h4>Military Benefits</h4> <div class="info-nav"><a href="/military/getting-started" class="nav-item">New Students – Getting Started</a><a href="/military/va-education-benefits" class="nav-item">VA Education Benefits</a><a href="/military/military-tuition-assistance" class="nav-item">Military Tuition Assistance</a><a href="/military/tuition-and-military-discount" class="nav-item">Tuition and Military Discount</a><a href="/military/forms" class="nav-item">Military Forms</a><a href="/military/military-affairs-faqs" class="nav-item">Military Affairs FAQs</a><a href="/military/outside-scholarships" class="nav-item">Outside Scholarships</a><a href="/military/additional-resources" class="nav-item">Additional Resources</a></div> </li> </ul> <div class='drop-footer-message'> <span><a href="/apply" style="margin-left: 0;color: #ee243c; padding: 0; border: 0; font-weight: 800;" target="_blank">Apply</a> by May 5 for June 30 semester start, and get a decision within 1 week</span><br><span style="font-weight:800;">$75 application fee waived • Apply in as little time as 15 minutes</span></span> </div> </div> </li> <li class='nav-item'> <a href='#' onclick='return false;'> About </a> <div class='sub-nav'> <ul class='sub-nav-group'> <li> <div class="drop-info"> Need Guidance? <br> <h3>1-866-BERKLEE</h3> <h5>Int'l +1-617-747-2146</h5> <h5> <a href="mailto:advisors@online.berklee.edu"> advisors@online.berklee.edu </a> </h5> <hr role="separator"> <div class="cert-course-dates" style="display: flex;"> <em> <svg style="padding-top: 6px; padding-right: 7px;" class="svg-inline--fa fa-clock" data-prefix="far" data-icon="clock" role="img" xmlns="http://www.w3.org/2000/svg" viewBox="0 0 512 512" data-fa-i2svg=""><path fill="currentColor" d="M464 256A208 208 0 1 1 48 256a208 208 0 1 1 416 0zM0 256a256 256 0 1 0 512 0A256 256 0 1 0 0 256zM232 120V256c0 8 4 15.5 10.7 20l96 64c11 7.4 25.9 4.4 33.3-6.7s4.4-25.9-6.7-33.3L280 243.2V120c0-13.3-10.7-24-24-24s-24 10.7-24 24z"></path></svg> <!-- <div class="far fa-clock"></div>--> </em> <a href="/courses" target="blank"> Next semester starts April 7 <!--Last day to enroll in June semester. <br>Enroll by 5 PM ET. <br>Limited seats available.--> </a> </div> </div> </li> </ul> <ul class='sub-nav-group'> <li> <a href='/about/berklee-online' itemprop='url'>About</a> </li> <li class='mission-link'> <a href='/about/mission'>Our Mission</a> </li> <li> <a href='/about/leadership-team'>Leadership Team</a> </li> <li> <a href='/instructors'>Instructor Directory</a> </li> <li> <a href='/about' style='white-space: nowrap;'>School Info, Enrollment, and Policies</a> </li> <li> <a href='/work-with-us'>Work With Us</a> </li> <li class='drop-footer'> <a href='/about/contact-us' itemprop='url'> <i> <div class='far fa-phone'></div> </i> Contact / Help </a> </li> </ul> </div> </li> <li class='nav-item' id='nav-item-resources'> <a href='#' onclick='return false;'> Resources </a> <div class='sub-nav'> <ul class='sub-nav-group'> <li> <div class='drop-info'> <div class='drop-info-content'> <a href='/berklee-onsite' target='_blank'> <img alt='Berklee Onsite 2025' loading='lazy' src='https://assets.online.berklee.edu/Berklee+Onsite/resources-ad-dark.svg' style='width: 425px; margin-left: -50px;'> </a> </div> </div> </li> </ul> <ul class='sub-nav-group'> <li> <a href='/free-music-course-resources'>All Free Music Resources</a> </li> <li> <a href='/careers-in-music/'>Careers in Music</a> </li> <li> <a href='/sample-a-lesson'>Sample a Lesson / How It Works</a> </li> <li> <a href='/handbooks'>Handbooks</a> </li> <li> <a href='/deals'>Student Deals</a> </li> <li> <a href='/mentor-collective'>Mentorship Program</a> </li> <li> <a href='/giftcard'>eGift Cards</a> </li> <li> <a href='/berklee-onsite'> <strong> Annual Event: Berklee Onsite </strong> </a> </li> <li class='drop-footer'> <a href='//online.berklee.edu/takenote' itemprop='url'> <em>Take Note</em> Online Magazine </a> </li> </ul> </div> </li> <li class='nav-item'> <a class='nav-link search' data-backdrop='true' data-bs-target='#search-and-question-panel' data-bs-toggle='modal' href='#' style='padding-right: 0;' title='Click to open search panel'> <i> <div class='far fa-search'></div> </i> </a> </li> </ul> </nav> <div class='navbar-nav right'> <a class='nav-link search mobile-mast-search' data-backdrop='true' data-bs-target='#search-and-question-panel' data-bs-toggle='modal' href='#' style='padding-right: 0;' title='Click to open search panel'> <i> <div class='far fa-search'></div> </i> </a> <a id="login" class="btn-login" rel="nofollow" href="https://online.berklee.edu/register/login?return_url=https://online.berklee.edu/courses/music-production-101">Log In</a> </div> </nav> </header> <div aria-hidden='true' aria-labelledby='searchAndQuestion' class='animate__animated animate__fadeIn animate__faster modal' id='search-and-question-panel' role='dialog' tabindex='-1'> <div class='modal-dialog' role='document'> <div class='modal-content'> <div class='modal-header'> <button aria-label='Close' class='close' data-bs-dismiss='modal' type='button'> <span aria-hidden='true'>× close</span> </button> </div> <div class='modal-body'> <div id='search-container'> <div id='search-form-container'> <form class='st-bo-form'> <i> <div class='far fa-search'></div> </i> <input class='st-default-search-input' id='query' type='search'> <button class='st-button' type='submit'> Go </button> </form> </div> </div> <div class='st-search-loader text-center'> <svg data-ember-extension='1' data-inboxsdk-master-claimed='true' data-inboxsdk-session-id='1531252035918-0.9216384892333274' height='45' stroke='#4C5960' viewbox='0 0 45 45' width='45' xmlns='http://www.w3.org/2000/svg'> <g fill-rule='evenodd' fill='none' stroke-width='2' transform='translate(1 1)'> <circle cx='22' cy='22' r='7.07674' stroke-opacity='0'> <animate attributename='r' begin='1.5s' calcmode='linear' dur='3s' repeatcount='indefinite' values='6;22'></animate> <animate attributename='stroke-opacity' begin='1.5s' calcmode='linear' dur='3s' repeatcount='indefinite' values='1;0'></animate> <animate attributename='stroke-width' begin='1.5s' calcmode='linear' dur='3s' repeatcount='indefinite' values='2;0'></animate> </circle> <circle cx='22' cy='22' r='15.0767' stroke-opacity='0'> <animate attributename='r' begin='3s' calcmode='linear' dur='3s' repeatcount='indefinite' values='6;22'></animate> <animate attributename='stroke-opacity' begin='3s' calcmode='linear' dur='3s' repeatcount='indefinite' values='1;0'></animate> <animate attributename='stroke-width' begin='3s' calcmode='linear' dur='3s' repeatcount='indefinite' values='2;0'></animate> </circle> <circle cx='22' cy='22' r='1.96222'> <animate attributename='r' begin='0s' calcmode='linear' dur='1.5s' repeatcount='indefinite' values='6;1;2;3;4;5;6'></animate> </circle> </g> </svg> <br> <h3>Searching...</h3> </div> <div class='back-to-faqs'> ← <a class='link-back-to-faqs' href='#' onclick='toggle_search_and_faqs(); return false;'> Show FAQs </a> </div> <div class='st-search-container'></div> <div id='question-container'> <div class='questions-inner'> <h3>Or check out these FAQs:</h3> <hr> <div class='question-block'> <div class='question'> What is Berklee Online? </div> <div class='answer'> Berklee Online is the online school of Berklee College of Music, delivering access to Berklee’s acclaimed curriculum from anywhere in the world. We are the world’s largest online music school—30,000+ musicians from more than 140 countries have taken our courses—but classes cap at just 20 students per section. </div> </div> <div class='question-block'> <div class='question'> What does Berklee Online offer? </div> <div class='answer'> We offer award-winning <a href="/courses" itemprop="url">online courses</a>, <a href="/certificates" itemprop="url">multi-course certificate programs</a>, a <a href="/music-degrees" itemprop="url">Bachelor of Arts degree, a Master of Music degree, and a Master of Arts degree</a>. </div> </div> <div class='question-block'> <div class='question'> Who is Berklee Online designed for? </div> <div class='answer'> Our programs provide lifelong learning opportunities to people interested in music and working in the music industry. The courses range from beginner to advanced graduate level. </div> </div> <div class='question-block'> <div class='question'> What kind of subjects are taught? </div> <div class='answer'> Berklee Online offers more than 200 courses in every musical interest area: Everything from instruction on specific instruments (guitar, piano, bass, drums, voice) to music production software (Ableton, Pro Tools, Logic, and more) to larger concepts in music business, songwriting, theory, and composing for film, TV, and games </div> </div> <div class='question-block'> <div class='question'> Do online students receive the benefits of an on-campus Berklee education? </div> <div class='answer'> Absolutely! Just like the students studying on Berklee’s Boston campus, Berklee Online students receive instruction from the same world-renowned faculty, with the added benefit of having music industry professionals from around the world teaching as well. You’ll also receive guidance from Berklee-trained Academic Advisors, and have the opportunity to walk at the Commencement ceremony in Boston with your cohort of graduates who studied online and in-person. </div> </div> <hr> <h4 id='admissions'> Admissions </h4> <div class='question-block'> <div class='question'> What is the process to apply for/enroll in a Berklee Online program or course? </div> <div class='answer'> Certificate programs and online courses are offered on an open enrollment basis. Simply complete the online enrollment form and provide payment prior to the course start date and you’re ready to go! Degree programs require an application and supporting documentation. See the <a href="/degrees/about/degree-admissions-requirements" itemprop="url">Admission Requirements</a> for more details. </div> </div> <div class='question-block'> <div class='question'> Will I receive a Berklee ID and/or email address? </div> <div class='answer'> Berklee Online degree students are eligible to request a Berklee ID. Upon acceptance into the program, degree students are also given a berklee.edu email address. </div> </div> <hr> <h4 id='courses'> Courses </h4> <div class='question-block'> <div class='question'> Can I take non-credit courses in a certificate? </div> <div class='answer'> All courses in a certificate program must be taken for credit. </div> </div> <div class='question-block'> <div class='question'> Can I waive some for-credit courses into a certificate? </div> <div class='answer'> Students must enroll in a certificate by paying the $175 certificate registration fee prior to completing the final course in the program. All for-credit courses that have been awarded a passing grade and that align with a certificate program may transfer into that program. </div> </div> <div class='question-block'> <div class='question'> Can I upgrade from a lower-level certificate to a higher-level certificate? </div> <div class='answer'> Yes! Berklee Online offers two certificate options: <ol> <li> CHANGE CERTIFICATE: When a student wants to change their lower-level certificate to a higher-level certificate (or vice versa) prior to the completion of the program. There are no additional fees for this option other than the cost of additional courses, and you will only earn one certificate upon completion. </li> <li> STARTING A NEW CERTIFICATE: When a student wants to earn more than one certificate by having the courses from their lower-level certificate waived into a higher-level certificate. In this case, an additional $175 registration fee is required. </li> </ol> </div> <hr> <h4 id='faculty'> Instructors </h4> <div class='question-block'> <div class='question'> Who teaches Berklee Online courses? </div> <div class='answer'> Berklee faculty and seasoned professionals teach our courses. Our instructors are recognized experts in their respective fields—they’ve produced and engineered hundreds of artists and numerous award-winning projects, and several of their students have gone on to earn GRAMMY Award nominations. </div> </div> <hr> <h4 id='financial-aid'> Financial Aid </h4> <div class='question-block'> <div class='question'> Am I eligible for financial aid? </div> <div class='answer'> Financial assistance is available for Berklee Online degree programs. This assistance may come from a variety of sources including federal awards, outside scholarships, and private loans. <br> <br> Federal financial aid is not available for non-degree programs. Non-degree students typically finance their costs out-of-pocket or with a private loan. Review our payment options. </div> </div> <hr> <h4 id='graduation'> Graduation </h4> <div class='question-block'> <div class='question'> What happens if I turn in my graduation application late? Do I still need to apply by December 1 even if I don’t want to walk in the Commencement ceremony? </div> <div class='answer'> Because we must coordinate with the Boston campus for Commencement, it is essential that students planning to walk in the ceremony submit their graduation application by 12:00 midnight ET on December 1. If you submit your application late, you will need to wait until the following year to walk. <br> <br> We ask all students planning to graduate within the current academic year to apply for graduation by December 1, regardless of their plans to participate in Commencement. Late application for students who do not wish to walk will result in processing delays for your academic record and diploma, and your name may not be listed in the ceremony program. </div> </div> <div class='question-block'> <div class='question'> What’s the difference between graduating and walking in Commencement? </div> <div class='answer'> Great question! Walking in Commencement and graduating are two separate things. <br> <br> You can walk in Commencement when you are nine (9) credits or less away from completing your degree requirements by the end of the spring term. Please note: Berklee Online degree students are not required to walk in Commencement in Boston. <br> <br> You graduate when you have met all of the following criteria: <ul> <li>Attained at least a 2.70 cumulative GPA in concentrate courses</li> <li>Have a minimum cumulative GPA of 2.00</li> <li>Fulfilled all program requirements AND completed a minimum of 120 credits for a single major or 165 for a dual major</li> <li>Completed a minimum of 60 institutional credits for a single major or 105 institutional credits for a dual major</li> <li>Fulfilled all financial obligations to the college</li> </ul> <strong>Note</strong> Walking across the stage in Commencement <u>does not</u> mean that you have graduated. You will not officially graduate and receive your diploma until you meet all of the eligibility requirements. </div> </div> <div class='question-block'> <div class='question'> I just finished my last term at Berklee Online! What happens next? Is there anything I need to do? </div> <div class='answer'> Congratulations on finishing! If you have already filled out a graduation application, you will want to double-check the "<a href="/degrees/about/graduation-planning">Graduation Checklist</a>" to ensure you have taken care of all of the various items associated with graduating. If you have not filled out a graduation application, you will need to do that as soon as possible. You will not be able to graduate until we have received and processed your graduation application. </div> </div> <div class='question-block'> <div class='question'> When will I get my diploma? </div> <div class='answer'> You will receive your diploma within 6-8 weeks of completing your degree requirements. Please keep in mind that instructors have up to two (2) weeks to submit final grades after the term concludes. <br> <br> Diplomas are mailed to the address you include on your graduation application. If your mailing address changes after you have submitted your graduation application, be sure to update us at <a href="mailto:graduation@online.berklee.edu">graduation@online.berklee.edu</a>. <br> <br> Keep in mind that if you are walking in Commencement, you will not receive your official diploma at the ceremony. </div> </div> <hr> <h4 id='transfer-credits'> Transfer Credits </h4> <div class='question-block'> <div class='question'> Can I find out how many transfer credits I am eligible for before I apply to the degree program? </div> <div class='answer'> If you are interested in applying to the Bachelor of Arts degree program and would like an estimate of the amount of transfer credit you would receive, you can request an unofficial transfer evaluation by emailing a copy of your transcript(s) to the Berklee Online Transfer Team at <a href="mailto:transfer@online.berklee.edu">transfer@online.berklee.edu</a>. Be sure to include your name, major of interest, and any additional questions you may have. You can expect to receive your assessment within 7-10 business days. </div> </div> <div class='question-block'> <div class='question'> I didn’t receive credit on my Official Evaluation for all of the courses that I thought I would. What should I do? </div> <div class='answer'> The earlier you contact us with questions or concerns regarding your evaluation, the easier it will be for us to address any issues. Therefore, it is very important when you first receive your official transfer evaluation that you review the information carefully. <br> <br> If you notice a remaining requirement that you believe you’ve already fulfilled, first consult our document on Common Reasons Credit Does Not Transfer. It’s possible that the course you are thinking of didn’t meet our eligibility requirements. <br> <br> If none of those exclusions apply, please fill out a Transfer Credit Equivalency Re-evaluation form for the courses you wish to have reconsidered. <br> <br> Sometimes, we are not able to locate specific information for a course online and we are not able to determine an equivalency, but we are always happy to review additional material which will help us make that determination. </div> </div> <div class='question-block'> <div class='question'> Do my Berklee Online, Berklee campus, or Prior Learning Credit coursework count towards the 60 transfer credit limit? </div> <div class='answer'> No, credits completed at Berklee or through the prior learning process do not count towards the 60 transfer credit limit. This maximum is for credit-bearing exams and undergraduate-level coursework completed externally. </div> </div> <div class='question-block'> <div class='question'> What is a credit deficiency and why do I need to make up credit? </div> <div class='answer'> Credit deficiencies are caused by transferring a course that is less than three (3) credits to fulfill a three (3) credit Berklee Online requirement. Students with a credit deficiency will be short of the minimum number of credits required to graduate once they have completed their program requirements. In order to be eligible to graduate, you will need to make up the credits you are deficient in. <br> <br> While the Transfer Team does their best to avoid giving students credit deficiencies, it is not always possible. You can make up the credits you are deficient in by completing additional Berklee Online coursework, by applying for prior learning credit, or by completing additional external coursework in the area in which you are deficient. <br> <br> <strong>Note</strong> all external courses will first need to be approved by the Transfer Team. </div> </div> <div class='question-block'> <div class='question'> Can transfer credit fulfill prerequisites? </div> <div class='answer'> It depends. Generally, transfer credit cannot be used to fulfill prerequisites unless we determine that the course you completed is a direct equivalent to one of the courses we offer at Berklee Online. Keep in mind that there are some courses which require you to pass a placement exam. For these you will need to achieve a passing grade on the test to fulfill the prerequisite, otherwise you will need to complete the appropriate Berklee Online course. </div> </div> <div class='question-block'> <div class='question'> Can I transfer credits to Berklee Online after I have started the degree program? </div> <div class='answer'> Yes, you can. To determine if the coursework you already completed or are considering taking is eligible to fulfill your remaining degree requirements, contact the Transfer Team at <a href="mailto:transfer@online.berklee.edu">transfer@online.berklee.edu</a>. </div> </div> <div class='question-block'> <div class='question'> I am a Berklee campus student. Can I transfer courses from Berklee Online to my campus-based program? </div> <div class='answer'> View a <a href="https://www.berklee.edu/registrar/online-course-equivalencies" target="_blank">list of transferable courses</a> to Berklee’s campus programs. <br> <br> For additional questions about transferring courses from Berklee Online to Berklee's campus programs please contact the campus transcript evaluator at <a href="mailto:transfercredits@berklee.edu">transfercredits@berklee.edu</a>. </div> </div> <div class='question-block'> <div class='question'> Are Berklee Online courses transferable to other institutions? </div> <div class='answer'> Berklee Online is regionally accredited by the New England Commission of Higher Education (NECHE), the same association that accredits our main campus and other leading academic institutions such as Harvard University and MIT. Our courses are transferable to other institutions, but it's up to the receiving institution to decide the number and types of courses that may transfer. We recommend getting a course pre-approved by an institution before enrolling. </div> </div> <hr> <h4 id='tuition'> Tuition </h4> <div class='question-block'> <div class='question'> How do Berklee Online’s costs compare to other education options? </div> <div class='answer'> Berklee Online’s programs have a tuition cost that is approximately 64 percent less than on-campus tuition at Berklee’s Boston campus. Moreover, a recent study revealed that the average annual tuition at for-profit colleges is more than twice as expensive as Berklee Online. Even average annual tuition at other accredited non-profit online universities is roughly $11,000 more expensive than tuition for a year with Berklee Online! </div> </div> <div class='question-block'> <div class='question'> How much does a <a href="/certificates" itemprop="url">certificate program</a> cost? </div> <div class='answer'> There is a one time $175 registration fee per certificate program. Students may either pay per course term (at the $1,545.00 per credit course cost) or pay in full to receive a 10 percent discount. The registration fee and all courses for the term you wish to begin in must be paid in full in order to begin. </div> </div> <div class='question-block'> <div class='question'> How much does an online <a href="/music-degrees" itemprop="url">Bachelor’s degree</a> cost? </div> <div class='answer'> Online undergraduate degree tuition is $59,160 for 120 credits for all majors except the guitar major. Tuition for the guitar major is $63,660. Students taking 10 courses per year can complete the degree in four years at a cost of $14,790 per year. (Note: Tuition and fees are subject to change.) </div> </div> <div class='question-block'> <div class='question'> How much does an online <a href="/music-degrees" itemprop="url">master's degree</a> cost? </div> <div class='answer'> Online graduate degree tuition is $33,120 for 36 credits. The Master of Music in Music Production and Master of Arts in Music Business programs are designed to be completed in one year of study. Both programs are comprised of 12 three-credit courses that can be taken during four 12-week semesters. </div> </div> <div class='question-block'> <div class='question'> What is included in the cost of a course? </div> <div class='answer'> The cost for an individual course includes the tuition fee. The cost of required books, hardware or software must be purchased separately, unless it is stated that these costs are included with your enrollment. Some courses may include additional fees for files or content. </div> </div> </div> </div> </div> </div> </div> </div> </div> <nav class='animate__animated animate__slideInLeft animate__faster' id='bo-collapse-nav'> <div id='bo-collapse-nav-header'> <div class='bo-collapse-logo'> <a href='/'> <img src='/assets/berklee-online-logo.svg?v=3'> </a> </div> <div id='bo-collapse-search-trigger'></div> <div id='bo-nav-close'> × </div> </div> <div id='bo-nav'> <ul> <li> <a class='parent' href='#'> All Programs <span class='chevron bottom'></span> </a> <ul class='bo-collapse bo-collapse-interests'> <li> <a href='/music-production' itemprop='url'>Music Production</a> </li> <li> <a href='/music-business' itemprop='url'>Music Business</a> </li> <li> <a href='/music-theory-harmony-and-ear-training'>Music Theory, Harmony, and Ear Training</a> </li> <li> <a href='/guitar' itemprop='url'>Guitar</a> </li> <li> <a href='/songwriting' itemprop='url'>Songwriting</a> </li> <li> <a href='/music-for-film-tv-and-games' itemprop='url'>Music for Film, TV, and Games</a> </li> <li> <a href='/arranging'>Arranging</a> </li> <li> <a href='/music-history-and-liberal-arts'>Music History and Liberal Arts</a> </li> <li> <a href='/piano-and-keyboard'>Piano and Keyboard</a> </li> <li> <a href='/voice'>Voice</a> </li> <li> <a href='/improvisation'>Improvisation</a> </li> <li> <a href='/dance-music-and-theater'> Dance, Music, and Theater </a> </li> <li> <a href='/orchestration'>Orchestration</a> </li> <li> <a href='/drums'>Drums</a> </li> <li> <a href='/bass'>Bass</a> </li> <li> <a href='/music-therapy-health-and-neuroscience'>Music Therapy, Health, and Neuroscience</a> </li> </ul> </li> <li> <a class='parent' href='#'> Degrees <span class='chevron bottom'></span> </a> <ul class='bo-collapse bo-collapse-degrees'> <li class='header'>Undergraduate Degrees</li> <li><a href="/music-degrees/undergraduate/overview">Overview</a></li><li><a href="/music-degrees/undergraduate/music-production">Music Production</a></li><li><a href="/music-degrees/undergraduate/guitar-performance">Guitar Performance</a></li><li><a href="/music-degrees/undergraduate/music-business">Music Business</a></li><li><a href="/music-degrees/undergraduate/songwriting">Songwriting</a></li><li><a href="/music-degrees/undergraduate/songwriting-and-producing-music">Songwriting and Producing Music</a></li><li><a href="/music-degrees/undergraduate/electronic-music-production-and-sound-design">Electronic Music Production and Sound Design</a></li><li><a href="/music-degrees/undergraduate/music-composition-for-film-tv-and-games">Music Composition for Film, TV, and Games</a></li><li><a href="/music-degrees/undergraduate/piano-performance">Piano Performance</a></li><li><a href="/music-degrees/undergraduate/interdisciplinary-music-studies-create-your-own-major">Interdisciplinary Music Studies (Create Your Own Major)</a></li><li><a href="/music-degrees/undergraduate/voice-performance">Voice Performance</a></li><li><a href="/music-degrees/undergraduate/music-composition">Music Composition</a></li><li><a href="/music-degrees/undergraduate/undeclared-option">Undeclared Option</a></li> <li class='header'>Graduate Degrees</li> <li><a href="/music-degrees/graduate/overview">Overview</a></li><li><a href="/music-degrees/graduate/music-production">Music Production</a></li><li><a href="/music-degrees/graduate/music-business">Music Business</a></li><li><a href="/music-degrees/graduate/songwriting">Songwriting</a></li><li><a href="/music-degrees/graduate/film-scoring">Film Scoring</a></li><li><a href="/music-degrees/graduate/interdisciplinary-music-studies">Interdisciplinary Music Studies</a></li> <li class='header'>Undergraduate Minors</li> <li><a href="/minors/overview">Overview</a></li><li><a href="/minors/film-and-media-scoring">Film and Media Scoring</a></li><li><a href="/minors/music-industry-entrepreneurship">Music Industry Entrepreneurship</a></li><li><a href="/minors/music-production-and-recording">Music Production and Recording</a></li> </ul> </li> <li> <a href='/certificates' itemprop='url'>Certificates</a> </li> <li> <a href='/courses' itemprop='url'>Courses</a> </li> <li> <a class='parent' href='#'> Admissions & Tuition <span class='chevron bottom'></span> </a> <ul class='bo-collapse bo-collapse-admissions'> <li class='header'>Undergraduate Admissions</li> <li> <a href='/degrees/about/undergraduate-degree-admissions-requirements' itemprop='url'>How to Apply</a> </li> <li> <a href='/degrees/about/undergraduate-degree-tuition-financial-aid' itemprop='url'>Tuition and Financial Aid</a> </li> <li> <a href='/degrees/about/undergraduate-degree-transfer-credits' itemprop='url'>Transfer Credits</a> </li> <li> <a href='/degrees/about/undergraduate-international-students' itemprop='url'>International Students</a> </li> <li> <a href='/military/getting-started' itemprop='url'>Military Benefits</a> </li> <li class='header'>Graduate Admissions</li> <li> <a href='/degrees/about/graduate-degree-admissions-requirements' itemprop='url'>How to Apply</a> </li> <li> <a href='/degrees/about/graduate-degree-tuition-financial-aid' itemprop='url'>Tuition and Financial Aid</a> </li> <li> <a href='/degrees/about/graduate-degree-transfer-credits' itemprop='url'>Transfer Credits</a> </li> <li> <a href='/degrees/about/graduate-international-students' itemprop='url'>International Students</a> </li> <li> <a href='/military/getting-started' itemprop='url'>Military Benefits</a> </li> </ul> </li> <li> <a class='parent' href='#'> About <span class='chevron bottom'></span> </a> <ul class='bo-collapse bo-collapse-about'> <li> <a href='/about/berklee-online' itemprop='url'>About</a> </li> <li class='mission-link'> <a href='/about/mission' itemprop='url'>Our Mission</a> </li> <li> <a href='/about/leadership-team' itemprop='url'>Leadership Team</a> </li> <li> <a href='/instructors' itemprop='url'>Instructor Directory</a> </li> <li> <a href='/about' itemprop='url' style='white-space: nowrap;'>School Info, Enrollment, and Policies</a> </li> <li> <a href='/work-with-us' itemprop='url'>Work With Us</a> </li> </ul> </li> <li> <a class='parent' href='#'> Resources <span class='chevron bottom'></span> </a> <ul class='bo-collapse bo-collapse-about'> <li> <a href='/careers-in-music/' itemprop='url'>Careers in Music</a> </li> <li> <a href='/free-music-course-resources' itemprop='url'>Free Music Resources</a> </li> <li> <a href='/sample-a-lesson' itemprop='url'>Sample a Lesson / How It Works</a> </li> <li> <a href='/handbooks' itemprop='url'>Handbooks</a> </li> <li> <a href='/deals' itemprop='url'>Student Deals</a> </li> <li> <a href='/mentor-collective' itemprop='url'>Mentorship Program</a> </li> <li> <a href='//online.berklee.edu/takenote' itemprop='url'> <em>Take Note</em> Online Magazine </a> </li> <li> <a href='/berklee-onsite'> <strong> Annual Event: Berklee Onsite </strong> </a> </li> </ul> </li> </ul> </div> <div id='bo-collapse-nav-bottom'> <a class='bo-collapse-search-trigger' data-backdrop='true' data-bs-target='#search-and-question-panel' data-bs-toggle='modal' href='#'> <i class='far fa-search'></i> Search </a> <a href='sms:18662375533'> <i class='far fa-comments'></i> Text Us </a> <a href='tel:18662375533'> <i class='far fa-phone'></i> Call Us </a> </div> </nav> </div> <section class='main-content' id='main-content'> <div class='body-overlay'></div> <div class='content-wrap' data-swiftype-index='true'> <div class='sticky-parent' property='data-sticky_parent' style='padding-bottom: 40px; position: relative;'> <section class='content-head no-gutter' data-scroll-index='0' id='overview'> <div class='container-fluid'> <div class='row justify-content-between'> <div class='col-12 col-lg-9' property='data-sticky_column'> <div class='enrollment-status-warning' id='same_course_warning'></div> <div class='course-head'> <h2> <a class='txt-lg a-black' href='/courses?level=undergraduate' itemprop='url'> Online Undergraduate-Level Course </a> </h2> <h1>Music Production 101</h1> <div class='bcb-course'> </div> <div class='course-subhead'> <img alt='author.full_name' class='img-circle' src='//online.berklee.edu/user/avatar?user_id=13939'> <img alt='author.full_name' class='img-circle' src='//online.berklee.edu/user/avatar?user_id=13944'> <div class='course-subhead-text'> <p class='txt-sm'> Authored <span> by <a class="a-body-link" href="#instructors">Michael Bierylo</a>, <a class="a-body-link" href="#instructors">David Mash</a> </span> </p> <div class='separator'>|</div> <p class='txt-sm'> Course Code: <span> OLMSC-101 </span> </p> </div> </div> </div> <div class='row'> <div class='col-12 col-lg-4 key-points-wrap order-1 order-lg-2'> <div class='key-points'> <div class='term-message'> <i> <div class='fal fa-calendar-alt'></div> </i> <div class='term-message-text'> <h4><!--Next semester <br>starts April 7--> Next semester<br/>starts April 7</h4> </div> </div> <div class='key-course-duration'> <i class='fa-light fa-hourglass'></i> <h4>12 Weeks</h4> </div> <div class='key-course-level'> <div style='cursor:pointer;' data-courseid-order-label-level='37 1 Level 1 Level 1' class='course-level-icon offering-supporting-detail skill-level-1' data-bs-toggle='popover' data-bs-trigger='focus' tabindex='0' data-bs-content='100 level course. Foundational course material, no prerequisites required.' data-bs-placement='left' data-bs-title='Level 1 Course' rel='nofollow'><img src='/assets/skill-level-1.svg' alt='Level 1' /></div><div class='key-course-text'><h4>Level 1</h4></div> </div> <div class='credit-tuition'> <h4>3-Credit Tuition</h4> <span class='full-price'> $1,545 </span> <div class='user-price' style='display: none'> <span class='name'></span> <span class='price'></span> </div> </div> <div class='non-credit-tuition'> <h4>Non-Credit Tuition</h4> <span class='full-price'> $1,290 </span> <div class='user-price' style='display: none'> <span class='name'></span> <span class='price'></span> </div> </div> </div> </div> <div class='col-12 col-lg-8 order-2 order-lg-1'> <div class='overview'> <p>There is an extraordinary range of affordable tools that make it possible for most musicians to produce their own music at home. The goal of this course is to familiarize you with the basic tools and techniques used in electronic music production. </p> <div class='read-more-container'><a class='read-more' href='#'>Read More</a><div class='readmore-hidden'> <p>We're assuming that students taking this course have no previous experience in music technology, so we'll cover everything you need to know to get started. <p>From you, we are only expecting that you have some basic musicianship skills and a desire to produce your own music. Producing music is not a spectator sport, and for each lesson we'll have projects for you to complete that will get you working with the topics presented. <p>In this course, you'll explore topics that will get you started with setting up your production system and on your way to completing some basic production tasks. Each week, you'll be actively engaged in activities and discussions that will take you through the process of producing music on your computer. <p>By the end of the course, you will be able to: <ul> <li>plan an electronic music production project</li> <li>identify common types of music production tools and their capabilities</li> <li>design and configure a personal studio that includes a variety of hardware and software tools</li> <li>create interesting musical sounds using software-based synthesizers and samplers</li> <li>record and edit MIDI sequences</li> <li>record and edit audio</li> <li>use a variety of digital audio production and editing techniques</li> <li>create a basic mix using the capabilities of a typical digital audio workstation (DAW)</li> <li>use a variety of effects to enhance a basic mix, including compression, EQ, chorus, delay, and reverb</li> <li>prepare a finished work for distribution in a variety of audio formats</li> </ul> <a class='read-less' href='#'> Read Less</a> </div> </div> </div> <div class='overview-video'> </div> </div> </div> </div> <div class='col-4 col-lg-3 d-none d-lg-block side-nav-container'> <div class='side-nav sticky-item' property='data-sticky_column'> <div class='side-nav-main'> <a class='nav-scroll active' data-scroll-nav='0' href='#overview'>Overview</a> <a class='nav-scroll' data-scroll-nav='1' href='#syllabus'>Syllabus</a> <a class='nav-scroll last' data-scroll-nav='2' href='#requirements'>Requirements</a> <a class='nav-scroll' data-scroll-nav='3' href='#instructors'>Instructors</a> <a class='nav-scroll' data-scroll-nav='4' href='#related-careers'> Related Music Career Role </a> <div class='foxy_enroll_warning' style='display: none;'></div> <div class='foxy_enroll'> <button class='add_to_cart btn-action bo-button bo-button-disabled' id='add_to_cart_btn'> <i class='fa fa-check-square d-lg-none disabled'></i> <div class='enroll_now'> Enroll Now </div> <span> No application required </span> </button> </div> <a class='bo-button-alt' href='#footer-form'>Request Info</a> <div class='side-nav-advisor-block'> <div class='advisor-contact-block'> <p class='guidance'>Need guidance?</p> <a class='tel-main' href='tel:18662375533'>1-866-BERKLEE</a> <a class='tel-intl' href='tel:16177472146'>Int'l: +1-617-747-2146</a> <p class='call-text'><span class="d-sm-none d-contact-sm"><a href="tel:18662375533">Call</a>, <a href="sms:18662375533">Text</a>, </span>or <a href="mailto: advisors@online.berklee.edu">Email us</a></p> </div> </div> </div> </div> </div> </div> </div> </section> <section class='page-section content-syllabus'> <div class='container-fluid'> <div class='row'> <div class='col-12 col-lg-7'> <div class='syllabus content-section' data-scroll-index='1' id='syllabus'> <h2>Syllabus</h2> <p><em>Lesson 1: Setting Up an Electronic Music Studio</em></p> <ul> <li>So What’s a Producer?</li> <li>The Music Production Process</li> <li>Developing Musical Ideas</li> <li>Practice Exercise: Example of Producing a Musical Idea</li> <li>Audio Recording</li> <li>Digital Audio Workstations</li> <li>Sample Loops</li> <li>Editing</li> <li>Mixing</li> <li>Mastering</li> <li>Music Production Tools</li> <li>Audio Interfaces: USB and Thunderbolt</li> <li>Monitor Speakers and Microphones</li> <li>MIDI Performance Controllers</li> <li>Control Surfaces and Grid Controllers</li> <li>Connections and Connectors</li> <li>Specific Connectors Used with Analog Audio</li> <li>Computer Connections in the Home Studio</li> <li>Studio Configuration Example</li> <li>Practice Exercise: Getting Set Up to Produce Music</li> <li>The Ableton Live Workspace</li> <li>Software Instruments and Effects in Live</li> <li>Synthesizers</li> <li>Software Synthesizers and Samplers</li> <li>Operator and Wavetable Synthesizers</li> <li>Effect Processing Tools and Processors</li> <li>Mixing in Ableton Live</li> <li>Assignment 1.1: Desktop Production Project Plan and Toolset</li> <li>Assignment 1.2: Designing Your Studio</li> </ul> <p><em>Lesson 2: Sound and Signals</em></p> <ul> <li>Sound Basics</li> <li>Properties of Sound</li> <li>Pitch</li> <li>Musical Notes</li> <li>Timbre</li> <li>Loudness</li> <li>Analog Audio</li> <li>Practice Exercise: Standard Operating Levels and Reference Levels</li> <li>Analog Audio Connections</li> <li>Audio Specifications and Fidelity</li> <li>The Noise Floor and Signal to Noise Ratio</li> <li>Frequency Bandwidth and Response</li> <li>Distortion, Headroom, and Dynamic Range</li> <li>Measuring Dynamic Range</li> <li>Practice Exercise: Reading Audio Specification</li> <li>Assignment 2: Sound and Signals</li> </ul> <p><em>Lesson 3: MIDI Sequencing</em></p> <ul> <li>MIDI and MIDI Commands</li> <li>MIDI Message Types: Channel</li> <li>MIDI Message Types: System</li> <li>Commonly Used MIDI Messages</li> <li>MIDI Monitor</li> <li>MIDI Sequencing in Ableton Live</li> <li>The Control Bar</li> <li>Practice Exercise: The Control Bar</li> <li>Practice Exercise: Transport Functions and Location</li> <li>Practice Exercise: Song Position Display</li> <li>Practice Exercise: Arrangement View</li> <li>Getting Ready to Record</li> <li>Practice Exercise: Tracks and Instruments</li> <li>Setting Up for Real-Time Recording</li> <li>Practice Exercise: Metronome Settings</li> <li>Practice Exercise: Count-in Options</li> <li>Practice Exercise: Recording</li> <li>Practice Exercise: Viewing MIDI Recordings</li> <li>Record Modes in Ableton Live</li> <li>Practice Exercise: Overdub Recording</li> <li>Practice Exercise: Overdub Mode</li> <li>Practice Exercise: Loop Recording</li> <li>Practice Exercise: Quantization and Q-Record</li> <li>Step Recording</li> <li>Practice Exercise: Step Recording</li> <li>Assignment 2: MIDI Sequencing, Part 1</li> </ul> <p><em>Lesson 4: MIDI Editing</em></p> <ul> <li>Editing MIDI Sequences</li> <li>Practice Exercise: Editing MIDI Sequences</li> <li>Practice Exercise: Transposition</li> <li>Practice Exercise: Changing a Time Signature</li> <li>Practice Exercise: Setting the Clip Length</li> <li>MIDI Editing</li> <li>Practice Exercise: Editing Individual Notes</li> <li>Bars, Beats, and Subdivisions</li> <li>Practice Exercise: Editing Note Length (Part 1)</li> <li>Practice Exercise: Editing Note Length (Part 2)</li> <li>Practice Exercise: Event-Level Editing</li> <li>Practice Exercise: Fixing Mistakes</li> <li>Practice Exercise: Correcting Timing</li> <li>Quantization</li> <li>Practice Exercise: Using Quantization</li> <li>Practice Exercise: Correcting Durations</li> <li>Practice Exercise: Correcting Dynamics</li> <li>Practice Exercise: Editing Pitch</li> <li>Practice Exercise: Editing Song Form: Cut/Copy/Paste Operations</li> <li>Practice Exercise: Using Ableton Live Editing Commands</li> <li>Assignment 4: MIDI Editing, Part 2</li> </ul> <p><em>Lesson 5: Working with Synthesizers</em></p> <ul> <li>What's a Synthesizer?</li> <li>Synthesizer Overview</li> <li>Hardware: Integrated Instruments</li> <li>Sound Modules</li> <li>Subtractive Synthesizers</li> <li>Samplers</li> <li>Physical Modeling</li> <li>FM Synthesis</li> <li>Synthesizer Architecture: Generators and Processors</li> <li>Properties of Sound: Pitch, Timbre, and Loudness</li> <li>Practice Exercise: The Oscillator–Signal Generation and Pitch</li> <li>Practice Exercise: Controlling Timbre</li> <li>Practice Exercise: Envelope Generators</li> <li>Software Instruments: Standalone, Plug-In, or DAW-Specific</li> <li>Practice Exercise: Loading an Ableton Live Instrument</li> <li>Going Deeper: Digital Samplers and Software Samplers</li> <li>Practice Exercise: Loading Sampler Patches in Ableton Live’s Sampler Instrument</li> <li>Assignment 5: Electronic Orchestration</li> </ul> <p><em>Lesson 6: Working with Time, Tempo, and Rhythm: Drum Programming, Pattern Devices, and Arpeggiators</em></p> <ul> <li>Patterns in Music</li> <li>Pattern Sequencing</li> <li>The Grid</li> <li>Duple Time in Step Sequencing</li> <li>Triple Time in Step Sequencing</li> <li>Orchestrating a Rhythm</li> <li>Defining a Rhythmic Feel</li> <li>Session View in Ableton Live</li> <li>Practice Exercise: Session View</li> <li>Practice Exercise: Entering a Basic Pattern</li> <li>Practice Exercise: Adding Accents</li> <li>Creating Variations</li> <li>Practice Exercise: Changing Accents</li> <li>Practice Exercise: Adding or Removing Instruments</li> <li>Practice Exercise: Adding Fills</li> <li>Building an Arrangement from Patterns</li> <li>Sequencing Pattern Changes</li> <li>Practice Exercise: Recording Pattern Changes</li> <li>Practice Exercise: Copying Clips to Arrangement View</li> <li>Practice Exercise: Adding Instruments to a Drum Arrangement</li> <li>Working with External Hardware Instruments</li> <li>Rhythmic Feel and Groove Quantization</li> <li>Practice Exercise: The Groove Pool</li> <li>Practice Exercise: Randomization and Chance</li> <li>The Arpeggiator</li> <li>Practice Exercise: The Arpeggiator</li> <li>Practice Exercise: Recording Arpeggio Patterns to a Track</li> <li>Assignment 6: Rhythms and Patterns</li> </ul> <p><em>Lesson 7: Audio Recording</em></p> <ul> <li>Digital Audio Basics</li> <li>Sample Rate</li> <li>Sample Resolution</li> <li>Overview of Hard-Disk Recording</li> <li>How Digital Audio Is Used</li> <li>Applications</li> <li>How Audio Is Stored to Disk</li> <li>File Formats</li> <li>Tracks, Channels, and Voices</li> <li>Hard-Disk Issues</li> <li>Channels</li> <li>Microphones</li> <li>Unipolar Response Patterns</li> <li>Microphone Types</li> <li>Frequency Response</li> <li>Getting Set Up to Record with an Audio Interface</li> <li>Audio Interface Configuration</li> <li>Practice Exercise: Setting the Buffer Size in Ableton Live</li> <li>Practice Exercise: Monitoring Options</li> <li>Practice Exercise: Making Your First Recording</li> <li>A Word about File Management</li> <li>Recording Demonstrations</li> <li>Assignment 7: Final Project MIDI Arrangement</li> </ul> <p><em>Lesson 8: Audio Editing and Processing</em></p> <ul> <li>Non-Destructive Editing</li> <li>Practice Exercise: Defining Regions</li> <li>Practice Exercise: Using Clips in Ableton Live’s Sampler Instrument</li> <li>Practice Exercise: Launching Audio Clips in Ableton Live’s Session View</li> <li>Practice Exercise: Editing a Song Form</li> <li>Destructive Editing</li> <li>Using DSP to Edit Audio</li> <li>Practice Exercise: Using the Change Gain and Normalize Commands</li> <li>Fade In/Out</li> <li>Practice Exercise: Using the Fade In/Out Commands</li> <li>Practice Exercise: Using the Reverse Tool</li> <li>Practice Exercise: Changing Tempo and Pitch</li> <li>Assignment 8: Final Project Audio Recording</li> </ul> <p><em>Lesson 9: Loops and Digital Audio Production Techniques</em></p> <ul> <li>A Word about Loops</li> <li>Making Audio Loops</li> <li>Practice Exercise: Editing a Loop</li> <li>Practice Exercise: Audio Tempo vs. Sequence Tempo</li> <li>Rendering MIDI Tracks to Audio</li> <li>Practice Exercise: Freezing Tracks</li> <li>Practice Exercise: Exporting Tracks</li> <li>Loop File Formats</li> <li>Beat Slicing</li> <li>Practice Exercise: Audio Slicing</li> <li>Strengthening a Weak Performance</li> <li>Practice Exercise: Audio Quantization</li> <li>Practice Exercise: Quantizing a Vocal Performance</li> <li>Pitch Processing</li> <li>Practice Exercise: Pitch Correction</li> <li>Practice Exercise: Pitch Effects</li> <li>Assignment 9: Final Project Loops, Audio Editing, and Processing</li> </ul> <p><em>Lesson 10: Mixing and Audio Effects 1</em></p> <ul> <li>The Ableton Live Mixer</li> <li>Controls in the Ableton Live Mixer</li> <li>Practice Exercise Part 1: Fader</li> <li>Practice Exercise Part 2: Panning</li> <li>Practice Exercise Part 3: Mute and Solo</li> <li>Practice Exercise Part 4: Equalization</li> <li>Practice Exercise Part 5: Auxiliary Bus Controls</li> <li>Practice Exercise Part 6: Main Output Fader</li> <li>Mixer Review</li> <li>Technical Issues in Mixing</li> <li>Aesthetic Issues in Mixing</li> <li>Effects Processing</li> <li>Ableton Live’s Filters</li> <li>Practice Exercise: EQ Eight</li> <li>Cutoff Filters</li> <li>Practice Exercise: Filter Slope</li> <li>Practice Exercise: EQing the Piano Track with a Cutoff Filter, Part 1</li> <li>Shelving Filters</li> <li>Practice Exercise: EQing the Piano Track with a Shelving Filter, Part 2</li> <li>Parametric EQ</li> <li>Practice Exercise: EQing the Piano Track with a Parametric EQ, Part 3</li> <li>Practice Exercise: Mixing Practice</li> <li>Assignment 10: Final Project Mixing: Levels, Panning, and EQ</li> </ul> <p><em>Lesson 11: Mixing and Audio Effects 2</em></p> <ul> <li>Dynamics Processing</li> <li>Typical Parameters of Dynamics Processors</li> <li>The Compressors in Ableton Live</li> <li>Types of Dynamics Processing</li> <li>Practice Exercise: Using Compression in Our Mix</li> <li>Limiting</li> <li>Practice Exercise: Setting Up a Limiter</li> <li>Practice Exercise: Gating</li> <li>Time-Based Effects</li> <li>Delay Effects in Ableton Live</li> <li>Categories of Delay Effects</li> <li>Practice Exercise: Delay</li> <li>Doubling/Flanging/Chorus Effects</li> <li>Practice Exercise: Doubling the Violin Melody</li> <li>Practice Exercise: Flanging/Chorus on the Guitar</li> <li>Reverb</li> <li>Practice Exercise: Reverb on the Drums</li> <li>Practice Exercise: Mixing and Automation</li> <li>Assignment 11: Final Project Mixing: Dynamics, Reverb, and Automation</li> </ul> <p><em>Lesson 12: Cloud Collaboration, Mastering, Music Distribution, and Course Wrap-up</em></p> <ul> <li>Collaboration via the Cloud</li> <li>Practice Exercise: Using Dropbox Cloud Collaboration</li> <li>Mastering</li> <li>Mastering Tools</li> <li>Audio Distribution Formats</li> <li>Practice Exercise: Mastering Your Project for Distribution</li> <li>Practice Exercise: Practice Mastering</li> <li>Audio File Compression Overview</li> <li>Practice Exercise: Creating MP3 Files with Audacity</li> <li>Distributing Audio Files</li> <li>Assignment 12: Final Project Mastering and Submission</li> </ul> </div> </div> </div> </div> </section> <section class='page-section content-requirements'> <div class='container-fluid'> <div class='row'> <div class='col-12 col-lg-7'> <div class='requirements content-section' data-scroll-index='2' id='requirements'> <h2>Requirements</h2> <h4>Prerequisites and Course-Specific Requirements </h4><div class="truncate-paragraph imported-rtf"><p><strong>Prerequisite Courses, Knowledge, and/or Skills</strong><br /> Students should have:</p> <ul> <li>a basic, working knowledge of rudimentary music theory</li> <li>some basic keyboard skills</li> </ul> <p><strong>Textbook(s)</strong></p> <ul> <li>No textbooks required</li> </ul> <p><strong>Software</strong></p> <ul> <li>Ableton Live 12<ul> <li>Although you will be able to complete the work for this course with Live Standard, all course materials will be presented using Ableton Live Suite.</li></ul></li> <li><a rel="noopener noreferrer" target="_blank" href="https://www.audacityteam.org/">Audacity</a> (free)</li> <li><a rel="noopener noreferrer" target="_blank" href="https://blamsoft.com/vst/vk-1-viking-synthesizer/">VK-1 Viking Synthesizer</a> (free)</li> </ul> <p><strong>Hardware</strong></p> <ul> <li><a rel="noopener noreferrer" target="_blank" href="https://online.berklee.edu/help/midi/1964593-overview-of-midi-controllers">MIDI keyboard controller</a></li> <li><a rel="noopener noreferrer" target="_blank" href="https://online.berklee.edu/help/en_US/audio-interface/2004528-overview-of-audio-interfaces">Audio interface</a></li> <li>XLR microphone and cable</li> <li>One of the following studio monitoring options (both recommended):<ul> <li>Studio monitors (pair), such as JBL 305Ps or better, as well as necessary cables</li> <li>Over-ear studio headphones, such as Sennheiser HD 600, Sony MDR-7506, Philips SHP9500, Audio-Technica ATH-M50x, etc.</li></ul></li> </ul> <p><strong>Student Deals</strong><br /> After enrolling, be sure to check out our <a rel="noopener noreferrer" target="_blank" href="https://online.berklee.edu/deals">Student Deals</a> page for various offers on software, hardware, and more. Please contact <a rel="noopener noreferrer" target="_blank" href="mailto:support@online.berklee.edu">support@online.berklee.edu</a> with any questions.</p></div> <hr> <h4>General Course Requirements</h4> <div class='readmore-hidden'> <p> <strong> Below are the minimum requirements to access the course environment and participate in Live Classes. </strong> Please make sure to also check the Prerequisites and Course-Specific Requirements section above, and ensure your computer meets or exceeds the minimum system requirements for all software needed for your course. </p> <p> <strong>Mac Users</strong> </p> <ul> <li> <a href="https://support.apple.com/en-us/111980" rel="noopener noreferrer" target="_blank">macOS Big Sur 11.0 or later</a> </li> </ul> <p> <strong>PC Users</strong> </p> <ul> <li> <a href="https://support.microsoft.com/en-us/windows/windows-10-system-requirements-6d4e9a79-66bf-7950-467c-795cf0386715" rel="noopener noreferrer" target="_blank">Windows 10 or later</a> </li> </ul> <p> <strong>All Users</strong> </p> <ul> <li> Latest version of <a href="https://www.google.com/chrome/" target="_blank">Google Chrome</a> </li> <li>Zoom meeting software</li> <li>Webcam</li> <li>Speakers or headphones</li> <li>External or internal microphone</li> <li>Broadband Internet connection</li> </ul> </div> </div> </div> </div> </div> </section> <section class='page-section content-faculty'> <div class='container-fluid'> <div class='row'> <div class='col-12 col-lg-7'> <div class='faculty content-section' data-scroll-index='3' id='instructors'> <h2>Instructors</h2> <div class='row'> <div class='col-12 col-sm-2 instructor-img'> <img alt='Michael Bierylo' class='rounded-circle' src='//online.berklee.edu/user/avatar?user_id=13939'> </div> <div class='col-12 col-sm-10'> <div class='txt-lg fac-name'><a class="a-body-link" href="/faculty/michael-bierylo">Michael Bierylo</a></div> <p class='txt-sm'>Author</p> <p>Michael Bierylo is an electronic musician, guitarist, composer, and sound designer. He has been a faculty member at Berklee College of Music since 1995 and is currently Chair of the Electronic Production and Design Department where he led the development of Berklee’s Electronic Digital Instrument Program, the Electronic Performance Minor, and the Creative Coding Minor. Major projects include artist residencies with Suzanne Ciani, Nona Hendryx, Hank Shocklee, Richard Devine, Chagall, Robert Rich, and Kaitlyn Aurelia Smith. He is also active in Berklee Online, Berklee’s online school, where he authors and teaches music technology courses. </p> <div class='read-more-container'><a class='read-more' href='#'>Read More</a><div class='readmore-hidden'> <p>Bierylo has performed throughout the United States as a member of Birdsongs of the Mesozoic. As a solo electronic artist, Bierylo has performed with laptop computer and modular synthesizers in the US, Berlin, Shanghai, and Krakow including concerts with Grammy-nominated electronic musician BT and Terence Blanchard. As an active member of the Audio Engineering Society he has chaired the Electronic Instrument Design and Applications Track at national conventions, bringing together industry innovators such as Dave Smith and Dave Rossum, as well as design teams from Moog, Roland, and Korg. <a class='read-less' href='#'> Read Less</a> </div> </div> </div> </div> <hr> <div class='row'> <div class='col-12 col-sm-2 instructor-img'> <img alt='David Mash' class='rounded-circle' src='//online.berklee.edu/user/avatar?user_id=13944'> </div> <div class='col-12 col-sm-10'> <div class='txt-lg fac-name'><a class="a-body-link" href="/faculty/david-mash">David Mash</a></div> <p class='txt-sm'>Author</p> <p>David Mash is a guitarist, composer, producer, synthesist, author, educator, and futurist. He retired in 2017 as Senior Vice President for Innovation, Strategy, and Technology at Berklee College of Music in Boston, MA, where he had worked for over 40 years. David was the founding chair of Berklee’s Music Synthesis Department (now known as Electronic Production and Design). David has collaborated on development and artistic projects with leaders in the multimedia and music industries such as Kodak, Adobe Systems, Digidesign/Avid, Opcode, Kurzweil, Yamaha, Roland, Korg, Softube, Fishman Transducers, Godin Guitars, and many others. </p> <div class='read-more-container'><a class='read-more' href='#'>Read More</a><div class='readmore-hidden'> <p>David is past International Chair for Electronic Music for the International Association of Jazz Educators, was a founding board member of the Technology Institute for Music Educators (TI:ME), and recently retired as the Founding Executive Chair of the Avid Customer Association board. In addition to recently joining the Board for The Record Co., he is currently President of the board for the Bob Moog Foundation and chairs the Alan R. Pearlman (ARP) Foundation. <p>Today he is writing and producing music full-time, releasing his own music under the “Mashine Music” and “Stefan” personas, and you can find his work wherever you normally find digital music (Amazon, Apple Music, iTunes, Spotify, CDBaby, etc…). He’s also producing music for other artists with his long-time collaborator and friend Peter Bell, under the name “Bar Of 2 Productions.” <a class='read-less' href='#'> Read Less</a> </div> </div> </div> </div> <hr> <div class='row'> <div class='col-12 col-sm-2 instructor-img'> <img alt='Lee Gilboa' class='rounded-circle' src='//online.berklee.edu/user/avatar?user_id=39250418'> </div> <div class='col-12 col-sm-10'> <div class='txt-lg fac-name'><a class="a-body-link" href="/faculty/lee-gilboa">Lee Gilboa</a></div> <p class='txt-sm'>Instructor</p> <p><span style="color:rgb(33,37,41);">Lee Gilboa is a US-Based Israeli composer, researcher, and audio engineer. In her work, she uses speech, audio spatialization, and vocal processing, and engages with different themes around sonic identity such as naming, representation, collectivity, oppression, and self-expression. While living in New York between 2017 and 2019, she began her work as a curator for Daniel Neumann’s CT::SWaM, and she developed her debut album, </span><em style="box-sizing:border-box;color:rgb(33,37,41);">The Possibility of Sonic Portraiture </em><span style="color:rgb(33,37,41);">(Contour Editions). Her works have been presented at Roulette Intermedium, the Immersion Room at New York University, the Cube at Virginia Tech, the Ars Electronica Forum Wallis festival, and the New York City Electroacoustic Music Festival, among others, and at conferences such as the Audio Testimonies Symposium, Residual Noise, and the Sound of Sound Studies. Gilboa has participated in several master classes and artist residencies internationally, including the Atlantic Center for the Arts, the Honk-Tweet, and IRCAM's ManiFeste Academy. She holds degrees from Berklee College of Music and Columbia University. Currently, she is pursuing a Ph.D. in Brown University’s music and multimedia composition program. Recent activities include the release of a collection of works titled </span><em style="box-sizing:border-box;color:rgb(33,37,41);">The Other’s Conception</em><span style="color:rgb(33,37,41);"> and a collaboration with the rapper Sammus.</span></p> </div> </div> <hr> <div class='row'> <div class='col-12 col-sm-2 instructor-img'> <img alt='Michael Hamilton' class='rounded-circle' src='//online.berklee.edu/user/avatar?user_id=2404124'> </div> <div class='col-12 col-sm-10'> <div class='txt-lg fac-name'><a class="a-body-link" href="/faculty/michael-hamilton">Michael Hamilton</a></div> <p class='txt-sm'>Instructor</p> <p>Mike Hamilton has been producing, writing, recording, and performing music for over twenty years. He was a member of the late night band for the BET television show Live from LA, where he wrote and produced hip-hop pieces for guest artists such as Dr. Dre, Snoop Dog, Warren G, Method Man, P. Diddy, and Mystical. He has produced recordings for Interscope, Island Def Jam, and BGP Records. His recordings include Heart and Soul with the Winans, Thus Spoke Z with CTI, and the solo albums Natural Attraction and Here Together. While the saxophone is his principal instrument, he also plays keyboards, bass, and drums. </p> <div class='read-more-container'><a class='read-more' href='#'>Read More</a><div class='readmore-hidden'> <p>Hamilton has appeared and toured with multi-platinum recording artists such as James Brown, Tyrese, Savage Garden, Coolio, Joe, Ronny Jordan, Jonathan Butler, and Phil Perry. He has performed at the BBC London, the NFL World Bowl IX Halftime Show, the Turn Ben Stein On TV show, and the Today show. He has been featured at the Boston Globe Jazz Festival and the Santa Barbara Jazz Festival. He received his bachelor of music degree from Berklee College of Music, where he is now an assistant professor in the Contemporary Writing and Production department. <a class='read-less' href='#'> Read Less</a> </div> </div> </div> </div> <hr> <div class='row'> <div class='col-12 col-sm-2 instructor-img'> <img alt='Collin Russell' class='rounded-circle' src='//online.berklee.edu/user/avatar?user_id=22595413'> </div> <div class='col-12 col-sm-10'> <div class='txt-lg fac-name'><a class="a-body-link" href="/faculty/collin-russell">Collin Russell</a></div> <p class='txt-sm'>Instructor</p> <p>Collin Russell is a composer and sound designer, as well as an Assistant Professor of Electronic Production and Design at Berklee College of Music. A specialist in modular synthesis and through-composed electronic music, he enjoys composing pieces for film and modern dance.<br><br>Russell has worked in the electronic music instrument industry for nearly a decade and is currently a product consultant and manual author for Instruō Modular, a modular synthesizer manufacturer. Additionally, he is an editor and contributing writer for Bjooks, a music technology book publisher.<br><br>He also founded Grainbow Sound and works with the post-production company Audiobrew as a composer, sound designer, and voice actor.</p> </div> </div> <hr> <div class='row'> <div class='col-12 col-sm-2 instructor-img'> <img alt='Carla Hassett' class='rounded-circle' src='//online.berklee.edu/user/avatar?user_id=27679561'> </div> <div class='col-12 col-sm-10'> <div class='txt-lg fac-name'><a class="a-body-link" href="/faculty/carla-hassett">Carla Hassett</a></div> <p class='txt-sm'>Instructor</p> <p>Carla Hassett is a Los Angeles based singer, songwriter, producer, recording artist, session singer, and music educator. Born in São Paulo Brazil, Carla was raised in Chicago and schooled in the city’s great recording studios where she learned to be a studio rat and jingle singer. Soon after moving to Los Angeles, Carla began touring with bands like Curiosity Killed the Cat, REO Speedwagon, and artists like Billy Idol, Sergio Mendes, Christopher Cross, Cristan Castro, and actor/musician Gary Sinise. Carla has backed up soul legend Solmon Burke, and performed with Brazilian artists Flora Purim and Airto Moreira, and Faith No More’s lead singer, Mike Patton. She sang on numerous albums for artists like Gino Vannelli, Spanish rock artist Enrique Bunbury, Brazilian country music superstar Paula Fernandes, Michael Bublé, and Mike Patton. At the Latin Grammy Person of the Year Show honoring treasured Brazilian artist Caetano Veloso, Carla sang for Veloso and other artists like Natalie Cole, Nelly Furtado, Seu Jorge, Lila Downs and other Latin music superstars. </p> <div class='read-more-container'><a class='read-more' href='#'>Read More</a><div class='readmore-hidden'> <p> <p>Carla has performed on TV shows like The Tonight Show, Dante Night Show, The Grammy Awards, and Pee Wee’s Playhouse. More recently, Carla was featured soloist in the Sonorama project for Pacific Standard Time LA/LA at the Getty, The LA Tribute to Luiz Melodia, the Film Composer Collective concert at the Theatricum Botanicum for film composer Matthew Ferraro, and the rock opera Feast of Friends at the Rio Threatre in Santa Cruz. Carla sang on several feature films, including the Oscar nominated (for best original song) RIO for composers Sergio Mendes, Carlinhos Brown, and John Powell, and RIO 2 with Janelle Monae and her band. In Brazil, the song “Teu Olhar,” which Carla produced and co-wrote, became the lover’s theme song for the popular telenovela Amor e Ódio. Back in the states, Carla sang and contracted vocal sessions for numerous Disney recordings in Portuguese and Spanish, and on countless commercial jingles. Carla sang on the pilot for the Amazon original Mozart In the Jungle, and on the Netflix original film, Like Father.<p> Inspired by her work with Caetano Veloso, Carla explored tropicália and jazz for her self-produced 2016 album, +Blue (whose title, “More Blue” was inspired by Veloso’s song “A Little More Blue”). On +Blue, Carla explored the meaning of “home” and the complexities of growing up between two countries and cultures: her birthplace, Brazil, and her adopted country, the U.S. NPR featured +Blue and interviewed Carla on Weekend Edition with Linda Wertheimer. <p> <p>In 2019, Carla released a vinyl single, Adriana, on the Burlacticus Recording Company label. Adriana, written by the great bossa nova guitarist and composer Roberto Menescal, was chosen by the label especially for Carla and her band for its exquisite groove in 5/4 meter, and intimate vocal style. During the recording session for Adriana, Carla tracked and produced an additional two songs of her own, Three Kings and Sempre Odara, which went on to win the John Lennon Songwriting Contest grand prize in jazz.<p>Carla graduated <em>Summa Cum Laude</em> with a degree in Music Production from Berklee Online and is currently a professor of commercial music at California State University, Los Angeles. She is on the songwriting team for the children’s web series, Outta The Books, and continues to perform, write, and produce music both in-house and remotely from her studio in Los Angeles. <a class='read-less' href='#'> Read Less</a> </div> </div> </div> </div> <hr> <div class='row'> <div class='col-12 col-sm-2 instructor-img'> <img alt='Anthony Schultz' class='rounded-circle' src='//online.berklee.edu/user/avatar?user_id=51616128'> </div> <div class='col-12 col-sm-10'> <div class='txt-lg fac-name'><a class="a-body-link" href="/faculty/anthony-schultz">Anthony Schultz</a></div> <p class='txt-sm'>Instructor</p> <p>Tony Schultz has been an audio engineer, music producer and composer for more than 28 years as owner & operator of Big T Productions in Boston. He is an assistant professor at The New England Institute of Art, where he has taught since 1997, specializing in MIDI and Audio Technology. He has been teaching for Berklee Online since 2016. </p> <div class='read-more-container'><a class='read-more' href='#'>Read More</a><div class='readmore-hidden'> <p>Tony has a bachelor’s of music degree in Music Production & Engineering from the Berklee College of Music and a master’s in Music Technology from the University of Newcastle in Callaghan, Australia. He has served three consecutive two-year terms as the chair of the Boston Section of the Audio Engineering Society and is currently serving his second two-year term as the AES VP of the Eastern Region of the US/Canada. He is also the current chair of Regions & Sections, overseeing all Pro and Student AES Sections Worldwide.<p>Past clients include RCA Records, Mercury Records, Virgin Records, WFNX, Filene's, Home Inc., EF Education, Schneider & Associates, Softskull Press Inc., Brand X Filmworks, Dudnyk Healthcare, Teatro de Marionettas de Venezuela, and the NAHB Production Group.<p>Tony has presented at a number of colleges including Berklee College of Music, Harvard University and the Royal College of Music in London.<p>He is a member of the Society of Professional Recording Services (SPARS), National Academy of Recording Arts & Sciences (NARAS), and the American Society of Composers, Authors & Publishers (ASCAP). <a class='read-less' href='#'> Read Less</a> </div> </div> </div> </div> </div> </div> </div> </div> </section> <section class='page-section content-relations'> <div class='container-fluid'> <div class='row'> <div class='col-12 col-lg-7'> <div class='content-section'> <h2>What's Next?</h2> <p class='overview'>When taken for credit, Music Production 101 can be applied towards the completion of these related programs:</p> <div class='associated-music-production-101'> <h4>Related Certificate Programs</h4> <ul class='related-certificates bo-list-lined'> <li> <a href='/certificates/electronic-music-production-and-sound-design-advanced-professional'> Electronic Music Production and Sound Design Advanced Professional Certificate </a> </li> <li> <a href='/certificates/general-music-studies-professional'> General Music Studies Professional Certificate </a> </li> <li> <a href='/certificates/general-music-studies-advanced-professional'> General Music Studies Advanced Professional Certificate </a> </li> </ul> </div> <h4>Related Degree Majors</h4> <ul class='related-degrees bo-list-lined'> <li> <a href='/music-degrees/undergraduate/music-production'> Bachelor's Degree in Music Production </a> </li> <li> <a href='/music-degrees/undergraduate/music-business'> Bachelor's Degree in Music Business </a> </li> <li> <a href='/music-degrees/undergraduate/music-composition-for-film-tv-and-games'> Bachelor's Degree in Music Composition for Film, TV, and Games </a> </li> <li> <a href='/music-degrees/undergraduate/interdisciplinary-music-studies-create-your-own-major'> Bachelor's Degree in Interdisciplinary Music Studies (Create Your Own Major) </a> </li> <li> <a href='/music-degrees/undergraduate/electronic-music-production-and-sound-design'> Bachelor's Degree in Electronic Music Production and Sound Design </a> </li> <li> <a href='/music-degrees/undergraduate/undeclared-option'> (Pre-Degree) Undeclared Option </a> </li> <li> <a href='/music-degrees/undergraduate/songwriting'> Bachelor's Degree in Songwriting </a> </li> <li> <a href='/music-degrees/undergraduate/guitar-performance'> Bachelor's Degree in Guitar Performance </a> </li> <li> <a href='/music-degrees/undergraduate/songwriting-and-producing-music'> Bachelor's Degree in Songwriting and Producing Music </a> </li> <li> <a href='/music-degrees/undergraduate/voice-performance'> Bachelor's Degree in Voice Performance </a> </li> <li> <a href='/music-degrees/undergraduate/piano-performance'> Bachelor's Degree in Piano Performance </a> </li> <li> <a href='/music-degrees/undergraduate/music-composition'> Bachelor's Degree in Music Composition </a> </li> </ul> </div> </div> </div> </div> </section> <section class='page-section related-careers' data-scroll-index='4' id='related-careers'> <div class='container-fluid'> <div class='row'> <div class='col-12 col-lg-7'> <h2>Related Music Career Role</h2> <p>Employers look for skills learned in this course, when hiring for the following music career role:</p> <div class='reuse-layer'> <a class='cr-link cr-block' href='/career-roles-in-music/technology-trainer-specialist' rel='nofollow'> <img class='img-fluid related-image-thumb' src='//www.berklee.edu/sites/default/files/styles/landscape_4_3_large/public/d7/bcm/career_communities/Trainer_Valencia_Classroom.jpg'> <h4>Technology Trainer/Specialist</h4> </a> </div> </div> </div> </div> </section> <hr> <section class='page-section content-advisors'> <div class='container-fluid'> <div class='row'> <div class='col-12 col-lg-7'> <div class='advisors content-section'> <h2>Questions?</h2> <p class='txt-lg'>Contact our Academic Advisors by phone at 1-866-BERKLEE (U.S.), 1-617-747-2146 (INT'L), or by email at <a href="mailto:advisors@online.berklee.edu">advisors@online.berklee.edu</a>.</p> </div> </div> </div> </div> </section> </div> <section class='course-nav-phone d-lg-none'> <div class='container-cta'> <a class='req-info' href='#footer-form'> <i> <div class='far fa-info-circle'></div> </i> Get Info </a> <a class='call-text' href='tel:18662375533'> <i> <div class='far fa-phone'></div> </i> Call </a> <a class='call-text' href='sms:18662375533'> <i> <div class='far fa-comments'></div> </i> Text </a> <div class='foxy_enroll'> <button class='add_to_cart btn-action bo-button'> <i class='far fa-check-square d-lg-none disabled'></i> Enroll Now <span> No application required </span> </button> </div> </div> </section> <script type="application/ld+json">{ "@context": "http://schema.org", "@type": "BreadcrumbList", "itemListElement": [{ "@type": "ListItem", "position": 1, "item": { "@id": "https://online.berklee.edu/courses", "name": "Courses" } },{ "@type": "ListItem", "position": 2, "item": { "@id": "https://online.berklee.edu/courses/music-production-101", "name": "Music Production 101", "image": "https://assets.online.berklee.edu/berklee-online-logo-red-gray.png" } }] } </script><script type="application/ld+json">{ "@context": "http://schema.org", "@type": "Product", "name": "Music Production 101", "sku": "3-Credit Course (OLMSC-101)", "image": [ "https://assets.online.berklee.edu/berklee-online-logo-red-gray.png" ], "description": "By the end of the course, you’ll be able to configure a personal production workspace and use software instruments and audio recordings to produce music.", "brand": { "@type": "Thing", "name": "Course" }, "offers": { "@type": "Offer", "priceCurrency": "USD", "price": "1545", "itemCondition": "http://schema.org/NewCondition", "availability": "http://schema.org/InStock", "seller": { "@type": "Organization", "name": "Berklee Online", "address": { "@type": "PostalAddress", "addressLocality": "Boston, MA", "postalCode": "02115", "streetAddress": "160 Massachusetts Avenue" } } } } </script><script type="application/ld+json">{ "@context": "http://schema.org", "@type": "Product", "name": "Music Production 101", "sku": "Non-Credit Course (OLMSC-101)", "image": [ "https://assets.online.berklee.edu/berklee-online-logo-red-gray.png" ], "description": "By the end of the course, you’ll be able to configure a personal production workspace and use software instruments and audio recordings to produce music.", "brand": { "@type": "Thing", "name": "Course" }, "offers": { "@type": "Offer", "priceCurrency": "USD", "price": "1290", "itemCondition": "http://schema.org/NewCondition", "availability": "http://schema.org/InStock", "seller": { "@type": "Organization", "name": "Berklee Online", "address": { "@type": "PostalAddress", "addressLocality": "Boston, MA", "postalCode": "02115", "streetAddress": "160 Massachusetts Avenue" } } } } </script><script type="application/ld+json">{ "@context": "http://schema.org", "@type": "Course", "name": "Music Production 101", "courseCode": "OLMSC-101", "description": "By the end of the course, you’ll be able to configure a personal production workspace and use software instruments and audio recordings to produce music.", "provider": { "@type": "Organization", "name": "Berklee Online", "address": { "@type": "PostalAddress", "addressLocality": "Boston, MA", "postalCode": "02115", "streetAddress": "160 Massachusetts Avenue" }, "sameAs": "https://online.berklee.edu/courses/music-production-101" }, "educationalAlignment": [ { "@type": "AlignmentObject", "alignmentType": "educationalSubject", "educationalFramework": "3-Credit Course", "targetName": "Music Production 101", "targetUrl": "https://online.berklee.edu/courses/music-production-101" } ] } </script><script type="application/ld+json">{ "@context": "http://schema.org", "@type": "Course", "name": "Music Production 101", "courseCode": "OLMSC-101", "description": "By the end of the course, you’ll be able to configure a personal production workspace and use software instruments and audio recordings to produce music.", "provider": { "@type": "Organization", "name": "Berklee Online", "address": { "@type": "PostalAddress", "addressLocality": "Boston, MA", "postalCode": "02115", "streetAddress": "160 Massachusetts Avenue" }, "sameAs": "https://online.berklee.edu/courses/music-production-101" }, "educationalAlignment": [ { "@type": "AlignmentObject", "alignmentType": "educationalSubject", "educationalFramework": "Non-Credit Course", "targetName": "Music Production 101", "targetUrl": "https://online.berklee.edu/courses/music-production-101" } ] } </script><script> (function(i,s,o,g,r,a,m){i['GoogleAnalyticsObject']=r;i[r]=i[r]||function(){ (i[r].q=i[r].q||[]).push(arguments)},i[r].l=1*new Date();a=s.createElement(o), m=s.getElementsByTagName(o)[0];a.async=1;a.src=g;m.parentNode.insertBefore(a,m) })(window,document,'script','//www.google-analytics.com/analytics.js','ga'); ga('create', 'UA-2828821-86', 'auto'); ga('set','dimension1','OLMSC-101'); ga('set','dimension2','course'); ga('set','dimension3','1545'); ga('set','dimension4', 'BOL'); ga('require', 'ec'); ga('ec:addProduct', { 'id': "OLMSC-101", 'name': "Music Production 101", 'category': "Course" }); ga('ec:setAction', 'detail'); ga('send', 'pageview'); function ga_add_to_cart() { ga('ec:addProduct', { 'id': "OLMSC-101", 'name': "Music Production 101", 'category': "Course", 'price': 1545, 'variant': "Currently Enrolling In" }); ga('ec:setAction', 'add'); ga('send', 'event', 'UX', 'click', 'add to cart'); } window.course_item_id = 499436; window.course_code = "OLMSC-101" </script> </div> </section> <section data-swiftype-index='false' id='footer'> <section class='footer-form nopass' id='footer-form'> <div class='container-fluid'> <div class='row'> <div class='col-12 col-sm-12 col-md-12 col-lg-6 footer-form-copy'> <div class='details-container global'> <h2 class="unknown">Get Instant Access to Free Music Resources</h2> <h2 class="known">Access Free Music Resources</h2> <ul> <li> <img src="https://assets.online.berklee.edu/Footer+Form/sample-simple.svg" loading="lazy" width="70" height="70"/> <div class="resource-item-content"> <h4>Free Sample Lessons</h4> <p>Take our online school for a test drive with our free sample course, featuring 12 lessons from our most popular courses.</p> </div> </li> <li> <img src="https://assets.online.berklee.edu/Footer+Form/handbook-simple.svg" loading="lazy" width="70" height="70"/> <div class="resource-item-content"> <h4>Degree Handbooks</h4> <p>Download free course materials designed to provide you with marketable skills in music.</p> </div> </li> <li> <img src="https://assets.online.berklee.edu/Footer+Form/catalog-simple.svg" loading="lazy" width="70" height="70"/> <div class="resource-item-content"> <h4>Online Course Catalog</h4> <p>Browse more than 200 unique 12-week courses in a wide variety of musical interest areas.</p> </div> </li> <li> <img src="https://assets.online.berklee.edu/Footer+Form/news-simple.svg" loading="lazy" width="70" height="70"/> <div class="resource-item-content"> <h4>News and Exclusive Content</h4> <p>Receive the latest in music trends, video tutorials, podcasts, and more.</p> </div> </li> </ul> </div> </div> <div class='col-12 col-md-12 col-lg-5 offset-lg-1' id='lead-form-passless'> <div class='form-login-prompt text-center'> <h4> Already have an account? <br> <a href='https://online.berklee.edu/register/login?return_url=https://online.berklee.edu/courses/music-production-101'>Log in</a> to get access. <br> <br> </h4> <div class='text-start'> <!-- FORM: HEAD SECTION --> <meta http-equiv="Content-Type" content="text/html; charset=utf-8" /> <meta name="referrer" content="no-referrer-when-downgrade"> <!-- THIS SCRIPT NEEDS TO BE LOADED FIRST BEFORE wforms.js --> <script type="text/javascript" data-for="FA__DOMContentLoadedEventDispatch" src="https://berklee.tfaforms.net/js/FA__DOMContentLoadedEventDispatcher.js" defer></script> <script type="text/javascript"> document.addEventListener("FA__DOMContentLoaded", function(){ const FORM_TIME_START = Math.floor((new Date).getTime()/1000); let formElement = document.getElementById("tfa_0"); if (null === formElement) { formElement = document.getElementById("0"); } let appendJsTimerElement = function(){ let formTimeDiff = Math.floor((new Date).getTime()/1000) - FORM_TIME_START; let cumulatedTimeElement = document.getElementById("tfa_dbCumulatedTime"); if (null !== cumulatedTimeElement) { let cumulatedTime = parseInt(cumulatedTimeElement.value); if (null !== cumulatedTime && cumulatedTime > 0) { formTimeDiff += cumulatedTime; } } let jsTimeInput = document.createElement("input"); jsTimeInput.setAttribute("type", "hidden"); jsTimeInput.setAttribute("value", formTimeDiff.toString()); jsTimeInput.setAttribute("name", "tfa_dbElapsedJsTime"); jsTimeInput.setAttribute("id", "tfa_dbElapsedJsTime"); jsTimeInput.setAttribute("autocomplete", "off"); if (null !== formElement) { formElement.appendChild(jsTimeInput); } }; if (null !== formElement) { if(formElement.addEventListener){ formElement.addEventListener('submit', appendJsTimerElement, false); } else if(formElement.attachEvent){ formElement.attachEvent('onsubmit', appendJsTimerElement); } } }); </script> <link href="https://berklee.tfaforms.net/dist/form-builder/5.0.0/wforms-layout.css?v=a40b5496590371f110a42f110c76f04e01ed1f69" rel="stylesheet" type="text/css" /> <link href="https://berklee.tfaforms.net/uploads/themes/theme-91.css" rel="stylesheet" type="text/css" /> <link href="https://berklee.tfaforms.net/dist/form-builder/5.0.0/wforms-jsonly.css?v=a40b5496590371f110a42f110c76f04e01ed1f69" rel="alternate stylesheet" title="This stylesheet activated by javascript" type="text/css" /> <script type="text/javascript" src="https://berklee.tfaforms.net/wForms/3.11/js/wforms.js?v=a40b5496590371f110a42f110c76f04e01ed1f69"></script> <script type="text/javascript"> if(wFORMS.behaviors.prefill) wFORMS.behaviors.prefill.skip = true; </script> <script type="text/javascript" src="https://berklee.tfaforms.net/wForms/3.11/js/localization-en_US.js?v=a40b5496590371f110a42f110c76f04e01ed1f69"></script> <script> var FAoldJQ; if (typeof $ != 'undefined' && $.noConflict) FAoldJQ = $.noConflict(true); </script> <script src="https://berklee.tfaforms.net/dist/jquery/jquery.0416573c648d279fd758.js"></script> <script src="https://berklee.tfaforms.net/js/typeahead/v1.2.0/typeahead.bundle.js"></script> <script> var FA$ = $.noConflict(true); if (FAoldJQ) $ = FAoldJQ; </script> <link href="https://cdnjs.cloudflare.com/ajax/libs/font-awesome/4.4.0/css/font-awesome.min.css" rel="stylesheet" type="text/css" /> <!-- FORM: BODY SECTION --> <div class="wFormContainer" > <div class="wFormHeader"></div> <style type="text/css"> #tfa_1, *[id^="tfa_1["] { width: 300px !important; } #tfa_1-D, *[id^="tfa_1["][class~="field-container-D"] { width: auto !important; } #tfa_2, *[id^="tfa_2["] { width: 300px !important; } #tfa_2-D, *[id^="tfa_2["][class~="field-container-D"] { width: auto !important; } #tfa_3, *[id^="tfa_3["] { width: 300px !important; } #tfa_3-D, *[id^="tfa_3["][class~="field-container-D"] { width: auto !important; } #tfa_4, *[id^="tfa_4["] { width: 300px !important; } #tfa_4-D, *[id^="tfa_4["][class~="field-container-D"] { width: auto !important; } #tfa_50-L, label[id^="tfa_50["] { width: 20px !important; min-width: 0px; } </style><div class=""><div class="wForm" id="4928346-WRPR" data-language="en_US" dir="ltr"> <div class="codesection" id="code-4928346"><script type="text/javascript"> // If you've named a field with a variable name, this function will return its current value. function getFieldValue(fieldVariableName) { let className = 'calc-' + fieldVariableName; let fieldEl = document.getElementsByClassName(className)[0]; return fieldEl.value; } // Loads GTM with the given container ID. function loadGTM(gtmContainerID) { // This is the exact code snippet from Google, except the container ID is a variable. (function(w,d,s,l,i){w[l]=w[l]||[];w[l].push({'gtm.start': new Date().getTime(),event:'gtm.js'});var f=d.getElementsByTagName(s)[0], j=d.createElement(s),dl=l!='dataLayer'?'&l='+l:'';j.async=true;j.src= 'https://www.googletagmanager.com/gtm.js?id='+i+dl;f.parentNode.insertBefore(j,f); })(window,document,'script','dataLayer',gtmContainerID); } // This function gets used by hidden fields to grab utm campaign data from the URL function getQueryStringParams(sParam) { const params = new URLSearchParams(window.location.search) if (params.has(sParam)) { return params.get(sParam); } else { return 'parameter not in URL'; } } // When the page loads, try to find the gtmContainerID field and use it to load GTM. window.addEventListener('load', (event) => { let containerID = getFieldValue('gtmContainerID'); if (containerID) { loadGTM(containerID); dataLayer.push({event: 'virtualPageview'}); } else { } }); </script></div> <form method="post" action="https://berklee.tfaforms.net/api_v2/rest/workflow/processor" class="hintsBelow labelsAbove" id="4928346"> <fieldset id="tfa_5" class="section inline wf-acl-hidden"> <legend id="tfa_5-L">Hidden fields (do not delete)</legend> <div class="htmlSection" id="tfa_6"><div class="htmlContent" id="tfa_6-HTML">This group will not appear when actually filling out the form. See <a target="_blank" href="https://docs.google.com/document/d/1k9WyMtOto3L96_Xx6wMsQ_n_15OCHiHmpBRy0B7HCOA/edit#">this document</a> for more info about how to use these. </div></div> <input type="hidden" id="tfa_1" name="tfa_1" value="" class=""><input type="hidden" id="tfa_2" name="tfa_2" value="" class="formula=window.location.href;"><input type="hidden" id="tfa_3" name="tfa_3" value="" class=""><input type="hidden" id="tfa_4" name="tfa_4" value="GTM-PHJTR6V" class="calc-gtmContainerID"><input type="hidden" id="tfa_7" name="tfa_7" value="" class="formula=getQueryStringParams('utm_campaign')"><input type="hidden" id="tfa_11" name="tfa_11" value="" class="formula=getQueryStringParams('utm_medium');"><input type="hidden" id="tfa_9" name="tfa_9" value="" class="formula=getQueryStringParams('utm_source');"><input type="hidden" id="tfa_10" name="tfa_10" value="" class="formula=getQueryStringParams('utm_term');"><input type="hidden" id="tfa_13" name="tfa_13" value="" class="formula=getQueryStringParams('utm_content');"><input type="hidden" id="tfa_15" name="tfa_15" value="" class="formula=getQueryStringParams('campaign_id');"><input type="hidden" id="tfa_158" name="tfa_158" value="" class=""><div class="oneField field-container-D " id="tfa_153-D"> <label id="tfa_153-L" class="label preField " for="tfa_153">Subject Area Helper PL</label><br><div class="inputWrapper"><input type="text" id="tfa_153" name="tfa_153" value="" readonly title="Subject Area Helper PL" class="formula=subject readonly"></div> </div> <div class="oneField field-container-D " id="tfa_156-D"> <label id="tfa_156-L" class="label preField " for="tfa_156">Hidden Level Helper PL</label><br><div class="inputWrapper"><input type="text" id="tfa_156" name="tfa_156" value="" readonly title="Hidden Level Helper PL" class="formula=lvl readonly"></div> </div> </fieldset> <div class="oneField field-container-D " id="tfa_16-D"> <label id="tfa_16-L" class="label preField reqMark" for="tfa_16">First Name</label><br><div class="inputWrapper"><input aria-required="true" type="text" id="tfa_16" name="tfa_16" value="" autocomplete="off" title="First Name" class="required"></div> </div> <div class="oneField field-container-D " id="tfa_17-D"> <label id="tfa_17-L" class="label preField reqMark" for="tfa_17">Last Name</label><br><div class="inputWrapper"><input aria-required="true" type="text" id="tfa_17" name="tfa_17" value="" autocomplete="off" title="Last Name" class="required"></div> </div> <div class="oneField field-container-D " id="tfa_18-D"> <label id="tfa_18-L" class="label preField reqMark" for="tfa_18">Email Address</label><br><div class="inputWrapper"><input aria-required="true" type="text" id="tfa_18" name="tfa_18" value="" autocomplete="off" title="Email Address" class="validate-email required"></div> </div> <div class="oneField field-container-D " id="tfa_111-D"> <label id="tfa_111-L" class="label preField reqMark" for="tfa_111">What would you like to study?</label><br><div class="inputWrapper"><select aria-required="true" id="tfa_111" name="tfa_111" data-filter-dependent="#tfa_121" title="What would you like to study?" class="calc-subject required"><option value="">Please select...</option> <option value="tfa_112" id="tfa_112" class="calcval-Interdisciplinary\u0020Music\u0020Studies">Interdisciplinary Music Studies</option> <option value="tfa_113" id="tfa_113" class="calcval-Music\u0020Business">Music Business</option> <option value="tfa_114" id="tfa_114" class="calcval-Music\u0020Performance">Music Performance</option> <option value="tfa_115" id="tfa_115" class="calcval-Music\u0020Production">Music Production</option> <option value="tfa_116" id="tfa_116" class="calcval-Music\u0020Theory\u0020and\u0020Composition">Music Theory and Composition</option> <option value="tfa_117" id="tfa_117" class="calcval-Scoring\u0020for\u0020Film,\u0020TV,\u0020and\u0020Games">Scoring for Film, TV, and Games</option> <option value="tfa_118" id="tfa_118" class="calcval-Songwriting">Songwriting</option> <option value="tfa_119" id="tfa_119" class="calcval-Undecided">Undecided</option></select></div> </div> <div class="oneField field-container-D " id="tfa_121-D"> <label id="tfa_121-L" class="label preField reqMark" for="tfa_121">What level are you interested in?</label><br><div class="inputWrapper"><select aria-required="true" id="tfa_121" name="tfa_121" data-filter-control="#tfa_111" title="What level are you interested in?" class="calc-lvl required"><option value="">Please select...</option> <optgroup id="tfa_122" label="Interdisciplinary Music Studies" class="choiceGroup"> <option value="tfa_130" id="tfa_130" class="calcval-Undergraduate">Undergraduate</option> <option value="tfa_131" id="tfa_131" class="calcval-Graduate">Graduate</option> <option value="tfa_132" id="tfa_132" class="calcval-Certificates\u0020and\u0020Courses">Certificates and Courses</option> </optgroup> <optgroup id="tfa_123" label="Music Business" class="choiceGroup"> <option value="tfa_133" id="tfa_133" class="calcval-Undergraduate">Undergraduate</option> <option value="tfa_134" id="tfa_134" class="calcval-Graduate">Graduate</option> <option value="tfa_135" id="tfa_135" class="calcval-Certificates\u0020and\u0020Courses">Certificates and Courses</option> </optgroup> <optgroup id="tfa_124" label="Music Performance" class="choiceGroup"> <option value="tfa_136" id="tfa_136" class="calcval-Undergraduate">Undergraduate</option> <option value="tfa_137" id="tfa_137" class="calcval-Certificates\u0020and\u0020Courses">Certificates and Courses</option> </optgroup> <optgroup id="tfa_125" label="Music Production" class="choiceGroup"> <option value="tfa_138" id="tfa_138" class="calcval-Undergraduate">Undergraduate</option> <option value="tfa_139" id="tfa_139" class="calcval-Graduate">Graduate</option> <option value="tfa_159" id="tfa_159" class="calcval-Certificates\u0020and\u0020Courses">Certificates and Courses</option> </optgroup> <optgroup id="tfa_126" label="Music Theory and Composition" class="choiceGroup"> <option value="tfa_168" id="tfa_168" class="calcval-Undergraduate">Undergraduate</option> <option value="tfa_140" id="tfa_140" class="calcval-Certificates\u0020and\u0020Courses">Certificates and Courses</option> </optgroup> <optgroup id="tfa_127" label="Scoring for Film, TV, and Games" class="choiceGroup"> <option value="tfa_141" id="tfa_141" class="calcval-Undergraduate">Undergraduate</option> <option value="tfa_142" id="tfa_142" class="calcval-Graduate">Graduate</option> <option value="tfa_143" id="tfa_143" class="calcval-Certificates\u0020and\u0020Courses">Certificates and Courses</option> </optgroup> <optgroup id="tfa_128" label="Songwriting" class="choiceGroup"> <option value="tfa_144" id="tfa_144" class="calcval-Undergraduate">Undergraduate</option> <option value="tfa_145" id="tfa_145" class="calcval-Graduate">Graduate</option> <option value="tfa_146" id="tfa_146" class="calcval-Certificates\u0020and\u0020Courses">Certificates and Courses</option> </optgroup> <optgroup id="tfa_129" label="Undecided" class="choiceGroup"> <option value="tfa_147" id="tfa_147" class="calcval-Undergraduate">Undergraduate</option> <option value="tfa_148" id="tfa_148" class="calcval-Graduate">Graduate</option> <option value="tfa_149" id="tfa_149" class="calcval-Certificates\u0020and\u0020Courses">Certificates and Courses</option> <option value="tfa_154" id="tfa_154" class="calcval-Undecided">Undecided</option> </optgroup></select></div> </div> <div class="oneField field-container-D hintsBelow " id="tfa_151-D"> <label id="tfa_151-L" class="label preField reqMark" for="tfa_151">What program are you interested in?</label><br><div class="inputWrapper"> <input aria-required="true" type="text" id="tfa_151" name="tfa_151" value="" aria-describedby="tfa_151-HH" title="What program are you interested in?" data-dataset-allow-free-responses="0" data-dataset-clear-cache="1" autocomplete="off" data-dataset-parameters="tfa_153 tfa_156" data-dataset-timestamp="1669073906" data-dataset-id="c30187ce-eb48-4559-b147-dc7e57a5726b" data-dataset-map="b=tfa_158," data-dataset-type="salesforce-picklist" data-dataset-url="https://berklee.tfaforms.net/api_v2/datasets" class="required wfAutosuggest"><i class="fa fa-spinner fa-pulse fa-fw tt-spinner"></i><i class="fa fa-search tt-search" aria-hidden="true"></i><i class="fa fa-times-circle tt-clear no-input" tabindex="0" aria-label="Clear field" role="button"></i><span class="field-hint-inactive" id="tfa_151-H"><span id="tfa_151-HH" class="hint">Please select from drop down.</span></span> </div> </div> <div class="oneField field-container-D " id="tfa_160-D"> <label id="tfa_160-L" class="label preField " for="tfa_160">Would you like an advisor to contact you?</label><br><div class="inputWrapper"><select id="tfa_160" name="tfa_160" title="Would you like an advisor to contact you?" class=""><option value="">Please select...</option> <option value="tfa_165" id="tfa_165" class="">No, thank you</option> <option value="tfa_166" id="tfa_166" data-conditionals="#tfa_164" class="">Yes, by phone</option> <option value="tfa_167" id="tfa_167" class="">Yes, by email</option></select></div> </div> <div class="oneField field-container-D " id="tfa_164-D"> <label id="tfa_164-L" class="label preField reqMark" for="tfa_164">Phone Number</label><br><div class="inputWrapper"> <input aria-required="true" type="text" id="tfa_164" name="tfa_164" value="" autocomplete="off" aria-describedby="tfa_164-HH" data-condition="`#tfa_166`" title="Phone Number" class="required"><span class="field-hint-inactive" id="tfa_164-H"><span id="tfa_164-HH" class="hint">Please include country code.</span></span> </div> </div> <div class="oneField field-container-D " id="tfa_50-D" role="group" aria-labelledby="tfa_50-L" data-tfa-labelledby="-L tfa_50-L"><div class="inputWrapper"><span id="tfa_50" class="choices vertical "><span class="oneChoice"><input type="checkbox" value="tfa_51" class="" id="tfa_51" name="tfa_51" aria-labelledby="tfa_51-L" data-tfa-labelledby="tfa_50-L tfa_51-L" data-tfa-parent-id="tfa_50"><label class="label postField" id="tfa_51-L" for="tfa_51"><span class="input-checkbox-faux"></span><span id="docs-internal-guid-d26dc06c-7fff-581b-e661-5a726f53b366"><span style="font-size: 11pt; font-family: Arial; color: rgb(0, 0, 0); background-color: transparent; font-variant-numeric: normal; font-variant-east-asian: normal; vertical-align: baseline; white-space: pre-wrap;">By submitting this form you are agreeing to receive communications from Berklee and to have your information processed in accordance with the terms of our </span><a href="https://www.berklee.edu/policies/terms"><span style="font-size: 11pt; font-family: Arial; color: rgb(17, 85, 204); background-color: transparent; font-variant-numeric: normal; font-variant-east-asian: normal; text-decoration-line: underline; text-decoration-skip-ink: none; vertical-align: baseline; white-space: pre-wrap;">Privacy Policy</span></a><span style="font-size: 11pt; font-family: Arial; color: rgb(0, 0, 0); background-color: transparent; font-variant-numeric: normal; font-variant-east-asian: normal; vertical-align: baseline; white-space: pre-wrap;">. Berklee will not sell or rent your information to third parties and you may unsubscribe at any time.</span></span></label></span></span></div></div> <div class="actions" id="4928346-A" data-contentid="submit_button"><input type="submit" data-label="Submit" class="primaryAction" id="submit_button" value="Submit"></div> <div style="clear:both"></div> <input type="hidden" value="221-d60f48abeefff3088c7360f2163f3bf0" name="tfa_dbCounters" id="tfa_dbCounters" autocomplete="off"><input type="hidden" value="4928346" name="tfa_dbFormId" id="tfa_dbFormId"><input type="hidden" value="" name="tfa_dbResponseId" id="tfa_dbResponseId"><input type="hidden" value="c75c43dc6a7118ea1d12272f3e07a372" name="tfa_dbControl" id="tfa_dbControl"><input type="hidden" value="" name="tfa_dbWorkflowSessionUuid" id="tfa_dbWorkflowSessionUuid"><input type="hidden" value="1742278434" name="tfa_dbTimeStarted" id="tfa_dbTimeStarted" autocomplete="off"><input type="hidden" value="15" name="tfa_dbVersionId" id="tfa_dbVersionId"><input type="hidden" value="" name="tfa_switchedoff" id="tfa_switchedoff"> </form> </div></div><div class="wFormFooter"><p class="supportInfo"><br></p></div> <p class="supportInfo" > </p> </div> <script id="analytics-collector-script" type="text/javascript" src="https://berklee.tfaforms.net/dist/analytics/data-collector.b669b669e4e65b402126.js" data-customer-id="374" data-endpoint="https://analytics.formassembly.com/v1/traces" ></script> </div> </div> </div> </div> </div> </section> <footer class='main-footer' id='info-footer'> <div class='footer-row f-social'> <span class='f-social__header'>Stay Connected</span> <div class='f-social__icons'> <a href='//www.facebook.com/berkleeonline' rel='noopener' target='_blank' title='Visit our Facebook.'> <span class='fab fa-facebook-f'></span> </a> <a href='//www.instagram.com/berkleeonline/' rel='noopener' target='_blank' title='Visit our Instagram.'> <span class='fab fa-instagram'></span> </a> <a href='//www.youtube.com/user/BerkleeMusic' rel='noopener' target='_blank' title='Visit our YouTube.'> <span class='fab fa-youtube'></span> </a> <a href='//linkedin.com/company/berkleeonline' rel='noopener' target='_blank' title='Visit our LinkedIn.'> <span class='fab fa-linkedin'></span> </a> <a href='//www.tiktok.com/@berkleeonline' rel='noopener' target='_blank' title='Visit our TikTok.'> <span class='fab fa-tiktok'></span> </a> </div> </div> <div class='footer-row'> <div class='footer-block footer-block--1 f-school'> <img class="f-school__logo" src="https://berkleeonline-assets-east.s3.amazonaws.com/bo_logo-horizontal-reverse.svg" alt="Berklee Online logo"> <p class="f-school__body">Founded in 2002, Berklee Online is the premier innovator and largest provider of worldwide music education, offering more than 75,000 students from 164 countries the renowned curriculum of Berklee College of Music, at a fraction of the cost. With more than 18,000 annual enrollments in credit-based courses, certificates, bachelor’s, and master’s degree programs, and 3.1 million enrollments in massive open online courses, students receive expert music instruction and emerge with the skills to exceed the demands of the music industry. </p> <div class="f-school__info"> <span>855 Boylston St, Boston, MA 02116</span> <span>1-866-BERKLEE</span> <span>Int’l: +1-617-747-2146</span> </div> </div> <div class='footer-block footer-block--2 f-lists'> <ul class='f-list f-list--programs'> <li class='f-list__header'>Programs</li> <li> <a href='/music-degrees'>Degree Programs</a> </li> <li> <a href='/certificates'>Certificates</a> </li> <li> <a href='/courses'>Courses</a> </li> <li> <a href='/about/compare-online-music-education-offerings'>Compare Our Offerings</a> </li> </ul> <ul class='f-list f-list--resources'> <li class='f-list__header'>Resources</li> <li> <a href='/deals'>Student Deals</a> </li> <li> <a href='/military/getting-started'>Military Benefits</a> </li> <li> <a href='/mentor-collective'>Mentorship Program</a> </li> <li> <a href='/handbooks'>Handbooks</a> </li> <li> <a href='https://online.berklee.edu/takenote'>Take Note Online Magazine</a> </li> <li> <a href='/giftcard'>eGift Cards</a> </li> </ul> <ul class='f-list f-list--about'> <li class='f-list__header'>About</li> <li> <a href='/about/berklee-online'>About</a> </li> <li class='mission-link'> <a href='/about/mission'>Our Mission</a> </li> <li> <a href='/about/leadership-team'>Leadership Team</a> </li> <li> <a href='/instructors'>Instructor Directory</a> </li> <li> <a href='/scholarships'>Scholarships</a> </li> <li> <a href='/work-with-us'>Careers</a> </li> <li> <a href='/about/contact-us'>Contact/Help</a> </li> </ul> </div> <div class="footer-block footer-block--3 f-messaging"> <span class="f-messaging__header" style="font-weight:800;">Berklee Online eGift Cards</span> <a href="/giftcard"> <img src="https://air-prod.imgix.net/f56d7c88-df15-4686-b46f-8f4f001fd7a1.jpg?w=1080&h=1080&fm=jpg&fit=crop" alt="Berklee Online digital gift card image"> <p class="f-messaging__body">Music is a gift. Pass it on … or have someone pass it to you!</p> <span class="f-messaging__btn">Learn More</span> </a> </div> </div> </footer> <div class='footer-bottom'> <style> @media (max-width: 576px) { .f-awards .logos { flex-direction: column; } } </style> <div class="footer-row f-awards"> <p> Berklee is <a href="https://www.berklee.edu/institutional-assessment/accreditation" style="color: #FFF;" target="_blank">accredited</a> by the New England Commission of Higher Education (NECHE).</p> <div class="logos"> <img class="logo" src="//assets.online.berklee.edu/footer_logo.svg" alt="Berklee College of Music Logo" width="49" height="65"> <img class="logo" src="//assets.online.berklee.edu/footer/footer_award_upcea_2023_white.svg" alt="UPCEA Award 2005-2021" width="114" height="65"> <img class="logo" src="//assets.online.berklee.edu/footer_award_QS_Stars.svg" alt="QS Stars Award 2017" width="113" height="65"> <a class="logo student-satisfaction-rate" href="https://online.berklee.edu/takenote/berklee-online-achieves-97-percent-student-satisfaction/"> <img src="//assets.online.berklee.edu/footer/97_percent_satisfaction_rate_icon.svg" alt="97 percent Student Satisfaction Rate" width="186" height="50"> </a> <a class="logo student-satisfaction-rate" href="//online.berklee.edu/takenote/newsweek-ranks-berklee-online-no-5-on-list-of-americas-top-online-schools-2025/"> <img src="//assets.online.berklee.edu/footer/Newsweek_US-TOC2025_Logo_Hor.svg" alt="Image representing Berklee Online honored with Number 5 spot on Newsweek's list of America's top online schools" height="58"> </a> </div> <br> <p>Berklee Online is a University Professional and Continuing Education Association (UPCEA) award-winner eighteen years in a row (2005-2023).</p> </div> <div class='footer-row f-small'> <div class='left'> © Copyright 2001 - 2025 <a href='https://www.berklee.edu' rel='noopener' target='_blank'>Berklee College of Music</a> </div> <div class='right'> <a href="/about/terms">Terms</a> <span> • </span> <a href="/about/privacy">Privacy Policy</a> </div> </div> </div> <div class='bottom-bar-container'> <div class='appt-scheduler d-none d-lg-block' id='appt_scheduler'> <a href='#' id='time_trade_current' onclick='schedule_appt_toggle();' rel='nofollow' style='cursor:pointer;'> <i class='far fa-calendar-alt'></i> <span id='standard-message'> Schedule a Consultation with an Advisor </span> </a> </div> <!-- appt scheduler by Acuity --> <section class='appt-scheduler-section' id='utility-action'> <div class='container'> <div class='row'> <div class='col text-center' style='position:relative;'> <div class='utility-action-close'> <a id='scheduler_iframe_close' onclick='schedule_appt_toggle();'> Close × </a> </div> <div class='appt-scheduler-wrapper' id='appt_scheduler_wrapper'> <iframe frameBorder='0' height='800' src='https://app.acuityscheduling.com/schedule.php?owner=11423824&appointmentType=331977' width='100%'></iframe> </div> </div> </div> </div> </section> </div> </section> </div> <div class='st-search-container'></div> <div id='gdpr-notification'> <div class='inner'> <p> <span> We use cookies to improve your experience on our sites. </span> By use of our site, you agree to our <a href="/about/privacy#cookies" class="gdpr-dismiss" target="_blank">cookie policy</a>. </p> <div class='bo-button-alt gdpr-dismiss'> Got it </div> </div> </div> <div aria-hidden='true' aria-labelledby='gradProofModal' class='modal fade' id='gradProofModal' role='dialog' tabindex='-1'> <div class='modal-dialog' role='document'> <div class='modal-content'> <div class='modal-header'> <h3 class='modal-title' id='gradProofModalTitle' style='float: left;'>Proof of Bachelor's Degree to Enroll</h3> <button aria-label='Close' class='close' data-bs-dismiss='modal' type='button'> <span aria-hidden='true'>×</span> </button> </div> <div class='modal-body'> <p> Proof of a bachelor's degree is required to enroll in any <strong>non-degree, graduate-level certificate or course</strong>. </p> <hr> <p> <strong>Ready to submit an unofficial copy of your transcript?</strong> </p> <a class='bo-button bo-button-secondary wall-link-log-in' href='https://berkleeonline.tfaforms.net/4870584' target='_blank'> Submit Transcript </a> <hr> <h5>International Students</h5> <p> See the <a href="https://online.berklee.edu/about/enrolling-in-a-graduate-certificate-or-individual-course" target="_blank" rel="noindex, nofollow">Enrolling in a Graduate Certificate or Individual Course</a> page for more information. </p> </div> <div class='modal-footer'> <button class='bo-button-alt' data-bs-dismiss='modal' type='button'>Close</button> </div> </div> </div> </div> <script src="https://assets.online.berklee.edu/catalog/assets/4d4a3c43620add7f52f97c02254d2d4f604b5c53/packs/js/application-d7a385f6bccd720f28d3.js"></script> <script crossorigin='anonymous' src='https://kit.fontawesome.com/08ce533d2a.js'></script> <script src="https://online.berklee.edu/foxy/checkout.js"></script> <script src="https://cdn.foxycart.com/checkout.online.berklee.edu/loader.js" async="async" defer="defer"></script> </body> <script> </script> <script type="application/ld+json">{ "@context": "http://schema.org", "@type": "Organization", "address": { "@type": "PostalAddress", "addressLocality": "Boston, MA", "postalCode": "02115", "streetAddress": "160 Massachusetts Avenue" }, "legalName": "Berklee Online", "url": "https://online.berklee.edu", "contactPoint": [{ "@type": "ContactPoint", "telephone": "+1-866-BERKLEE", "contactType": "Student Advisors / Customer Service", "contactOption": "TollFree" }, { "@type": "ContactPoint", "telephone": "+1-646-350-2789", "contactType": "Student Advisors / Customer Service" }], "logo": "https://assets.online.berklee.edu/berklee-online-logo-red-gray.png", "sameAs": [ "https://www.facebook.com/berkleeonline", "https://twitter.com/BerkleeOnline", "https://www.instagram.com/berkleeonline/", "https://www.youtube.com/user/BerkleeMusic", "http://www.flickr.com/photos/berkleecollege", "http://berkleecollege.tumblr.com/", "http://www.pinterest.com/berkleecollege", "https://www.snapchat.com/add/berklee", "https://soundcloud.com/soundsofberklee"] } </script><script type="application/ld+json">{ "@context": "http://schema.org", "@type": "WebSite", "name": "Berklee Online", "url": "https://online.berklee.edu/", "potentialAction": { "@type": "SearchAction", "target": "https://online.berklee.edu/search_results?utf8=%E2%9C%93&query={search_term}&commit=GO", "query-input": "required name=search_term" } } </script>