Will the shutdown of P2P service affect the normal play of video?
No. Videos will still play normally without P2P streaming.
Do I need to replace or change my existing streaming solution / content delivery network (CDN) to use SwarmCloud?
No. SwarmCloud is a hybrid solution that integrates with and extends the capabilities of your existing infrastructure. This allows you to switch the solution on or off if needed and easily revert to your original method of delivery. All you have to do to integrate SwarmCloud, is to add a single library to your code.
How about the p2p performance?
Performance results depend on a number of factors including time to live edge, bitrate offered, encoding profiles, ISP served, audience geographical distribution, end-user device capatities, etc. Generally 75%+ of video traffic delivered via our mesh network.
Is p2p only working on same network?
No. Not all peers can connect with each other over WebRTC. It depends on network configuration, browsers compatibility, etc. If you both behind incorrectly configured NAT most likely you will not be able to connect. Fortunately, the client will try to connect to multiple peers (>= 10) at the same time, which make the probability of connected to at least one peer is high. For testing purpose, it is recommended to connect with a peer from the same LAN.
How does P2P works?
When used with streaming video, P2P technology creates a hierarchy of nodes to retrieve and redistribute video segments from an origin video source. A P2P network looks very much like an inverted tree, with root nodes retrieving video segments from the upstream origin server, and downstream nodes retrieving video segments from the upstream nodes, which in turn serve the segments to nodes downstream from them.
A P2P network controller (tracker) forms peer groups of end-user devices as they come online. The groups are based on geographic proximity, making the peers suitable to share content quickly and easily. The tracker can be hosted as a cloud-based service. When a user requests content, the P2P tracker checks the peer group to determine if the content has been previously stored. If a peer is found, the content will be provided without connecting to the original video source.
One of the strongest features of peer-to-peer (P2P) networking is that it needs virtually no infrastructure. The tracker can be deployed in the cloud as easily as anywhere else, since video traffic never passes through it. For the same reason, P2P networks are fast to deploy. As each viewer installs the P2P client on their device, they can join or start a P2P network with little other work required. When using WebRTC-based P2P, no client deployment is necessary and any device with a modern browser can participate in the peer network.
No matter how powerful the CDN, however, an influx of viewers at the most critical moment of the action will always be a challenge. An exciting game in which fans tune in en masse at kick-off, in the final minutes, or even in overtime can create network conditions which drive just as much action off the pitch as on it. For these reasons, we suggest incorporating P2P delivery technology to complete the delivery workflow.
SwarmCloud’s P2P Delivery solution offers wide device coverage across desktop, Android and iOS mobile devices and set-top boxes. Its algorithms take a quality-first approach, using metrics such as rebuffering, CPU, and battery life to adapt delivery to the resources of each device and help improve user experience overall during peak traffic hours.
Does SwarmCloud work with tokenized streams?
Our products are compatible with tokenized streams. As we require some information about how you tokenize, this needs to be set up by our support team. You will need to provide tokenized sample URLs and if available a URL pattern.
Do you add additional latency to my stream, or are there other potential problems?
No, SwarmCloud does not add additional latency to your stream. However, low latency environments can cause a drop in saving ratio when using SwarmCloud. We recommend the following setup for your HLS / Dash streaming playlist:
- Segment length: at least 3 seconds
- Playlist length: at least 6 segments
What if viewers do not have enough uplink bandwidth?
SwarmCloud comes with an intelligent fallback system. Each end device keeps an open connection to the original content source (the CDN). The SwarmCloud Client SDK measures local bandwidth capacities and decides in real-time whether or not to use a WebRTC connection for content delivery. That means if viewers do not have enough bandwidth capacities to share content, they simply won't.
With this approach, SwarmCloud guarantees the optimal ratio between regular CDN traffic and WebRTC traffic between users. Furthermore, as SwarmCloud adapts to bandwidth changes in real-time, the network will always converge to this optimal state.
How secure is the SwarmCloud service?
SwarmCloud transfers data between peers using WebRTC data channel, which is secured by SCTP protocols and DTLS encryption. Communication with the backend(tracker and signaling server) is done via HTTPS and secured WebSocket.
Do you offer a self-hosted solution?
We don’t currently offer an on-premise option.
How to buy a traffic package?
Log on to https://dash.swarmcloud.net and click the Traffic Package on the left side. At present, Alipay and Paypal are supported to pay for the order. Please note that Alipay pays in RMB and Paypal in US dollars.
How to deduct the traffic after buying the traffic package if multiple domain names/AppId are registered?
If you bind multiple domain names in one account, those which open P2P services share traffic packets together. You can save on packet consumption by shutting down P2P services of one or several domain names in P2P Setting.
Does SwarmCloud interfere with DRM(Digital Right Management)?
No. P2P transmission is activated only after the user is authorized by the publisher’s server. Importantly, decryption key isn't transferred through the P2P network. The segments shared between peers are the same as what peers receive from the CDN. Also, content is never uploaded or stored in our server.
SwarmCloud works in a network layer to optimize the way segments are distributed between end devices. While doing this, all segments remain decrypted. As each segment is encrypted the same way for each user, there is no problem in exchanging those segments. Once a segment reaches an end device, the DRM service, that runs in a local application layer starts decrypting the segment.
Will SwarmCloud bring a delay to a user's stream?
No. The first Segment is always downloaded from CDN. Additionally, if a video segment cannot be loaded from peers within the timeout period, our scheduling algorithm will switch to CDN mode in time. That means it works within the delay inherent to the HLS and MPEG-DASH protocols.
How to support LG WebOS and Samsung Tizen?
We currently support web integrations of LG WebOS (version 5.0 and above) and Samsung Tizen (version 5.5 and above). SwarmCloud for Streaming relies on the WebRTC protocol - part of HTML5 - which is only available starting from these versions.
Web integrations for these devices are simply players hosted on a web page running in the browser of the smart TVs. To integrate SwarmCloud for Streaming using these methods, simply follow the same integration steps as for web. We recommend Hls.js and Dash.js plugins.
How to support Chromecast and TV Sticks?
SwarmCloud supports integration with classic web-based Chromecast receivers as well as with Android-based Chromecast with Google TVs.
For Android-based integration for Chromecast, the steps for integration would be the same as integrating with any android app.
For Web-based integration, The Google Cast SDK enables you to extend your Android, iOS, or Chrome app to direct its streaming video and audio to a TV set.
For SwarmCloud to work with the Web-based Chromecast receiver, you need to build a custom receiver application. A custom receiver is an HTML5 app that you host on your servers and must be implemented using the JavaScript Receiver API.
For more details about how to build a custom receiver application with the Receiver API, refer to Google's Custom Receiver guide.
If you use the default receiver application and do not import any additional player, Shaka Player is the default player on Chromecast. In this case, please follow this guide.
How to support Amazon Fire TV and Fire TV OS?
Fire TV OS is the operating system built by Amazon for its Fire TV dongle. There is three way type applications of application available OS :
- Custom Android App: Fire TV OS is based on the Android OS, therefore, it is possible to create an application in Java or Kotlin for Android. To integrate the SwarmCloud plugin in such an application, you can follow the Android Documentation. This is currently the only type of application that supports the SwarmCloud plugin on Fire TV OS.
- Custom Web App: It's possible to construct Web Application for Fire TV. Currently, the SwarmCloud plugin for web player is not supported with the Web Engine used by Fire TV OS.
- Fire App Builder: Fire App Builder is a framework to construct an application for the Amazon Fire TV. Currently, the SwarmCloud plugin is not supported when applications are created this way.
How does Web SDK work?
SwarmCloud implements WebRTC datachannel to scale live/vod video streaming by p2p network using bittorrent-like protocol. The built-in scheduling algorithm determines whether a peer should load the next segment from p2p network or the publisher’s alternative delivery system. hlsjs-p2p-engine is a hls.js wrapper provided by SwarmCloud for streaming HLS.
Today SwarmCloud supports the vast majority of HTML5 players including Hls.js, JWPlayer, Video.js, Clappr, Flowplayer and TCPlayer.
Is it possible to run SwarmCloud on iOS browsers?
Yes, we provide SDK based on ServiceWorker which can run p2p on iOS Safari.
What happens if a user‘s browser doesn't support WebRTC?
If that happens, the user will seamlessly fallback to normal HTTP request without any side effect.
Troubleshooting steps of Web SDK
See Troubleshooting
Do I need to update the code when a new version is being released?
No. The new versions are being loaded dynamically once you used the official CDN.
My player is integrated via an iframe
In this case, you need to get access to the iframe’s content. As any Javascript code can not access the content of an iframe, the SwarmCloud web SDK needs to be located within the iframe.
Is Android TV supported?
Yes, Android TV is a supported platform for the SDK. Android SDK works with any Android player although we recommend ExoPlayer which we've found to give good playback results.
Troubleshooting steps of Mobile SDK
See Troubleshooting
How can we help you today?
Support
SwarmCloud's expert support team is always available to help. Connect for dedicated 1:1 support!
Contact Us →