{"id":75090,"date":"2025-09-04T23:56:11","date_gmt":"2025-09-04T18:26:11","guid":{"rendered":"https:\/\/www.tothenew.com\/blog\/?p=75090"},"modified":"2025-09-17T11:45:57","modified_gmt":"2025-09-17T06:15:57","slug":"synamedia-senza-app-a-comprehensive-guide-to-start-initial-app-development","status":"publish","type":"post","link":"https:\/\/www.tothenew.com\/blog\/synamedia-senza-app-a-comprehensive-guide-to-start-initial-app-development\/","title":{"rendered":"Synamedia ( Senza ) App: A Comprehensive Guide to Start Initial App Development"},"content":{"rendered":"<h2>Introduction<\/h2>\n<p>Synamedia\u2019s Senza platform (commonly called Senza) powers modern media delivery and streaming. It is a cloud-based video streaming solution that brings apps and content directly to any TV. Senza uses video streaming technologies inspired by the gaming world to deliver the user interface from a cloud-based browser to a low-cost device called the Cloud Connector. Senza Cloud Connector works like an extended HDMI cable from the cloud to your TV, enabling web apps to run smoothly without depending on the TV\u2019s hardware.<\/p>\n<p>&nbsp;<\/p>\n<div id=\"attachment_75082\" style=\"width: 635px\" class=\"wp-caption aligncenter\"><img aria-describedby=\"caption-attachment-75082\" decoding=\"async\" loading=\"lazy\" class=\"wp-image-75082 size-large\" src=\"https:\/\/www.tothenew.com\/blog\/wp-ttn-blog\/uploads\/2025\/09\/Senza-img-1024x535.png\" alt=\"Senza Cloud Connector image\" width=\"625\" height=\"327\" srcset=\"\/blog\/wp-ttn-blog\/uploads\/2025\/09\/Senza-img-1024x535.png 1024w, \/blog\/wp-ttn-blog\/uploads\/2025\/09\/Senza-img-300x157.png 300w, \/blog\/wp-ttn-blog\/uploads\/2025\/09\/Senza-img-768x401.png 768w, \/blog\/wp-ttn-blog\/uploads\/2025\/09\/Senza-img-624x326.png 624w, \/blog\/wp-ttn-blog\/uploads\/2025\/09\/Senza-img.png 1408w\" sizes=\"(max-width: 625px) 100vw, 625px\" \/><p id=\"caption-attachment-75082\" class=\"wp-caption-text\">Senza Cloud Connector image<\/p><\/div>\n<p>&nbsp;<\/p>\n<h2>Key Features of Senza<\/h2>\n<p><strong>Web Applications:<\/strong> Apps run in a standard Chrome browser in the cloud. This means minimal hardware requirements, always up to date apps, no app store approval delays and straightforward integration.<\/p>\n<p><strong>Streaming Video: <\/strong>The user interface is streamed from the cloud, while video content streams directly from the CDN. You only pay for browser usage which makes the setup more cost-efficient.<\/p>\n<p><strong>Cloud Connector: <\/strong>A small HDMI device with Wi-Fi and a Bluetooth remote. It\u2019s fast, future-proof and practically invisible from a developer\u2019s perspective.<\/p>\n<p><strong>Security: <\/strong>End-to-end encrypted streaming with DRM protection. No local data is stored and each device comes with unique customer authentication.<\/p>\n<h2>Requirements for Senza Apps<\/h2>\n<p>Apps run best on Senza when built for the TV experience. At a high level, your app should:<\/p>\n<ul style=\"list-style-type: circle;\">\n<li>Be written using <strong>HTML5, JavaScript and CSS<\/strong><\/li>\n<li>It is designed for viewing on a <strong>1920 x 1080 HD<\/strong> <strong>screen<\/strong><\/li>\n<li>Support <strong>remote control navigation<\/strong> (up, down, left, right, OK and back)<\/li>\n<li>Play streaming video using <strong>DASH manifests, MP4 fragments, H.264 and AAC audio<\/strong><\/li>\n<li>Support <strong>Widevine DRM<\/strong> for protected content<\/li>\n<\/ul>\n<h2>Senza Account Setup<\/h2>\n<p>The first step is creating a Senza Developer Account. You can sign up directly on the <a href=\"https:\/\/senza.synamedia.com\/\">Developer site<\/a> or through a Synamedia representative. The process is simple:<\/p>\n<ol>\n<li>Enter your details and accept the terms<\/li>\n<li>Confirm via the email invitation to the Synamedia Cloud Portal<\/li>\n<li>Set your password and pay a one-time $100 fee(this may vary based on your app)<\/li>\n<li>Complete a short survey<\/li>\n<\/ol>\n<p>&nbsp;<\/p>\n<div id=\"attachment_75519\" style=\"width: 635px\" class=\"wp-caption aligncenter\"><img aria-describedby=\"caption-attachment-75519\" decoding=\"async\" loading=\"lazy\" class=\"wp-image-75519 size-large\" src=\"https:\/\/www.tothenew.com\/blog\/wp-ttn-blog\/uploads\/2025\/09\/Signup1-1024x486.png\" alt=\"SignUp Screen\" width=\"625\" height=\"297\" srcset=\"\/blog\/wp-ttn-blog\/uploads\/2025\/09\/Signup1-1024x486.png 1024w, \/blog\/wp-ttn-blog\/uploads\/2025\/09\/Signup1-300x142.png 300w, \/blog\/wp-ttn-blog\/uploads\/2025\/09\/Signup1-768x364.png 768w, \/blog\/wp-ttn-blog\/uploads\/2025\/09\/Signup1-1536x729.png 1536w, \/blog\/wp-ttn-blog\/uploads\/2025\/09\/Signup1-624x296.png 624w, \/blog\/wp-ttn-blog\/uploads\/2025\/09\/Signup1.png 1890w\" sizes=\"(max-width: 625px) 100vw, 625px\" \/><p id=\"caption-attachment-75519\" class=\"wp-caption-text\">SignUp Screen<\/p><\/div>\n<div id=\"attachment_75520\" style=\"width: 635px\" class=\"wp-caption aligncenter\"><img aria-describedby=\"caption-attachment-75520\" decoding=\"async\" loading=\"lazy\" class=\"wp-image-75520 size-large\" src=\"https:\/\/www.tothenew.com\/blog\/wp-ttn-blog\/uploads\/2025\/09\/signup-2-1024x476.png\" alt=\"SignUp Form\" width=\"625\" height=\"291\" srcset=\"\/blog\/wp-ttn-blog\/uploads\/2025\/09\/signup-2-1024x476.png 1024w, \/blog\/wp-ttn-blog\/uploads\/2025\/09\/signup-2-300x139.png 300w, \/blog\/wp-ttn-blog\/uploads\/2025\/09\/signup-2-768x357.png 768w, \/blog\/wp-ttn-blog\/uploads\/2025\/09\/signup-2-624x290.png 624w, \/blog\/wp-ttn-blog\/uploads\/2025\/09\/signup-2.png 1522w\" sizes=\"(max-width: 625px) 100vw, 625px\" \/><p id=\"caption-attachment-75520\" class=\"wp-caption-text\">SignUp Form<\/p><\/div>\n<p>&nbsp;<\/p>\n<p>Once done, you\u2019ll land in the <a href=\"https:\/\/account.synamedia.com\/\">Senza Console<\/a>, where you can:<\/p>\n<ul>\n<li>View your app<\/li>\n<li>Update your app URL (hosted on your server)<\/li>\n<li>Use Senza Simulator to run and debug the App<\/li>\n<\/ul>\n<p>Here&#8217;s a <a href=\"https:\/\/youtu.be\/lkDhOiAqQkI\">video overview<\/a> of the developer tools.<\/p>\n<h2>Development Workflow<\/h2>\n<h3>App Integration Steps<\/h3>\n<ul>\n<li><strong>Browser Integration:<\/strong> Test Chrome compatibility, remote control support and remove platform-specific dependencies.<\/li>\n<li><strong>Device Integration:<\/strong> Connect the Senza client library, get Cloud Connector info and configure geolocation using the device\u2019s IP.<\/li>\n<\/ul>\n<h3>Senza Library Integration<\/h3>\n<p>You can use the client library to integrate your app with the Senza platform. There are two ways to use the library:<\/p>\n<h4><strong>1. NPM Package<\/strong><\/h4>\n<p style=\"padding-left: 40px;\">Install the Senza SDK directly as an <a href=\"https:\/\/www.npmjs.com\/package\/senza-sdk\">NPM package<\/a>:<\/p>\n<pre style=\"padding-left: 40px;\">npm install senza-sdk\r\n<\/pre>\n<p style=\"padding-left: 40px;\">If your app has a package.json, add the dependency:<\/p>\n<pre style=\"padding-left: 40px;\">{\r\n  \"name\": \"myapp\",\r\n  \"version\": \"1.0.0\",\r\n  \"dependencies\": {\r\n    \"senza-sdk\": \"^4.2.54\"\r\n  }\r\n}\r\n<\/pre>\n<p style=\"padding-left: 40px;\">Then import it into your app:<\/p>\n<pre style=\"padding-left: 40px;\">import * as senza from \"senza-sdk\";\r\n<\/pre>\n<h4><strong>2. Script Tag<\/strong><\/h4>\n<p>If you\u2019re not using a module bundler like webpack, link the library directly:<\/p>\n<pre style=\"padding-left: 40px;\">&lt;head&gt;\r\n  &lt;script src=\"https:\/\/senza-sdk.streaming.synamedia.com\/latest\/bundle.js\" defer&gt;\r\n  &lt;\/script&gt;\r\n&lt;\/head&gt;\r\n<\/pre>\n<h3>Library Initialization and Important Functions<\/h3>\n<p>Once imported, initialize and use the senza object:<\/p>\n<pre style=\"padding-left: 40px;\">window.addEventListener(\"load\", async () =&gt; {\r\n  try {\r\n    await senza.init();       \/\/ Initialize SDK once at startup\r\n    senza.uiReady();          \/\/ Call when UI is ready to accept input\r\n  } catch (e) {\r\n    console.error(e);\r\n  }\r\n});\r\n<\/pre>\n<h4>Some important functions<\/h4>\n<ul>\n<li><strong>init() <\/strong>&#8211;\u00a0Initializes the SDK once at startup<\/li>\n<li><strong>uiReady() <\/strong>&#8211; Signals that the app\u2019s UI is ready for interaction<\/li>\n<li><strong>isRunningE2E() <\/strong>&#8211; Detect if the app is running end-to-end or locally<\/li>\n<li><strong>getConnectReason() <\/strong>&#8211; Check why the app was launched<\/li>\n<li><strong>getTriggerEvent() <\/strong>&#8211; Identify what reloaded the UI<\/li>\n<li><strong>setTimezone(&#8220;Europe\/London&#8221;) <\/strong>&#8211; Manually set the device timezone<\/li>\n<\/ul>\n<h2>Testing and Debugging<\/h2>\n<h3>Using the Device Simulator:<\/h3>\n<p>The Device Simulator allows you to develop and test your web app in the Senza environment directly from your browser, similar to how it would run on a physical cloud connector.<\/p>\n<ol>\n<li><strong>Launching:<\/strong> From the Senza Console, open the Simulator for any device (physical or virtual). It runs in a new browser tab and connects to your app\u2019s URL.<\/li>\n<li><strong>Viewing &amp; Navigation:<\/strong> Since the app streams from the cloud, you control it using the on-screen remote or keyboard shortcuts, not mouse clicks.<\/li>\n<li><strong>Debugger:<\/strong> Use the built-in Remote Debugger for advanced testing, including login flows, before enabling Device Authentication.<\/li>\n<li><strong>Limitations:<\/strong> Audio is not supported in browser mode and some encrypted videos may not play.<\/li>\n<\/ol>\n<p>&nbsp;<\/p>\n<div id=\"attachment_75523\" style=\"width: 635px\" class=\"wp-caption aligncenter\"><img aria-describedby=\"caption-attachment-75523\" decoding=\"async\" loading=\"lazy\" class=\"wp-image-75523 size-large\" src=\"https:\/\/www.tothenew.com\/blog\/wp-ttn-blog\/uploads\/2025\/09\/senza-simulator-1024x531.png\" alt=\"Simulator screenshot\" width=\"625\" height=\"324\" srcset=\"\/blog\/wp-ttn-blog\/uploads\/2025\/09\/senza-simulator-1024x531.png 1024w, \/blog\/wp-ttn-blog\/uploads\/2025\/09\/senza-simulator-300x156.png 300w, \/blog\/wp-ttn-blog\/uploads\/2025\/09\/senza-simulator-768x398.png 768w, \/blog\/wp-ttn-blog\/uploads\/2025\/09\/senza-simulator-1536x797.png 1536w, \/blog\/wp-ttn-blog\/uploads\/2025\/09\/senza-simulator-624x324.png 624w, \/blog\/wp-ttn-blog\/uploads\/2025\/09\/senza-simulator.png 1893w\" sizes=\"(max-width: 625px) 100vw, 625px\" \/><p id=\"caption-attachment-75523\" class=\"wp-caption-text\">Simulator screenshot<\/p><\/div>\n<p>&nbsp;<\/p>\n<h3>Using Senza Cloud Connector:<\/h3>\n<p>After using the Simulator, validate your app on a real Cloud Connector. Request a device from your Synamedia representative, then set it up in minutes:<\/p>\n<ol>\n<li>Connect the HDMI to the TV<\/li>\n<li>Power via USB<\/li>\n<li>Configure Wi-Fi using the on-screen steps<\/li>\n<\/ol>\n<p>You can also follow the Cloud Connector <a href=\"https:\/\/assets.ctfassets.net\/jrqu0d79gwpw\/648zcs5vgx6G1qBq8JhryV\/b66bb6dd6601e0046867cf845baf554e\/Senza_QSG_-_English.pdf\">Installation Guide<\/a>. Once connected, test your app\u2019s full performance on a TV and use <a href=\"https:\/\/youtu.be\/p6fzQaRXPXk\">remote debugging<\/a> for troubleshooting, just like in the Simulator.<\/p>\n<h2>Certification<\/h2>\n<p>Senza doesn\u2019t have a formal app certification process. You control when and how updates go live. The key is making sure your app is fully integrated, thoroughly tested, and compatible. Once it runs smoothly in the Simulator or on a Cloud Connector, you are ready to launch.<\/p>\n<h2>Conclusion<\/h2>\n<p>Senza makes it possible to deliver web apps directly to TVs without hardware limitations or lengthy certification processes. With its cloud-powered approach, you stream the UI from a browser while video comes directly from the CDN, ensuring efficiency and cost savings. With the Senza SDK, developer console, simulator, and Cloud Connector, you can move quickly from concept to deployment while ensuring a secure and optimized TV experience.<\/p>\n<p>&nbsp;<\/p>\n","protected":false},"excerpt":{"rendered":"<p>Introduction Synamedia\u2019s Senza platform (commonly called Senza) powers modern media delivery and streaming. It is a cloud-based video streaming solution that brings apps and content directly to any TV. Senza uses video streaming technologies inspired by the gaming world to deliver the user interface from a cloud-based browser to a low-cost device called the Cloud [&hellip;]<\/p>\n","protected":false},"author":1972,"featured_media":0,"comment_status":"open","ping_status":"closed","sticky":false,"template":"","format":"standard","meta":{"iawp_total_views":7},"categories":[3477],"tags":[1916,8016,4661,7154,8013,8019,8014,3629,8015,8020,8018,3476,6532],"aioseo_notices":[],"_links":{"self":[{"href":"https:\/\/www.tothenew.com\/blog\/wp-json\/wp\/v2\/posts\/75090"}],"collection":[{"href":"https:\/\/www.tothenew.com\/blog\/wp-json\/wp\/v2\/posts"}],"about":[{"href":"https:\/\/www.tothenew.com\/blog\/wp-json\/wp\/v2\/types\/post"}],"author":[{"embeddable":true,"href":"https:\/\/www.tothenew.com\/blog\/wp-json\/wp\/v2\/users\/1972"}],"replies":[{"embeddable":true,"href":"https:\/\/www.tothenew.com\/blog\/wp-json\/wp\/v2\/comments?post=75090"}],"version-history":[{"count":12,"href":"https:\/\/www.tothenew.com\/blog\/wp-json\/wp\/v2\/posts\/75090\/revisions"}],"predecessor-version":[{"id":76507,"href":"https:\/\/www.tothenew.com\/blog\/wp-json\/wp\/v2\/posts\/75090\/revisions\/76507"}],"wp:attachment":[{"href":"https:\/\/www.tothenew.com\/blog\/wp-json\/wp\/v2\/media?parent=75090"}],"wp:term":[{"taxonomy":"category","embeddable":true,"href":"https:\/\/www.tothenew.com\/blog\/wp-json\/wp\/v2\/categories?post=75090"},{"taxonomy":"post_tag","embeddable":true,"href":"https:\/\/www.tothenew.com\/blog\/wp-json\/wp\/v2\/tags?post=75090"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}