CINXE.COM

The Language of Film and TV 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":105,"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.283.2.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.283.2",i="PROD",o="CDN",a="^2.0.0-alpha.17"},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.283.2.min.js"),i.o=(e,t)=>Object.prototype.hasOwnProperty.call(e,t),e={},t="NRBA-1.283.2.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-2oN05BjxuObKuOX8E0vq/zS51M+2HokmNPBRUrIC1fw3hpJqoI18/nckSFiqV11KxT7ag3C+FunKrR8n0PD9Ig==",249:"sha512-Zs5nIHr/khH6G8IhAEdnngg+P7y/IfmjU0PQmXABpCEtSTeKV22OYdaa9lENrW9uxI0lZ6O5e5dCnEMsTS0onA==",212:"sha512-LPKde7A1ZxIHzoSqWKxn5uWVhM9u76Vtmp9DMBf+Ry3mnn2jpsfyfigMYD5Yka2RG3NeIBqOwNYuPrWL39qn6w=="};(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.283.2.PROD"]=self["webpackChunk:NRBA-1.283.2.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),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{return e.reason.message=t+": "+e.reason.message,C(e.reason)}catch(t){return C(e.reason)}const r=C(e.reason);return 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;class he 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};pe(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]},pe(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),pe(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){var i=r.getResponseHeader("X-NewRelic-App-Data");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 pe(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 ge={},me=["pushState","replaceState"];function ve(e){const t=function(e){return(e||B.ee).get("history")}(e);return!p.RI||ge[t.debugId]++||(ge[t.debugId]=1,(0,W.YM)(t).inPlace(window.history,me,"-")),t}var be=i(3738);const{He:ye,bD:we,d3:Re,Kp:xe,TZ:Ee,Lc:Ae,uP:Te,Rz:Ne}=be;class Se extends b{static featureName=Ee;constructor(e,t=!0){super(e,Ee,t);if(!(0,m.V)(this.agentIdentifier))return void this.deregisterDrain();const r=this.ee;let n;ve(r),this.eventsEE=(0,F.u)(r),this.eventsEE.on(Te,(function(e,t){this.bstStart=(0,N.t)()})),this.eventsEE.on(Ae,(function(e,t){(0,x.p)("bst",[e[0],t,this.bstStart,(0,N.t)()],void 0,a.K7.sessionTrace,r)})),r.on(Ne+Re,(function(e){this.time=(0,N.t)(),this.startPath=location.pathname+location.hash})),r.on(Ne+xe,(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)(ye,[t],void 0,a.K7.sessionTrace,r)})),n.observe({type:we,buffered:!0})}catch(e){}this.importAggregator(e,{resourceObserver:n})}}var _e=i(2614);class Oe 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(_e.H3,"_").concat(_e.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===_e.g.FULL||e.sessionReplayMode===_e.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!==_e.g.FULL&&this.featAggregate.initializeRecording(_e.g.FULL,!0):(this.#i=_e.g.FULL,this.#c(t.Qb.API),this.recorder&&this.recorder.parent.mode!==_e.g.FULL&&(this.recorder.parent.mode=_e.g.FULL,this.recorder.stopRecording(),this.recorder.startRecording(),this.abortHandler=this.recorder.stopRecording))}}var Ie=i(3962);class Pe extends b{static featureName=Ie.TZ;constructor(e,t=!0){if(super(e,Ie.TZ,t),!p.RI||!(0,R.dV)().o.MO)return;const r=ve(this.ee);Ie.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 je=i(7378);const Ce={},ke=["appendChild","insertBefore","replaceChild"];function Le(e){const t=function(e){return(e||B.ee).get("jsonp")}(e);if(!p.RI||Ce[t.debugId])return t;Ce[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,ke,"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 He={};function Me(e){const t=function(e){return(e||B.ee).get("promise")}(e);if(He[t.debugId])return t;He[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 De={},Ke="setTimeout",Ue="setInterval",Ve="clearTimeout",Ge="-start",Fe=[Ke,"setImmediate",Ue,Ve,"clearImmediate"];function Be(e){const t=function(e){return(e||B.ee).get("timer")}(e);if(De[t.debugId]++)return t;De[t.debugId]=1;var r=(0,W.YM)(t);return r.inPlace(p.gm,Fe.slice(0,2),Ke+"-"),r.inPlace(p.gm,Fe.slice(2,3),Ue+"-"),r.inPlace(p.gm,Fe.slice(3),Ve+"-"),t.on(Ue+Ge,(function(e,t,n){e[0]=r(e[0],"fn-",null,n)})),t.on(Ke+Ge,(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 We={};function ze(e){const t=function(e){return(e||B.ee).get("mutation")}(e);if(!p.RI||We[t.debugId])return t;We[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:qe,d3:Ze,Kp:Ye,$p:Je,wW:Xe,e5:$e,tH:Qe,uP:et,rw:tt,Lc:rt}=je;class nt extends b{static featureName=qe;constructor(e,t=!0){if(super(e,qe,t),!p.RI)return;try{this.removeOnAbort=new AbortController}catch(e){}let r,n=0;const i=this.ee.get("tracer"),o=Le(this.ee),a=Me(this.ee),s=Be(this.ee),c=Z(this.ee),u=this.ee.get("events"),d=ne(this.ee),l=ve(this.ee),f=ze(this.ee);function h(e,t){l.emit("newURL",[""+window.location,t])}function g(){n++,r=window.location.hash,this[et]=(0,N.t)()}function m(){n--,window.location.hash!==r&&h(0,!0);var e=(0,N.t)();this[$e]=~~this[$e]+e-this[et],this[rt]=e}function v(e,t){e.on(t,(function(){this[t]=(0,N.t)()}))}this.ee.on(et,g),a.on(tt,g),o.on(tt,g),this.ee.on(rt,m),a.on(Xe,m),o.on(Xe,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([et,rt,"xhr-resolved"],this.featureName),u.buffer([et],this.featureName),s.buffer(["setTimeout"+Ye,"clearTimeout"+Ze,et],this.featureName),c.buffer([et,"new-xhr","send-xhr"+Ze],this.featureName),d.buffer([Qe+Ze,Qe+"-done",Qe+Je+Ze,Qe+Je+Ye],this.featureName),l.buffer(["newURL"],this.featureName),f.buffer([et],this.featureName),a.buffer(["propagate",tt,Xe,"executor-err","resolve"+Ze],this.featureName),i.buffer([et,"no-"+et],this.featureName),o.buffer(["new-jsonp","cb-start","jsonp-error","jsonp-end"],this.featureName),v(d,Qe+Ze),v(d,Qe+"-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 it=i(3333);class ot extends b{static featureName=it.TZ;constructor(e,t=!0){super(e,it.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&&(it.Zp.forEach((e=>(0,A.sp)(e,(e=>(0,x.p)("ua",[e],void 0,this.featureName,this.ee)),!0))),it.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 at=i(993),st=i(3785),ct=i(9414);class ut extends b{static featureName=at.TZ;constructor(e,t=!0){super(e,at.TZ,t);const r=this.ee;(0,ct.J)(r,p.gm.console,"log",{level:"info"}),(0,ct.J)(r,p.gm.console,"error",{level:"error"}),(0,ct.J)(r,p.gm.console,"warn",{level:"warn"}),(0,ct.J)(r,p.gm.console,"info",{level:"info"}),(0,ct.J)(r,p.gm.console,"debug",{level:"debug"}),(0,ct.J)(r,p.gm.console,"trace",{level:"trace"}),this.ee.on("wrap-logger-end",(function([e]){const{level:t,customAttributes:n}=this;(0,st.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:[he,w,S,Se,Oe,O,M,ot,ut,Pe,nt],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>The Language of Film and TV Course - Berklee Online</title> <meta name="description" content="Gain a thorough understanding of film and TV, and learn to communicate effectively with directors, producers, and others involved in the production process." /> <meta name="keywords" content="The Language of Film and TV 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="The Language of Film and TV" /> <meta class="swiftype" name="result_type" data-type="string" content="12-Week Course" /> <meta class="swiftype" name="result_description" data-type="string" content="Gain a thorough understanding of film and TV, and learn to communicate effectively with directors, producers, and others involved in the production process." /> <meta name="csrf-param" content="authenticity_token" /> <meta name="csrf-token" content="QO4bnbhsWDN5EtKyIp8jKMWXpatcZiFMKzSLDfyzlx5bsxIgvcCdkFD9ymPH3a4h35+KJwV+6xvRlVq3tygoEg==" /> <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/the-language-of-film-and-tv' rel='canonical'> <link rel="stylesheet" media="all" href="https://assets.online.berklee.edu/catalog/assets/f7870cd9a85c6a455f3a2c3ff2465f728a71f091/packs/css/application-eb4a8d47.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&amp;family=Carrois+Gothic&amp;display=swap" /> <meta content='summary' name='twitter:card'> <meta content='@BerkleeOnline' name='twitter:site'> <meta content='https://online.berklee.edu/courses/the-language-of-film-and-tv' property='og:url'> <meta content='product' property='og:type'> <meta content='The Language of Film and TV' property='og:title'> <meta content='Gain a thorough understanding of film and TV, and learn to communicate effectively with directors, producers, and others involved in the production process.' 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&#39; 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> Non-Degree Students: Last day to save up to $300 on select courses and certificates. <span class="btn-live-qa-cta">View Eligible Courses & Certificates</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 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/manage-your-stress-with-music" style="padding: 0; margin: 0;"> <img src="//assets.online.berklee.edu/catalog-site-heroes/live-workshops/lw-card--manage-your-stress-with-music-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;"><strong>Manage Your Stress with Music</strong><br/> This Masterclass will introduce you to strategies that will help you soothe, motivate, and modulate your feelings. <br><strong style="padding-top: 1rem;">Wed., March 5, only $99</strong></p> <a class="drop-info-cta" href="https://online.berklee.edu/masterclasses/manage-your-stress-with-music">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 Mar 10 for Apr 7, 2025 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: Save up to $200!</h3> <h4 style="border: none;">Enroll in an eligible certificate by March 17, 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: Save up to $200!</h3> <h4 style="border: none;">Enroll in an eligible course by March 17, 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 &amp; 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 &amp; 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 Feb 10 for Apr 7, 2025 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&#39;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/the-language-of-film-and-tv">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'> &larr; <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> </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>The Language of Film and TV</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=9143215'> <div class='course-subhead-text'> <p class='txt-sm'> Authored <span> by <a class="a-body-link" href="#instructors">Lori Landay</a> </span> </p> <div class='separator'>&#124;</div> <p class='txt-sm'> Course Code: <span> OLSOC-150 </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='127 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>As a composer or musician in the film and television industries, it&#39;s essential to be able to communicate effectively with directors, producers, and others involved in the production of these media. The Language of Film and TV course is designed to give you a thorough understanding of film and television and, specifically, how they make meaning beyond their stories and characters. </p> <div class='read-more-container'><a class='read-more' href='#'>Read More</a><div class='readmore-hidden'> <p>The course guides you through the history of film and television and the crucial concepts about the language they use to reach their audiences - a language that includes camera, frame composition, lighting, production design, acting-styles, editing, dialogue, plot, genre, themes, sound, and point of view. You&#39;ll learn about mise-en-sc&egrave;ne, cinematography, and editing, so that you are well versed in the design and visual elements of film and television.<p>The course begins with an overview of the origins of cinema, exploring the contributions of Edison, the Lumi&egrave;re brothers, and M&eacute;li&egrave;s, and then moves through the silent era into sound and the studio system, examining the role of narrative, acting, and sound and how they evolved. It then explores the emergence of television and how it became a part of everyday life.<p>You&#39;ll also learn about documentary, experimental, and animated film, and examine how digital technology is changing film, television, and media today. Throughout the course, you will screen and analyze such films as <em>The Great Train Robbery</em>, <em>It</em>, <em>The Crowd</em>, <em>Bringing Up Baby</em>, <em>Double Indemnity</em>, <em>North by Northwest</em>, <em>Citizen Kane</em>, <em>Singin&#39; in the Rain</em>, <em>Apocalypse Now</em>, <em>Raging Bull</em>, <em>Goodfellas</em>, and others. You will also choose films from the American Film Institute&#39;s <em>100 Years 100 Movies</em> list and other sources for analysis. Television series include <em>I Love Lucy</em> and currently airing series.<p>The goal of the course is to provide you with the skills to interpret and analyze film and television, including their historical, stylistic, and narrative contexts, in order to better prepare you for working in these industries.<p>By the end of the course, you will be able to:<ul><li>Identify and define terms associated with the film and television industry</li><li>Understand the historical development of film and television and the cultural contexts in which they evolved</li><li>Explain how film and television make visual and narrative meaning through a language that includes camera, frame composition, lighting, production design, acting-styles, editing, dialogue, plot, genre, themes, sound, and point of view
</li><li>Interpret and analyze film and television, with emphasis on the cultural contexts of filmmaking, television production, and film and television meaning</li><li>Better communicate with directors and producers in the media industries</li></ul> <a class='read-less' href='#'> Read Less</a> </div> </div> </div> <div class='overview-video'> <div class='responsive-media-container'> <div class='video-overview'><iframe src="//fast.wistia.net/embed/iframe/bfvocznkbl" allowtransparency="true" frameborder="0" scrolling="no" class="wistia_embed" name="wistia_embed" allowfullscreen mozallowfullscreen webkitallowfullscreen oallowfullscreen msallowfullscreen width="640" height="360"></iframe> <script src="//fast.wistia.net/assets/external/E-v1.js" async></script></div> </div> </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 Roles </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>,&nbsp;<a href="sms:18662375533">Text</a>,&nbsp;</span>or&nbsp;<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: Classical Hollywood Cinema</em></p><ul><li>The Eye &amp; the I of Cinema</li><li>Classical Hollywood Cinema</li><li>Film Narrative</li><li>Film Style</li><li>Terms for Film &amp; Television Analysis</li></ul><p><em>Lesson 2: Early Cinema: From Muybridge to The Great Train Robbery</em></p><ul><li>Photography into Moving Image: Muybridge and Early Image Toys</li><li>The Beginnings of Cinema: Reality, Artifice, &amp; Spectacle: Edison, Lumi&egrave;re, M&eacute;li&egrave;s</li><li>Edison: Entertainment</li><li>Lumiere Brothers and The Cinematographe: Actualites</li><li>Melies: The &quot;Magic&quot; of Illusion</li><li>Narrative and Style Together: The Great Train Robbery</li></ul><p><em>Lesson 3: Silent Film</em></p><ul><li>The Language of Film Develops</li><li>Narrative and Conventions: Genre</li><li>It and The Crowd</li><li>Music in the Silent Era</li></ul><p><em>Lesson 4: Coming of Sound in Film in the 1930-40s</em></p><ul><li>Narrative and Acting in Sound Film</li><li>Genre Iconography</li><li>Life Cycle of a Genre, Including Television</li><li>The Studio System</li></ul><p><em>Lesson 5: Film Sound</em></p><ul><li>Diegetic and Non-Diegetic Sound</li><li>The Sound Mix</li><li>The Elements of a Score</li><li>Sound and Image Make Meaning</li></ul><p><em>Lesson 6: Network Television</em></p><ul><li>Origins of Television Culture: I Love Lucy</li><li>Television Genres</li><li>Economics of Production</li><li>Television in Everyday Life</li></ul><p><em>Lesson 7: Documentary, Experimental, and Animated Film and Television&nbsp;</em></p><ul><li>Beyond Classical Hollywood Cinema</li><li>Documentary</li><li>Experimental/Avant-Garde</li><li>Animation</li><li>Influences on Mainstream Film and Television</li></ul><p><em>Lesson 8: Mise-en-Scene: What Is in the Shot&nbsp;</em></p><ul><li>Setting</li><li>Costume and Make-Up</li><li>Lighting</li><li>Performance and Movement (Acting, Blocking, Staging)</li></ul><p><em>Lesson 9: Cinematography: Photographic Qualities of the Shot&nbsp;</em></p><ul><li>The Look of an Image</li><li>Framing</li><li>Scale/Proximity</li><li>Camera Movement</li><li>How the Camera &quot;Speaks&quot; the Language of Film</li></ul><p><em>Lesson 10: Editing&nbsp;</em></p><ul><li>Continuity Editing: Invisible Style</li><li>The Development of Editing</li><li>Montage&mdash;Editing as Art</li><li>Editing in Television</li></ul><p><em>Lesson 11: Television in the Cable and Internet Eras&nbsp;</em></p><ul><li>Television Genres</li><li>Spectatorship in the Cable and Internet Era</li><li>What Stays the Same: The Sitcom Today</li></ul><p><em>Lesson 12: The Digital Era&nbsp;</em></p><ul><li>The Digital Revolution</li><li>From CGI to Whole Sets, Worlds, Digital Performers</li><li>Transmedia</li><li>Digital Television: Aesthetics and Narratives</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&nbsp;</h4><div class="truncate-paragraph imported-rtf"><p><strong>Prerequisite Courses, Knowledge, and/or Skills</strong><br /> This course does not have any prerequisites.</p> <p><strong>Textbook(s)</strong></p> <ul> <li><em><a rel="noopener noreferrer" target="_blank" href="https://www.amazon.com/Looking-at-Movies-Introduction-Film-dp-0393885836/dp/0393885836/">Looking at Movies: An Introduction to Film (7th Edition)</a></em> by Richard Barsam and Dave Monahan (W. W. Norton &amp; Company, 2021)</li> <li><em><a rel="noopener noreferrer" target="_blank" href="http://www.amazon.com/Bringing-Up-Baby-director-Rutgers/dp/0813513413">Bringing Up Baby</a></em>&nbsp;by Gerald Mast (Rutgers University Press, 1988)</li> <li><em><a rel="noopener noreferrer" target="_blank" href="https://www.amazon.com/I-Love-Lucy-TV-Milestones/dp/0814332617?ie=UTF8&*Version*=1&*entries*=0">I Love Lucy</a></em>&nbsp;by Lori Landay (Wayne State University Press, 2010)</li> </ul> <p><strong>Media and Subscriptions</strong></p> <ul> <li>You must have access to the following films, as well as the equipment necessary to play movies on chosen media (e.g. DVD player, if necessary):<ul> <li>Week 1: One of the following films:<ul> <li><em>Scarface</em> (1932)</li> <li><em>Golddiggers of 1933</em> (1933)</li> <li><em>Bride of Frankenstein</em> (1935)</li> <li><em>A Star Is Born</em> (1937)</li> <li><em>Wizard of Oz</em> (1939)</li> <li><em>Rebecca</em> (1940)</li> <li><em>Double Indemnity</em> (1941)</li> <li><em>Casablanca</em> (1942)</li> <li><em>Mildred Pierce</em> (1945)</li></ul></li> <li>Week 2: None needed; resources provided</li> <li>Week 3: <em>It</em> (1927), and one of the following films:<ul> <li><em>The General</em> (1926)</li> <li><em>Metropolis</em> (1927)</li> <li><em>Sunrise</em> (1927)</li> <li><em>City Lights</em> (1931)</li> <li><em>Nosferatu</em> (1922)</li> <li><em>The Gold Rush</em> (1925)</li> <li><em>La passion et la mort de Jeanne d'Arc [The Passion of Joan of Arc]</em> (1928)</li> <li><em>Das Cabinet des Dr. Caligari [The Cabinet of Dr. Caligari]</em> (1920)</li> <li><em>Bronenosets "Potyomkin" [The Battleship Potemkin]</em> (1925)</li> <li><em>Greed</em> (1924)</li> <li><em>Die Büchse der Pandora [Pandora's Box]</em> (1929)</li> <li><em>Wings</em> (1927)</li> <li><em>The Wind</em> (1928)</li> <li><em>Napoléon</em> (1927)</li> <li><em>Steamboat Bill, Jr</em>. (1928)</li> <li><em>Intolerance</em> (1916)</li> <li><em>Sherlock, Jr.</em> (1924)</li> <li><em>The Big Parade</em> (1925)</li> <li><em>Safety Last</em> (1923)</li> <li><em>The Phantom of the Opera</em> (1925)</li> <li><em>Broken Blossoms</em> (1919)</li> <li><em>The Kid</em> (1921)&nbsp;</li> <li><em>Foolish Wives</em> (1922)</li> <li><em>Les vampires</em> (1915-16)</li> <li><em>The Son of the Sheik</em> (1926)</li></ul></li> <li>Week 4: <em>Bringing Up Baby</em> (1938)</li> <li>Week 5: <em>Citizen Kane</em> (1941)</li> <li>Week 6: At least two episodes of the television show, <em>I Love Luc</em>y (1951-1957)</li> <li>Week 7: None needed-resources provided</li> <li>Week 8: <em>Rear Window</em> (1954)</li> <li>Week 9: <em>Breathless</em> (1960)</li> <li>Week 10: <em>The Graduate</em> (1967)</li> <li>Week 11: None needed; resources provided</li> <li>Week 12: None needed; resources provided</li></ul></li> </ul> <p><strong>Software</strong></p> <ul> <li>Basic video editing software, such as <a rel="noopener noreferrer" target="_blank" href="https://apps.apple.com/us/app/imovie/id377298193">iMovie</a> (Mac only), <a rel="noopener noreferrer" target="_blank" href="https://shotcut.org/">Shotcut</a> (free), etc.</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.&nbsp; </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='Lori Landay' class='rounded-circle' src='//online.berklee.edu/user/avatar?user_id=9143215'> </div> <div class='col-12 col-sm-10'> <div class='txt-lg fac-name'><a class="a-body-link" href="/faculty/lori-landay">Lori Landay</a></div> <p class='txt-sm'>Author</p> <p>Lori Landay is a professor of cultural studies at Berklee College of Music and an interdisciplinary scholar and new media artist exploring the making of visual meaning in twentieth- and twenty-first-century culture. She is the author of two books, <em>I Love Lucy</em> and <em>Madcaps</em>, <em>Screwballs</em>, and <em>Con Women: The Female Trickster in American Culture</em>, in addition to articles on topics such as virtual worlds, digital narrative, silent film, and television culture. Her creative work includes animation, graphic design, creative documentary, machinima, interactive virtual art installations, and music video. </p> <div class='read-more-container'><a class='read-more' href='#'>Read More</a><div class='readmore-hidden'> <p>Landay has been awarded the Dean&rsquo;s Award for Excellence in the Professional Education Division at Berklee, a Newbury Comics Faculty Fellowship, and a National Endowment for the Humanities Enduring Questions Grant. She has consulted on and appeared in <em>Finding Lucy</em>, an American Masters documentary airing nationally on PBS and internationally, in addition to serving as the Information Technology Officer for the Society for Cinema and Media Studies from 2002&ndash;2005. Landay holds a bachelor&#39;s degree from Colby College, which included a year abroad at the University of York in England, master&#39;s degrees in American Studies and English from Boston College and Indiana University, respectively, and a doctoral degree in English and American Studies from Indiana University. <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='Joey Newman' class='rounded-circle' src='//online.berklee.edu/user/avatar?user_id=69451485'> </div> <div class='col-12 col-sm-10'> <div class='txt-lg fac-name'><a class="a-body-link" href="/faculty/joey-newman">Joey Newman</a></div> <p class='txt-sm'>Instructor</p> <p>Joey Newman is an Emmy&reg;-nominated composer whose work has shaped both television and film landscapes with its emotional depth and creative style. With a career spanning over two decades, Newman has brought his distinctive musical voice to a variety of media, including critically acclaimed television series, award-winning feature films, and groundbreaking video games. </p> <div class='read-more-container'><a class='read-more' href='#'>Read More</a><div class='readmore-hidden'> <p>A graduate of the Berklee College of Music, Newman&rsquo;s early career began as co-composer on Ed Zwick and Marshall Herskovitz&rsquo;s ABC drama Once and Again with W.G. Snuffy Walden, quickly establishing him as a rising talent in television scoring. Going solo, Newman forged enduring relationships with studios like Warner Bros. TV, CBS TV Studios and Discovery. His ability to pull from his band experience and orchestral training led him to composing the scores to long-running TV series such as ABC&rsquo;s The Middle TLC&rsquo;s Little People, Big World; diverse &ldquo;dramedies&rdquo; such as CBS&rsquo; All Rise and one of Disney+&rsquo;s early series Diary of a Future President; award-winning independent films such as Two Eyes and Any Day Now; and Lineage, one of the biggest online role-playing games in history.<p>Whether it&rsquo;s his ability to capture an emotional melody on piano or an evocative atmosphere among ambient electronics, Newman&rsquo;s music offers a unique voice, brought to life through an innovative use of instrumentation and an openly creative dialogue with filmmakers and showrunners. Among his many collaborators, Newman has had the good fortune of working with major talents like Greg Berlanti, Eileen Heisler &amp; DeAnn Heline, Gail Berman, Gina Rodriguez, Ty Burrell, McG, Diablo Cody, Janet Yang, Jerry Bruckheimer, Travis Fine, Brian Henson, Jeff Rake, Rina Mimoun, Ilana Pe&ntilde;a, and Robin Shorr. He approaches every project with a commitment to storytelling, believing that music is a vital part of shaping the emotional experience of film and television. &ldquo;Writing music to picture is all about understanding each project&rsquo;s cinematic language and how best I can support it,&rdquo; he says. &ldquo;It&rsquo;s a shared process, and I&rsquo;m always striving to be a creative partner in telling the story.&rdquo;<p>From the scoring stage and recording studio to &ldquo;live-to-picture&rdquo; performances, Newman has brought his expertise to productions outside of his own. Whether collaborating as an orchestrator for a composer&rsquo;s project such as on Universal&rsquo;s Seabiscuit or Pixar&rsquo;s Cars; conducting an orchestra live for Pixar In Concert! or the launch event for Activision&rsquo;s video game Call of Duty: Vanguard; or producing/arranging an indie artist&rsquo;s album, Newman excels at finding distinctive, personalized approaches to elevate the music and performance. Newman&rsquo;s rich musical heritage includes his father, Joe Frank Carollo, who played bass and sang in the iconic 1970s rock group Hamilton, Joe Frank &amp; Reynolds. He is also part of the renowned Newman family of Hollywood composers, with his grandfather Lionel, great uncle Alfred, and cousins Randy, Thomas, and David all leaving an indelible mark on film music. <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='Sujay Pandit' class='rounded-circle' src='//online.berklee.edu/user/avatar?user_id=58708368'> </div> <div class='col-12 col-sm-10'> <div class='txt-lg fac-name'><a class="a-body-link" href="/faculty/sujay-pandit">Sujay Pandit</a></div> <p class='txt-sm'>Instructor</p> <p>Dr. Sujay Pandit&#39;s work focuses on the interplay between media, architecture, human rights, and philosophy. He is also keenly interested in film and design. Before his time at Berklee College, Sujay was a graphic designer and multimedia specialist for several media outlets including Scientific American, Art:21, the NYU Afghan Digital Library, and various corporations and non-profit/educational institutions. Dr. Pandit has also taught at Emerson College, New York University, Fordham University, and The School of Visual Arts in NYC.</p> </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, The Language of Film and TV can be applied towards the completion of these related programs:</p> <div class='associated-the-language-of-film-and-tv'> <h4>Related Certificate Programs</h4> <ul class='related-certificates bo-list-lined'> <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&#39;s Degree in Music Production </a> </li> <li> <a href='/music-degrees/undergraduate/music-business'> Bachelor&#39;s Degree in Music Business </a> </li> <li> <a href='/music-degrees/undergraduate/music-composition-for-film-tv-and-games'> Bachelor&#39;s Degree in Music Composition for Film, TV, and Games </a> </li> <li> <a href='/music-degrees/undergraduate/electronic-music-production-and-sound-design'> Bachelor&#39;s Degree in Electronic Music Production and Sound Design </a> </li> <li> <a href='/music-degrees/undergraduate/interdisciplinary-music-studies-create-your-own-major'> Bachelor&#39;s Degree in Interdisciplinary Music Studies (Create Your Own Major) </a> </li> <li> <a href='/music-degrees/undergraduate/undeclared-option'> (Pre-Degree) Undeclared Option </a> </li> <li> <a href='/music-degrees/undergraduate/songwriting'> Bachelor&#39;s Degree in Songwriting </a> </li> <li> <a href='/music-degrees/undergraduate/guitar-performance'> Bachelor&#39;s Degree in Guitar Performance </a> </li> <li> <a href='/music-degrees/undergraduate/songwriting-and-producing-music'> Bachelor&#39;s Degree in Songwriting and Producing Music </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 Roles</h2> <p>Employers look for skills learned in this course, when hiring for the following music career roles:</p> <div class='reuse-layer'> <a class='cr-link cr-block' href='/career-roles-in-music/music-director-television' 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/DWTS.JPG'> <h4>Music Director (Television)</h4> </a> <a class='cr-link cr-block' href='/career-roles-in-music/music-video-director' 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/musicvid_director.jpg'> <h4>Music Video Director</h4> </a> <a class='cr-link cr-block' href='/career-roles-in-music/producer-film-television-and-theater' 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/Producer.jpg'> <h4>Producer (Film, Television, and Theater)</h4> </a> <a class='cr-link cr-block' href='/career-roles-in-music/video-jockey-vj' 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/VJ.jpg'> <h4>Video Jockey (VJ)</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/the-language-of-film-and-tv", "name": "The Language of Film and TV", "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": "The Language of Film and TV", "sku": "3-Credit Course (OLSOC-150)", "image": [ "https://assets.online.berklee.edu/berklee-online-logo-red-gray.png" ], "description": "Gain a thorough understanding of film and TV, and learn to communicate effectively with directors, producers, and others involved in the production process.", "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": "The Language of Film and TV", "sku": "Non-Credit Course (OLSOC-150)", "image": [ "https://assets.online.berklee.edu/berklee-online-logo-red-gray.png" ], "description": "Gain a thorough understanding of film and TV, and learn to communicate effectively with directors, producers, and others involved in the production process.", "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": "The Language of Film and TV", "courseCode": "OLSOC-150", "description": "Gain a thorough understanding of film and TV, and learn to communicate effectively with directors, producers, and others involved in the production process.", "provider": { "@type": "Organization", "name": "Berklee Online", "address": { "@type": "PostalAddress", "addressLocality": "Boston, MA", "postalCode": "02115", "streetAddress": "160 Massachusetts Avenue" }, "sameAs": "https://online.berklee.edu/courses/the-language-of-film-and-tv" }, "educationalAlignment": [ { "@type": "AlignmentObject", "alignmentType": "educationalSubject", "educationalFramework": "3-Credit Course", "targetName": "The Language of Film and TV", "targetUrl": "https://online.berklee.edu/courses/the-language-of-film-and-tv" } ] } </script><script type="application/ld+json">{ "@context": "http://schema.org", "@type": "Course", "name": "The Language of Film and TV", "courseCode": "OLSOC-150", "description": "Gain a thorough understanding of film and TV, and learn to communicate effectively with directors, producers, and others involved in the production process.", "provider": { "@type": "Organization", "name": "Berklee Online", "address": { "@type": "PostalAddress", "addressLocality": "Boston, MA", "postalCode": "02115", "streetAddress": "160 Massachusetts Avenue" }, "sameAs": "https://online.berklee.edu/courses/the-language-of-film-and-tv" }, "educationalAlignment": [ { "@type": "AlignmentObject", "alignmentType": "educationalSubject", "educationalFramework": "Non-Credit Course", "targetName": "The Language of Film and TV", "targetUrl": "https://online.berklee.edu/courses/the-language-of-film-and-tv" } ] } </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','OLSOC-150'); ga('set','dimension2','course'); ga('set','dimension3','1545'); ga('set','dimension4', 'BOL'); ga('require', 'ec'); ga('ec:addProduct', { 'id': "OLSOC-150", 'name': "The Language of Film and TV", 'category': "Course" }); ga('ec:setAction', 'detail'); ga('send', 'pageview'); function ga_add_to_cart() { ga('ec:addProduct', { 'id': "OLSOC-150", 'name': "The Language of Film and TV", 'category': "Course", 'price': 1545, 'variant': "Currently Enrolling In" }); ga('ec:setAction', 'add'); ga('send', 'event', 'UX', 'click', 'add to cart'); } window.course_item_id = 24746490; window.course_code = "OLSOC-150" </script> </div> <div class='block-foreground'> <section> <div class='container-fluid'> <div class='row'> <div class='col-12 pricing bo-banner-footer'> <a class="a-black" href="/early-enrollment"><h3> Save up to $200! Enroll by March 17, and save when you enroll in an eligible course or certificate. <i> <div class='far fa-arrow-circle-right'></div> </i> </h3> </a> </div> </div> </div> </section> </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/the-language-of-film-and-tv'>Log in</a> to get access. <br> <br> </h4> <div class='text-start'> </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&rsquo;s, and master&rsquo;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&rsquo;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 &hellip; 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'> &copy; 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>&nbsp;&bull;&nbsp;</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'> &nbsp; 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 &times; </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&amp;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/f7870cd9a85c6a455f3a2c3ff2465f728a71f091/packs/js/application-bc7c832ab91e63b964f3.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>

Pages: 1 2 3 4 5 6 7 8 9 10