Gcore named a Leader in the GigaOm Radar for AI Infrastructure!Get the report
  1. Home
  2. Developers
  3. What Is RTMP Streaming? | How Does It Work?

What Is RTMP Streaming? | How Does It Work?

  • By Gcore
  • 11 min read
What Is RTMP Streaming? | How Does It Work?

Real-Time Messaging Protocol, otherwise known as RTMP, plays a crucial role in enabling the smooth transmission of data over the internet, delivering live video content globally. Whether you’re new to live streaming or an experienced broadcaster, this detailed guide will equip you with the knowledge you need to effectively harness the power of RTMP.

What Is RTMP?

Real-Time Messaging Protocol, known as RTMP, is a technology specially designed for transmitting data over the internet. It’s primarily applied in live video streaming and live television. RTMP works to break down the data in cumbersome, high-definition video files into more manageable, smaller packets, making them easier to send. In this way, it is able to deliver encoded video content to live streaming platforms, social media networks, and media servers.

Types of RTMP

Different variants of RTMP have emerged to cater to various technological needs and scenarios. These specialized forms of RTMP include encrypted, tunneled, and layered versions, each designed to fulfill specific industry requirements, such as enhanced security or more flexible transmission methods.

  • RTMPS (Real-Time Messaging Protocol Secure): RTMPS employs Secure Sockets Layer (SSL) to add an encryption layer to the standard RTMP, ensuring the secure, intact, and confidential transmission of data. This is vital in fields like financial services or private communications where data integrity cannot be compromised.
  • RTMPT (Real-Time Messaging Protocol): RTMPT essentially tunnels RTMP data through HTTP (HyperText Transfer Protocol), a protocol that allows for the communication between a client’s web browser and a server, enabling the retrieval and display of web content. Tunneling the RTMP data through HTTP allows it to traverse firewalls and other network barriers, enhancing compatibility and reach.
  • RTMPE (Real-Time Messaging Protocol Encrypted): RTMPE is a variant that encrypts the RTMP data, though without the SSL layer present in RTMPS. This can be favorable in scenarios where data privacy is essential but where the extra processing required by SSL might hinder performance.
  • RTMPTE (Real-Time Messaging Protocol Tunneled and Encrypted): RTMPTE combines the tunneling feature of RTMPT with the encryption of RTMPE. This combination delivers both enhanced security via encryption and increased flexibility and compatibility via HTTP tunneling. This balanced approach makes RTMPTE suitable for a wide variety of applications where both security and accessibility are considerations.
  • RTMFP (Real-Time Media Flow Protocol): RTMFP marks a departure from traditional RTMP by utilizing UDP (User Datagram Protocol) instead of TCP (Transmission Control Protocol). Unlike TCP, UDP doesn’t employ error-checking mechanisms, allowing for a more efficient and timely data transfer.

When Is RTMP Used?

RTMP plays a crucial role in enabling seamless live video streaming to social media networks, media servers, and live streaming platforms over the internet. It is used to make sure that the video data is transferred in real-time, without significant delays or buffering, allowing the viewer to experience the content as it’s happening. In this way, live events, webinars, or social media broadcasts can be shared with audiences around the world, without any loss of quality or time lag.

Today, RTMPS is widely used to ensure secure video data transmission. It encrypts the data, adding an extra layer of security to prevent unauthorized access or potential breaches, especially for industries that handle sensitive information, such as healthcare, finance, and government agencies, commonly utilize RTMPS.

RTMP is compatible with specific audio and video inputs. For audio, AAC (Advanced Audio Codec), AAC-LC (Low Complexity), and HE-AAC+ (High-Efficiency Advanced Audio Codec) are commonly used, with each serving different purposes. AAC is known for its quality, while AAC-LC offers lower complexity, making it suitable for less robust systems. HE-AAC+ is used when high efficiency is required. For video, H.264 is commonly applied for high-quality streaming. These encoding options provide flexibility and optimization for various streaming scenarios, tailoring the streaming experience to the specific needs of the content and audience.

How Does RTMP Streaming Work?

The RTMP workflow

RTMP streaming connects three main components: the encoder, the streaming server, and the media player. This is done by breaking down video and audio data into smaller packets using an RTMP encoder. These packets are sent from the encoder to a streaming server, where they are stored and prepared for distribution. When a viewer requests the stream, the server establishes a direct connection with the media player using RTMP to deliver the encoded data, which is then decoded and played back in real time.”

To properly explain how RTMP streaming works in 2023, we will use the example of streaming a live concert taking place at a popular venue.

The first process in RTMP streaming is transferring the video stream to a server. In our live concert example, the venue’s local recorder captures the event, and RTMP sends the stream to an on-premise transcoder or a cloud-based platform like Gcore. This step ensures that the live feed is centralized and ready for distribution. Some companies may solely utilize this process for their streaming needs.

The second process, restreaming, involves the multiplication and distribution of the stream to various platforms like Facebook, Twitch, or YouTube. After the video has reached the transcoder or cloud platform, RTMP facilitates the distribution to different platforms, ensuring the live concert reaches viewers on their preferred channels, effectively making the content accessible to a wide audience. Some companies may exclusively opt for this process, while others might combine both processes for a comprehensive restreaming strategy.

Viewers are then able to watch the concert on their chosen platform, with RTMP ensuring smooth delivery. The RTMP stream concludes when the concert ends.

How streams are transferred from the client to the server

The data transfer within the RTMP streaming can be done in two distinct ways: Push or Pull.

  • Push Method: The client’s recorder initiates the connection and pushes the video to a platform like YouTube. If broken, it’s restarted by the client.
  • Pull Method: The platform initiates the connection to the venue’s recorder and pulls the data. If broken, the platform restores it.

Platforms That Accept RTMP Streams

Platforms that accept RTMP streams

Currently, there are many platforms accepting RTMP streams, providing organizations and content creators with a plethora of opportunities to broadcast live content across various online channels. Leading social media networks like Facebook, X, LinkedIn, Twitch, and YouTube have embraced RTMP, enabling real-time video sharing and audience engagement.

Moreover, with the rising popularity of virtual events, platforms like Eventfinity, Livestream, and Teams Live Event have also implemented RTMP stream capabilities. Likewise, Gcore’s Live Streaming solution integrates RTMP support, offering versatile options for showcasing videos to global audiences.

Benefits of Using RTMP Streaming

RTMP streaming offers a range of valuable advantages that contribute to its effectiveness in delivering high-quality live video content.

  • Low latency: RTMP minimizes the delay between content capture and delivery, ensuring fast interaction and engagement during live events.
  • Secure, cloud-based streaming through RTMPS: This is a secure version that encrypts data, ensuring privacy and protection during cloud-based streaming.
  • Compatibility with most live-streaming video services: RTMP is supported by a large number of platforms, allowing users to reach wider audiences and leverage multiple distribution channels.
  • Ease of integration: RTMP seamlessly integrates different media types into a single source, enabling content creators to deliver dynamic and versatile live streams. All modern streaming encoders and live streaming apps support RTMP protocol.

RTMP Disadvantages

Despite the benefits that RTMP brings to live video streaming, RTMP faces challenges such as limited codec support, affecting the compression of high-resolution videos like 4K and 8K due to a lack of support for modern codecs. TCP retransmission limitations further hamper RTMP, with TCP’s windowing mechanism restricting retransmission of lost packets, leading to stuttering in unstable networks.

Additional challenges include a lack of advanced error-correction, where RTMP’s absence of Forward-Error-Correction (FEC) and Automatic Repeat Request (ARQ) makes recovery from packet loss difficult, and vulnerability to bandwidth fluctuations, where RTMP lacks robust mechanisms to adapt to sudden changes in network conditions, risking inconsistent live broadcast quality.

Is RTMP Becoming Obsolete?

No, RTMP is not becoming obsolete. As technology advances, RTMP continues to be relevant and widely used due to its beneficial features, such as low-latency streaming capabilities, essential for real-time interactive experiences. Furthermore, RTMP remains compatible with many live-streaming video services, making it a dependable choice for content creators seeking ease of setup and integration.

Additionally, the introduction of RTMPS (RTMP Secure), a more secure version of RTMP, enables secure, cloud-based streaming.

RTMP Alternatives for Ingest

Despite its historical significance, RTMP has some potential limitations and drawbacks to consider. Firstly, RTMP requires stable and sufficient internet bandwidth, which may pose challenges for users with limited capabilities or viewers with slower connections.

SRT

SRT, or Secure Reliable Transport protocol, is an open-source video transport protocol that optimizes streaming over unpredictable networks, ensuring resilient, secure, and low-latency delivery. The design emphasizes quality and reliability by utilizing 128/256-bit AES encryption and handling packet loss and jitter.

It combines the benefits of UDP transmission without its downsides, reducing latency compared to TCP/IP. Additionally, SRT’s compatibility with firewalls simplifies traversal and adheres to corporate LAN security policies, while its flexibility enables the transport of various video formats, codecs, resolutions, or frame rates. As a member of the SRT Alliance, Gcore supports this cost-effective solution that operates effectively at the network transport level, encouraging its widespread adoption and collaborative development.

Enhanced RTMP

Enhanced RTMP is a modern adaptation of the traditional RTMP. Recognizing the need to keep pace with evolving streaming technologies, Enhanced RTMP brings the protocol up to date with current advancements, introducing support for contemporary video codecs that were previously unsupported, such as HEVC (H.265), VP9, and AV1. These codecs are vital in the contemporary streaming landscape, with HEVC being popular within streaming hardware and software solutions, and AV1 gaining recognition for its broad applicability.

The advantages of Enhanced RTMP extend beyond compatibility with modern codecs. Improved viewing experience is achieved through support for High Dynamic Range (HDR), which enriches color depth and contrast ratio, and planned updates that include a seamless reconnect command, minimizing interruptions. Increased flexibility is provided by the addition of PacketTypeMetadata, allowing for various types of video metadata support. The audio capabilities are also expanded with the integration of popular audio codecs like Opus, FLAC, AC-3, and E-AC-3, all while maintaining backward compatibility with existing systems and preserving the legacy of RTMP.

NDI

NDI, or Network Device Interface, is a video over IP transmission protocol that was developed to meet professional needs. A royalty-free solution, NDI enables compatible devices to share video, audio, and metadata across IP networks. This innovation transforms the way content is managed and delivered, in massive broadcast environments, as well as in smaller, specialized integrations.

NDI’s comprehensive set of features addresses both current and emerging needs in video and audio transmission, earning recognition and implementation in diverse applications around the world. The strategic design employs high efficiency by providing visually lossless video up to 4K60 through advanced formats like HX3, plug & play functionality, and interoperability, giving NDI a competitive advantage. Additionally, the use of popular codecs like H.264 & H.265, NDI ensures optimal performance with reduced bitrates, low latency, and a visually lossless image. This makes it suitable for CPU, GPU, and FPGA implementations.

Ingest Video Sent as Multicast over UDP MPEG-TS

Multicast over UDP MPEG-TS is a sophisticated method used in OTT platform and IPTV video services for encoding a group of TV channels. OTT (Over-the-Top) refers to streaming media services delivered directly over the internet, bypassing traditional cable or satellite TV platforms, while IPTV (Internet Protocol Television) is a service that delivers television content using the Internet Protocol network, enabling a more personalized and interactive TV experience.

By employing MPEG-TS streams via multicast UDP, a large number of threads in one place can be collected. The protocol works by distributing sets of UDP (User Datagram Protocol) packets from the same source to multiple subscribers, often encapsulating seven 188-byte packets in each UDP packet. These packets are usually sent to a specific range of IP addresses reserved for multicast, typically between 224.0.0.1 and 239.255.255.255. Multicast traffic is routed to the nearest router, which then decides the client to send the traffic to, based on the client’s requirements transmitted via the IGMP protocol. As such, this protocol provides users with advantages such as efficient bandwidth utilization, minimal data loss, scalability, real-time delivery, network flexibility, and integration with existing systems.

RTMP Alternatives for Playback

Scalability is another consideration, as RTMP may encounter difficulties when streaming to large audiences or distributing content across multiple servers.

Considering these factors, it becomes evident that exploring alternative protocols for live streaming is essential. HTTP protocols like HLS (HTTP Live Streaming) or DASH (Dynamic Adaptive Streaming over HTTP) provide broad device compatibility and adaptive streaming, adjusting video quality based on viewers’ internet connections and thus delivering a seamless playback experience.

Adaptive HTTP Streaming like HLS or MPEG-DASH

Adaptive HTTP Streaming technologies such as HLS (HTTP Live Streaming) or MPEG-DASH (Dynamic Adaptive Streaming over HTTP) are increasingly popular playback alternatives to RTMP, offering a more flexible and adaptive approach to video streaming.

HLS, developed by Apple, presents a robust solution for delivering both live and on-demand content via standard HTTP connections. Its broad compatibility and adaptive streaming capabilities make it an attractive option for a wide range of users. However, it is essential to examine how HLS stands against RTMP in terms of performance, ease of use, and overall efficiency.

On the other hand, DASH, developed by the MPEG industry consortium, is another popular alternative. It provides adaptive bitrate streaming for seamless viewing under varying network conditions. Its broad compatibility with various devices simplifies distribution, and its reliance on standard HTTP connections streamlines setup and integration.

Unlike RTMP, HLS and MPEG-DASH operate over standard HTTP, facilitating integration with existing web technologies and supporting adaptive bitrate streaming to select appropriate bitrates based on viewer’s network conditions. They are capable of delivering up to 4K and 8K resolutions and are designed to be codec-agnostic, which allows them to support new codecs as they become available, enhancing the efficiency and quality of the stream.

Other alternatives for playback include:

HESP

High Efficiency Stream Protocol (HESP) delivers ultra-low latency video streaming via HTTP, maintaining quality up to 8K. It offers 20% reduction in bandwidth, supports new codecs, 4K/8K resolutions, and integrates with DRM systems. Gcore is a HESP Alliance member.

HTTP-FLV

HTTP Flash Live Video (HTTP-FLV) streams FLV format via HTTP. It has low latency, converts RTMP streams into FLV, and is firewall-compatible. Advantages include easy delivery, support for DNS 302 redirects, and broad compatibility.

WebSockets and Media Source Extensions (MSE)

This combination enables low latency live streams, using WebSockets for bidirectional communication and MSE for adaptive streaming. It offers 3-second latencies, adaptive bitrate streaming, and enhanced control over content quality.

WebRTC

WebRTC facilitates real-time web communication, transmitting video, voice, and data using open web protocols. Compatible with modern browsers and native platforms, it supports diverse applications, including video conferencing and peer-to-peer connectivity.

How to Set Up RTMP Streams

When setting up an RTMP stream, several factors need to be considered, including the destination platform and the type of encoder being used. If you choose a hardware encoder, additional steps may be involved, making the setup slightly more complex.

One necessary element for RTMP streaming is the RTMP stream key. The stream key acts as a code that establishes a connection between your encoder and the streaming platform. You’ll also need a server URL, a unique web address that links your broadcast to the chosen streaming platform. Typically, you can find the server URL in your chosen platform’s settings, along with the stream key. The server URL remains constant for each broadcast to the same platform, whereas the stream key changes with every new stream.

Once you’re prepared to start broadcasting, you’ll input the stream key and server URL from your streaming platform into your encoder. This seamless integration creates a reliable connection between the two, enabling the smooth transmission of data packets from your encoder to the streaming platform, and ensuring a successful RTMP stream.

How to Set Up an RTMP Stream with Gcore

Setting up an RTMP stream with Gcore Streaming Platform is a straightforward process that can be completed in just a few steps:

  1. Create a free account: Sign up for a Gcore account by providing your email and password.
  2. Activate the service: Choose the Free live plan or another suitable option to activate the service.
  3. Create a live stream: Access the live streaming section in the Streaming tab and click “Create live stream.” Enter the name for your live stream and click “Create.” If you’ve reached your live stream limit, you will need to delete an existing stream before you can create a new one.

Creating a new live stream with Gcore
  1. Turn on low-latency live streaming and choose the stream type: Select either Push or Pull stream typebased on your requirements. If you have your own media server, choose Pull, and if not, opt for Push. If you select Pull, input the link to your media server in the URL field. For Push, select your encoder from the drop-down list and copy the server URL and stream key into your encoder’s interface. You may need to edit the name of the stream key or enable additional, previously activated features, such as Record for live stream recording and DVR to allow the broadcast to be paused.
  2. Set up the live stream: If you chose a Pull stream type, enter the media server link in the URL field. You can specify multiple media servers, with the first as the primary source and the rest as backups in case of signal interruptions. If you chose the Push stream type, choose the encoder from the drop-down list, and copy the server URL and Stream Key. Insert these values into your encoder’s interface as instructed in the “Push live streams software” section.
  1. Start the live stream: Once everything is configured correctly, begin the live stream on your media server or encoder. A streaming preview will be visible in the player.
  2. Embed the live stream: Choose the appropriate method to embed the live stream into your web application, either by copying the iFrame code for the built-in player or using the export link in the desired protocol (LL-DASH for non-iOS devices and LL-HLS for iOS viewing).

Embedding the live stream with Gcore

We offer a comprehensive guide to creating a live stream should you need more detailed information.

Conclusion

RTMP continues to play a vital role in online video broadcasting, offering low-latency streaming and a seamless server-client connection that enables content creators to deliver live streams reliably and efficiently.

Leverage Gcore’s Streaming Platform and take advantage of an all-in-one solution that covers your video streaming needs, regardless of the chosen protocol. From adaptive streaming to secure delivery mechanisms, Gcore empowers content creators to stream a wide range of content, including online games and events, with speed and reliability.

Want to learn more about Gcore’s exceptional Streaming Platform? Talk to us to explore personalized options for your business needs.

Related articles

3 use cases for geo-aware routing with Gcore DNS

If your audience is global but you’re serving everyone the same content from the same place, you're likely sacrificing performance and resilience. Gcore DNS (which includes a free-forever plan and enterprise-grade option) offers a straightforward way to change that with geo-aware routing, a feature that lets you return different DNS responses based on where users are coming from.This article breaks down how Gcore's geo-routing works, how to set it up using the GeoDNS preset in dynamic response mode, where it shines, and when you might be better off with a different option. We’ll walk through three hands-on use cases with real config examples, highlight TTL trade-offs, and call out what developers need to know about edge cases like resolver mismatch and caching delays.What is geo-aware DNS routing?Gcore DNS lets you return different IP addresses based on the user’s geographic location. This is configured using dynamic response rules with the GeoDNS preset, which lets you match on continent, country, region, ASN, or IP/CIDR. When a user makes a DNS request, Gcore uses the resolver’s location to decide which record to return.You can control traffic to achieve outcomes like:Directing European users to an EU-based CDN endpointSending users in regions with known service degradation to a fallback instanceBehind the scenes, this is done by setting up metadata pickers and specifying fallback behavior.For step-by-step guidance, see the official docs: Configure geo-balancing with Dynamic response.How to configure GeoDNS in Gcore DNSTo use geo-aware routing in Gcore DNS, you'll configure a dynamic response record set with the GeoDNS preset. This lets you return different IPs based on region, country, ASN, or IP/CIDR metadata.Basic stepsGo to DNS → Zones in the Gcore Customer Portal. (If you don’t have an account, you can sign up free and use Gcore DNS in just a few clicks.)Create or edit a record set (e.g., for app.example.com).Switch to Advanced mode.Enable Dynamic response.Choose the GeoDNS preset.Add responses per region or country.Define a fallback record for unmatched queries.For detailed step-by-step instructions, check out our docs.Once you’ve set this up, your config should look like the examples shown in the use cases below.Common use casesEach use case below includes a real-world scenario and a breakdown of how to configure it in Gcore DNS. These examples assume you're working in the DNS advanced mode zone editor with dynamic response enabled and the GeoDNS preset selected.The term “DNS setup” refers to the configuration you’d enter for a specific hostname in the Gcore DNS UI under advanced mode.1. Content localizationScenario: You're running example.com and want to serve language-optimized infrastructure for European and Asian users. This use case is often used to reduce TTFB, apply region-specific UX, or comply with local UX norms. If you're also localizing content (e.g., currency, language), make sure your app handles that via subdomains or headers in addition to routing.Objective:EU users → eu.example.comAsia users → asia.example.comAll others → global.example.comDNS setup:Host: www.example.comType: A TTL: 120 Dynamic response: Enabled Preset: GeoDNS Europe → 185.22.33.44 # EU-based web server Asia → 103.55.66.77 # Asia-based web server Fallback → 198.18.0.1 # Global web server2. Regional CDN failoverScenario: You’re using two CDN clusters: one in North America, one in Europe. If one cluster is unavailable, you want traffic rerouted regionally without impacting users elsewhere. To make this work reliably, you must enable DNS Healthchecks for each origin so that Gcore DNS can automatically detect outages and filter out unhealthy IPs from responses.Objective:North America → na.cdn.example.comEurope → eu.cdn.example.comEach region has its own fallbackDNS setup:Host: cdn.example.comType: A TTL: 60 Dynamic response: Enabled Preset: GeoDNS North America → 203.0.113.10 # NA CDN IP Backup (NA region only) → 185.22.33.44 # EU CDN as backup for NA Health check → Enabled for 203.0.113.10 with HTTP/TCP probe settingsEurope → 185.22.33.44 # EU CDN IP Backup (EU region only) → 203.0.113.10 # NA CDN as backup for EU Health check → Enabled for 185.22.33.44Note: Multi-level fallback by region isn’t supported inside one rule set—you need to separate them to keep routing decisions clean.3. Traffic steering for complianceScenario: You need to keep EU user data inside the EU for GDPR compliance while routing the rest of the world to lower-cost infrastructure elsewhere. This approach is useful for fintech, healthcare, or regulated SaaS workloads where regulatory compliance is a challenge.Objective:EU users → EU-only backendAll other users → Global backendDNS setup:Host: transactions.example.com Type: A TTL: 300 Dynamic response: Enabled Preset: GeoDNS Europe → 185.10.10.10 # EU regional API node Fallback → 198.51.100.42 # Global API nodeEdge casesGeoDNS works well, but it’s worth keeping in mind a few edge cases and limitations when you get set up.Resolver location ≠ user locationBy default, Gcore uses ECS (EDNS Client Subnet) for precise client subnet geo-balancing. If ECS isn’t present, resolver IP is used, which may skew location (e.g., public resolvers, mobile carriers). ECS usage can be disabled in the ManagedDNS UI if needed.Caching slows failoverEven if your upstream fails, users may have cached the original IP for minutes. Fallback + TTL tuning are key.No sub-regional precisionYou can route by continent, country, or ASN—but not city. City-level precision isn’t currently supported.Gcore delivers simple solutions to big problemsGeo-aware routing is one of those features that quietly solves big problems, especially when your app or CDN runs globally. With Gcore DNS, you don’t need complex infrastructure to start optimizing traffic flow.Geo-aware routing with Gcore DNS is a lightweight way to optimize performance, localize content, or handle regional failover. If you need greater precision, consider pairing GeoDNS with in-app geolocation logic or CDN edge logic. But for many routing use cases, DNS is the simplest and fastest way to go.Get free-forever Gcore DNS with just a few clicks 

Flexible DDoS mitigation with BGP Flowspec cover image

Flexible DDoS mitigation with BGP Flowspec

For customers who understand their own network traffic patterns, rigid DDoS protection can be more of a limitation than a safeguard. That’s why Gcore supports BGP Flowspec: a flexible, standards-based method for defining granular filters that block or rate-limit malicious traffic in real time…before it reaches your infrastructure.In this article, we’ll walk through:What Flowspec is and how it worksThe specific filters and actions Gcore supportsCommon use cases, with example rule definitionsHow to activate and monitor Flowspec in your environmentWhat is the BGP Flowspec?BGP Flowspec (RFC 8955) extends Border Gateway Protocol to distribute traffic filtering rules alongside routing updates. Instead of static ACLs or reactive blackholing, Flowspec enables near-instantaneous propagation of mitigation rules across networks.BGP tells routers how to reach IP prefixes across the internet. With Flowspec, those same BGP announcements can now carry rules, not just routes. Each rule describes a pattern of traffic (e.g., TCP SYN packets >1000 bytes from a specific subnet) and what action to take (drop, rate-limit, mark, or redirect).What are the benefits of the BGP Flowspec?Most traditional DDoS protection services react to threats after they start, whether by blackholing traffic to a target IP, redirecting flows to a scrubbing center, or applying rigid, static filters. These approaches can block legitimate traffic, introduce latency, or be too slow to respond to fast-evolving attacks.Flowspec offers a more flexible alternative.Proactive mitigation: Instead of waiting for attacks, you can define known-bad traffic patterns ahead of time and block them instantly. Flowspec lets experienced operators prevent incidents before they start.Granular filtering: You’re not limited to blocking by IP or port. With Flowspec, you can match on packet size, TCP flags, ICMP codes, and more, enabling fine-tuned control that traditional ACLs or RTBH don’t support.Edge offloading: Filtering happens directly on Gcore’s routers, offloading your infrastructure and avoiding scrubbing latency.Real-time updates: Changes to rules are distributed across the network via BGP and take effect immediately, faster than manual intervention or standard blackholing.You still have the option to block traffic during an active attack, but with Flowspec, you gain the flexibility to protect services with minimal disruption and greater precision than conventional tools allow.Which parts of the Flowspec does Gcore implement?Gcore supports twelve filter types and four actions of the Flowspec.Supported filter typesGcore supports all 12 standard Flowspec match components.Filter FieldDescriptionDestination prefixTarget subnet (usually your service or app)Source prefixSource of traffic (e.g., attacker IP range)IP protocolTCP, UDP, ICMP, etc.Port / Source portMatch specific client or server portsDestination portMatch destination-side service portsICMP type/codeFilter echo requests, errors, etc.TCP flagsFilter packets by SYN, ACK, RST, FIN, combinationsPacket lengthFilter based on payload sizeDSCPQuality of service code pointFragmentMatch on packet fragmentation characteristicsSupported actionsGcore DDoS Protection supports the following Flowspec actions, which can be triggered when traffic matches a specific filter:ActionDescriptionTraffic-rate (0x8006)Throttle/rate limit traffic by byte-per-second rateredirectRedirect traffic to alternate location (e.g., scrubbing)traffic-markingApply DSCP marks for downstream classificationno-action (drop)Drop packets (rate-limit 0)Rule orderingRFC 5575 defines the implicit order of Flowspec rules. The crucial point is that more specific announcements take preference, not the order in which the rules are propagated.Gcore also respects Flowspec rule ordering per RFC 5575. More specific filters override broader ones. Future support for Flowspec v2 (with explicit ordering) is under consideration, pending vendor adoption.Blackholing and extended blackholing (eBH)Remote-triggered blackhole (RTBH) is a standardized protection method that the client manages via BGP by analyzing traffic, identifying the direction of the attack (i.e., the destination IP address). This method protects against volumetric attacks.Customers using Gcore IP Transit can trigger immediate blackholing for attacked prefixes via BGP, using the well-known blackhole community tag 65000:666. All traffic to that destination IP is dropped at Gcore’s edge.The list of supported BGP communities is available here.BGP extended blackholeExtended blackhole (eBH) allows for more granular blackholing that does not affect legitimate traffic. For customers unable to implement Flowspec directly, Gcore supports eBH. You announce target prefixes with pre-agreed BGP communities, and Gcore translates them into Flowspec mitigations.To configure this option, contact our NOC at noc@gcore.lu.Monitoring and limitationsGcore can support several logging transports, including mail and Slack.If the number of Flowspec prefixes exceeds the configured limit, Gcore DDoS Protection stops accepting new announcements, but BGP sessions and existing prefixes will stay active. Gcore will receive a notification that you reached the limit.How to activateActivation takes just two steps:Define rules on your edge router using Flowspec NLRI formatAnnounce rules via BGP to Gcore’s intermediate control planeThen, Gcore validates and propagates the filters to border routers. Filters are installed on edge devices and take effect immediately.If attack patterns are unknown, you’ll first need to detect anomalies using your existing monitoring stack, then define the appropriate Flowspec rules.Need help activating Flowspec? Get in touch via our 24/7 support channels and our experts will be glad to assist.Set up GRE and benefit from Flowspec today

Tuning Gcore CDN rules for dynamic application data caching

Caching services like content delivery networks (CDNs) can be a solid addition to your web stack. They lower response latency and improve user experience while also helping protect your origin servers through security features like access control lists (ACLs) and traffic filtering. However, if you’re running a highly dynamic web service, a misconfigured CDN might lead to the delivery of stale or, in the worst case, wrong data.If you’re hosting a dynamic web service and want to speed it up, this guide is for you. It explains the common issues dynamic services have with CDNs and how to solve them with Gcore CDN.How does dynamic data differ from static data?There are two main differences between static and dynamic data:Change frequency: Dynamic data changes more often than static data. Some websites stay the same for weeks or months; others change multiple times daily.Personalized responses: Static systems deliver the same response for a given URL path. Dynamic systems, by contrast, can generate different responses for each user, based on parameters like authentication, location, session data, or user preferences.Now, you might ask: Aren’t static websites simply HTML pages while dynamic ones are generated on-the-fly by application servers?It depends.A website consisting only of HTML pages might still be dynamic if the pages are changed frequently, and an application server that generates HTML responses can serve the same HTML forever and always provide everyone with the same content for a URL. The CDN network doesn’t know how you create the HTML. It only sees the finished product and decides how long it should cache it. You need to decide on a case-by-case basis.How do cache rules affect dynamic data?When using a CDN, you have to define rules that govern the caching of your data. If you consider this data dynamic, either because it changes frequently or because you deliver user-specific responses, those rules can drastically impact the user experience, ranging from the delivery of stale data to completely wrong data.Cache expirationFirst, consider cache expiration time. With Gcore CDN, you have two options:Let your origin server control it. This is ideal for dynamic systems using application servers because it gives you precise control without needing to adjust Gcore settings.Let Gcore CDN control it. This works well for static HTTP servers delivering HTML pages that change often. If you can’t modify the server’s cache configuration, using Gcore’s settings is easier.No matter which method you choose, understand what your users consider “stale” and set the expiration time accordingly.Query string handlingNext, decide how Gcore CDN should handle URL query parameters. Ignoring them can improve performance—but for dynamic systems that use query strings for server-side sorting, filtering, or pagination, this can break functionality.For example, a headless CMS might use: https://example.com/api/posts?sort=asc&start=99If the CDN ignores the query string, it will always deliver the cached response, even if new parameters are requested. So, make sure to disable the Ignore query string parameters setting when necessary.Cookie bypassingCookies are often used for session handling. While ignoring cookies can boost performance, doing so risks breaking applications that rely on them.For example: https://example.com/api/users/profileIf this endpoint relies on a session cookie, caching without considering the cookie will serve the same user profile to everyone. Be sure to disable “Ignore cookies” if your server uses them for authentication or personalization.Cache key customizationIf you need more detailed control over the caching, you can modify the cache key generation. This key defines the mapping of a request to a cache entry and allows you to manage the granularity of your caching.The Gcore Customer Portal offers basic customization functionality, and the support team can help with advanced rules. For example, adding the request method (e.g., GET, HEAD, POST, etc.) to your cache key ensures a single URL has a dedicated cache entry for each method instead of using one for all.GraphQL considerationsMost GraphQL implementations only use POST requests and include the GraphQL query in the request body. This means every GraphQL request will use the same URL and the same method, regardless of the query. Gcore CDN doesn’t check the request body when caching, so every query will result in the same cache key and override each other.To make sure the CDN doesn’t break your API, turn off caching for all your GraphQL endpoints.Path-based CDN rules for hybrid contentIf your application serves both static and dynamic content across different paths, Gcore CDN rules offer a powerful way to manage caching more granularly.Using the CDN rules engine, you can create specific rules for individual file paths or extensions. This allows you to apply dynamic-appropriate settings—like disabling caching or respecting cookies—only to dynamic endpoints (e.g., /api/**), while using more aggressive caching for static assets (e.g., /assets/**, /images/**, or /js/**).This path-level control delivers performance gains from CDN caching without compromising the correctness of dynamic content delivery.SummaryUsing a CDN is an easy way to improve your site’s performance, and even dynamic applications can benefit from CDN caching when configured correctly. Check that:Expiration times reflect real-world freshness needsQuery strings and cookies aren’t ignored if they affect the responseCache keys are customized where neededGraphQL endpoints are excluded from cachingCDN rules are used to apply different settings for dynamic and static pathsWith the right setup, you can safely speed up even the most complex applications.Explore our step-by-step guide to setting rules for particular files in Gcore CDN.Discover Gcore CDN

How AI is reshaping the future of interactive streaming

Interactive streaming is entering a new era. Artificial intelligence is changing how live content is created, delivered, and experienced. Advances in real-time avatars, voice synthesis, deepfake rendering, and ultra-low-latency delivery are giving rise to new formats and expectations.Viewers don’t want to be passive audiences anymore. They want to interact, influence, and participate. For platforms that want to lead, the stakes are growing: innovate now, or fall behind.At Gcore, we support this shift with global streaming infrastructure built to handle responsive, AI-driven content at scale. This article explores how real-time interactivity is evolving and how you can prepare for what’s next.A new era for live contentStreaming used to mean watching someone else perform. Today, it’s becoming a conversation between the creator and the viewer. AI tools are making live content more reactive and personalized. A cooking show host can take ingredient requests from the audience and generate live recipes. A language tutor can assess student pronunciation and adjust the lesson plan on the spot. These aren’t speculative use cases—they’re already being piloted.Traditional cameras and presenters are no longer required. Some creators now use entirely digital hosts, powered by motion capture and generative AI. They can stream with multiple personas, switch backgrounds on command, or pause for mid-session translations. This evolution is not about replacing humans but creating new ways to engage that scale across time zones, languages, and platforms.Creating virtual influencersVirtual influencers are digital characters designed to build audiences, promote products, and hold conversations with followers. Unlike human influencers, they don’t get tired, change jobs, or need extensive re-shoots when messaging changes. They’re fully programmable, and the most successful ones are backed by teams of writers, animators, and brand strategists.For example, a skincare company might launch a virtual influencer with a consistent tone, recognizable look, and 24/7 availability. This persona could host product tutorials in the morning, respond to DMs during the day, and livestream reactions to customer feedback at night—all in the local language of the audience.These characters are not limited to influencer marketing. A virtual celebrity might appear as a guest at a live product launch or provide commentary during a sports event. The point is consistency, scalability, and control. Gcore’s global delivery network ensures these digital personas perform without delay, wherever the audience is located.Real-time avatars and AI-generated personasReal-time avatars use motion capture and emotion detection to mimic human behavior with digital models. A fitness instructor can appear as a stylized avatar while tracking their own real movements. A virtual talk show host can gesture, smile, or pause in response to viewer comments. These avatars do more than just look the part—they respond dynamically.AI-generated personas build on this foundation with language generation and decision-making. For instance, an edtech company could deploy a digital tutor that asks learners comprehension questions and adapts its tone based on their engagement level. In entertainment, a music artist might perform live as a virtual character that reflects audience mood through color shifts, dance patterns, or facial expression.These experiences require ultra-low latency. If the avatar lags, the illusion collapses. Gcore’s infrastructure supports the real-time input-output loop needed to make digital characters feel present and responsive.Deepfake technology for creative storytellingDeepfakes are often associated with misinformation, but the same tools can be used to build engaging, high-integrity content. The technology enables face-swapping, voice cloning, and character animation, all of which are powerful in live formats.A museum might use deepfake avatars of historical figures for interactive educational sessions. Visitors could ask questions, and Abraham Lincoln or Golda Meir might respond with historically grounded answers in real time. A brand could create a fictional spokesperson who evolves over time, appearing in product demos, ads, and livestreams. Deepfake technology also allows multilingual content without re-recording—the speaker’s lip movements and tone are modified to match each language.These applications raise legitimate ethical questions. Gcore’s streaming infrastructure includes controls to ensure the source and integrity of AI-generated content are traceable and secure. We provide the technical foundation that enables deepfake use cases without compromising trust.Synthetic voices and personalized audioAudio is often overlooked in discussions about AI streaming, but it’s just as important as video. Synthetic voices today can express subtle emotions and match speaking styles. They can whisper, shout, pause for dramatic effect, and even mimic regional accents.Let’s consider a news platform that offers interactive daily briefings. Viewers choose their preferred language, delivery style (casual, serious, humorous), and even the voice profile. The AI generates a personalized broadcast on the fly. In gaming, synthetic characters can offer encouragement, warn about strategy mistakes, or narrate progress—all without human voice actors.Gcore’s streaming infrastructure ensures that synthetic voice outputs are tightly synchronized with video, so users don’t experience out-of-sync dialogue or lag during back-and-forth exchanges.Increasing interactivity through feedback and participationInteractivity in streaming now goes far beyond comments or emoji reactions. It includes live polls that influence story outcomes, branching narratives based on audience behavior, and user-generated content layered into the broadcast.For example, a live talent show might allow viewers to suggest challenges mid-broadcast. An online classroom could let students vote on the next topic. A product launch might include a real-time Q&A where the host pulls questions from chat and answers them in the moment.All of these use cases rely on real-time data processing, behavior tracking, and adaptive rendering. Gcore’s platform handles the underlying complexity so that creators can focus on building experiences, not infrastructure.Why low latency is criticalInteractive content only works if it feels immediate. A delay of even a second can break immersion, especially when users are trying to influence the outcome or receive a response. Low latency is essential for real-time gaming, sports, interviews, and educational formats.A live trivia game with hundreds of participants won’t retain users if there’s a lag between the question appearing and the timer starting. A remote surgery training session won’t work if the avatar’s responses trail behind the mentor’s instructions. In each of these cases, timing is everything.Gcore Video Streaming minimizes buffering, supports high-resolution streams, and synchronizes data flows to keep participants engaged. Our infrastructure is built to support high-throughput, globally distributed audiences with the responsiveness that interactive formats demand.Preparing for what’s nextAI-generated content is no longer a novelty. It’s becoming a standard feature of modern streaming strategies. Whether you’re building a platform that features virtual influencers, immersive avatars, or interactive educational streams, the foundation matters. That foundation is infrastructure.If you’re planning the next generation of live content, we’re ready to help you bring it to life. At Gcore, we provide the performance, scale, and security to launch these experiences with confidence. Our streaming solutions are designed to support real-time content generation, audience interaction, and global delivery without compromise.Want to see interactive streaming in action? Learn how fan.at used Gcore Video Streaming to deliver ultra-low-latency streams and boost fan engagement with real-time features.Read the case study

What are captions and subtitles, and how do they work?

Subtitles and captions are essential to consuming video content today. But how do they work behind the scenes?Creating subtitles and captions involves a five-step process to ensure that your video’s spoken and auditory content is accurately and effectively conveyed. The five steps are transcription, correction, synchronization/spotting, translation, and simulation/display on screen.The whole process is usually managed using specialized subtitle or caption creator software.In this blog, we explain the five steps in more detail, what the end user sees, and how to choose the right caption/subtitle service for your needs.Step 1: TranscriptionSpoken content is transformed into a text-based format. Formats are different ways to implement the textual elements, depending on technical needs.Transcription creates the raw materials that will be refined in stages 2–4.Step 2: CorrectionCorrection enhances readability by improving the textual flow. Punctuation, grammar, and sentence structure are adjusted so that the user’s reading experience is seamless and doesn’t detract from the content.Step 3: Synchronization/spottingNext, the text and audio are aligned precisely. Each caption or subtitle’s timing is adjusted so it appears and disappears at the correct moment.Step 4: TranslationTranslation is required for content intended for consumption in multiple languages. During this stage, it’s important to consider format requirements and character limitations. For example, a caption that fits on two lines in English might require three in Spanish, and so in Spanish, one caption becomes two. As a result, additional synchronization might be necessary.Step 5: Simulation/display on screenFinally, the captions or subtitles need to be integrated onto the end user’s screen. Formatting issues might arise at this stage, requiring tweaks for an optimal user experience.How does the end user see subtitles and captions?After the technical process of creating captions and subtitles, the next step is understanding how these elements appear to the end user. The type of captions you choose can greatly impact the user experience, especially when considering accessibility, engagement, and clarity. Below, we break down the different options available and how they serve different viewing scenarios.Open captions: These are always visible to viewers and are a fixed part of the video. They’re popular, for example, for video installations in museums and employee training videos—cases where maximum accessibility is the key consideration when it comes to captions and/or subtitles.Closed captions: Viewers can turn these on or off based on preference. For instance, an online course might offer this feature, allowing learners to choose how to consume the content. Students could opt temporarily to turn on closed captions to note the spelling of a new term introduced during the course.Real-time captions: These are great for live events like webinars, where the text appears almost simultaneously as the words are spoken. They keep the audience engaged in real time without missing out on crucial points. For example, ambient noise like chatter in a sports bar might obscure commentary on a live TV basketball game. Real-time captions allow viewers to benefit from near-live commentary regardless of the bar’s noise levels or if the TV’s sound is muted.Burned-in subtitles: These are etched onto the video and cannot be turned off. A promotional video targeting a multilingual audience might use this feature so that everyone understands the message, regardless of their language preference.What to look for in captioning and subtitling servicesTo deliver high-quality captions and subtitles, it's important to choose a provider that offers key features for accuracy, efficiency, and audience engagement.Original language transcription: Accurate documentation of every spoken word in your video for unrivaled accuracy.Tailored translation: Localized content that integrates translations with cultural relevance, increasing resonance with diverse audiences.Alignment synchronization: Time-annotated subtitles, matching words perfectly to the on-screen action.Automatic SRT file generation: A simplified subtitling and captioning process through effortless file creation for a better user experience.Transform your videos with cutting-edge captions and subtitles from GcoreNo matter your video content needs, it’s essential to be aware of the best type of captions and subtitles for your audience’s needs. Choosing the right format ensures a smoother viewing experience, better accessibility, and stronger engagement across every platform.Gcore Video Streaming offers subtitles and closed captions to enhance users’ experience. Each feature within the subtitling and captioning toolkit is crafted to expand your video content’s reach and impact, catering to a multitude of use cases. Embedding captions is quick and easy, and AI-automated speech recognition also saves you time and money.Try Gcore's automated subtitle and caption solution for free

Why captions and subtitles are essential for video engagement

From TikToks on silent commutes to training videos in noisy offices, silent viewing is now standard. Captions and subtitles aren’t just accessibility features anymore. They’re essential for user engagement, global reach, and video performance.This article explores why captions and subtitles matter and how they boost engagement with your videos, providing a better user experience for your audience. If you want to know how captions and subtitles work, we’ve got an article for that too.How subtitles and captions improve your video performanceSubtitles are now widely used across platforms and age groups. For many younger viewers, reading along while watching is second nature, especially on social media. For others, subtitles are a practical solution: watching videos in public spaces, scrolling during breaks, or learning on the go—all without needing sound.Captions offer tangible benefits across four key areas:Engagement and comprehension: Improve clarity in movies, boost understanding in online courses, and increase focus in business content.Accessibility and inclusion: Make content available to hard-of-hearing users and break language barriers for global audiences.SEO and discoverability: Search engines can crawl subtitle text, making your video content more findable, even when autoplayed without sound.Silent usability: Your content works in all environments, from crowded trains to quiet offices.Captions have shifted from niche to norm, helping creators reach more people, boost retention, and deliver clearer messages.Common challenges and their solutionsImplementing captions at scale poses three major challenges: cost, delay, and accuracy. Here's why these challenges exist and how Gcore Video Streaming can help you overcome them at the click of a button.CostInvesting in high-quality transcriptions can be a financial burden, especially for smaller players in online education. Specialized expertise is required for accurate educational content, and human oversight adds ongoing labor costs. Transcription is a recurring expense that grows with multiple languages or regulatory compliance.Gcore scalable AI-powered transcription services reduce reliance on costly manual processes, offering affordable, multi-language support with built-in compliance features, making transcription cost-effective for all budgets.Delay/latencyIn live events, even slight delays in captioning can disengage audiences. For example, in a Formula One race, missing real-time commentary on pit stops or track conditions can leave viewers confused or frustrated. Lagging captions fail to keep pace with the action, breaking immersion.Real-time AI ASR (automatic speech recognition) from Gcore minimizes captioning delay, so that live captions sync perfectly with events, keeping viewers fully engaged without lag.AccuracyA small text error in captions can distort the message and harm reputation. Errors in MOOCs or corporate webinars risk undermining credibility and discouraging future participation. Precision is critical to maintain trust and clarity.Gcore leverages advanced AI models fine-tuned for domain-specific vocabulary and includes automated quality checks, drastically reducing errors and preserving message integrity across all video content.Enhance your video content with Gcore AI-powered caption and subtitles toolsCaptions are now a strategic content layer, not just an accessibility checkbox. With video now the dominant format across marketing, education, and entertainment, it's critical to implement captions efficiently, affordably, and at scale.Gcore’s AI-powered Video Streaming lets you generate accurate, real-time captions across multiple languages with minimal developer effort. Built-in AI ASR (automatic speech recognition) means your captions stay synchronized even during fast-paced live events. Whether you’re running an LMS, hosting global events, or publishing OTT content, Gcore Video Streaming helps you scale captions with speed and precision.Request a demo of Gcore AI ASR

Subscribe to our newsletter

Get the latest industry trends, exclusive insights, and Gcore updates delivered straight to your inbox.