{"id":11587,"date":"2026-10-06T12:00:01","date_gmt":"2026-10-06T12:00:01","guid":{"rendered":"https:\/\/aipix.ai\/blog\/?p=11587"},"modified":"2026-10-06T15:08:59","modified_gmt":"2026-10-06T15:08:59","slug":"video-surveillance-media-server","status":"publish","type":"post","link":"https:\/\/aipix.ai\/blog\/en\/video-surveillance-media-server\/","title":{"rendered":"Video surveillance media server: how to scale VSaaS efficiently"},"content":{"rendered":"  \r\n<style>\r\n  .wpj-jtoc.--jtoc-theme-original.--jtoc-has-custom-styles {\r\n      --jtoc-numeration-suffix: \". \";    }\r\n          .wpj-jtoc.--jtoc-theme-original.--jtoc-has-custom-styles {\r\n      --jtoc-hierarchy-offset: 15px;\n--jtoc-background-color: #efefef;\n--jtoc-toc-box-shadow: 0 0 16px #c2c2c280;\n--jtoc-title-color: #000000;\n--jtoc-toggle-color: rgba(22,249,211,0.92);\n--jtoc-link-margin: 0 0 5px 0;\n--jtoc-link-font-size: 125%;    }<\/style>\r\n\r\n<div id=\"wpj-jtoc\" class=\"wpj-jtoc wpj-jtoc--main --jtoc-the-content --jtoc-theme-original --jtoc-title-align-left --jtoc-toggle-icon --jtoc-toggle-position-right --jtoc-toggle-1 --jtoc-has-numeration --jtoc-has-custom-styles --jtoc-is-unfolded\" >\r\n  <!-- TOC -->\r\n  <div class=\"wpj-jtoc--toc \" >\r\n              <div class=\"wpj-jtoc--header\">\r\n        <div class=\"wpj-jtoc--header-main\">\r\n                    <div class=\"wpj-jtoc--title\">\r\n                        <span class=\"wpj-jtoc--title-label\">Table of contents<\/span>\r\n          <\/div>\r\n                                <div class=\"wpj-jtoc--toggle-wrap\">\r\n                                                          <div class=\"wpj-jtoc--toggle-box\">\r\n                  <div class=\"wpj-jtoc--toggle\"><\/div>\r\n                <\/div>\r\n                          <\/div>\r\n                  <\/div>\r\n      <\/div>\r\n            <div class=\"wpj-jtoc--body\">\r\n            <nav class=\"wpj-jtoc--nav\">\r\n        <ol class=\"wpj-jtoc--items\"><li class=\"wpj-jtoc--item --jtoc-h2\">\r\n        <div class=\"wpj-jtoc--item-content\" data-depth=\"2\">\r\n                        <a href=\"#what-is-a-cloud-video-surveillance-media-server\" title=\"What is a cloud video surveillance media server?\" data-numeration=\"1\" >What is a cloud video surveillance media server?<\/a>\r\n                    <\/div><ol class=\"wpj-jtoc--items\"><li class=\"wpj-jtoc--item --jtoc-h3\">\r\n        <div class=\"wpj-jtoc--item-content\" data-depth=\"3\">\r\n                        <a href=\"#how-does-the-capture-module-process-incoming-streams\" title=\"How does the Capture module process incoming streams?\" data-numeration=\"1.1\" >How does the Capture module process incoming streams?<\/a>\r\n                    <\/div><\/li><\/ol><\/li><li class=\"wpj-jtoc--item --jtoc-h2\">\r\n        <div class=\"wpj-jtoc--item-content\" data-depth=\"2\">\r\n                        <a href=\"#how-many-streams-can-the-video-surveillance-media-server-process\" title=\"How many streams can the video surveillance media server process?\" data-numeration=\"2\" >How many streams can the video surveillance media server process?<\/a>\r\n                    <\/div><\/li><li class=\"wpj-jtoc--item --jtoc-h2\">\r\n        <div class=\"wpj-jtoc--item-content\" data-depth=\"2\">\r\n                        <a href=\"#video-surveillance-media-server-scaling-with-camera-number-growth\" title=\"Video surveillance media server scaling with camera number growth\" data-numeration=\"3\" >Video surveillance media server scaling with camera number growth<\/a>\r\n                    <\/div><\/li><li class=\"wpj-jtoc--item --jtoc-h2\">\r\n        <div class=\"wpj-jtoc--item-content\" data-depth=\"2\">\r\n                        <a href=\"#fault-tolerance-and-redundancy-for-vsaas-availability\" title=\"Fault tolerance and redundancy for VSaaS availability\" data-numeration=\"4\" >Fault tolerance and redundancy for VSaaS availability<\/a>\r\n                    <\/div><\/li><li class=\"wpj-jtoc--item --jtoc-h2\">\r\n        <div class=\"wpj-jtoc--item-content\" data-depth=\"2\">\r\n                        <a href=\"#how-can-a-video-surveillance-media-server-help-optimize-storage\" title=\"How can a video surveillance media server help optimize storage?\" data-numeration=\"5\" >How can a video surveillance media server help optimize storage?<\/a>\r\n                    <\/div><ol class=\"wpj-jtoc--items\"><li class=\"wpj-jtoc--item --jtoc-h3\">\r\n        <div class=\"wpj-jtoc--item-content\" data-depth=\"3\">\r\n                        <a href=\"#continuous-recording\" title=\"Continuous recording\" data-numeration=\"5.1\" >Continuous recording<\/a>\r\n                    <\/div><\/li><li class=\"wpj-jtoc--item --jtoc-h3\">\r\n        <div class=\"wpj-jtoc--item-content\" data-depth=\"3\">\r\n                        <a href=\"#recording-on-demand\" title=\"Recording on demand\" data-numeration=\"5.2\" >Recording on demand<\/a>\r\n                    <\/div><\/li><li class=\"wpj-jtoc--item --jtoc-h3\">\r\n        <div class=\"wpj-jtoc--item-content\" data-depth=\"3\">\r\n                        <a href=\"#scheduled-recording\" title=\"Scheduled recording\" data-numeration=\"5.3\" >Scheduled recording<\/a>\r\n                    <\/div><\/li><li class=\"wpj-jtoc--item --jtoc-h3\">\r\n        <div class=\"wpj-jtoc--item-content\" data-depth=\"3\">\r\n                        <a href=\"#thinned-recording\" title=\"Thinned recording\" data-numeration=\"5.4\" >Thinned recording<\/a>\r\n                    <\/div><\/li><li class=\"wpj-jtoc--item --jtoc-h3\">\r\n        <div class=\"wpj-jtoc--item-content\" data-depth=\"3\">\r\n                        <a href=\"#event-based-recording-to-reduce-unnecessary-archive-usage\" title=\"Event-based recording to reduce unnecessary archive usage\" data-numeration=\"5.5\" >Event-based recording to reduce unnecessary archive usage<\/a>\r\n                    <\/div><ol class=\"wpj-jtoc--items\"><li class=\"wpj-jtoc--item --jtoc-h4\">\r\n        <div class=\"wpj-jtoc--item-content\" data-depth=\"4\">\r\n                        <a href=\"#if-recording-is-not-active\" title=\"If recording is not active\" data-numeration=\"5.5.1\" >If recording is not active<\/a>\r\n                    <\/div><\/li><li class=\"wpj-jtoc--item --jtoc-h4\">\r\n        <div class=\"wpj-jtoc--item-content\" data-depth=\"4\">\r\n                        <a href=\"#if-recording-is-already-active\" title=\"If recording is already active\" data-numeration=\"5.5.2\" >If recording is already active<\/a>\r\n                    <\/div><\/li><\/ol><\/li><\/ol><\/li><li class=\"wpj-jtoc--item --jtoc-h2\">\r\n        <div class=\"wpj-jtoc--item-content\" data-depth=\"2\">\r\n                        <a href=\"#which-video-and-audio-codecs-does-aipix-mediaserver-support\" title=\"Which video and audio codecs does Aipix Mediaserver support?\" data-numeration=\"6\" >Which video and audio codecs does Aipix Mediaserver support?<\/a>\r\n                    <\/div><\/li><li class=\"wpj-jtoc--item --jtoc-h2\">\r\n        <div class=\"wpj-jtoc--item-content\" data-depth=\"2\">\r\n                        <a href=\"#how-does-a-surveillance-media-server-deliver-live-and-archived-video\" title=\"How does a surveillance media server deliver live and archived video?\" data-numeration=\"7\" >How does a surveillance media server deliver live and archived video?<\/a>\r\n                    <\/div><ol class=\"wpj-jtoc--items\"><li class=\"wpj-jtoc--item --jtoc-h3\">\r\n        <div class=\"wpj-jtoc--item-content\" data-depth=\"3\">\r\n                        <a href=\"#rtsp\" title=\"RTSP\" data-numeration=\"7.1\" >RTSP<\/a>\r\n                    <\/div><\/li><li class=\"wpj-jtoc--item --jtoc-h3\">\r\n        <div class=\"wpj-jtoc--item-content\" data-depth=\"3\">\r\n                        <a href=\"#hls\" title=\"HLS\" data-numeration=\"7.2\" >HLS<\/a>\r\n                    <\/div><\/li><li class=\"wpj-jtoc--item --jtoc-h3\">\r\n        <div class=\"wpj-jtoc--item-content\" data-depth=\"3\">\r\n                        <a href=\"#webrtc\" title=\"WebRTC\" data-numeration=\"7.3\" >WebRTC<\/a>\r\n                    <\/div><\/li><li class=\"wpj-jtoc--item --jtoc-h3\">\r\n        <div class=\"wpj-jtoc--item-content\" data-depth=\"3\">\r\n                        <a href=\"#live-and-dvr-player-handlers\" title=\"Live and DVR player handlers\" data-numeration=\"7.4\" >Live and DVR player handlers<\/a>\r\n                    <\/div><\/li><\/ol><\/li><li class=\"wpj-jtoc--item --jtoc-h2\">\r\n        <div class=\"wpj-jtoc--item-content\" data-depth=\"2\">\r\n                        <a href=\"#how-does-mediaserver-manage-video-archives\" title=\"How does Mediaserver manage video archives?\" data-numeration=\"8\" >How does Mediaserver manage video archives?<\/a>\r\n                    <\/div><\/li><li class=\"wpj-jtoc--item --jtoc-h2\">\r\n        <div class=\"wpj-jtoc--item-content\" data-depth=\"2\">\r\n                        <a href=\"#which-archive-formats-can-be-exported\" title=\"Which archive formats can be exported?\" data-numeration=\"9\" >Which archive formats can be exported?<\/a>\r\n                    <\/div><ol class=\"wpj-jtoc--items\"><li class=\"wpj-jtoc--item --jtoc-h3\">\r\n        <div class=\"wpj-jtoc--item-content\" data-depth=\"3\">\r\n                        <a href=\"#mp4\" title=\"MP4\" data-numeration=\"9.1\" >MP4<\/a>\r\n                    <\/div><\/li><li class=\"wpj-jtoc--item --jtoc-h3\">\r\n        <div class=\"wpj-jtoc--item-content\" data-depth=\"3\">\r\n                        <a href=\"#fmp4\" title=\"fMP4\" data-numeration=\"9.2\" >fMP4<\/a>\r\n                    <\/div><\/li><li class=\"wpj-jtoc--item --jtoc-h3\">\r\n        <div class=\"wpj-jtoc--item-content\" data-depth=\"3\">\r\n                        <a href=\"#snapshot-mp4\" title=\"Snapshot MP4\" data-numeration=\"9.3\" >Snapshot MP4<\/a>\r\n                    <\/div><\/li><li class=\"wpj-jtoc--item --jtoc-h3\">\r\n        <div class=\"wpj-jtoc--item-content\" data-depth=\"3\">\r\n                        <a href=\"#preview-mp4\" title=\"Preview MP4\" data-numeration=\"9.4\" >Preview MP4<\/a>\r\n                    <\/div><\/li><li class=\"wpj-jtoc--item --jtoc-h3\">\r\n        <div class=\"wpj-jtoc--item-content\" data-depth=\"3\">\r\n                        <a href=\"#raw-archive\" title=\"Raw archive\" data-numeration=\"9.5\" >Raw archive<\/a>\r\n                    <\/div><\/li><\/ol><\/li><li class=\"wpj-jtoc--item --jtoc-h2\">\r\n        <div class=\"wpj-jtoc--item-content\" data-depth=\"2\">\r\n                        <a href=\"#playback-of-dvr-recordings-without-recapturing-the-camera-stream\" title=\"Playback of DVR recordings without recapturing the camera stream\" data-numeration=\"10\" >Playback of DVR recordings without recapturing the camera stream<\/a>\r\n                    <\/div><\/li><li class=\"wpj-jtoc--item --jtoc-h2\">\r\n        <div class=\"wpj-jtoc--item-content\" data-depth=\"2\">\r\n                        <a href=\"#can-a-video-surveillance-media-server-use-different-storage-resources\" title=\"Can a video surveillance media server use different storage resources?\" data-numeration=\"11\" >Can a video surveillance media server use different storage resources?<\/a>\r\n                    <\/div><\/li><li class=\"wpj-jtoc--item --jtoc-h2\">\r\n        <div class=\"wpj-jtoc--item-content\" data-depth=\"2\">\r\n                        <a href=\"#cost-efficiency-of-vsaas-with-a-video-surveillance-media-server\" title=\"Cost-efficiency of VSaaS with a video surveillance media server\" data-numeration=\"12\" >Cost-efficiency of VSaaS with a video surveillance media server<\/a>\r\n                    <\/div><\/li><li class=\"wpj-jtoc--item --jtoc-h2\">\r\n        <div class=\"wpj-jtoc--item-content\" data-depth=\"2\">\r\n                        <a href=\"#building-a-scalable-video-surveillance-service\" title=\"Building a scalable video surveillance service\" data-numeration=\"13\" >Building a scalable video surveillance service<\/a>\r\n                    <\/div><\/li><\/ol>      <\/nav>\r\n          <\/div>\r\n      <\/div>\r\n<\/div>\r\n\n\n\n<h1 class=\"wp-block-heading\">Is it possible to scale a cloud video surveillance service while keeping infrastructure flexible and resource-efficient?<\/h1>\n\n\n\n<p>A v<a href=\"https:\/\/aipix.ai\/value-added-services\/vsaas\" type=\"link\" id=\"https:\/\/aipix.ai\/value-added-services\/vsaas\">ideo surveillance<\/a> media server sits at the center of workload. Every additional stream creates load across several infrastructure layers. <\/p>\n\n\n\n<p><a href=\"https:\/\/aipix.ai\/vas-platform\/mediaserver\" type=\"link\" id=\"https:\/\/aipix.ai\/vas-platform\/mediaserver\">Aipix Mediaserver<\/a> provides one example of how this type of infrastructure can be organized. Its architecture combines stream capture, recording, archive management, and media delivery within a single media-processing layer.<\/p>\n\n\n\n<p>Depending on hardware and workload, one Mediaserver node can process up to 5,000 streams. However, stream count alone does not determine whether a deployment is efficient. Scalability also depends on how processing resources, storage, bandwidth, recording policies, and redundancy are designed.<\/p>\n\n\n\n<h2 class=\"wp-block-heading joli-heading jtoc-heading\" id=\"what-is-a-cloud-video-surveillance-media-server\">What is a cloud video surveillance media server?<\/h2>\n\n\n\n<p>A video surveillance media server is a component that processes multimedia streams between cameras, storage systems, applications, and viewers.<\/p>\n\n\n\n<p>Its main responsibilities typically include:<\/p>\n\n\n\n<ul class=\"wp-block-list\">\n<li>receiving video and audio streams;<\/li>\n\n\n\n<li>processing incoming media;<\/li>\n\n\n\n<li>recording footage;<\/li>\n\n\n\n<li>managing archives;<\/li>\n\n\n\n<li>providing access to stored video;<\/li>\n\n\n\n<li>delivering live streams;<\/li>\n\n\n\n<li>delivering archived video.<\/li>\n<\/ul>\n\n\n\n<p>In Aipix Mediaserver, these functions are divided between several core components, including Capture, Streaming, and DVR.<\/p>\n\n\n\n<p>The Capture component connects to cameras and other media sources and receives incoming streams. The DVR component manages recording and video archives. The Streaming component delivers both live and archived media to applications and users.<\/p>\n\n\n\n<p>The overall media flow can be represented as:<\/p>\n\n\n\n<p><strong>Camera or stream source \u2192 Capture \u2192 RTP processing \u2192 Streaming and\/or DVR \u2192 Video delivery<\/strong><\/p>\n\n\n\n<p>This architecture keeps the main media operations within one processing layer while separating the responsibilities of stream acquisition, recording, storage, and playback.<\/p>\n\n\n\n<h3 class=\"wp-block-heading joli-heading jtoc-heading\" id=\"how-does-the-capture-module-process-incoming-streams\">How does the Capture module process incoming streams?<\/h3>\n\n\n\n<p>Before video can be recorded or delivered to viewers, Mediaserver must establish and maintain a connection with the camera or another stream source.<\/p>\n\n\n\n<p>This task is handled by the <strong>Capture module<\/strong>.<\/p>\n\n\n\n<p>Capture provides an API for internal Mediaserver modules that need access to video streams and supports RTSP stream acquisition using both TCP and UDP transport.<\/p>\n\n\n\n<p>Once a stream is received, Capture processes the incoming <strong>RTP packets<\/strong>, which carry the media data.<\/p>\n\n\n\n<p>Two handlers are involved in this process:<\/p>\n\n\n\n<ul class=\"wp-block-list\">\n<li><strong>Streamer<\/strong> \u2014 created when a stream is added to Mediaserver. It processes incoming RTP packets and forwards them to the components responsible for video streaming.<\/li>\n\n\n\n<li><strong>Recorder<\/strong> \u2014 created when recording is enabled for the stream. It processes the same incoming RTP packets and forwards them to the DVR\/archive subsystem.<\/li>\n<\/ul>\n\n\n\n<p>This architecture allows a single captured camera stream to be used for several purposes simultaneously.<\/p>\n\n\n\n<p>For example, a live stream can be delivered to a user while the same stream is also being recorded into the archive.<\/p>\n\n\n\n<p>Separating Capture from recording and playback also helps organize media-processing responsibilities as deployments grow.<\/p>\n\n\n\n<h2 class=\"wp-block-heading joli-heading jtoc-heading\" id=\"how-many-streams-can-the-video-surveillance-media-server-process\">How many streams can the video surveillance media server process?<\/h2>\n\n\n\n<p>According to the documented reference configuration, one <a href=\"https:\/\/docs.aipix.ai\/en\/documentation\/aipix-26.06\/architecture-of-mediasever\" type=\"link\" id=\"https:\/\/docs.aipix.ai\/en\/documentation\/aipix-26.06\/architecture-of-mediasever\">Mediaserver<\/a> node can process up to <strong>5,000 video streams<\/strong>, depending on hardware and workload.<\/p>\n\n\n\n<p>This processing can include stream capture, archive recording, and content delivery.<\/p>\n\n\n\n<p>For the 5,000-stream reference scenario, the approximate infrastructure configuration is:<\/p>\n\n\n\n<ul class=\"wp-block-list\">\n<li>32 vCPU;<\/li>\n\n\n\n<li>160 GB RAM;<\/li>\n\n\n\n<li>128 GB SSD;<\/li>\n\n\n\n<li>2 \u00d7 10 Gbit\/s network adapters;<\/li>\n\n\n\n<li>up to 3,000 TB HDD for 30 days of archive storage.<\/li>\n<\/ul>\n\n\n\n<p>These figures should not be interpreted as fixed requirements for every deployment.<\/p>\n\n\n\n<p>Actual resource consumption depends on factors such as:<\/p>\n\n\n\n<ul class=\"wp-block-list\">\n<li>number of streams;<\/li>\n\n\n\n<li>camera bitrate;<\/li>\n\n\n\n<li>resolution;<\/li>\n\n\n\n<li>codec;<\/li>\n\n\n\n<li>recording mode;<\/li>\n\n\n\n<li>retention period;<\/li>\n\n\n\n<li>archive size;<\/li>\n\n\n\n<li>number of viewers;<\/li>\n\n\n\n<li>incoming and outgoing network traffic.<\/li>\n<\/ul>\n\n\n\n<p>This distinction is important when estimating infrastructure costs. Two deployments with the same number of cameras can require very different amounts of compute, storage, and bandwidth.<\/p>\n\n\n\n<h2 class=\"wp-block-heading joli-heading jtoc-heading\" id=\"video-surveillance-media-server-scaling-with-camera-number-growth\">Video surveillance media server scaling with camera number growth<\/h2>\n\n\n\n<p>Scalability has two main dimensions: increasing the capacity of an existing node and adding more nodes.<\/p>\n\n\n\n<p>Aipix Mediaserver supports both <strong>vertical and horizontal scaling<\/strong>.<\/p>\n\n\n\n<p>Vertical scaling means increasing the resources of an individual server, such as CPU and RAM.<\/p>\n\n\n\n<p>Horizontal scaling means adding more Mediaserver nodes and distributing the workload between them.<\/p>\n\n\n\n<p>The documented reference configurations illustrate how hardware requirements change as stream count increases:<\/p>\n\n\n\n<figure class=\"wp-block-table\"><table class=\"has-fixed-layout\"><tbody><tr><th>Video streams<\/th><th class=\"has-text-align-right\" data-align=\"right\">vCPU<\/th><th class=\"has-text-align-right\" data-align=\"right\">RAM<\/th><th class=\"has-text-align-right\" data-align=\"right\">Network<\/th><th class=\"has-text-align-right\" data-align=\"right\">Reference 30-day HDD<\/th><\/tr><tr><td>200<\/td><td class=\"has-text-align-right\" data-align=\"right\">4<\/td><td class=\"has-text-align-right\" data-align=\"right\">16 GB<\/td><td class=\"has-text-align-right\" data-align=\"right\">1 Gbit\/s<\/td><td class=\"has-text-align-right\" data-align=\"right\">60 TB<\/td><\/tr><tr><td>500<\/td><td class=\"has-text-align-right\" data-align=\"right\">8<\/td><td class=\"has-text-align-right\" data-align=\"right\">48 GB<\/td><td class=\"has-text-align-right\" data-align=\"right\">2 \u00d7 1 Gbit\/s<\/td><td class=\"has-text-align-right\" data-align=\"right\">300 TB<\/td><\/tr><tr><td>1,000<\/td><td class=\"has-text-align-right\" data-align=\"right\">12<\/td><td class=\"has-text-align-right\" data-align=\"right\">64 GB<\/td><td class=\"has-text-align-right\" data-align=\"right\">10 Gbit\/s<\/td><td class=\"has-text-align-right\" data-align=\"right\">600 TB<\/td><\/tr><tr><td>2,000<\/td><td class=\"has-text-align-right\" data-align=\"right\">16<\/td><td class=\"has-text-align-right\" data-align=\"right\">80 GB<\/td><td class=\"has-text-align-right\" data-align=\"right\">10 Gbit\/s<\/td><td class=\"has-text-align-right\" data-align=\"right\">1,200 TB<\/td><\/tr><tr><td>5,000<\/td><td class=\"has-text-align-right\" data-align=\"right\">32<\/td><td class=\"has-text-align-right\" data-align=\"right\">160 GB<\/td><td class=\"has-text-align-right\" data-align=\"right\">2 \u00d7 10 Gbit\/s<\/td><td class=\"has-text-align-right\" data-align=\"right\">3,000 TB<\/td><\/tr><\/tbody><\/table><\/figure>\n\n\n\n<p>The table demonstrates why stream count should be treated as a sizing input rather than the only scalability metric.<\/p>\n\n\n\n<p>As deployments grow, different infrastructure resources may increase at different rates.<\/p>\n\n\n\n<p>For example, a larger number of viewers may increase outgoing network traffic without significantly changing archive storage requirements. A longer retention period may dramatically increase storage requirements without changing the number of incoming streams.<\/p>\n\n\n\n<h2 class=\"wp-block-heading joli-heading jtoc-heading\" id=\"fault-tolerance-and-redundancy-for-vsaas-availability\">Fault tolerance and redundancy for VSaaS availability<\/h2>\n\n\n\n<p>A large video surveillance deployment also needs to account for server failures.<\/p>\n\n\n\n<p>If thousands of camera streams depend on one processing node, a failure can affect a significant part of the service.<\/p>\n\n\n\n<p>This is why fault tolerance and redundancy are important in multi-server environments.<\/p>\n\n\n\n<p>Aipix Mediaserver can operate with Controller in a configuration where workloads can be redistributed between servers. If one server becomes unavailable, streams can be redirected to another available node.<\/p>\n\n\n\n<p>The practical value of this approach is not limited to backup.<\/p>\n\n\n\n<p>It reduces dependence on a single processing server and allows capacity planning and resilience to be considered together.<\/p>\n\n\n\n<p>In a larger deployment, additional nodes can therefore serve two purposes:<\/p>\n\n\n\n<ul class=\"wp-block-list\">\n<li>increasing processing capacity;<\/li>\n\n\n\n<li>improving service continuity if another node fails.<\/li>\n<\/ul>\n\n\n\n<p>For operators, this is an important distinction. Scalability without redundancy can increase capacity while still leaving the platform vulnerable to individual server failures.<\/p>\n\n\n\n<h2 class=\"wp-block-heading joli-heading jtoc-heading\" id=\"how-can-a-video-surveillance-media-server-help-optimize-storage\">How can a video surveillance media server help optimize storage?<\/h2>\n\n\n\n<p>Storage is one of the largest infrastructure requirements in cloud video surveillance.<\/p>\n\n\n\n<p>The amount of storage required depends heavily on camera bitrate, recording mode, video compression, scene activity, and archive retention period.<\/p>\n\n\n\n<p>The 3,000 TB figure associated with the 5,000-stream reference configuration is based on a defined archive scenario rather than being a fixed requirement for every deployment.<\/p>\n\n\n\n<p>The reference calculation assumes:<\/p>\n\n\n\n<ul class=\"wp-block-list\">\n<li>approximately 2 Mbit\/s per video stream;<\/li>\n\n\n\n<li>continuous 24\/7 recording;<\/li>\n\n\n\n<li>30 days of video retention.<\/li>\n<\/ul>\n\n\n\n<p>Different recording strategies can significantly change storage requirements.<\/p>\n\n\n\n<p>Aipix Mediaserver supports several archive recording modes, including:<\/p>\n\n\n\n<ul class=\"wp-block-list\">\n<li>continuous recording;<\/li>\n\n\n\n<li>recording on demand;<\/li>\n\n\n\n<li>event-based recording;<\/li>\n\n\n\n<li>scheduled recording;<\/li>\n\n\n\n<li>thinned recording.<\/li>\n<\/ul>\n\n\n\n<p>This means operators can define archive policies according to the requirements of each camera or use case instead of applying the same recording model to every stream.<\/p>\n\n\n\n<h3 class=\"wp-block-heading joli-heading jtoc-heading\" id=\"continuous-recording\">Continuous recording<\/h3>\n\n\n\n<p>With continuous recording, the video stream is archived without interruption.<\/p>\n\n\n\n<p>This approach is suitable when operators need a complete visual history from a camera, but it also creates the highest storage requirements.<\/p>\n\n\n\n<h3 class=\"wp-block-heading joli-heading jtoc-heading\" id=\"recording-on-demand\">Recording on demand<\/h3>\n\n\n\n<p>On-demand recording starts and stops following a client request.<\/p>\n\n\n\n<p>This can be useful when recording is required only for specific situations, investigations, or temporary monitoring tasks.<\/p>\n\n\n\n<h3 class=\"wp-block-heading joli-heading jtoc-heading\" id=\"scheduled-recording\">Scheduled recording<\/h3>\n\n\n\n<p>Scheduled recording activates archive recording according to a predefined timetable.<\/p>\n\n\n\n<p>For example, a camera could be configured to record continuously during business hours but use another recording strategy outside those hours.<\/p>\n\n\n\n<h3 class=\"wp-block-heading joli-heading jtoc-heading\" id=\"thinned-recording\">Thinned recording<\/h3>\n\n\n\n<p>Thinned recording reduces the amount of data written to the archive.<\/p>\n\n\n\n<p>Several approaches can be used.<\/p>\n\n\n\n<p>With continuous thinning, only key <strong>IDR frames<\/strong> are recorded.<\/p>\n\n\n\n<p>In another configuration, full recording can start only when requested by a client.<\/p>\n\n\n\n<p>Scene-activity-based recording provides another option. When there are no meaningful changes in the image, the system can record only IDR frames. When activity is detected in the scene, an event can trigger full-stream recording.<\/p>\n\n\n\n<p>This makes it possible to reduce archive consumption while still preserving more detailed footage when something important occurs.<\/p>\n\n\n\n<h3 class=\"wp-block-heading joli-heading jtoc-heading\" id=\"event-based-recording-to-reduce-unnecessary-archive-usage\">Event-based recording to reduce unnecessary archive usage<\/h3>\n\n\n\n<p>Event-based recording is designed for scenarios in which continuous 24\/7 recording is unnecessary but operators still need meaningful footage around an incident.<\/p>\n\n\n\n<p>The challenge is that recording only from the exact moment when an event is detected can remove important context.<\/p>\n\n\n\n<p>A person may enter the scene several seconds before motion detection is triggered, for example.<\/p>\n\n\n\n<p>To solve this problem, Aipix Mediaserver maintains a rolling video buffer for streams configured for event-based recording.<\/p>\n\n\n\n<p>Two parameters control the process:<\/p>\n\n\n\n<ul class=\"wp-block-list\">\n<li><strong>Stream depth (X)<\/strong> \u2014 determines how many seconds of recent video Mediaserver retains in the buffer. The supported range is <strong>5 to 120 seconds<\/strong>.<\/li>\n\n\n\n<li><strong>Timeout (Y)<\/strong> \u2014 determines how long Mediaserver continues recording after receiving an event trigger. The supported range is also <strong>5 to 120 seconds<\/strong>.<\/li>\n<\/ul>\n\n\n\n<p>As new video cycles arrive from the camera, they are written into the buffer.<\/p>\n\n\n\n<p>Once the configured buffer depth is reached, the oldest data is removed as new video arrives. As a result, the buffer always contains the most recent period of footage.<\/p>\n\n\n\n<p>When an event is triggered, Mediaserver checks whether archive recording for that stream is already active.<\/p>\n\n\n\n<h4 class=\"wp-block-heading joli-heading jtoc-heading\" id=\"if-recording-is-not-active\">If recording is not active<\/h4>\n\n\n\n<p>Mediaserver extracts the footage currently stored in the buffer and places it at the beginning of the new archive recording.<\/p>\n\n\n\n<p>It then continues recording the current live stream into the same archive file.<\/p>\n\n\n\n<p>Recording continues for the configured post-event timeout.<\/p>\n\n\n\n<p>The resulting archive can therefore contain:<\/p>\n\n\n\n<p><strong>Pre-event footage \u2192 Event \u2192 Post-event footage<\/strong><\/p>\n\n\n\n<p>For example, if the stream depth is configured to <strong>30 seconds<\/strong> and the post-event timeout is <strong>60 seconds<\/strong>, the archive can contain up to 30 seconds of video preceding the event and continue recording for 60 seconds after the event is received.<\/p>\n\n\n\n<p>Before the recording ends, Mediaserver resumes filling the buffer so that pre-event footage is available again if another event occurs.<\/p>\n\n\n\n<h4 class=\"wp-block-heading joli-heading jtoc-heading\" id=\"if-recording-is-already-active\">If recording is already active<\/h4>\n\n\n\n<p>If another event is received while recording is already in progress, Mediaserver does not need to start a completely separate recording.<\/p>\n\n\n\n<p>Instead, the system extends the existing recording period by the configured timeout.<\/p>\n\n\n\n<p>The point at which buffering resumes is also shifted accordingly.<\/p>\n\n\n\n<p>This approach preserves useful event context while avoiding the storage consumption associated with continuous recording for every camera.<\/p>\n\n\n\n<h2 class=\"wp-block-heading joli-heading jtoc-heading\" id=\"which-video-and-audio-codecs-does-aipix-mediaserver-support\">Which video and audio codecs does Aipix Mediaserver support?<\/h2>\n\n\n\n<p>Codec support is important because surveillance networks often contain cameras and devices from different manufacturers and generations.<\/p>\n\n\n\n<p>Aipix Mediaserver supports commonly used video codecs including:<\/p>\n\n\n\n<ul class=\"wp-block-list\">\n<li><strong>H.264<\/strong>, also <a href=\"https:\/\/www.wyrestorm.com\/blog\/h-264-vs-h-265-difference\/\" type=\"link\" id=\"https:\/\/www.wyrestorm.com\/blog\/h-264-vs-h-265-difference\/\">known<\/a> as Advanced Video Coding (AVC) or MPEG-4 Part 10;<\/li>\n\n\n\n<li><strong>H.265<\/strong>, also known as High Efficiency Video Coding (HEVC) or MPEG-H Part 2.<\/li>\n<\/ul>\n\n\n\n<p>H.264 remains one of the most widely used codecs in video surveillance and provides a practical balance between compression efficiency, compatibility, and processing requirements.<\/p>\n\n\n\n<p>H.265 can provide greater compression efficiency than H.264, potentially reducing the bandwidth and storage required for comparable video quality.<\/p>\n\n\n\n<p>Documented audio capabilities include:<\/p>\n\n\n\n<ul class=\"wp-block-list\">\n<li>AAC transcoding;<\/li>\n\n\n\n<li>PCMA;<\/li>\n\n\n\n<li>PCMU;<\/li>\n\n\n\n<li>G.711.<\/li>\n<\/ul>\n\n\n\n<p>In mixed-camera environments, codec support is particularly important because operators may use equipment from several manufacturers across different generations.<\/p>\n\n\n\n<p>A media server that supports the codecs already used by the camera fleet can process streams without requiring operators to standardize every device on the same media format.<\/p>\n\n\n\n<h2 class=\"wp-block-heading joli-heading jtoc-heading\" id=\"how-does-a-surveillance-media-server-deliver-live-and-archived-video\">How does a surveillance media server deliver live and archived video?<\/h2>\n\n\n\n<p>A cloud surveillance platform must deliver video to different applications, devices, and user environments.<\/p>\n\n\n\n<p>The <strong>Streaming module<\/strong> in Aipix Mediaserver is responsible for delivering both live streams and archived video.<\/p>\n\n\n\n<p>It supports several playback technologies:<\/p>\n\n\n\n<ul class=\"wp-block-list\">\n<li><strong>RTSP Live<\/strong> \u2014 live video streaming via RTSP;<\/li>\n\n\n\n<li><strong>RTSP DVR<\/strong> \u2014 archived video playback via RTSP;<\/li>\n\n\n\n<li><strong>HLS Live<\/strong> \u2014 live video streaming via HLS;<\/li>\n\n\n\n<li><strong>HLS DVR<\/strong> \u2014 archived video playback via HLS;<\/li>\n\n\n\n<li><strong>WebRTC Live<\/strong> \u2014 low-latency live video delivery;<\/li>\n\n\n\n<li><strong>WebRTC DVR<\/strong> \u2014 archive playback via WebRTC;<\/li>\n\n\n\n<li>archive export using fragmented MP4;<\/li>\n\n\n\n<li>archive export as TAR.<\/li>\n<\/ul>\n\n\n\n<p>Using several delivery protocols gives applications flexibility in how video is presented to users.<\/p>\n\n\n\n<h3 class=\"wp-block-heading joli-heading jtoc-heading\" id=\"rtsp\">RTSP<\/h3>\n\n\n\n<p>RTSP, or Real-Time Streaming Protocol, is commonly used to establish and manage media-streaming sessions.<\/p>\n\n\n\n<p>It is widely used within professional video and surveillance environments and supports operations such as playback, pause, stop, and navigation through recorded media.<\/p>\n\n\n\n<h3 class=\"wp-block-heading joli-heading jtoc-heading\" id=\"hls\">HLS<\/h3>\n\n\n\n<p>HLS provides HTTP-based media streaming and can be used for both live and archived video playback.<\/p>\n\n\n\n<p>It is particularly useful in environments where video needs to be delivered through web infrastructure or to a wide range of client devices.<\/p>\n\n\n\n<h3 class=\"wp-block-heading joli-heading jtoc-heading\" id=\"webrtc\">WebRTC<\/h3>\n\n\n\n<p>WebRTC enables real-time audio, video, and data transmission between applications and browsers.<\/p>\n\n\n\n<p>Its low-latency characteristics make it suitable for scenarios where minimizing the delay between camera capture and user playback is important.<\/p>\n\n\n\n<p>Different protocols can therefore be selected according to application architecture, latency requirements, network environment, and playback scenario.<\/p>\n\n\n\n<h3 class=\"wp-block-heading joli-heading jtoc-heading\" id=\"live-and-dvr-player-handlers\">Live and DVR player handlers<\/h3>\n\n\n\n<p>Internally, the Streaming module uses dedicated handlers for different playback scenarios.<\/p>\n\n\n\n<p><strong>HLS Live, RTSP Live, and WebRTC Live<\/strong> handlers process requests for real-time video.<\/p>\n\n\n\n<p><strong>HLS DVR, RTSP DVR, and WebRTC DVR<\/strong> handlers process requests to view footage stored in the archive.<\/p>\n\n\n\n<p>For archive playback, the <strong>DVR player<\/strong> retrieves the required RTP packets according to the requested stream identifier and timestamp.<\/p>\n\n\n\n<p>This allows users to navigate through recorded footage without establishing a new capture session with the original camera.<\/p>\n\n\n\n<p>The same Mediaserver infrastructure can therefore support both live viewing and archived playback while keeping Capture, storage, and playback responsibilities separate.<\/p>\n\n\n\n<h2 class=\"wp-block-heading joli-heading jtoc-heading\" id=\"how-does-mediaserver-manage-video-archives\">How does Mediaserver manage video archives?<\/h2>\n\n\n\n<p>Recording video is only one part of archive management.<\/p>\n\n\n\n<p>As archive size grows, the system also needs to determine:<\/p>\n\n\n\n<ul class=\"wp-block-list\">\n<li>how recordings are segmented;<\/li>\n\n\n\n<li>where they are stored;<\/li>\n\n\n\n<li>how long they remain available;<\/li>\n\n\n\n<li>when old data should be removed;<\/li>\n\n\n\n<li>how footage can be retrieved and exported.<\/li>\n<\/ul>\n\n\n\n<p>The <strong>DVR module<\/strong> handles these responsibilities.<\/p>\n\n\n\n<p>By default, DVR recordings are created in <strong>two-minute segments<\/strong>. The recording duration can be adjusted when the stream is configured through Controller.<\/p>\n\n\n\n<p>Recorded data is automatically stored in the configured local storage directory.<\/p>\n\n\n\n<p>Retention settings define how long archived footage remains available. When the retention period expires, older recordings can be automatically deleted so that storage can continue to be used for newer footage.<\/p>\n\n\n\n<p>The archive can also be completely deleted following a client request.<\/p>\n\n\n\n<p>Archive quotas and recording policies provide additional mechanisms for controlling storage consumption.<\/p>\n\n\n\n<p>For large VSaaS deployments, this makes archive management a fundamental infrastructure capability rather than only a playback feature.<\/p>\n\n\n\n<h2 class=\"wp-block-heading joli-heading jtoc-heading\" id=\"which-archive-formats-can-be-exported\">Which archive formats can be exported?<\/h2>\n\n\n\n<p>Surveillance footage often needs to be used outside the primary video platform.<\/p>\n\n\n\n<p>Operators may need to provide footage for investigations, share it with third parties, create short previews, or transfer recordings into another system.<\/p>\n\n\n\n<p>Aipix Mediaserver supports several archive export formats.<\/p>\n\n\n\n<h3 class=\"wp-block-heading joli-heading jtoc-heading\" id=\"mp4\">MP4<\/h3>\n\n\n\n<p>MP4 is one of the most widely supported video container formats.<\/p>\n\n\n\n<p>It is suitable when recorded footage needs to be played using common desktop, mobile, and media applications or shared outside the surveillance platform.<\/p>\n\n\n\n<h3 class=\"wp-block-heading joli-heading jtoc-heading\" id=\"fmp4\">fMP4<\/h3>\n\n\n\n<p>Fragmented MP4, or <strong>fMP4<\/strong>, divides media into smaller fragments.<\/p>\n\n\n\n<p>It is particularly useful in streaming-oriented architectures because individual fragments can be processed and delivered without waiting for an entire media file to be completed.<\/p>\n\n\n\n<h3 class=\"wp-block-heading joli-heading jtoc-heading\" id=\"snapshot-mp4\">Snapshot MP4<\/h3>\n\n\n\n<p>Snapshot MP4 provides access to selected moments within recorded material.<\/p>\n\n\n\n<p>It can be useful when operators need quick access to a particular point or event without reviewing the entire archive.<\/p>\n\n\n\n<h3 class=\"wp-block-heading joli-heading jtoc-heading\" id=\"preview-mp4\">Preview MP4<\/h3>\n\n\n\n<p>Preview MP4 provides a shorter representation of recorded material and can help users assess footage before opening or exporting the complete recording.<\/p>\n\n\n\n<h3 class=\"wp-block-heading joli-heading jtoc-heading\" id=\"raw-archive\">Raw archive<\/h3>\n\n\n\n<p>Raw archive export preserves the archive data in its original stored representation.<\/p>\n\n\n\n<p>This can be useful for workflows in which the original media data needs to be retained for further processing, analysis, migration, or specialized examination.<\/p>\n\n\n\n<p>Supporting multiple export formats allows archive storage and external video usage to remain separate concerns.<\/p>\n\n\n\n<p>Operators can keep footage inside an archive structure optimized for the platform while exporting it into a format appropriate for users or downstream applications.<\/p>\n\n\n\n<h2 class=\"wp-block-heading joli-heading jtoc-heading\" id=\"playback-of-dvr-recordings-without-recapturing-the-camera-stream\">Playback of DVR recordings without recapturing the camera stream<\/h2>\n\n\n\n<p>One important characteristic of the DVR architecture is that archived footage can be played independently of the current camera capture session.<\/p>\n\n\n\n<p>When a user requests historical footage, the DVR player loads the required data from the archive according to the stream and requested timestamp.<\/p>\n\n\n\n<p>The system does not need to reconnect to the camera and recapture the original footage.<\/p>\n\n\n\n<p>This is particularly important in large video surveillance environments because archive playback can create substantial user traffic of its own.<\/p>\n\n\n\n<p>Separating historical playback from camera capture reduces unnecessary interaction with cameras and allows stored footage to be delivered directly from archive infrastructure.<\/p>\n\n\n\n<h2 class=\"wp-block-heading joli-heading jtoc-heading\" id=\"can-a-video-surveillance-media-server-use-different-storage-resources\">Can a video surveillance media server use different storage resources?<\/h2>\n\n\n\n<p>Compute and storage do not necessarily grow at the same rate.<\/p>\n\n\n\n<p>A deployment with many cameras and a short retention period may require significant processing capacity but relatively limited archive storage.<\/p>\n\n\n\n<p>Another deployment may process fewer streams but retain footage for much longer.<\/p>\n\n\n\n<p>Aipix Mediaserver supports configurable DVR storage using defined physical storage locations and mount points.<\/p>\n\n\n\n<p>This allows storage infrastructure to be planned independently from the CPU and memory resources used for stream processing.<\/p>\n\n\n\n<p>Separating these requirements can make infrastructure planning more flexible.<\/p>\n\n\n\n<p>Compute capacity can be increased as stream-processing demand grows, while storage can be expanded according to archive depth, camera bitrate, and recording policies.<\/p>\n\n\n\n<h2 class=\"wp-block-heading joli-heading jtoc-heading\" id=\"cost-efficiency-of-vsaas-with-a-video-surveillance-media-server\">Cost-efficiency of VSaaS with a video surveillance media server<\/h2>\n\n\n\n<p>There is no single configuration that makes every video surveillance system cost-efficient.<\/p>\n\n\n\n<p>Efficiency comes from matching different infrastructure resources to the workloads they actually support.<\/p>\n\n\n\n<p>For example:<\/p>\n\n\n\n<ul class=\"wp-block-list\">\n<li>processing capacity should follow stream volume and complexity;<\/li>\n\n\n\n<li>storage should follow recording and retention requirements;<\/li>\n\n\n\n<li>network capacity should follow incoming and outgoing media traffic;<\/li>\n\n\n\n<li>recording modes should reflect the operational importance of each stream;<\/li>\n\n\n\n<li>delivery technologies should match application and latency requirements;<\/li>\n\n\n\n<li>redundancy should reflect service-availability requirements.<\/li>\n<\/ul>\n\n\n\n<p>Recording policy can have a particularly significant impact on infrastructure costs.<\/p>\n\n\n\n<p>A camera that records continuously generates a very different storage workload from a camera using event-based or thinned recording.<\/p>\n\n\n\n<p>Likewise, an installation with relatively few cameras but many concurrent viewers can create a higher outgoing bandwidth requirement than a much larger camera deployment with limited live viewing.<\/p>\n\n\n\n<p>This is why a video surveillance media server should be evaluated as part of a broader architecture rather than by stream capacity alone.<\/p>\n\n\n\n<p>A server capable of processing thousands of streams is valuable, but the overall deployment still depends on how efficiently capture, storage, networking, recording, playback, and failover are configured.<\/p>\n\n\n\n<h2 class=\"wp-block-heading joli-heading jtoc-heading\" id=\"building-a-scalable-video-surveillance-service\">Building a scalable video surveillance service<\/h2>\n\n\n\n<p>The central challenge in cloud video surveillance is not simply supporting more cameras.<\/p>\n\n\n\n<p>It is managing the combined workload created by those cameras.<\/p>\n\n\n\n<p>Each stream affects processing, networking, storage, archive management, and video delivery.<\/p>\n\n\n\n<p>As deployments grow, these requirements become increasingly interconnected.<\/p>\n\n\n\n<p>A well-designed video surveillance media server architecture therefore needs to provide more than high stream capacity. It should allow processing, storage, bandwidth, recording policies, and redundancy to scale according to their own requirements.<\/p>\n\n\n\n<p>Aipix Mediaserver illustrates this approach by combining stream capture, RTP processing, archive recording, media delivery, flexible recording modes, storage management, archive export, and multi-server scaling within one media-processing layer.<\/p>\n\n\n\n<p>The separation of <strong>Capture, Streaming, and DVR<\/strong> functions also helps create a predictable media workflow:<\/p>\n\n\n\n<p><strong>Camera \u2192 Capture \u2192 RTP processing \u2192 Live streaming and\/or archive recording \u2192 Storage \u2192 Playback or export<\/strong><\/p>\n\n\n\n<p>For VSaaS infrastructure planning, the key lesson is broader than any individual product.<\/p>\n\n\n\n<p>Efficient scalability comes from understanding the complete media workload and scaling each resource according to actual demand.<\/p>\n\n\n\n<p>To learn more about Aipix Mediaserver capabilities for efficiently launching and scaling a video surveillance service, contact the Aipix team for a detailed presentation.<\/p>\n\n\n\n<p class=\"has-text-align-center has-large-font-size\"><strong>To learn more about Aipix Mediaserver capabilities for efficient launch and scaling of the video surveillance service \u2013 contact our managers for in-detail presentation.<\/strong><\/p>\n\n\n\n<div class=\"wp-block-leadin-hubspot-form-block\">\n\t\t\t\t\t\t<script>\n\t\t\t\t\t\t\twindow.hsFormsOnReady = window.hsFormsOnReady || [];\n\t\t\t\t\t\t\twindow.hsFormsOnReady.push(()=>{\n\t\t\t\t\t\t\t\thbspt.forms.create({\n\t\t\t\t\t\t\t\t\tportalId: 26816904,\n\t\t\t\t\t\t\t\t\tformId: \"095071f9-0d28-4d7d-a38c-40bbe8037615\",\n\t\t\t\t\t\t\t\t\ttarget: \"#hbspt-form-1791304294000-7837385198\",\n\t\t\t\t\t\t\t\t\tregion: \"eu1\",\n\t\t\t\t\t\t\t\t\t\n\t\t\t\t\t\t\t})});\n\t\t\t\t\t\t<\/script>\n\t\t\t\t\t\t<div class=\"hbspt-form\" id=\"hbspt-form-1791304294000-7837385198\"><\/div><\/div>\n","protected":false},"excerpt":{"rendered":"<p>See how a video surveillance media server enables VSaaS to scale to up to 5,000 streams while supporting flexible archiving and high concurrent user loads.<\/p>\n<div class=\"post-tags-on-image\" style=\"display:none;\"><a href=\"https:\/\/aipix.ai\/blog\/en\/tag\/aipix-mediaserver\/\" class=\"post-tag\">Aipix MediaServer<\/a> <a href=\"https:\/\/aipix.ai\/blog\/en\/tag\/cloud-security\/\" class=\"post-tag\">Cloud Security<\/a> <a href=\"https:\/\/aipix.ai\/blog\/en\/tag\/telecom\/\" class=\"post-tag\">Telecom<\/a> <\/div>","protected":false},"author":8,"featured_media":11605,"comment_status":"closed","ping_status":"closed","sticky":false,"template":"","format":"standard","meta":{"content-type":"","footnotes":""},"categories":[48],"tags":[52,54,36,50,40],"class_list":{"0":"post-11587","1":"post","2":"type-post","3":"status-publish","4":"format-standard","5":"has-post-thumbnail","7":"category-blog","8":"tag-aipix-mediaserver","9":"tag-cloud-security","10":"tag-telecom","11":"tag-video-surveillance","12":"tag-vsaas"},"yoast_head":"<!-- This site is optimized with the Yoast SEO plugin v27.1.1 - https:\/\/yoast.com\/product\/yoast-seo-wordpress\/ -->\n<title>Video Surveillance Media Server for Scalable VSaaS | Aipix<\/title>\n<meta name=\"description\" content=\"See how a video surveillance media server supports scalable VSaaS with up to 5,000 streams, flexible archiving and high user loads\" \/>\n<meta name=\"robots\" content=\"index, follow, max-snippet:-1, max-image-preview:large, max-video-preview:-1\" \/>\n<link rel=\"canonical\" href=\"https:\/\/aipix.ai\/blog\/en\/video-surveillance-media-server\/\" \/>\n<meta property=\"og:locale\" content=\"en_US\" \/>\n<meta property=\"og:type\" content=\"article\" \/>\n<meta property=\"og:title\" content=\"Video Surveillance Media Server for Scalable VSaaS | Aipix\" \/>\n<meta property=\"og:description\" content=\"See how a video surveillance media server supports scalable VSaaS with up to 5,000 streams, flexible archiving and high user loads\" \/>\n<meta property=\"og:url\" content=\"https:\/\/aipix.ai\/blog\/en\/video-surveillance-media-server\/\" \/>\n<meta property=\"og:site_name\" content=\"aipix.ai\" \/>\n<meta property=\"article:publisher\" content=\"https:\/\/www.facebook.com\/aipix.platform\" \/>\n<meta property=\"article:published_time\" content=\"2026-10-06T12:00:01+00:00\" \/>\n<meta property=\"article:modified_time\" content=\"2026-10-06T15:08:59+00:00\" \/>\n<meta property=\"og:image\" content=\"https:\/\/aipix.ai\/blog\/wp-content\/uploads\/2026\/10\/video-surveillance-media-server-2.webp\" \/>\n\t<meta property=\"og:image:width\" content=\"2208\" \/>\n\t<meta property=\"og:image:height\" content=\"1472\" \/>\n\t<meta property=\"og:image:type\" content=\"image\/webp\" \/>\n<meta name=\"author\" content=\"Anastasiya Volchok\" \/>\n<meta name=\"twitter:card\" content=\"summary_large_image\" \/>\n<meta name=\"twitter:label1\" content=\"Written by\" \/>\n\t<meta name=\"twitter:data1\" content=\"Anastasiya Volchok\" \/>\n\t<meta name=\"twitter:label2\" content=\"Est. reading time\" \/>\n\t<meta name=\"twitter:data2\" content=\"15 minutes\" \/>\n<!-- \/ Yoast SEO plugin. -->","yoast_head_json":{"title":"Video Surveillance Media Server for Scalable VSaaS | Aipix","description":"See how a video surveillance media server supports scalable VSaaS with up to 5,000 streams, flexible archiving and high user loads","robots":{"index":"index","follow":"follow","max-snippet":"max-snippet:-1","max-image-preview":"max-image-preview:large","max-video-preview":"max-video-preview:-1"},"canonical":"https:\/\/aipix.ai\/blog\/en\/video-surveillance-media-server\/","og_locale":"en_US","og_type":"article","og_title":"Video Surveillance Media Server for Scalable VSaaS | Aipix","og_description":"See how a video surveillance media server supports scalable VSaaS with up to 5,000 streams, flexible archiving and high user loads","og_url":"https:\/\/aipix.ai\/blog\/en\/video-surveillance-media-server\/","og_site_name":"aipix.ai","article_publisher":"https:\/\/www.facebook.com\/aipix.platform","article_published_time":"2026-10-06T12:00:01+00:00","article_modified_time":"2026-10-06T15:08:59+00:00","og_image":[{"width":2208,"height":1472,"url":"https:\/\/aipix.ai\/blog\/wp-content\/uploads\/2026\/10\/video-surveillance-media-server-2.webp","type":"image\/webp"}],"author":"Anastasiya Volchok","twitter_card":"summary_large_image","twitter_misc":{"Written by":"Anastasiya Volchok","Est. reading time":"15 minutes"},"schema":{"@context":"https:\/\/schema.org","@graph":[{"@type":"Article","@id":"https:\/\/aipix.ai\/blog\/video-surveillance-media-server\/#article","isPartOf":{"@id":"https:\/\/aipix.ai\/blog\/video-surveillance-media-server\/"},"author":{"name":"Anastasiya Volchok","@id":"https:\/\/aipix.ai\/blog\/es\/#\/schema\/person\/55de0047250d2dc358f6ab695235df2b"},"headline":"Video surveillance media server: how to scale VSaaS efficiently","datePublished":"2026-10-06T12:00:01+00:00","dateModified":"2026-10-06T15:08:59+00:00","mainEntityOfPage":{"@id":"https:\/\/aipix.ai\/blog\/video-surveillance-media-server\/"},"wordCount":3153,"image":{"@id":"https:\/\/aipix.ai\/blog\/video-surveillance-media-server\/#primaryimage"},"thumbnailUrl":"https:\/\/aipix.ai\/blog\/wp-content\/uploads\/2026\/10\/video-surveillance-media-server-2.webp","keywords":["Aipix MediaServer","Cloud Security","Telecom","Video Surveillance","VSaaS"],"articleSection":["Blog"],"inLanguage":"en-US"},{"@type":"WebPage","@id":"https:\/\/aipix.ai\/blog\/video-surveillance-media-server\/","url":"https:\/\/aipix.ai\/blog\/video-surveillance-media-server\/","name":"Video Surveillance Media Server for Scalable VSaaS | Aipix","isPartOf":{"@id":"https:\/\/aipix.ai\/blog\/es\/#website"},"primaryImageOfPage":{"@id":"https:\/\/aipix.ai\/blog\/video-surveillance-media-server\/#primaryimage"},"image":{"@id":"https:\/\/aipix.ai\/blog\/video-surveillance-media-server\/#primaryimage"},"thumbnailUrl":"https:\/\/aipix.ai\/blog\/wp-content\/uploads\/2026\/10\/video-surveillance-media-server-2.webp","datePublished":"2026-10-06T12:00:01+00:00","dateModified":"2026-10-06T15:08:59+00:00","author":{"@id":"https:\/\/aipix.ai\/blog\/es\/#\/schema\/person\/55de0047250d2dc358f6ab695235df2b"},"description":"See how a video surveillance media server supports scalable VSaaS with up to 5,000 streams, flexible archiving and high user loads","breadcrumb":{"@id":"https:\/\/aipix.ai\/blog\/video-surveillance-media-server\/#breadcrumb"},"inLanguage":"en-US","potentialAction":[{"@type":"ReadAction","target":["https:\/\/aipix.ai\/blog\/video-surveillance-media-server\/"]}]},{"@type":"ImageObject","inLanguage":"en-US","@id":"https:\/\/aipix.ai\/blog\/video-surveillance-media-server\/#primaryimage","url":"https:\/\/aipix.ai\/blog\/wp-content\/uploads\/2026\/10\/video-surveillance-media-server-2.webp","contentUrl":"https:\/\/aipix.ai\/blog\/wp-content\/uploads\/2026\/10\/video-surveillance-media-server-2.webp","width":2208,"height":1472,"caption":"video-surveillance-media-server"},{"@type":"BreadcrumbList","@id":"https:\/\/aipix.ai\/blog\/video-surveillance-media-server\/#breadcrumb","itemListElement":[{"@type":"ListItem","position":1,"name":"Home","item":"https:\/\/aipix.ai\/blog\/"},{"@type":"ListItem","position":2,"name":"Video surveillance media server: how to scale VSaaS efficiently"}]},{"@type":"WebSite","@id":"https:\/\/aipix.ai\/blog\/es\/#website","url":"https:\/\/aipix.ai\/blog\/es\/","name":"aipix.ai","description":"","potentialAction":[{"@type":"SearchAction","target":{"@type":"EntryPoint","urlTemplate":"https:\/\/aipix.ai\/blog\/es\/?s={search_term_string}"},"query-input":{"@type":"PropertyValueSpecification","valueRequired":true,"valueName":"search_term_string"}}],"inLanguage":"en-US"},{"@type":"Person","@id":"https:\/\/aipix.ai\/blog\/es\/#\/schema\/person\/55de0047250d2dc358f6ab695235df2b","name":"Anastasiya Volchok","image":{"@type":"ImageObject","inLanguage":"en-US","@id":"https:\/\/aipix.ai\/blog\/es\/#\/schema\/person\/image\/","url":"https:\/\/aipix.ai\/blog\/wp-content\/litespeed\/avatar\/e23293e45635c6a76d468ef3bc723a24.jpg?ver=1790770872","contentUrl":"https:\/\/aipix.ai\/blog\/wp-content\/litespeed\/avatar\/e23293e45635c6a76d468ef3bc723a24.jpg?ver=1790770872","caption":"Anastasiya Volchok"},"description":"Anastasiya Volchok is a marketing strategist and VSaaS expert with a strong background in telecom and cloud video technologies. As a content lead, she specializes in turning complex tech and B2B solutions into clear, compelling narratives that drive engagement and growth. With years of experience at the intersection of video security, SaaS, and telecom innovation, Anastasiya delivers insights that help companies scale smarter, market better, and connect deeper with their audience. Her work blends strategic thinking with a sharp editorial voice, making her a trusted voice in the evolving world of cloud-based video services.","sameAs":["https:\/\/aipix.ai","https:\/\/www.linkedin.com\/in\/nastya-volchok-650790229\/"],"url":"https:\/\/aipix.ai\/blog\/en\/author\/anastasiya-volchok\/"}]}},"_links":{"self":[{"href":"https:\/\/aipix.ai\/blog\/en\/wp-json\/wp\/v2\/posts\/11587","targetHints":{"allow":["GET"]}}],"collection":[{"href":"https:\/\/aipix.ai\/blog\/en\/wp-json\/wp\/v2\/posts"}],"about":[{"href":"https:\/\/aipix.ai\/blog\/en\/wp-json\/wp\/v2\/types\/post"}],"author":[{"embeddable":true,"href":"https:\/\/aipix.ai\/blog\/en\/wp-json\/wp\/v2\/users\/8"}],"replies":[{"embeddable":true,"href":"https:\/\/aipix.ai\/blog\/en\/wp-json\/wp\/v2\/comments?post=11587"}],"version-history":[{"count":14,"href":"https:\/\/aipix.ai\/blog\/en\/wp-json\/wp\/v2\/posts\/11587\/revisions"}],"predecessor-version":[{"id":11603,"href":"https:\/\/aipix.ai\/blog\/en\/wp-json\/wp\/v2\/posts\/11587\/revisions\/11603"}],"wp:featuredmedia":[{"embeddable":true,"href":"https:\/\/aipix.ai\/blog\/en\/wp-json\/wp\/v2\/media\/11605"}],"wp:attachment":[{"href":"https:\/\/aipix.ai\/blog\/en\/wp-json\/wp\/v2\/media?parent=11587"}],"wp:term":[{"taxonomy":"category","embeddable":true,"href":"https:\/\/aipix.ai\/blog\/en\/wp-json\/wp\/v2\/categories?post=11587"},{"taxonomy":"post_tag","embeddable":true,"href":"https:\/\/aipix.ai\/blog\/en\/wp-json\/wp\/v2\/tags?post=11587"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}