From e5ec9aba588331a608e8698ef29fce1cdba949f6 Mon Sep 17 00:00:00 2001 From: winlin Date: Thu, 10 Aug 2023 17:25:39 +0800 Subject: [PATCH] Rename SRS Cloud to SRS Stack. --- docusaurus.config.js | 4 +- for-writers/pages/faq-srs-stack-en.md | 1 + for-writers/pages/faq-srs-stack-zh.md | 1 + .../2022-04-09-SRS-Cloud-Tutorial.md | 16 +- .../2022-04-12-SRS-Cloud-HTTPS.md | 4 +- .../2022-04-29-BT-aaPanel.md | 24 +- ...-05-16-Load-Balancing-Streaming-Servers.md | 4 +- .../2023-03-07-Lets-Do-H265-Live-Streaming.md | 2 +- ...k-the-Power-of-SRS-Real-World-Use-Cases.md | 12 +- .../current/doc/getting-started-cloud.md | 24 +- .../current/tutorial/srs-cloud-server.md | 12 +- .../current/tutorial/srs-open-source.md | 2 +- .../2022-04-09-SRS-Cloud-Tutorial.md | 2 +- .../2022-04-12-SRS-Cloud-HTTPS.md | 8 +- ...-05-16-Load-Balancing-Streaming-Servers.md | 4 +- .../2023-03-07-Lets-Do-H265-Live-Streaming.md | 2 +- .../current/doc/getting-started-cloud.md | 20 +- .../current/tutorial/srs-cloud-server.md | 4 +- .../version-4.0/tutorial/srs-cloud-server.md | 2 +- .../version-5.0/doc/getting-started-cloud.md | 20 +- .../version-5.0/tutorial/srs-cloud-server.md | 4 +- .../docusaurus-plugin-content-pages/about.md | 2 +- .../faq-srs-cloud.md | 713 +---------------- .../faq-srs-stack.md | 721 ++++++++++++++++++ .../docusaurus-plugin-content-pages/faq.md | 6 +- src/pages/faq-srs-cloud.md | 630 +-------------- src/pages/faq-srs-stack.md | 705 +++++++++++++++++ src/pages/faq.md | 4 +- .../version-4.0/doc/getting-started-cloud.md | 4 +- .../version-4.0/tutorial/srs-cloud-server.md | 6 +- .../version-5.0/doc/getting-started-cloud.md | 24 +- .../version-5.0/tutorial/srs-cloud-server.md | 12 +- .../version-5.0/tutorial/srs-open-source.md | 2 +- 33 files changed, 1547 insertions(+), 1454 deletions(-) create mode 120000 for-writers/pages/faq-srs-stack-en.md create mode 120000 for-writers/pages/faq-srs-stack-zh.md create mode 100644 i18n/zh-cn/docusaurus-plugin-content-pages/faq-srs-stack.md create mode 100644 src/pages/faq-srs-stack.md diff --git a/docusaurus.config.js b/docusaurus.config.js index 71ee12f7..41424919 100644 --- a/docusaurus.config.js +++ b/docusaurus.config.js @@ -130,11 +130,11 @@ const config = { }, { to: '/faq', - label: 'FAQ: SRS', + label: 'FAQ: SRS OSS', }, { to: '/faq-srs-cloud', - label: 'FAQ: SRS Cloud', + label: 'FAQ: SRS Stack', }, { to: '/contact', diff --git a/for-writers/pages/faq-srs-stack-en.md b/for-writers/pages/faq-srs-stack-en.md new file mode 120000 index 00000000..3930fd2b --- /dev/null +++ b/for-writers/pages/faq-srs-stack-en.md @@ -0,0 +1 @@ +../../src/pages/faq-srs-stack.md \ No newline at end of file diff --git a/for-writers/pages/faq-srs-stack-zh.md b/for-writers/pages/faq-srs-stack-zh.md new file mode 120000 index 00000000..71e517f8 --- /dev/null +++ b/for-writers/pages/faq-srs-stack-zh.md @@ -0,0 +1 @@ +../../i18n/zh-cn/docusaurus-plugin-content-pages/faq-srs-stack.md \ No newline at end of file diff --git a/i18n/en-us/docusaurus-plugin-content-blog/2022-04-09-SRS-Cloud-Tutorial.md b/i18n/en-us/docusaurus-plugin-content-blog/2022-04-09-SRS-Cloud-Tutorial.md index 6420c980..a9c59bd7 100644 --- a/i18n/en-us/docusaurus-plugin-content-blog/2022-04-09-SRS-Cloud-Tutorial.md +++ b/i18n/en-us/docusaurus-plugin-content-blog/2022-04-09-SRS-Cloud-Tutorial.md @@ -19,7 +19,7 @@ Streaming video is very popular in a variety of industries, and there are many t Literally it's not just a media server, and seems a bit complicated, right? Yep and No! * Yep! Building a video streaming service is something really difficult, not easy. It requires video streaming engineering, also backend service technology like Nodejs or Go, and frontend skills to build a mgmt and homepage. -* No! Rather than build all from scratch, we could build a video streaming service based on some open source solution such as [SRS Cloud](https://github.com/ossrs/srs-cloud), and lightweight cloud service such as [DigitalOcean](https://digitalocean.com) or [TencentCloud](https://intl.cloud.tencent.com), it's really simple to build your video streaming service. +* No! Rather than build all from scratch, we could build a video streaming service based on some open source solution such as [SRS Stack](https://github.com/ossrs/srs-stack), and lightweight cloud service such as [DigitalOcean](https://digitalocean.com) or [TencentCloud](https://intl.cloud.tencent.com), it's really simple to build your video streaming service. In this tutorial, you will learn how to set-up a video streaming service, supports publishing by browser without a plugin that is converting WebRTC to HLS, to deliver low latency (about 300ms) video streaming using SRT, and to secure the service by authentication. Furthermore, this solution is open source and very easy to get it done, via even 1-Click. @@ -45,11 +45,11 @@ After the droplet is created, open `http://your_public_ipv4/mgmt/` in the browse We have bellow services running in the SRS droplet: * [SRS Server](https://github.com/ossrs/srs): SRS is a simple, high efficiency and realtime video server, supports RTMP, WebRTC, HLS, HTTP-FLV and SRT. We have both SRS 4.0 and 5.0 images installed. SRS is the media server engine, licensed under MIT or MulanPSL-2.0([compatible with Apache-2.0](https://www.apache.org/legal/resolved.html#category-a)). -* [SRS Cloud](https://github.com/ossrs/srs-cloud): A lightweight open-source video cloud based on Nodejs, SRS, FFmpeg, WebRTC, etc. SRS-Cloud acts as the framework of a video streaming service, it's also open source, licensed under MIT. +* [SRS Stack](https://github.com/ossrs/srs-stack): A lightweight open-source video cloud based on Nodejs, SRS, FFmpeg, WebRTC, etc. SRS-Cloud acts as the framework of a video streaming service, it's also open source, licensed under MIT. * [FFmpeg](https://ffmpeg.org/): A complete, cross-platform solution to record, convert and stream audio and video. FFmpeg is used as restreaming or transcoding, and many other stream processing features. * Other infrastructure like [Docker](https://docker.io/), [Redis](https://redis.io/), [NGINX](https://nginx.org/), [Prometheus](https://prometheus.io/) and [Certbot](https://certbot.eff.org/), to run dependent services as docker container, allow checking and upgrading to stable versions. -> SRS also set-up the firewall, please see [here](https://github.com/ossrs/srs-cloud/blob/main/scripts/setup-droplet/scripts/02-ufw-srs.sh) for details. All ports are `BLOCKED` except 22 (SSH), 80 (HTTP), 443 (HTTPS), 1935 (RTMP), 8000/UDP (WebRTC), 10080/UDP (SRT), 9000/TCP+UDP (GB28181), 5060/TCP+UDP (SIP), 2022 (MGMT) and 56379 (REDIS). +> SRS also set-up the firewall, please see [here](https://github.com/ossrs/srs-stack/blob/main/scripts/setup-droplet/scripts/02-ufw-srs.sh) for details. All ports are `BLOCKED` except 22 (SSH), 80 (HTTP), 443 (HTTPS), 1935 (RTMP), 8000/UDP (WebRTC), 10080/UDP (SRT), 9000/TCP+UDP (GB28181), 5060/TCP+UDP (SIP), 2022 (MGMT) and 56379 (REDIS). Now the video streaming service is ready, we could use FFmpeg, OBS or WebRTC to publish the stream, and play the HLS stream. @@ -99,7 +99,7 @@ For RTMP/FLV, the streaming latency is about 3~5s, while 5~10s for HLS. Which pr WebRTC? No! It's too complicated, and few devices support WebRTC. [WHIP](https://datatracker.ietf.org/doc/draft-ietf-wish-whip/) is a possible choice for live streaming using WebRTC, but it's not a RFC right now(at 2022). It might take a long time to apply WebRTC to the live streaming industry, especially if we get other choices, [SRT](https://www.srtalliance.org/) and [RIST](https://www.rist.tv/) etc. -> Note: Whatever, SRS Cloud allows you to use WebRTC for live streaming, to publish by WebRTC and play by RTMP/HLS/WebRTC. +> Note: Whatever, SRS Stack allows you to use WebRTC for live streaming, to publish by WebRTC and play by RTMP/HLS/WebRTC. It's also very easy to use SRT, by clicking `Scenarios > Low Latency > OBS+ffplay`, the guide is use OBS to publish SRT stream, and play by ffplay. The latency of `OBS+ffplay` is about 300ms, the bellow is a lower solution, by `vMix+ffplay`: @@ -109,17 +109,17 @@ It's also very easy to use SRT, by clicking `Scenarios > Low Latency > OBS+ffpla SRT is supported by a lot of devices of the broadcasting industry, and softwares like OBS/vMix also support SRT, so it's actually the most stable and easy way to get low latency live streaming. -Note that H5 does not support SRT, so you can't use Chrome to play a SRT stream, however, SRS Cloud will convert SRT to HTTP-FLV/HLS to ensure compability with general live streaming. +Note that H5 does not support SRT, so you can't use Chrome to play a SRT stream, however, SRS Stack will convert SRT to HTTP-FLV/HLS to ensure compability with general live streaming. ## Other Topics -SRS Cloud also supports restreaming to other platforms, by forking multiple FFmpeg processes, each process for a stream. It's a long story, so let's discuss it in a new tutorial. +SRS Stack also supports restreaming to other platforms, by forking multiple FFmpeg processes, each process for a stream. It's a long story, so let's discuss it in a new tutorial. Well DVR is another story, DVR means we convert live streaming to VoD files, so we must save the VoD files to a cloud storage, such as AWS S3 or TencentCloud COS. So we're developing to support more cloud storage now. -We're also considering to integrate a CMS to SRS cloud, to allow users to publish the live streaming rooms, or VoD files like a vlog, etc. +We're also considering to integrate a CMS to SRS Stack, to allow users to publish the live streaming rooms, or VoD files like a vlog, etc. -SRS Cloud is a single node video streaming service, but SRS is a media server that supports clusters, like [Origin Cluster](/docs/v4/doc/origin-cluster), [RTMP Edge Cluster](/docs/v4/doc/sample-rtmp-cluster) and even [HLS Edge Cluster](/docs/v4/doc/sample-hls-cluster). The HLS Edge Cluster is based on NGINX, and SRS could work well with NGINX, we will publish more tutorials about this topic if you wanna. +SRS Stack is a single node video streaming service, but SRS is a media server that supports clusters, like [Origin Cluster](/docs/v4/doc/origin-cluster), [RTMP Edge Cluster](/docs/v4/doc/sample-rtmp-cluster) and even [HLS Edge Cluster](/docs/v4/doc/sample-hls-cluster). The HLS Edge Cluster is based on NGINX, and SRS could work well with NGINX, we will publish more tutorials about this topic if you wanna. ## Conclusion diff --git a/i18n/en-us/docusaurus-plugin-content-blog/2022-04-12-SRS-Cloud-HTTPS.md b/i18n/en-us/docusaurus-plugin-content-blog/2022-04-12-SRS-Cloud-HTTPS.md index d140e133..31be5ed9 100644 --- a/i18n/en-us/docusaurus-plugin-content-blog/2022-04-12-SRS-Cloud-HTTPS.md +++ b/i18n/en-us/docusaurus-plugin-content-blog/2022-04-12-SRS-Cloud-HTTPS.md @@ -57,7 +57,7 @@ PING ossrs.io (your_public_ipv4): 56 data bytes 64 bytes from your_public_ipv4: icmp_seq=2 ttl=64 time=12.433 ms ``` -If you visit `http://your_domain_name/mgmt`, you should see the SRS Cloud console now. +If you visit `http://your_domain_name/mgmt`, you should see the SRS Stack console now. ![](/img/blog-2022-04-12-01.png) @@ -86,7 +86,7 @@ Let's finish this tutorial by covering the certificate renewal process. ## Step 3 - About Certificate Auto-Renewal -Let's Encrypt's certificates are only valid for about 3 months. SRS Cloud will start a timer to verify if it is due to +Let's Encrypt's certificates are only valid for about 3 months. SRS Stack will start a timer to verify if it is due to renew your certificates on a daily basis, and reload Nginx to apply the changes if neccessary. You can check the renew log by: diff --git a/i18n/en-us/docusaurus-plugin-content-blog/2022-04-29-BT-aaPanel.md b/i18n/en-us/docusaurus-plugin-content-blog/2022-04-29-BT-aaPanel.md index e4ea1550..21670b29 100644 --- a/i18n/en-us/docusaurus-plugin-content-blog/2022-04-29-BT-aaPanel.md +++ b/i18n/en-us/docusaurus-plugin-content-blog/2022-04-29-BT-aaPanel.md @@ -24,7 +24,7 @@ service, for example, to enable live streaming feature for your WordPress websit To complete this guide, you should have: 1. A linux server, with aaPanel installed. Please use a CentOS 7+ or Ubuntu 20+ and install aaPanel on it by using [command here](https://www.aapanel.com/install.html). -2. **NGINX** based framework, if you also need to install websites. [SRS Cloud](https://github.com/ossrs/srs-cloud) requires **NGINX** to proxy to our backend services. +2. **NGINX** based framework, if you also need to install websites. [SRS Stack](https://github.com/ossrs/srs-stack) requires **NGINX** to proxy to our backend services. 3. A DNS domain name, if you want to use HTTPS. ## Step 1: Install aaPanel @@ -54,15 +54,15 @@ Visit the url in a browser, as demonstrated below: You might develop your website with WordPress, however it's optional. In the next step, let's set-up a media server with aaPanel for live streaming. -## Step 2: Install SRS Cloud +## Step 2: Install SRS Stack -There are two ways to install SRS Cloud. If you find the `SRS Cloud` plugin in App Store, you could install it from +There are two ways to install SRS Stack. If you find the `SRS Stack` plugin in App Store, you could install it from there, as shown in the following picture: ![](/img/blog-2022-04-29-en-002.png) If not found in App Store, you could also download the latest version of the plugin in the srs-cloud repository on -Github: [aapanel-srs_cloud.zip](https://github.com/ossrs/srs-cloud/releases/latest/download/aapanel-srs_cloud.zip). Then +Github: [aapanel-srs_cloud.zip](https://github.com/ossrs/srs-stack/releases/latest/download/aapanel-srs_cloud.zip). Then you could upload the zip file and install the plugin, as demonstrated below: ![](/img/blog-2022-04-29-en-003.png) @@ -71,28 +71,28 @@ Both approaches will lead you to a installation guide, like this: ![](/img/blog-2022-04-29-en-004.png) -Please click on `Confirm to install` to continue the plugin installation. In the next step, we will set-up SRS Cloud and +Please click on `Confirm to install` to continue the plugin installation. In the next step, we will set-up SRS Stack and install some dependencies. -## Step 3: Setup SRS Cloud +## Step 3: Setup SRS Stack -To set-up `SRS Cloud`, please click the `Setting` button under `Operation` field: +To set-up `SRS Stack`, please click the `Setting` button under `Operation` field: ![](/img/blog-2022-04-29-en-005.png) -Then click on `Install SRS Cloud` to install the required softwares: +Then click on `Install SRS Stack` to install the required softwares: ![](/img/blog-2022-04-29-en-006.png) -SRS Cloud requires NGINX, Nodejs and Docker, please install all of them: +SRS Stack requires NGINX, Nodejs and Docker, please install all of them: ![](/img/blog-2022-04-29-en-007.png) -After installing all dependencies, continue to install SRS Cloud: +After installing all dependencies, continue to install SRS Stack: ![](/img/blog-2022-04-29-en-008.png) -When completion all the set-up, click on `Dashboard` and then visit the `SRS Cloud Dashboard` via the link on the page: +When completion all the set-up, click on `Dashboard` and then visit the `SRS Stack Dashboard` via the link on the page: ![](/img/blog-2022-04-29-en-009.png) @@ -100,7 +100,7 @@ Then set-up the admin password: ![](/img/blog-2022-04-29-en-010.png) -You could follow the tutorials to use SRS Cloud: +You could follow the tutorials to use SRS Stack: ![](/img/blog-2022-04-29-en-011.png) diff --git a/i18n/en-us/docusaurus-plugin-content-blog/2022-05-16-Load-Balancing-Streaming-Servers.md b/i18n/en-us/docusaurus-plugin-content-blog/2022-05-16-Load-Balancing-Streaming-Servers.md index 2051fd20..65e6d826 100644 --- a/i18n/en-us/docusaurus-plugin-content-blog/2022-05-16-Load-Balancing-Streaming-Servers.md +++ b/i18n/en-us/docusaurus-plugin-content-blog/2022-05-16-Load-Balancing-Streaming-Servers.md @@ -68,7 +68,7 @@ Network bandwidth, whether it is overloaded, is considered over the following cr Disk, related to video recording, log splitting and STW problems caused by a slow disk : -* When there are multiple streams that require recording, disk will become the most critical bottleneck since it’s the slowest device. When designing a system, consideration must be given to address such problems. For example, a server has 64GB RAM. 32GB of RAM can be allocated to streaming service as temporary storage for media files. Another solution when having a small disk, is to use external services such as nodejs, with multithreading enabled, and then copy or store the files to the cloud storage. Please refer to [srs-cloud](https://github.com/ossrs/srs-cloud) for the best practices. +* When there are multiple streams that require recording, disk will become the most critical bottleneck since it’s the slowest device. When designing a system, consideration must be given to address such problems. For example, a server has 64GB RAM. 32GB of RAM can be allocated to streaming service as temporary storage for media files. Another solution when having a small disk, is to use external services such as nodejs, with multithreading enabled, and then copy or store the files to the cloud storage. Please refer to [srs-cloud](https://github.com/ossrs/srs-stack) for the best practices. * Server logs, abnormal situations might lead to large quantities of writing operations to log files. If not being divided and rotated properly, the size of log files will gradually increase, and eventually take up the entire disk space. SRS supports log-rotate, and docker allows setup with log-rotate too. The logs are usually extracted (the entire raw log can be extracted if there is not much), and sent to cloud-hosted log service for analysis. Local logs are only kept for a short period, e.g. 15 days. * STW (Stop The World) issue. The write operations cause congestion and other disk operations are queued until the write operation completes. Especially when a network disk, such as a NAS, is mounted as a local drive. Then when the server performs data write operations, there are in fact many operations happening at the network layer, which consequently causes more delay. SRS servers should avoid using network disks completely, because each congestion will lead to a STW situation on a server and all other requests will be queued. @@ -94,7 +94,7 @@ Let's talk about the load and overload conditions in SRS: * SRS’s process. When the CPU usage exceeds 100%, overload happens. SRS has a single-process design, hence it cannot take advantage of multiple CPUs (which will be elaborated in the later section). * Network bandwidth. It is usually the first resource that reaches overload. For example, CPU may still have a lot of free source, when the bandwidth throughput reaches 1Gbps in live streaming. RTC is slightly different, as it is computationally intensive too. -* Disk. Except when recording is only needed for very few streams, it is generally necessary to avoid disk usage so as to avoid consequent problems. Instead we could mount RAM-drives, or reduce the number of streams processed by each SRS. Please refer to [srs-cloud](https://github.com/ossrs/srs-cloud) for best practices. +* Disk. Except when recording is only needed for very few streams, it is generally necessary to avoid disk usage so as to avoid consequent problems. Instead we could mount RAM-drives, or reduce the number of streams processed by each SRS. Please refer to [srs-cloud](https://github.com/ossrs/srs-stack) for best practices. * Memory. It is generally less used, but we still care about the number of streams for some specific cases. For example, in case of CCTV monitoring when constant pushing and disconnecting happens, it is necessary to pay continuous attention to the increasing memory consumption by SRS. This issue can be circumvented by [Gracefully Quit](https://github.com/ossrs/srs/issues/413#issuecomment-917771521). Special note for SRS single-process design. This is actually a choice. It is a trade-off for performance optimization. On one hand, multiprocessing can improve the processing capability. On the other hand, it is at the expense of increasing complexity of the system. Moreover it is hard to evaluate the overall load. For instance, what is an 8-core multiprocessing streaming server’s CPU overload threshold? Is it 640%? No, because the processes are not evenly consuming CPU resources. To even the process-consumption, we must implement process load balancing scheme, which is a more complicated problem. diff --git a/i18n/en-us/docusaurus-plugin-content-blog/2023-03-07-Lets-Do-H265-Live-Streaming.md b/i18n/en-us/docusaurus-plugin-content-blog/2023-03-07-Lets-Do-H265-Live-Streaming.md index 6d2af2aa..98e68344 100644 --- a/i18n/en-us/docusaurus-plugin-content-blog/2023-03-07-Lets-Do-H265-Live-Streaming.md +++ b/i18n/en-us/docusaurus-plugin-content-blog/2023-03-07-Lets-Do-H265-Live-Streaming.md @@ -79,7 +79,7 @@ Part 5, other features for H.265. * [x] Black box test support HEVC. * [x] Patch FFmpeg in SRS dev-docker. * [x] Support HEVC for [WordPress plugin SrsPlayer](https://github.com/ossrs/WordPress-Plugin-SrsPlayer). -* [ ] Not supported: Update [srs-cloud](https://github.com/ossrs/srs-cloud) for HEVC. +* [ ] Not supported: Update [srs-cloud](https://github.com/ossrs/srs-stack) for HEVC. * [ ] Not supported: Edge server supports publish HEVC stream to origin. * [ ] Not supported: Edge server supprots play HEVC stream from origin. * [ ] Not supported: HTTP Callback takes HEVC metadata. diff --git a/i18n/en-us/docusaurus-plugin-content-blog/2023-05-22-Unlock-the-Power-of-SRS-Real-World-Use-Cases.md b/i18n/en-us/docusaurus-plugin-content-blog/2023-05-22-Unlock-the-Power-of-SRS-Real-World-Use-Cases.md index 43c9df6f..a6981833 100644 --- a/i18n/en-us/docusaurus-plugin-content-blog/2023-05-22-Unlock-the-Power-of-SRS-Real-World-Use-Cases.md +++ b/i18n/en-us/docusaurus-plugin-content-blog/2023-05-22-Unlock-the-Power-of-SRS-Real-World-Use-Cases.md @@ -62,11 +62,11 @@ In short, this is a key feature of SRS. Are you a video blogger with lots of high-quality videos? Have you thought about setting up a live room to grow your business? -With SRS Cloud, you can easily turn your video files into live streams and engage your audience without having to live-stream yourself. +With SRS Stack, you can easily turn your video files into live streams and engage your audience without having to live-stream yourself. -SRS Cloud lets you create virtual live-streaming 24/7 in just three steps: upload your videos, set up a live room (like a YouTube live room), and copy-paste the stream key to start live streaming. +SRS Stack lets you create virtual live-streaming 24/7 in just three steps: upload your videos, set up a live room (like a YouTube live room), and copy-paste the stream key to start live streaming. -It's easy, doesn't require any media streaming expertise, and SRS Cloud can even restream your live streams to other platforms for free since it's open source. +It's easy, doesn't require any media streaming expertise, and SRS Stack can even restream your live streams to other platforms for free since it's open source. ## Video Blogger, empower video bloggers with live streaming. @@ -76,7 +76,7 @@ If you own a WordPress site, you may have considered adding live streaming, whic But now, with the SRS Player WordPress plugin, you can incorporate live streaming using HTTP-FLV, HLS, and WebRTC, as well as video-on-demand streaming via HTTP-MP4. -Simply embed the live-streaming player with a WordPress shortcode, which you can find in the SRS cloud console. +Simply embed the live-streaming player with a WordPress shortcode, which you can find in the SRS Stack console. This powerful plugin makes live streaming accessible to everyone, even in WooCommerce, a widely-used e-commerce plugin for WordPress, showcasing the impact of open source technology. @@ -136,7 +136,7 @@ HEVC or AV1 is essential for 8K live-streaming and is becoming popular in the VR Do you want to broadcast your live streams on multiple platforms like YouTube, Facebook, Twitch, and TikTok? -The SRS cloud simplifies this task and doesn't use up your bandwidth since it takes care of the restreaming for you. +The SRS Stack simplifies this task and doesn't use up your bandwidth since it takes care of the restreaming for you. ## SRS Prometheus Exporter, make SRS an operatable online product. @@ -144,7 +144,7 @@ The SRS cloud simplifies this task and doesn't use up your bandwidth since it ta Prometheus, a well-known open-source monitoring system, is natively supported by SRS through its exporter, letting you keep an eye on the SRS server. -Visualize metrics with Grafana, and look forward to Prometheus and Grafana being integrated into the SRS cloud in the future. +Visualize metrics with Grafana, and look forward to Prometheus and Grafana being integrated into the SRS Stack in the future. To back the project, think about donating via OpenCollective. diff --git a/i18n/en-us/docusaurus-plugin-content-docs/current/doc/getting-started-cloud.md b/i18n/en-us/docusaurus-plugin-content-docs/current/doc/getting-started-cloud.md index 634b9160..a36561d0 100644 --- a/i18n/en-us/docusaurus-plugin-content-docs/current/doc/getting-started-cloud.md +++ b/i18n/en-us/docusaurus-plugin-content-docs/current/doc/getting-started-cloud.md @@ -7,29 +7,29 @@ hide_table_of_contents: false # Cloud SRS -SRS Cloud is a video cloud solution that is lightweight, open-source, and based on Go, +SRS Stack is a video cloud solution that is lightweight, open-source, and based on Go, Reactjs, SRS, FFmpeg, WebRTC, etc. -Comparing SRS Cloud and SRS, both offer media streaming capabilities at a similar level. -However, SRS Cloud provides a more powerful and feature-rich experience for end users, -eliminating the need to write any code. Users can directly utilize SRS Cloud for your +Comparing SRS Stack and SRS, both offer media streaming capabilities at a similar level. +However, SRS Stack provides a more powerful and feature-rich experience for end users, +eliminating the need to write any code. Users can directly utilize SRS Stack for your media services needs. -| Comparison | SRS Cloud | SRS | Notes | +| Comparison | SRS Stack | SRS | Notes | |------------------|-----------|---------------|----------------------------------------------------------------------| | License | MIT | MIT | Both are open-source with an MIT license. | | Live Streaming | Yes | Yes | Both support RTMP, HLS, and HTTP-FLV protocols. | | WebRTC | Yes | Yes | WebRTC is supported by both. | -| Console | Enhanced | HTTP API | SRS Cloud offers a more powerful console. | -| Authentication | Yes | HTTP Callback | SRS Cloud has built-in authentication, while SRS uses callbacks. | -| DVR | Enhanced | File-based | SRS Cloud supports DVR to file and cloud storage. | -| Forwarding | Enhanced | Basic | SRS Cloud can forward to multiple platforms via various protocols. | -| Virtual Live | Yes | No | SRS Cloud provides advanced virtual live streaming capabilities. | -| WordPress | Yes | No | SRS Cloud offers a WordPress plugin and step-by-step guidelines. | +| Console | Enhanced | HTTP API | SRS Stack offers a more powerful console. | +| Authentication | Yes | HTTP Callback | SRS Stack has built-in authentication, while SRS uses callbacks. | +| DVR | Enhanced | File-based | SRS Stack supports DVR to file and cloud storage. | +| Forwarding | Enhanced | Basic | SRS Stack can forward to multiple platforms via various protocols. | +| Virtual Live | Yes | No | SRS Stack provides advanced virtual live streaming capabilities. | +| WordPress | Yes | No | SRS Stack offers a WordPress plugin and step-by-step guidelines. | ## DigitalOcean Droplet -Please read [DigitalOcean Droplet](https://github.com/ossrs/srs-cloud/wiki/Droplet): Create SRS Droplet. +Please read [DigitalOcean Droplet](https://github.com/ossrs/srs-stack/wiki/Droplet): Create SRS Droplet. ## TencentCloud CVM diff --git a/i18n/en-us/docusaurus-plugin-content-docs/current/tutorial/srs-cloud-server.md b/i18n/en-us/docusaurus-plugin-content-docs/current/tutorial/srs-cloud-server.md index 9d82e092..0c256079 100644 --- a/i18n/en-us/docusaurus-plugin-content-docs/current/tutorial/srs-cloud-server.md +++ b/i18n/en-us/docusaurus-plugin-content-docs/current/tutorial/srs-cloud-server.md @@ -1,22 +1,22 @@ --- -title: SRS Cloud -sidebar_label: SRS Cloud +title: SRS Stack +sidebar_label: SRS Stack hide_title: false hide_table_of_contents: false --- -# SRS Cloud +# SRS Stack -SRS Cloud is an open source, media streaming service solution, which is easy to use and can be used in multiple media +SRS Stack is an open source, media streaming service solution, which is easy to use and can be used in multiple media scenarios. It combines the SRS, FFmpeg, WebRTC and other projects, and provides a one-stop solution for small and medium-sized enterprises to easily obtain digital capabilities. -## How to Do Virtual Live Streaming by SRS Cloud +## How to Do Virtual Live Streaming by SRS Stack https://youtu.be/68PIGFDGihU How to push a MP4 file, or DVR content to a live room? That's virtual live streaming. -This video introduce how to do virtual live by SRS Cloud. +This video introduce how to do virtual live by SRS Stack. ![](https://ossrs.net/gif/v1/sls.gif?site=ossrs.io&path=/lts/tutorial/en/v6/srs-cloud-server) diff --git a/i18n/en-us/docusaurus-plugin-content-docs/current/tutorial/srs-open-source.md b/i18n/en-us/docusaurus-plugin-content-docs/current/tutorial/srs-open-source.md index ef7f9a1e..f7fdeba5 100644 --- a/i18n/en-us/docusaurus-plugin-content-docs/current/tutorial/srs-open-source.md +++ b/i18n/en-us/docusaurus-plugin-content-docs/current/tutorial/srs-open-source.md @@ -13,7 +13,7 @@ hide_table_of_contents: false Simple Realtime Server (SRS) is a real-time video server that supports various protocols, such as RTMP, WebRTC, HLS, HTTP-FLV, SRT, and MPEG-DASH. It acts as a media gateway, converting between RTMP, SRT, and WebRTC. SRS has several -use cases, including as an origin cluster, for virtual live-streaming with SRS Cloud, with the SRS Player WordPress +use cases, including as an origin cluster, for virtual live-streaming with SRS Stack, with the SRS Player WordPress plugin, for Unity developers, in the broadcast industry, for AI video and audio processing, and for cutting live-streaming expenses. SRS is compatible with various open-source technologies and has a global community on Discord. diff --git a/i18n/zh-cn/docusaurus-plugin-content-blog/2022-04-09-SRS-Cloud-Tutorial.md b/i18n/zh-cn/docusaurus-plugin-content-blog/2022-04-09-SRS-Cloud-Tutorial.md index 71b677c9..590cc571 100644 --- a/i18n/zh-cn/docusaurus-plugin-content-blog/2022-04-09-SRS-Cloud-Tutorial.md +++ b/i18n/zh-cn/docusaurus-plugin-content-blog/2022-04-09-SRS-Cloud-Tutorial.md @@ -67,7 +67,7 @@ SRS云服务器:https://www.bilibili.com/video/BV1844y1L7dL/ ## FAQ -如果你有一些疑问,基本上你的疑问其他人也问过,请先在[FAQ](https://github.com/ossrs/srs-cloud/issues/4)中找一找。 +如果你有一些疑问,基本上你的疑问其他人也问过,请先在[FAQ](https://github.com/ossrs/srs-stack/issues/4)中找一找。 > Note: 这些FAQ会不断更新,请访问Github地址,查看最新的FAQ列表。 diff --git a/i18n/zh-cn/docusaurus-plugin-content-blog/2022-04-12-SRS-Cloud-HTTPS.md b/i18n/zh-cn/docusaurus-plugin-content-blog/2022-04-12-SRS-Cloud-HTTPS.md index 3ff167ed..9f09cc4f 100644 --- a/i18n/zh-cn/docusaurus-plugin-content-blog/2022-04-12-SRS-Cloud-HTTPS.md +++ b/i18n/zh-cn/docusaurus-plugin-content-blog/2022-04-12-SRS-Cloud-HTTPS.md @@ -10,11 +10,11 @@ custom_edit_url: null ## Introduction -Let's Encrypt可以提供免费证书,SRS Cloud可以一键申请。 +Let's Encrypt可以提供免费证书,SRS Stack可以一键申请。 -HTTPS在WebRTC中是必要的,若需要在HTTPS的网站中播放直播流,SRS Cloud也必须是HTTPS的流。 +HTTPS在WebRTC中是必要的,若需要在HTTPS的网站中播放直播流,SRS Stack也必须是HTTPS的流。 -这个文章介绍了如何开启SRS Cloud的HTTPS功能,并自动续期。 +这个文章介绍了如何开启SRS Stack的HTTPS功能,并自动续期。 @@ -73,7 +73,7 @@ PING ossrs.io (your_public_ipv4): 56 data bytes ## Step 3 - About Certificate Auto-Renewal -Let's Encrypt证书是3个月过期,SRS Cloud会自动续期,不需要人工干预。 +Let's Encrypt证书是3个月过期,SRS Stack会自动续期,不需要人工干预。 你可以查看续期的日志: diff --git a/i18n/zh-cn/docusaurus-plugin-content-blog/2022-05-16-Load-Balancing-Streaming-Servers.md b/i18n/zh-cn/docusaurus-plugin-content-blog/2022-05-16-Load-Balancing-Streaming-Servers.md index ef0f82d4..b6f3e439 100644 --- a/i18n/zh-cn/docusaurus-plugin-content-blog/2022-05-16-Load-Balancing-Streaming-Servers.md +++ b/i18n/zh-cn/docusaurus-plugin-content-blog/2022-05-16-Load-Balancing-Streaming-Servers.md @@ -67,7 +67,7 @@ custom_edit_url: null 磁盘,主要涉及的是流的录制,日志切割,以及慢磁盘导致的STW问题: -* 若需要录制的流较多,磁盘作为最慢的设备,会明显成为瓶颈。一般在系统设计时,就需要避免这种情况,比如64GB内存的服务器,可以分32GB的内存盘,给流媒体服务器写临时文件。或者使用较小的内存盘,用外部的程序比如nodejs,开启多线程后,将文件拷贝到存储或发送到云存储,可以参考[srs-cloud](https://github.com/ossrs/srs-cloud)的最佳实践。 +* 若需要录制的流较多,磁盘作为最慢的设备,会明显成为瓶颈。一般在系统设计时,就需要避免这种情况,比如64GB内存的服务器,可以分32GB的内存盘,给流媒体服务器写临时文件。或者使用较小的内存盘,用外部的程序比如nodejs,开启多线程后,将文件拷贝到存储或发送到云存储,可以参考[srs-cloud](https://github.com/ossrs/srs-stack)的最佳实践。 * 服务器的日志,在一些异常情况下,可能会造成大量写入,另外如果持续累计不切割和清理,会导致日志文件越来越大,最终写满磁盘。SRS支持logrotate,另外docker一般也可以配置logrotate,一般会将日志做提取后(日志少可以直接采集原始日志),传输到云的日志服务做分析,本地只需要存储短时间比如15天日志。 * STW问题,写磁盘是阻塞操作,特别是挂的网络磁盘比如NAS,挂载到本地文件系统,而服务器在调用write写入数据时,实际上可能有非常多的网络操作,那么这种其实会更消耗时间。SRS目前应该完全避免挂载网络磁盘,每次阻塞都会导致整个服务器STW(世界暂停)不能处理其他请求。 @@ -93,7 +93,7 @@ custom_edit_url: null * SRS的进程,若CPU若超过100%,则过载。SRS是单线程设计,无法使用多个CPU的能力(这个后面我详细展开讲讲)。 * 网络带宽,一般是最快达到过载的资源,比如直播中达到1Gbps吞吐带宽时可能CPU还很空闲,RTC由于同时是计算密集型,稍微有些差异。 -* 磁盘,除了非常少的路数的流的录制,一般需要规避磁盘问题,挂载内存盘,或者降低每个SRS处理的流的路数。参考[srs-cloud](https://github.com/ossrs/srs-cloud)的最佳实践。 +* 磁盘,除了非常少的路数的流的录制,一般需要规避磁盘问题,挂载内存盘,或者降低每个SRS处理的流的路数。参考[srs-cloud](https://github.com/ossrs/srs-stack)的最佳实践。 * 内存,一般是使用较少的资源,在流路数特别特别,比如监控场景不断推流和断开的场景,需要持续关注SRS的内存上涨。这个问题可以通过[Gracefully Quit](https://github.com/ossrs/srs/issues/413#issuecomment-917771521)规避。 特别说明下SRS单线程的问题,这其实是个选择,没有免费的性能优化,多线程当然能提升处理能力,同时是以牺牲系统的复杂度为代价,同时也很难评估系统的过载,比如8核的多线程的流媒体服务器CPU多少算是过载?640%?不对,因为可能每个线程是不均匀的,要实现线程均匀要做线程的负载调度,这又是更复杂的问题。 diff --git a/i18n/zh-cn/docusaurus-plugin-content-blog/2023-03-07-Lets-Do-H265-Live-Streaming.md b/i18n/zh-cn/docusaurus-plugin-content-blog/2023-03-07-Lets-Do-H265-Live-Streaming.md index 8fa66ea0..3f3fb03f 100644 --- a/i18n/zh-cn/docusaurus-plugin-content-blog/2023-03-07-Lets-Do-H265-Live-Streaming.md +++ b/i18n/zh-cn/docusaurus-plugin-content-blog/2023-03-07-Lets-Do-H265-Live-Streaming.md @@ -86,7 +86,7 @@ H.265的收益就不用说了,可以用更少的带宽,传输同样的质量 * [x] 原生支持:黑盒测试支持HEVC。 * [x] 原生支持:SRS镜像支持补丁的FFmpeg。可以不用自己编译FFmpeg,使用SRS镜像提供的FFmpeg即可。 * [x] 原生支持:[WordPress plugin SrsPlayer](https://github.com/ossrs/WordPress-Plugin-SrsPlayer)插件支持HEVC。由于云SRS使用的是4.0稳定版本,还需要几年才能切换到6.0。 -* [ ] 不支持:Update [srs-cloud](https://github.com/ossrs/srs-cloud) for HEVC. +* [ ] 不支持:Update [srs-cloud](https://github.com/ossrs/srs-stack) for HEVC. * [ ] 不支持:Edge server supports publish HEVC stream to origin. * [ ] 不支持:Edge server supprots play HEVC stream from origin. * [ ] 不支持:HTTP Callback takes HEVC metadata. diff --git a/i18n/zh-cn/docusaurus-plugin-content-docs/current/doc/getting-started-cloud.md b/i18n/zh-cn/docusaurus-plugin-content-docs/current/doc/getting-started-cloud.md index d9bf6bae..8e91ef89 100644 --- a/i18n/zh-cn/docusaurus-plugin-content-docs/current/doc/getting-started-cloud.md +++ b/i18n/zh-cn/docusaurus-plugin-content-docs/current/doc/getting-started-cloud.md @@ -7,22 +7,22 @@ hide_table_of_contents: false # Cloud SRS -SRS Cloud是一个基于Go、Reactjs、SRS、FFmpeg、WebRTC等的轻量级、开源的视频云解决方案。 +SRS Stack是一个基于Go、Reactjs、SRS、FFmpeg、WebRTC等的轻量级、开源的视频云解决方案。 -在比较SRS Cloud和SRS时,两者都提供相似级别的媒体流功能。然而,SRS Cloud为终端用户提供了更强大且功能丰富的体验, -无需编写任何代码。用户可以直接使用SRS Cloud满足您的媒体服务需求。 +在比较SRS Stack和SRS时,两者都提供相似级别的媒体流功能。然而,SRS Stack为终端用户提供了更强大且功能丰富的体验, +无需编写任何代码。用户可以直接使用SRS Stack满足您的媒体服务需求。 -| 比较 | SRS Cloud | SRS | 说明 | +| 比较 | SRS Stack | SRS | 说明 | |----------|------|----------|-------------------------------| | 许可证 | MIT | MIT | 都是MIT许可证的开源项目。 | | 直播流 | 是 | 是 | 两者都支持RTMP,HLS和HTTP-FLV协议。 | | WebRTC | 是 | 是 | 两者都支持WebRTC。 | -| 控制台 | 增强 | HTTP API | SRS Cloud提供了更强大的控制台。 | -| 身份验证 | 是 | HTTP回调 | SRS Cloud具有内置身份验证,而SRS使用回调。 | -| DVR | 增强 | 基于文件 | SRS Cloud支持将DVR存储到文件和云存储。 | -| 转发 | 增强 | 基本 | SRS Cloud可以通过各种协议转发到多个平台。 | -| 虚拟直播 | 是 | 否 | SRS Cloud提供了先进的虚拟直播功能。 | -| WordPress | 是 | 否 | SRS Cloud提供了WordPress插件和操作指南。 | +| 控制台 | 增强 | HTTP API | SRS Stack提供了更强大的控制台。 | +| 身份验证 | 是 | HTTP回调 | SRS Stack具有内置身份验证,而SRS使用回调。 | +| DVR | 增强 | 基于文件 | SRS Stack支持将DVR存储到文件和云存储。 | +| 转发 | 增强 | 基本 | SRS Stack可以通过各种协议转发到多个平台。 | +| 虚拟直播 | 是 | 否 | SRS Stack提供了先进的虚拟直播功能。 | +| WordPress | 是 | 否 | SRS Stack提供了WordPress插件和操作指南。 | ## TencentCloud LightHouse diff --git a/i18n/zh-cn/docusaurus-plugin-content-docs/current/tutorial/srs-cloud-server.md b/i18n/zh-cn/docusaurus-plugin-content-docs/current/tutorial/srs-cloud-server.md index 912a2c05..78376d03 100644 --- a/i18n/zh-cn/docusaurus-plugin-content-docs/current/tutorial/srs-cloud-server.md +++ b/i18n/zh-cn/docusaurus-plugin-content-docs/current/tutorial/srs-cloud-server.md @@ -1,11 +1,11 @@ --- -title: SRS Cloud +title: SRS Stack sidebar_label: 云SRS hide_title: false hide_table_of_contents: false --- -# SRS Cloud +# SRS Stack SRS云服务器,面向鼠标编程,没有服务器和命令行经验,也可以构建自己的在线视频服务。入门的最佳推荐。 diff --git a/i18n/zh-cn/docusaurus-plugin-content-docs/version-4.0/tutorial/srs-cloud-server.md b/i18n/zh-cn/docusaurus-plugin-content-docs/version-4.0/tutorial/srs-cloud-server.md index 241eeefa..fcd388d7 100644 --- a/i18n/zh-cn/docusaurus-plugin-content-docs/version-4.0/tutorial/srs-cloud-server.md +++ b/i18n/zh-cn/docusaurus-plugin-content-docs/version-4.0/tutorial/srs-cloud-server.md @@ -1,5 +1,5 @@ --- -title: SRS Cloud +title: SRS Stack sidebar_label: 云SRS hide_title: false hide_table_of_contents: false diff --git a/i18n/zh-cn/docusaurus-plugin-content-docs/version-5.0/doc/getting-started-cloud.md b/i18n/zh-cn/docusaurus-plugin-content-docs/version-5.0/doc/getting-started-cloud.md index 7dcebb2e..36135090 100644 --- a/i18n/zh-cn/docusaurus-plugin-content-docs/version-5.0/doc/getting-started-cloud.md +++ b/i18n/zh-cn/docusaurus-plugin-content-docs/version-5.0/doc/getting-started-cloud.md @@ -7,22 +7,22 @@ hide_table_of_contents: false # Cloud SRS -SRS Cloud是一个基于Go、Reactjs、SRS、FFmpeg、WebRTC等的轻量级、开源的视频云解决方案。 +SRS Stack是一个基于Go、Reactjs、SRS、FFmpeg、WebRTC等的轻量级、开源的视频云解决方案。 -在比较SRS Cloud和SRS时,两者都提供相似级别的媒体流功能。然而,SRS Cloud为终端用户提供了更强大且功能丰富的体验, -无需编写任何代码。用户可以直接使用SRS Cloud满足您的媒体服务需求。 +在比较SRS Stack和SRS时,两者都提供相似级别的媒体流功能。然而,SRS Stack为终端用户提供了更强大且功能丰富的体验, +无需编写任何代码。用户可以直接使用SRS Stack满足您的媒体服务需求。 -| 比较 | SRS Cloud | SRS | 说明 | +| 比较 | SRS Stack | SRS | 说明 | |----------|------|----------|-------------------------------| | 许可证 | MIT | MIT | 都是MIT许可证的开源项目。 | | 直播流 | 是 | 是 | 两者都支持RTMP,HLS和HTTP-FLV协议。 | | WebRTC | 是 | 是 | 两者都支持WebRTC。 | -| 控制台 | 增强 | HTTP API | SRS Cloud提供了更强大的控制台。 | -| 身份验证 | 是 | HTTP回调 | SRS Cloud具有内置身份验证,而SRS使用回调。 | -| DVR | 增强 | 基于文件 | SRS Cloud支持将DVR存储到文件和云存储。 | -| 转发 | 增强 | 基本 | SRS Cloud可以通过各种协议转发到多个平台。 | -| 虚拟直播 | 是 | 否 | SRS Cloud提供了先进的虚拟直播功能。 | -| WordPress | 是 | 否 | SRS Cloud提供了WordPress插件和操作指南。 | +| 控制台 | 增强 | HTTP API | SRS Stack提供了更强大的控制台。 | +| 身份验证 | 是 | HTTP回调 | SRS Stack具有内置身份验证,而SRS使用回调。 | +| DVR | 增强 | 基于文件 | SRS Stack支持将DVR存储到文件和云存储。 | +| 转发 | 增强 | 基本 | SRS Stack可以通过各种协议转发到多个平台。 | +| 虚拟直播 | 是 | 否 | SRS Stack提供了先进的虚拟直播功能。 | +| WordPress | 是 | 否 | SRS Stack提供了WordPress插件和操作指南。 | ## TencentCloud LightHouse diff --git a/i18n/zh-cn/docusaurus-plugin-content-docs/version-5.0/tutorial/srs-cloud-server.md b/i18n/zh-cn/docusaurus-plugin-content-docs/version-5.0/tutorial/srs-cloud-server.md index 28d11f59..97f50a93 100644 --- a/i18n/zh-cn/docusaurus-plugin-content-docs/version-5.0/tutorial/srs-cloud-server.md +++ b/i18n/zh-cn/docusaurus-plugin-content-docs/version-5.0/tutorial/srs-cloud-server.md @@ -1,11 +1,11 @@ --- -title: SRS Cloud +title: SRS Stack sidebar_label: 云SRS hide_title: false hide_table_of_contents: false --- -# SRS Cloud +# SRS Stack SRS云服务器,面向鼠标编程,没有服务器和命令行经验,也可以构建自己的在线视频服务。入门的最佳推荐。 diff --git a/i18n/zh-cn/docusaurus-plugin-content-pages/about.md b/i18n/zh-cn/docusaurus-plugin-content-pages/about.md index a855ab7a..f4a62491 100644 --- a/i18n/zh-cn/docusaurus-plugin-content-pages/about.md +++ b/i18n/zh-cn/docusaurus-plugin-content-pages/about.md @@ -99,7 +99,7 @@ SRS不做客户端,因为无论是FFmpeg,还是OBS,还是VLC,还是WebRT 除了SRS服务器,我们还在做云SRS,还有WordPress插件等等,主要的目标还是根据不同行业,做出更简单的应用方式,包括: -* [srs-cloud](https://github.com/ossrs/srs-cloud) 云SRS或SRS云服务器,是一个开箱即用的单机的视频云,里面有FFmpeg和SRS等,主要是方便不会命令行的用户,直接通过腾讯云镜像或者宝塔,鼠标操作,就可以把音视频的应用搭起来。 +* [srs-cloud](https://github.com/ossrs/srs-stack) 云SRS或SRS云服务器,是一个开箱即用的单机的视频云,里面有FFmpeg和SRS等,主要是方便不会命令行的用户,直接通过腾讯云镜像或者宝塔,鼠标操作,就可以把音视频的应用搭起来。 * [WordPress-Plugin-SrsPlayer](https://github.com/ossrs/WordPress-Plugin-SrsPlayer) 出版领域,比如个人博客、网站传媒等,方便用户可以使用音视频的能力。 * [srs-unity](https://github.com/ossrs/srs-unity) 游戏领域,对接Unity的WebRTC SDK,使用音视频的能力。 diff --git a/i18n/zh-cn/docusaurus-plugin-content-pages/faq-srs-cloud.md b/i18n/zh-cn/docusaurus-plugin-content-pages/faq-srs-cloud.md index 2975f092..f49717be 100644 --- a/i18n/zh-cn/docusaurus-plugin-content-pages/faq-srs-cloud.md +++ b/i18n/zh-cn/docusaurus-plugin-content-pages/faq-srs-cloud.md @@ -1,716 +1,7 @@ # FAQ -> Note: 这是关于SRS Cloud的FAQ,如果是SRS的FAQ请参考[SRS FAQ](/faq) +> Note: 这是关于SRS Stack的FAQ,如果是SRS的FAQ请参考[SRS FAQ](/faq) -快速目录 - -* [Video Guides](#video-guides):视频教程。 -* [如何起步](#getting-started):买了SRS云服务器怎么用,怎么开头,怎么入门,怎么起步,怎么开始折腾。 -* [如何升级](#how-to-upgrade):如何升级到最新版本或稳定版本,为何不支持界面点击升级。 -* [如何设置域名](#how-to-set-domain):如何设置域名访问管理后台,为何打不开管理后台,为何IP访问不了管理后台。 -* [支持哪些平台](#support-platform):支持哪些平台,支持镜像,想直接用服务器或命令行安装,或宝塔安装 -* [如何推多路流](#multiple-streams):一路流不够,想推多路流,想改默认的流名称和流地址。 -* [带宽太低,提升带宽](#bandwidth):带宽不够,想提升带宽,在CVM中用云SRS。 -* [如何设置免费HTTPS](#https):如何申请免费HTTPS证书,如何申请多个域名的证书。 -* [如何修改推流鉴权的密钥](#update-publish-secret):更新推流鉴权的密钥,更换推流密钥 -* [如何禁用推流鉴权](#no-publish-auth):不想要推流鉴权,设备不支持特殊字符。 -* [如何录制到本地磁盘](#record): 如何录制到云SRS的本地磁盘。 -* [云录制和云点播的区别](#cos-vs-vod): 录制是用云录制还是云点播,有何区别。 -* [如何录制到云存储](#dvr-cloud-storage): 录制到COS、OSS或S3等云存储。 -* [安装后无法访问](#unavailable): 安装后提示错误,或者Redis没准备好。 -* [SRS转推和OBS转推的区别](#restream-vs-obs): SRS的多平台转推,和OBS转推插件的区别。 -* [SRS如何转推自定义平台](#restream-custom): SRS的多平台转推,如何推到自定义的直播平台。 -* [如何更换FFmpeg](#use-custom-ffmpeg): 如何更换云SRS中的FFmpeg为自定义版本。 -* [宝塔安装SRS非常慢](#install-speedup): 海外用宝塔安装非常慢,访问阿里云镜像太慢。 -* [宝塔如何安装最新的云SRS](#bt-install-manually): 手动安装宝塔插件,安装最新的插件。 -* [宝塔CentOS7安装失败](#bt-centos7-error): CentOS7宝塔安装失败,找不到目录,或GLIBC版本问题。 -* [怎么购买AI换脸服务](#how-to-buy-ai): AI换脸怎么实现?怎么买模型?找谁买? -* [提的需求或功能如何实现](#rules):想要实现更多的功能,想要定制,想要优化改进。 -* [无法实现预期效果](#can-not-replay):遇到问题,达不到预期效果。 -* [云SRS和SRS的差别](#diff-srs):云SRS对比SRS的差异,为什么要有云SRS。 -* [和宝塔的差别](#diff-baota):和虚拟机管理软件宝塔的差异。 -* [和视频云的差别](#diff-vcloud):和一般视频云服务的差异。 -* [如何重装系统](#reinstall):针对已经有了Lighthouse或CVM的朋友。 -* [如何授权排查问题](#auth-bt): 出现问题时如何授权机器权限。 -* [成本优化](#cost-opt):关于成本和成本优化。 -* [OpenAPI](#openapi): 关于开放API,使用API获取相关信息。 -* [功能列表](#features): 关于支持的功能清单。 -* [版本规划](#changelog): 关于版本和里程碑。 - -你也可以在页面中搜索关键字。 - -


- -## Video Guides - -下面是答疑的视频资料,详细讲解了某个话题,如果你的问题类似请直接看视频哈: - -* [FAQ:如何更低码率达到同等画质](https://www.bilibili.com/video/BV1qB4y197ov/) 在保证画质的前提下,如何降低码率?我们可以使用动态码率,还可以使用相对空闲的客户端CPU交换码率,还可以在业务上优化,特别多平台推流时需要避免上行码率过高。 - -


- -## 如何起步 - -请先购买和设置[SRS云服务器](https://www.bilibili.com/video/BV1844y1L7dL/),包括如何设置防火墙,视频很短只有5分钟,但是不看会有非常多的问题,请不要跳过这个基本视频。 - -进入SRS云服务器后,根据不同应用场景,会有对应的视频教程,如下图所示: - -![](/img/page-2023-03-04-01.png) - -每个场景也有完善的介绍,以及详细的操作步骤,如下图所示: - -![](/img/page-2023-03-04-02.png) - -请不要乱试,一定要跟引导做,音视频乱试一定会出问题。 - -


- -## 如何升级 - -如何升级到最新版本或稳定版本,为何不支持界面点击升级? - -由于云SRS支持多个平台,包括docker等,而docker是不能自己升级自己的,所以云SRS也不支持界面升级,需要手动升级。 - -Docker启动时会指定版本,比如`ossrs/srs-cloud:v1.0.293`,只需要删除容器后指定新版本启动即可,比如`ossrs/srs-cloud:v1.0.299`。 - -如果使用`ossrs/srs-cloud:1`则是用最新的版本,则需要手动更新,比如`docker pull ossrs/srs-cloud:1`。 - -如果使用宝塔,则删除应用后重装新版本即可,数据是保存在`/data`目录,不会丢失。 - -


- -## 如何设置域名 - -如何设置域名访问管理后台,为何打不开管理后台,为何IP访问不了管理后台。 - -请将下面的域名和IP都换成你自己的域名和IP,可以是内网IP或公网IP,只要你的浏览器能访问到的IP即可。 - -使用宝塔安装云SRS时,需要输入管理后台的域名,例如`bt.yourdomain.com`,会自动创建管理后台的网站。 - -若使用其他方式安装也一样可以,只需要将你的域名解析到云SRS的IP即可。 - -有几种方式设置域名解析: - -1. DNS域名解析,在你的域名供应商的后台,设置一个A记录,指向云SRS的IP。 -```text -A bt.yourdomain.com 121.13.75.20 -``` -2. Linux/Unix修改本地`/etc/hosts`文件,将域名解析到云SRS的IP。 -```text -121.13.75.20 bt.yourdomain.com -``` -3. Windows修改本地的`C:\Windows\System32\drivers\etc`文件,将域名解析到云SRS的IP。 -```text -121.13.75.20 bt.yourdomain.com -``` - -注意:如果是需要通过Let's Encrypt申请免费的HTTPS证书,IP地址必须是公网IP,而且不能通过修改hosts的方式。 - -


- -## 支持哪些平台 - -云SRS支持Docker镜像,安装脚本,腾讯云Lighthouse和CVM镜像,DigitalOcean镜像,其他平台可以用宝塔安装。 - -云SRS当然是各种云平台多支持,最方便的是镜像,也就是云服务器的镜像,如果想简单省事就请用镜像,其他的方式容易弄出问题来,请不要高估自己的折腾能力,大家真的属于那80%折腾不了的,强烈建议应该用镜像: - -* Docker镜像安装:[这里](https://github.com/ossrs/srs-cloud#usage) -* Lighthouse:腾讯云的轻量云服务器镜像,使用参考[这里](https://mp.weixin.qq.com/s/fWmdkw-2AoFD_pEmE_EIkA) -* CVM:腾讯云的云服务器镜像,带宽比Lighthouse高可到100Mbps,使用参考[这里](https://mp.weixin.qq.com/s/x-PjoKjJj6HRF-eCKX0KzQ) -* DigitalOcean: 海外轻量云服务器的镜像,使用参考[这里](https://mp.weixin.qq.com/s/_GcJm15BGv1qbmHixPQAGQ) - -如果你不想用虚拟机镜像,想直接用服务器或命令行安装,或宝塔安装,也是完全没问题: - -* 宝塔:其他云平台可以用宝塔安装,要求是CentOS 7+或Ubuntu 20+的系统,使用参考[这里](https://mp.weixin.qq.com/s/nutc5eJ73aUa4Hc23DbCwQ) -* aaPanel:海外的宝塔,如果你的机器是海外的,一定不要用宝塔而要用aaPanel,使用参考[这里](https://blog.ossrs.io/how-to-setup-a-video-streaming-service-by-aapanel-9748ae754c8c) - -> Note: 如果你要命令行安装云SRS,可以先用命令行安装宝塔,然后再安装云SRS。 - -这些安装方式都在视频教程中有介绍,请参考[这里](https://www.bilibili.com/video/BV1844y1L7dL/),几分钟的视频,有分章节的(要在B站App或者PC浏览器打开才有),可以直接跳到对应章节。 - -


- -## 如何推多路流 - -默认只有一个推流地址,要推多个流怎么办?如何更换流地址? - -可以改流名称,比如默认给的推流地址是: - -* `rtmp://1.2.3.4/live/livestream?secret=xxx` - -可以把`livestream`修改成任意的,就可以直接推: - -* rtmp://1.2.3.4/live/`any`?secret=xxx -* rtmp://1.2.3.4/live/`stream`?secret=xxx -* rtmp://1.2.3.4/live/`you`?secret=xxx -* rtmp://1.2.3.4/live/`want`?secret=xxx - -如下图所示,可以点更新按钮自动更换推流和播放的名称: - -![](/img/page-2023-03-04-03.png) - -> Note: 当然了,播放也得改成对应的流名称。 - -


- -## 带宽太低,提升带宽 - -轻量应用服务器的带宽4~20Mbps不等,对于音视频来说还是会有些限制,如果你想更高带宽,比如到100Mbps,那么可以选择CVM主机。 - -> Note: 云SRS的使用都是一致的,购买和平台配置有所不同。 - -CVM云服务器的优势是: - -* 带宽最高100Mbps,可以用多平台转发到另外CVM服务器,十台CVM就可以实现1Gbps带宽,当然得摸摸自己腰包了哈。 -* 按量计费,可以随时停机不收费,需要使用时再开机使用。对于比较低频的应用场景比较友好。 - -CVM云服务器的劣势是: - -* 成本高,没有送的流量包。轻量服务器成本低,送的流量包基本上够一般的直播了。所以请大家自己算一算成本。 -* 操作复杂,CVM的安全组比轻量的防火墙操作复杂多了,请大家自己试试,不行就换轻量吧。 -* 没有后台链接,界面比较复杂,如果不行就换轻量吧。 - -如果知道了优势和劣势,还是要选择CVM,请参考[云SRS:支持CVM镜像](https://mp.weixin.qq.com/s/x-PjoKjJj6HRF-eCKX0KzQ)。 - -


- -## 如何设置免费HTTPS - -云SRS支持申请免费HTTPS证书,而且可以申请多个域名的证书,还可以自动续期。比如,以下HTTPS网站的证书,都是跑了云SRS后一键自动申请的: - -* https://ossrs.io SRS的海外文档网站。 -* https://www.ossrs.io SRS的海外文档网站。 -* https://r.ossrs.net SRS的稳定版演示服务器。 - -操作非常简单,只需要三步,具体请看[这里](https://ossrs.net/lts/blog/2022/04/12/SRS-Cloud-HTTPS): - -1. 购买域名并备案,一定要有自己的合法域名,否则无法申请证书的哈。 -2. 将域名解析到云SRS的公网IP,可以通过域名访问到你的云SRS就可以,可以加多个域名解析,比如 `ossrs.io` `www.ossrs.io` 都是解析到同一个云SRS服务器的。 -3. 在云SRS的 `系统设置 > HTTPS > 自动HTTPS证书` 填写你的域名,多个用分号分割,点申请就行了。 - -> Note: 申请域名就行了,不要再上传,申请了就可以了,不需要再上传一次。 - -> Note: 请使用宝塔申请,操作步骤和上面类似。云SRS将不再支持证书申请,原因是certbot不支持多平台的docker镜像,在其他平台上使用会有问题。 - -申请成功后,在浏览器敲https加你的域名,就可以访问你的网站了。 - -


- -## 如何修改推流鉴权的密钥 - -若你需要更新推流鉴权的密钥,或者更换推流密钥,可以按以下操作步骤: - -1. 进入`系统设置`面板。 -1. 选择`流鉴权`标签页。 -1. 输入新的流密钥。 -1. 点`更新`按钮。 -1. 刷新各个场景的页面,推流密钥就自动更新了。 - -如下图所示: - -![](/img/page-2023-03-04-04.png) - -若需要禁用推流鉴权,请参考下面的说明。 - -


- -## 如何禁用推流鉴权 - -在场景页面中,标准的推流格式,是带`?secret=xxx`鉴权的,比如`rtmp://ip/live/livestream?secret=xxx` - -发现有些摄像机,不支持`?secret=xxx`的格式,所以会提示地址不支持。 - -这种情况下,其实可以直接将密钥`xxx`放在流名称中,比如:`rtmp://ip/live/livestreamsecretxxx`,这样就没问题了。 - -当然如果你就只需要推一个流,可以直接把密钥作为流名称,比如:`rtmp://ip/live/xxx`。 - -> Note: 当然了,播放也得改成一样的流名称才行,也要有密钥,因为这里是把密钥放在流名称中了,播放当然也得改了。 - -这样的方式,是有安全性,也能支持不支持特殊字符的设备,加上推流密钥本来就可以改,所以可以改成自己想要的方式。 - -


- -## 如何录制到本地磁盘 - -如何录制到云SRS的本地磁盘?升级到v1.0.252后,在录制中就可以看到有本地录制了。 - -本地录制的限制和解决方案,请参考 #42 - -


- -## 云录制和云点播的区别 - -云SRS提供了云录制和云点播两个类似的功能,录制是用云录制还是云点播,有何区别? - -云录制可以认为是把直播写到了云盘,保存的是HLS格式,是原始的视频流。如果你是要将HLS下载下来转码和剪辑,那会比较合适。云录制是存储在腾讯云COS云存储的,可以认为是个无限磁盘,避免写爆云SRS的磁盘。 - -云点播提供了HLS和MP4两种格式,而且未来会上架更多的功能,比如转出来多码率,加上台标和水印,媒资管理等很多很好用的功能。云点播是一个点播系统,不仅仅是个存储的磁盘,可以认为是个B站或YouTube,如果你要做更丰富的业务那肯定要选云点播。 - -从费用上看,云点播会比云录制多一些,要看具体用到哪些功能。目前云SRS使用的是HLS转MP4,这个费用非常低,因为没有转码。未来如果要上高级功能,费用会高一些。总体来看,云点播的费用是非常低的,和云录制差不多,如果没有额外的计算费用就和云录制一样的了。 - -简单来说,推荐用云点播,好用不贵。 - -


- -## 如何录制到云存储 - -云SRS支持录制到COS,腾讯云存储,请参考[Usage: Cloud Storage](https://mp.weixin.qq.com/s/axN_TPo-Gk_H7CbdqUud6g)。 - -云SRS也可以录制到其他云存储,比如阿里云OSS或AWS S3,可以按照云存储的指引,将云存储挂载到云SRS,然后使用本地录制,配置本地路径的存储路径,这样就可以将文件写入到云存储了。 - -> Note: 修改本地录制的路径,可以在`本地录制/录制文件夹`中,把录制的路径软链到云存储的路径就可以。 - -


- -## 安装后无法访问 - -安装后提示错误,比如: - -![](/img/page-2023-03-04-05.png) - -或者Redis没准备好,比如: - -![](/img/page-2023-03-04-06.png) - -这是因为刚刚安装后,云SRS启动需要时间,等待3到5分钟后刷新页面,就可以了。 - -


- -## SRS转推和OBS转推的区别 - -SRS的多平台转推,可以将流转推给多个平台,它的工作图如下: - -``` -OBS/FFmpeg --RTMP--> 云SRS --RTMP--> 视频号、B站、快手等直播平台 -``` - -其实,OBS也有一个转推插件,它的工作图如下: - -``` -OBS --RTMP--> 视频号、B站、快手等直播平台 -``` - -看起来OBS的链路更短更简单,还不用经过云SRS不用付钱,为何云SRS还要做转推,OBS这个方案有什么缺点? - -OBS转推的优点是不用钱,直接就转推了。缺点是它的上行/上传带宽是翻倍的,比如2Mbps的流,如果转推3个平台就是6Mbps,如果视频号还需要推多个那会更多,比如推10个平台就是20Mbps。 - -带宽高了,会导致所有推流都卡顿或者中断,这会让所有观众都看不了直播,直接造成直播事故。只要翻车一次,直播间的人基本上就跑得差不多了,是非常严重的事故。 - -基本上80%的直播翻车,都是主播推流端的问题。因为云平台和观众观看的问题都解决得差不多了,唯独主播推流这个地方云平台是无解的。 - -如果家里是拉的光纤专线,比如买100Mbps的专线,那肯定没问题。问题是100Mbps的专线是非常贵的,就算暂时免费,一样有收费的那一天,因为专线就是专享的资源,不可能永远免费的。就好像人家免费给你金条一样,能免费多久呢。 - -云SRS其实也是会有带宽翻倍,但是它是下行带宽翻倍,因为它做了一次转换,本质上是其他平台从云SRS这里下载流。下行/下载带宽一般都是更有保障的。而且云SRS和平台之间,都是服务器之间的BGP带宽,比家里到平台质量更有保障。 - -


- -## SRS如何转推自定义平台 - -SRS的多平台转推,是可以推到自定义的直播平台,比如推到视频号的推流地址和流密钥,也可以填任何其他直播平台的。 - -> Note: 云SRS之所以分成视频号和B站等平台,是为了提供更好的引导,这些平台的RTMP地址格式都是类似的,所以可以随意填,云SRS不会验证具体的平台。 - -如果直播平台的RTMP地址是一个地址,比如: - -``` -rtmp://ip/app/stream -``` - -那么,可以把它拆分成: - -* 推流地址:`rtmp://ip/app` -* 流密钥:`stream` - -> Note: 最后一个斜杠后面的就是流密钥。 - -


- -## 如何更换FFmpeg - -如果使用Docker版本,可以更换云SRS中的FFmpeg为自定义版本,启动时指定命令: - -```bash --v /path/to/ffmpeg:/usr/local/bin/ffmpeg -``` - -可以使用命令`which ffmpeg`来查找你的FFmpeg的路径。 - -> Note: 非Docker版本不支持。 - -


- -## 宝塔安装SRS非常慢 - -有朋友反馈:海外用宝塔安装非常慢,访问阿里云镜像太慢。 - -这是因为海外不能使用宝塔,海外用宝塔安装其他的工具也非常慢,这是因为跨国回源到国内下载数据当然非常慢了。 - -宝塔海外版本叫[aaPanel](https://aapanel.com),请使用aaPanel,安装软件很快,云SRS也会切换到海外的镜像下载。 - -宝塔和aaPanel只是安装方法不同,具体用法是一样的,请参考[宝塔](https://ossrs.net/lts/zh-cn/blog/BT-aaPanel)或[aaPanel](https://blog.ossrs.io/how-to-setup-a-video-streaming-service-by-aapanel-9748ae754c8c)。 - -


- -## 宝塔如何安装最新的云SRS - -有时候宝塔商店的版本比较老,可以手动安装宝塔插件,安装最新的插件。 - -云SRS最新的版本,可以看[Releases](https://github.com/ossrs/srs-cloud/releases),每个版本的附件中`bt-srs_cloud.zip`就是可以下载的插件。 - -下载插件后,可以在宝塔`软件商店 > 第三方应用 > 导入插件`,上传下载的`bt-srs_cloud.zip`即可安装。 - -


- -## 宝塔CentOS7安装失败 - -> 注意:推荐使用Ubuntu20系统。 - -CentOS7宝塔安装失败,常见错误如下: - -* GLIBC版本问题:```version `GLIBC_2.27' not found``` -* 找不到目录:```ln: failed to access '/www/server/nvm/versions/node/v18.12.1/bin/node'``` - -这都是因为CentOS7上的nodejs有问题,一般是安装pm2后安装的是nodejs18,而它依赖高版本的libc,所以无法使用。 - -解决办法: - -* 升级到云SRS v4.6.3+,可以手动安装最新版本,参考[宝塔如何安装最新的云SRS](#bt-install-manually) -* 打开pm2切换到nodejs 16,也可以绕过去这个问题。 - -> Note: 云SRS v4.6.3+,不再强制依赖pm2安装nodejs,只要系统存在nodejs就可以了。你可以选择nodejs管理器安装,或者pm2安装,或者自己安装也可以。 - -最后,如果安装成功后还不可用,可以重启下系统试试。 - -


- -## 提的功能如何实现,如何录视频 - -欢迎大家给云SRS提问题和新功能,但请说明真实业务。 - -大部分朋友不知道什么是真实业务,一般都是描述的业务的实现方案。而这个方案不一定是最合适的,甚至已经有了其他的技术方案,可以实现这个业务目标。因此,一定要请描述业务而不要描述功能或方案的技术实现。 - -请详细描述业务场景,可以尝试回答以下的问题: - -1. 你是做什么业务的?作为一个普通人,我怎么用到你的产品和服务?麻烦举个真实的人来讲。 -2. 你在用SRS解决你业务中的什么问题?麻烦举个真实的例子讲。 -3. 你给SRS提的需求或功能,是怎么应用在业务中的?麻烦举个例子讲。 - -> Note: 如果群里不方便说,可以单独微信发给我。 - -SRS云服务器这个开源社区就是这样工作的,你提交应用场景,我们就会优先实现,用真实的钉子选锤子,欢迎大家一起参与~ - -


- -## 无法实现预期效果 - -如果达不到预期效果,比如延迟高了,或者推拉流失败了,下面的办法可以解决所有问题: - -``` -一个字不要改的,跟着视频教程和应用场景的引导,鼠标操作复制粘贴,一定能疗效良好! -一个字不要改的,跟着视频教程和应用场景的引导,鼠标操作复制粘贴,一定能疗效良好! -一个字不要改的,跟着视频教程和应用场景的引导,鼠标操作复制粘贴,一定能疗效良好! -``` - -因为大家出现问题的原因只有一个:就是觉得音视频简单,乱改! - -* 觉得SRS云服务器简单,自己买其他云服务器后部署,或者买轻量后自己安装程序:扑街! -* 换播放器,换推流器,不按视频和场景指引的,换各种客户端:扑街! -* 不看[视频教程](https://space.bilibili.com/430256302/channel/collectiondetail?sid=180263),不看`应用场景`的文字指引,直接上手乱试:扑街! - -天堂有路你不走,地狱无门你闯的头破血流的要进地域,只能说是自己造孽自己受。 - -如果按照[视频教程](https://space.bilibili.com/430256302/channel/collectiondetail?sid=180263)和`应用场景`的指引,还是有问题,把你的过程录下来,发群里,立刻帮你解决! - -最后再苦口婆心的劝大家从良:音视频水很深,一看就会一试就废,这是为什么我要做SRS云服务器,你先用开箱即用的跑出效果来,然后想一点点折腾也可以,不要路都不会走就跑。 - -


- -## 云SRS和SRS的差别 - -[SRS](https://github.com/ossrs/srs)是一个开源服务器,是一个流媒体服务器,一般会和FFmpeg以及WebRTC等客户端配合起来实现音视频的能力,请看[这个图](https://github.com/ossrs/srs#srssimple-realtime-server)你就明白了什么是SRS。 - -云SRS是一个音视频的方案,它基于SRS、Nodejs、REACT等实现音视频的常用场景,请看[这个图](https://github.com/ossrs/srs-cloud#architecture)你就明白了什么是云SRS。 - -SRS安装后,打开是一个流媒体服务器的演示页面,有播放器和控制台的链接;云SRS安装后,打开是需要登录的管理后台,提供了很多不同场景的引导。 - -如果你是需要详细研究流媒体服务器,请根据SRS的文档操作,也请加SRS的社区,而不要在云SRS的群里问。SRS是一个开源的音视频服务器,面向的是开发能力非常强的C/C++程序员,你可以随意修改,定制能力很强。 - -如果你是想要一个直接就能使用的音视频平台,开箱即用,可以线上使用的,就请用云SRS,请不要在SRS社区问。云SRS的含义,就是云上的SRS,它是个基于云的服务,面向的是用户,不需要了解音视频细节,跟着教程操作就可以。 - -两个都是开源的项目,欢迎贡献。 - -


- -## 和宝塔的差别 - -宝塔是一个虚拟机的管理工具,SRS云服务器是一个音视频的开箱即用的方案,宝塔也可以安装云SRS,请参考[支持哪些平台](#support-platform)。 - -> Note: 海外的宝塔是叫aaPanel,也支持云SRS;如果你的机器在海外,请不要用宝塔,而要用aaPanel;大家使用的安装源不同,海外用宝塔可能安装非常慢甚至会失败。 - -


- -## 和视频云的差别 - -视频云是大规模服务的场景,比如云直播、比如TRTC、比如IM、比如云点播、比如CDN、比如腾讯会议或ZOOM,这些都是超大规模的系统。 - -SRS云服务器是把这些系统全部放在一台`Lighthouse/CVM/Droplet/宝塔`云服务器中,所以它主要是全面,但是并发和规模非常小,只适合小微场景,快速搭建应用实现业务,了解和学习新场景,可以跑起来后慢慢看怎么实现。 - -当然,未来SRS云服务器也会支持迁移到成熟的视频云服务,让大家可以快速满足业务要求,同时业务长大后也能得到规模化的支撑。 - -


- -## 如何重装系统 - -如果已经有`Lighthouse/CVM/Droplet`,或者镜像出现问题,可以重装镜像解决。不要登录上去自己折腾,只会折腾出更多问题,直接选择重装系统比较好。 - -以Lighthouse为例,其他平台类似这样操作。首先,在应用管理中,选择重装系统: - -![](/img/page-2023-03-04-07.png) - -然后,在镜像类型中选择`应用镜像`,再选择`SRS`对应的镜像就可以,如下图: - -![](/img/page-2023-03-04-08.png) - -最后点确认和确定就可以,非常快就重装了。 - -


- -## 如何授权排查问题 - -出现问题时如何授权机器权限?推荐使用宝塔: - -1. 面板设置。 -2. 安全设置。 -3. 临时访问授权管理。 -4. 创建临时授权。 - -把临时授权的地址,发给问题排查同学就可以。 - -


- -## OpenAPI - -关于开放API,使用AP对接云SRS,可以在`系统配置 > OpenAPI`中,根据引导操作。 - -所有云SRS的操作,都是调用API完成,这些API可以通过Chrome的Network面板看到具体请求。 - -凡是能在云SRS页面完成的操作,都可以通过OpenAPI完成。 - -


- -## Features - -云SRS(即SRS云服务器)是nodejs实现的开源方案,代码在[srs-cloud](https://github.com/ossrs/srs-cloud),欢迎一起来搞。 - -SRS云服务器面向鼠标编程,让每个人都能做音视频业务。不懂音视频的可以,懂音视频的也可以,种地的可以,撸网线的可以,剪电影的可以,背摄像机的也可以,跳舞的可以,唱歌的可以,卖二手货的也可以,开源项目交流也可以,多平台直播也可以,自建源站可以,会用电脑有微信就可以,守法公民都可以。 - -云SRS的使用说明,请参考视频[SRS云服务器:起步、购买和入门](https://www.bilibili.com/video/BV1844y1L7dL/)。 - -目前云SRS支持的场景和功能包括: - -* [云SRS:起步、购买和入门](https://mp.weixin.qq.com/s/fWmdkw-2AoFD_pEmE_EIkA):如何购买和设置环境,必看。 -* `已支持,打磨中` 对接[宝塔](https://mp.weixin.qq.com/s/nutc5eJ73aUa4Hc23DbCwQ)或[aaPanel](https://blog.ossrs.io/how-to-setup-a-video-streaming-service-by-aapanel-9748ae754c8c):可以用[宝塔](https://www.bt.cn/)安装SRS,支持所有CentOS或Ubuntu的机器,可命令行安装宝塔后装SRS。 -* `已支持,打磨中` [私人直播间](https://mp.weixin.qq.com/s/AKqVWIdk3SBD-6uiTMliyA):OBS推流到SRS,可以和好朋友看电影,私密直播间,专享BGP带宽,想看啥就看啥。 -* `已支持,打磨中` [超高清实时直播](https://mp.weixin.qq.com/s/HQb3gLRyJHHu56pnyHerxA):用SRT低延迟推流,也能做会议,比WebRTC清晰太多了,也适合其他低延迟SRT的场景。 -* `已支持,打磨中` [录制本地](https://mp.weixin.qq.com/s/axN_TPo-Gk_H7CbdqUud6g):录制到云SRS服务器本地文件,提供HLS下载。[#42](https://github.com/ossrs/srs-cloud/issues/42) -* `已支持,打磨中` [录制到云存储](https://mp.weixin.qq.com/s/axN_TPo-Gk_H7CbdqUud6g):避免本地磁盘限制,也方便后续直播流的处理,支持录制视频流到云存储,详细参考 [#1193](https://github.com/ossrs/srs/issues/1193)。 -* `已支持,打磨中` [录制到云点播](https://mp.weixin.qq.com/s/axN_TPo-Gk_H7CbdqUud6g):比云录制更高级的能力,云存储是无限磁盘,云点播则是短视频系统,更方便,姿势更骚。 -* `已支持,打磨中` [多平台转播](https://mp.weixin.qq.com/s/FtaeQIJpb7vpmX2eFguLiQ):推流到云SRS,转推到视频号、快手、B站、抖音等直播平台,详细参考 [#2676](https://github.com/ossrs/srs/issues/2676)。 -* `已支持,打磨中` 对接[WordPress](https://mp.weixin.qq.com/s/kOWabmKbYvrmEXG2fPOZxQ):支持[WordPress插件](https://wordpress.org/plugins/srs-player)和[Typecho插件](https://github.com/ossrs/Typecho-Plugin-SrsPlayer),在Post中插入直播流地址。 -* `已支持,打磨中` [DigitalOcean镜像](https://mp.weixin.qq.com/s/_GcJm15BGv1qbmHixPQAGQ):海外支持DigitalOcean Droplet镜像,中英文多语言版本。 -* `已支持,打磨中` [虚拟直播](https://mp.weixin.qq.com/s/I0Kmxtc24txpngO-PiR_tQ):服务端OBS,将点播文件、图片或流推直播,有简单布局能力。 -* `开发中` [一键自动HTTPS](https://mp.weixin.qq.com/s/O70Fz-mxNedZpxgGXQ8DsA):上传HTTPS证书,或者一键自动申请Let's Encrypt证书,属于WebRTC场景的基本能力。 -* `规划中` 云摄像头:支持摄像头GB接入,支持云台,云录制。 -* `规划中` 电商直播间:直播间,文字聊天能力,有商品列表和购买等,详细参考 [#2858](https://github.com/ossrs/srs/issues/2858)。 -* `规划中` 互动直播:直播间,支持文件聊天,送礼物和点赞等。 -* `规划中` 云直播:对接云直播或CDN分发,支持百万人观看,对接CDN分发流。 -* `规划中` 一对一聊天:全平台的一对一聊天,详细参考 [#2857](https://github.com/ossrs/srs/issues/2857)。 -* `规划中` 视频会议:多人视频会议,详细参考 [#2924](https://github.com/ossrs/srs/issues/2924)。 -* `规划中` 直播转码:用FFmpeg将直播流转码成多个直播流,实现不同设备观看不同码率,详细参考 [#2869](https://github.com/ossrs/srs/issues/2869)。 -* `规划中` 云导播:云OBS,给直播流加水印,加LOGO,加背景音乐,多路切换。 -* `规划中` 开发环境:包含音视频相关的工具的源码,比如OBS和WebRTC,开发环境,详细参考 [#2891](https://github.com/ossrs/srs/issues/2891)。 -* `规划中` AI:人脸检测,物体识别,自动字幕等。 -* `规划中` 对接[Moodle](https://stats.moodle.org/):支持Moodle插件,在线教育开源网站。 -* `规划中` [图形化仪表盘](https://mp.weixin.qq.com/s/ub9ZGmntOy_-S11oxFkxvg):以图表形式展示后台数据,比如CPU等等,详细参考 [Prometheus](https://github.com/ossrs/srs/issues/2899#prometheus)。 - -欢迎加群探讨云SRS的使用,这些SRS的周边服务都是开源的,可以自己定制后部署。 - -


- -## Changelog - -以下为SRS云服务器的更新记录。 - -* 2023.08.07, v1.0.301, minor improvements - * Always use the latest SRS 5.0 release. - * Use status to check SRS, not by the exit value. -* 2023.08.06, v1.0.300, 微改进 - * 简化启动脚本,解决bug,目录调整为`/data`一级目录。v1.0.296 - * 改进消息提示,脚本注释,日志输出。v1.0.297 - * 避免每次启动修改全局目录,在容器和平台脚本中初始化。v1.0.298 - * 改进发布脚本,检查版本匹配,手动更新版本。v1.0.299 - * 删除升级功能,保持docker等平台的一致性。v1.0.300 - * 改进BT和aaPanel脚本,增加测试流水线。v1.0.300 -* 2023.04.05, v1.0.295, 结构改进 - * 去掉HTTPS证书申请、管理员授权、NGINX反向代理等功能。v1.0.283 - * 将Release使用Go实现,减少内存需求和镜像大小。v1.0.284 - * 去掉dashboard和Prometheus,方便支持单个Docker镜像。v1.0.283 - * 将mgmt和platform使用Go实现,减少内存需求和镜像大小。v1.0.283 - * 使用Ubuntu focal(20)作为基础镜像,减少镜像大小。v1.0.283 - * 支持快速升级,安装在40秒左右,升级在10秒左右完成。v1.0.283 - * 解决没有流时转发的问题。v1.0.284 - * 解决上传超大文件卡死问题。v1.0.286 - * 去掉AI换脸的视频,B站审核没过。v1.0.289 (stable) - * 去掉Redis容器,直接在platform中启动redis。v1.0.290 - * 去掉SRS容器,直接在platform中启动SRS。v1.0.291 - * 支持单容器启动,包括mgmt一个容器中。v1.0.292 - * 支持挂载到`/data`目录持久化。v1.0.295 -* 2023.02.01, v1.0.281, 体验改进, Stable version. - * 允许用户关闭自动更新,使用手动更新。 - * 适配宝塔新版本,解决nodejs检测问题。 - * 宝塔检测插件状态,没安装完之前不能操作。 - * 改进转发的状态显示,添加`等待中`状态。 v1.0.260 - * 改进镜像更新,不强依赖certbot。#47 - * 合并hooks/tencent/ffmpeg镜像到platform。v1.0.269 - * 转推支持自定义平台。v1.0.270 - * 支持虚拟直播,文件转直播。v1.0.272 - * 上传文件限制100GB。v1.0.274 - * 修复虚拟直播的bug。v1.0.276 - * Release服务,用Go替换Nodejs,减少镜像大小。v1.0.280 - * 不用buildx打单架构docker镜像,CentOS会失败。v1.0.281 -* 2022.11.20, v1.0.256, 大版本更新,体验改进,Release 4.6 - * 代理根站点的资源,比如favicon.ico - * 支持[SrsPlayer](https://wordpress.org/plugins/srs-player)的WebRTC推流简码。 - * 支持[本地录制](https://github.com/ossrs/srs-cloud/issues/42),录制到云SRS本地磁盘。 - * 支持删除本地录制的文件和任务。 - * 支持本地录制为MP4文件和下载。 - * 支持本地录制目录为软链接,存储录制内容到其他磁盘。 - * 改进录制导航栏,合并为录制。 - * 解决主页和代理根目录的冲突问题。 - * 解决升级时未更新NGINX配置的问题。 - * 解决设置record软链接的Bug。 - * 镜像全部更换为标准镜像`ossrs/srs`。 - * 支持设置网站标题和页脚(备案要求)。 - * 提示管理员密码路径,忘记密码时可以找回密码。 - * 出错时允许恢复页面,不必刷新页面。 -* 2022.06.06, v1.0.240, 大版本更新, 宝塔, Release 4.5 - * 减少磁盘占用大小,清理docker镜像 - * 改进依赖,不再强依赖Redis和Nginx - * 支持在[流名称中传secret](https://github.com/ossrs/srs-cloud/issues/4#no-publish-auth),避免特殊字符 - * 支持[宝塔](https://mp.weixin.qq.com/s/nutc5eJ73aUa4Hc23DbCwQ)或[aaPanel](https://blog.ossrs.io/how-to-setup-a-video-streaming-service-by-aapanel-9748ae754c8c)插件,支持CentOS或Ubuntu命令行安装 - * 迁移ossrs.net到轻量服务器,不再依赖K8s。 - * 登录密码默认改为显示密码。 - * 停止推流一定时间,清理HLS缓存文件。 - * 创建2GB的交换区,若内存小于2GB。 - * 支持收集SRS的coredump。 - * 直播场景显示SRT推流地址和命令。 - * 支持设置NGINX的根代理路径。 -* 2022.04.18, v1.0.222, 小版本更新, 容器化Redis - * 改进说明,支持禁用推流鉴权。 - * 持英文的引导,[medium](https://blog.ossrs.io)的文章。 - * 改进简易播放器,支持静音自动播放。 - * NGINX分发HLS时,添加CORS支持。 - * 新增英文引导,[创建SRS](https://blog.ossrs.io/how-to-setup-a-video-streaming-service-by-1-click-e9fe6f314ac6)和[设置HTTPS](https://blog.ossrs.io/how-to-secure-srs-with-lets-encrypt-by-1-click-cb618777639f),[WordPress](https://blog.ossrs.io/publish-your-srs-livestream-through-wordpress-ec18dfae7d6f)。 - * 增强密钥长度,加强安全性,避免暴力破解。 - * 支持WordPress的Shortcode引导。 - * 支持设置首页的跳转路径,支持和其他网站混跑。 - * 支持设置反向代理,支持将其他服务挂在NGINX下。 - * 支持HTTPS申请多个域名,解决`www`前缀域名问题。 - * 更改`备案`为`网站`,可设置首页跳转和页脚备案号。 - * 改进NGINX配置文件结构,配置集中在`containers`目录。 - * 支持简单负载均衡的设置,随机选个后端NGINX做HLS分发。 - * 容器工作在独立的`srs-cloud`网络中。 - * 新增`系统 > 工具`选项。 - * 使用Redis容器,不依赖主机的Redis服务。 -* 2022.04.06, v1.0.200, 大版本更新, 多语言, Release 4.4 - * 支持中英文双语。 - * 支持DigitalOcean镜像,参考[SRS Droplet](https://marketplace.digitalocean.com/apps/srs)。 - * 支持OpenAPI获取推流密钥,参考[#19](https://github.com/ossrs/srs-cloud/pull/19)。 - * 改进更新容器镜像的脚本。 - * 支持使用NGINX分发HLS,参考[#2989](https://github.com/ossrs/srs/issues/2989#nginx-direclty-serve-hls)。 - * 改进VoD存储和服务检测。 - * 改进安装脚本。 -* 2022.03.18, v1.0.191, 小版本更新, 体验改进 - * 场景默认显示教程。 - * 支持SRT地址分离,播放不带secret。 - * 分离Platform模块,简化mgmt逻辑。 - * 改进UTest升级测试脚本。 - * 支持更换流名称,随机生成流名称。 - * 支持拷贝流名称、配置、地址等。 - * 分离升级和UI,简化mgmt逻辑。 - * 分离容器管理和升级。 - * 快速高效升级,30秒之内升级完成。 - * 支持CVM镜像,参考[SRS CVM](https://mp.weixin.qq.com/s/x-PjoKjJj6HRF-eCKX0KzQ)。 -* 2022.03.16, v1.0.162, 大版本更新,错误处理,Release 4.3 - * 支持React Error Boundary,友好的错误显示。 - * 支持RTMP推流的二维码,芯象的引导。 - * 支持简单播放器,播放HTTP-FLV和HLS。 - * 改进回调,使用React.useCallback创建。 - * 改进页面缓存时间,提高加载速度。 - * 增加REACT UI组件和Nodejs项目的测试。 - * 增加安装依赖包的脚本。 - * 改进简易播放器,默认不静音,需要用户点击才能播放。 - * 新增西瓜播放器[xgplayer](https://github.com/bytedance/xgplayer),播放FLV和HLS -* 2022.03.09, v1.0.144, 小版本更新,多平台转推 - * 支持多平台转推,视频号、B站、快手。 - * 修改转推配置时,重启转推任务。 - * 支持设置升级窗口,默认23点到5点升级。 - * 支持jest单元测试,覆盖mgmt。 - * 支持切换SRS,稳定版和开发版。 - * 优化禁用容器的状态显示。 -* 2022.03.04, v1.0.132, 小版本更新,云点播 - * 支持云点播,HLS和MP4下载。 - * 云点播支持直播中回看,更新SessionKey。 - * 升级时禁止设置密码,避免环境变量冲突。 - * 初始化系统时,重启所有依赖.env的容器。 - * 更新云录制和云点播的区别。 - * SRT支持vMix引导教程。 -* 2022.02.25, v1.0.120, 小版本更新,云录制 - * 改进升级脚本,重启必要的容器。 - * 修改Redis侦听端口,增强安全性。 - * 解决云录制,异步超长时间(8h+)的冲突问题。 - * 改进密钥创建链接,使用云API密钥。 - * 改进场景和设置TAB,按需加载,URL地址标识。 -* 2022.02.23, v1.0.113, 小版本更新,云录制 - * 支持重新设置推流密钥。[#2](https://github.com/ossrs/srs-terraform/pull/2) - * SRT推流断开,当转RTMP失败时。 - * 禁用容器时,不再启动容器。 - * SRT支持扫码二维码推流和播放。[#6](https://github.com/ossrs/srs-terraform/pull/6) - * 支持[云录制](https://mp.weixin.qq.com/s/UXR5EBKZ-LnthwKN_rlIjg),录制到腾讯云COS。 -* 2022.02.14, v1.0.98, 大版本更新,升级,Release 4.2 - * 改进react静态资源缓存,提升后续加载速度。 - * 新增Contact专享群二维码,扫码加群。 - * 支持设置Redis的值,关闭自动更新。 - * 自动检测海外区域,使用海外源更新和升级。 - * 改进升级提示,倒计时和状态检测。 - * 在页面显示大家制作的视频教程,按播放数排序。 - * 支持授权平台管理员访问Lighthouse实例。 - * 小内存系统,自动创建swap,避免升级时OOM。 -* 2022.02.05, v1.0.74, 小版本更新,仪表盘 - * 支持Prometheus监控,WebUI挂载在`/prometheus`,暂无鉴权。 - * 支持Prometheus NodeExporter,节点监控,Lighthouse的CPU、网络、磁盘等。 - * 新增仪表盘,增加了CPU的图,可跳转到[Prometheus](https://github.com/ossrs/srs/issues/2899#prometheus)。 - * 改进certbot,使用docker启动,非安装包。 - * 改进升级流程,防止重复升级。 - * 支持1GB内存的机器升级,禁用node的GENERATE_SOURCEMAP防止OOM。 -* 2022.02.01, v1.0.64, 小版本更新,HTTPS - * 支持Windows版本的ffplay播放SRT地址 - * 支持容器启动hooks,流鉴权和认证 - * 更改Redis侦听在lo和eth0,否则容器无法访问 - * 支持设置HTTPS证书,Nginx格式,参考 [这里](https://github.com/ossrs/srs/issues/2864#ssl-file) - * 支持Let's Encrypt自动申请HTTPS证书,参考 [这里](https://github.com/ossrs/srs/issues/2864#lets-encrypt) -* 2022.01.31, v1.0.58, 小版本更新,SRT - * 支持超清实时直播场景,SRT推拉流,200~500ms延迟,参考 [这里](https://github.com/ossrs/srs/issues/1147#lagging) - * 芯象/OBS+SRS+ffplay推拉SRT流地址,支持鉴权。 - * 支持手动升级到最新版本,支持强制升级。 - * 改进升级脚本,更新脚本后执行 - * 支持重启SRS服务器容器 -* 2022.01.27, v1.0.42, 大版本更新, 流鉴权,Release 4.1 - * 支持推流鉴权和管理后台 - * 支持更新后台,手动更新 - * 直播间场景,推流和播放引导 - * SRS源码下载,带GIT - * 支持Lighthouse镜像,参考[SRS Lighthouse](https://mp.weixin.qq.com/s/fWmdkw-2AoFD_pEmE_EIkA)。 -* 2022.01.21, Initialized. +Migrated to [SRS Stack FAQ](./faq-srs-stack). ![](https://ossrs.net/gif/v1/sls.gif?site=ossrs.net&path=/lts/pages/faq-srs-cloud-zh) diff --git a/i18n/zh-cn/docusaurus-plugin-content-pages/faq-srs-stack.md b/i18n/zh-cn/docusaurus-plugin-content-pages/faq-srs-stack.md new file mode 100644 index 00000000..6c92fece --- /dev/null +++ b/i18n/zh-cn/docusaurus-plugin-content-pages/faq-srs-stack.md @@ -0,0 +1,721 @@ +# FAQ + +> Note: 这是关于SRS Stack的FAQ,如果是SRS的FAQ请参考[SRS FAQ](/faq) + +快速目录 + +* [Video Guides](#video-guides):视频教程。 +* [如何起步](#getting-started):买了SRS云服务器怎么用,怎么开头,怎么入门,怎么起步,怎么开始折腾。 +* [如何升级](#how-to-upgrade):如何升级到最新版本或稳定版本,为何不支持界面点击升级。 +* [如何设置域名](#how-to-set-domain):如何设置域名访问管理后台,为何打不开管理后台,为何IP访问不了管理后台。 +* [支持哪些平台](#support-platform):支持哪些平台,支持镜像,想直接用服务器或命令行安装,或宝塔安装 +* [如何推多路流](#multiple-streams):一路流不够,想推多路流,想改默认的流名称和流地址。 +* [带宽太低,提升带宽](#bandwidth):带宽不够,想提升带宽,在CVM中用云SRS。 +* [如何设置免费HTTPS](#https):如何申请免费HTTPS证书,如何申请多个域名的证书。 +* [如何修改推流鉴权的密钥](#update-publish-secret):更新推流鉴权的密钥,更换推流密钥 +* [如何禁用推流鉴权](#no-publish-auth):不想要推流鉴权,设备不支持特殊字符。 +* [如何录制到本地磁盘](#record): 如何录制到云SRS的本地磁盘。 +* [云录制和云点播的区别](#cos-vs-vod): 录制是用云录制还是云点播,有何区别。 +* [如何录制到云存储](#dvr-cloud-storage): 录制到COS、OSS或S3等云存储。 +* [安装后无法访问](#unavailable): 安装后提示错误,或者Redis没准备好。 +* [SRS转推和OBS转推的区别](#restream-vs-obs): SRS的多平台转推,和OBS转推插件的区别。 +* [SRS如何转推自定义平台](#restream-custom): SRS的多平台转推,如何推到自定义的直播平台。 +* [如何更换FFmpeg](#use-custom-ffmpeg): 如何更换云SRS中的FFmpeg为自定义版本。 +* [宝塔安装SRS非常慢](#install-speedup): 海外用宝塔安装非常慢,访问阿里云镜像太慢。 +* [宝塔如何安装最新的云SRS](#bt-install-manually): 手动安装宝塔插件,安装最新的插件。 +* [宝塔CentOS7安装失败](#bt-centos7-error): CentOS7宝塔安装失败,找不到目录,或GLIBC版本问题。 +* [怎么购买AI换脸服务](#how-to-buy-ai): AI换脸怎么实现?怎么买模型?找谁买? +* [提的需求或功能如何实现](#rules):想要实现更多的功能,想要定制,想要优化改进。 +* [无法实现预期效果](#can-not-replay):遇到问题,达不到预期效果。 +* [云SRS和SRS的差别](#diff-srs):云SRS对比SRS的差异,为什么要有云SRS。 +* [和宝塔的差别](#diff-baota):和虚拟机管理软件宝塔的差异。 +* [和视频云的差别](#diff-vcloud):和一般视频云服务的差异。 +* [如何重装系统](#reinstall):针对已经有了Lighthouse或CVM的朋友。 +* [如何授权排查问题](#auth-bt): 出现问题时如何授权机器权限。 +* [成本优化](#cost-opt):关于成本和成本优化。 +* [OpenAPI](#openapi): 关于开放API,使用API获取相关信息。 +* [功能列表](#features): 关于支持的功能清单。 +* [版本规划](#changelog): 关于版本和里程碑。 + +你也可以在页面中搜索关键字。 + +


+ +## Video Guides + +下面是答疑的视频资料,详细讲解了某个话题,如果你的问题类似请直接看视频哈: + +* [FAQ:如何更低码率达到同等画质](https://www.bilibili.com/video/BV1qB4y197ov/) 在保证画质的前提下,如何降低码率?我们可以使用动态码率,还可以使用相对空闲的客户端CPU交换码率,还可以在业务上优化,特别多平台推流时需要避免上行码率过高。 + +


+ +## 如何起步 + +请先购买和设置[SRS云服务器](https://www.bilibili.com/video/BV1844y1L7dL/),包括如何设置防火墙,视频很短只有5分钟,但是不看会有非常多的问题,请不要跳过这个基本视频。 + +进入SRS云服务器后,根据不同应用场景,会有对应的视频教程,如下图所示: + +![](/img/page-2023-03-04-01.png) + +每个场景也有完善的介绍,以及详细的操作步骤,如下图所示: + +![](/img/page-2023-03-04-02.png) + +请不要乱试,一定要跟引导做,音视频乱试一定会出问题。 + +


+ +## 如何升级 + +如何升级到最新版本或稳定版本,为何不支持界面点击升级? + +由于云SRS支持多个平台,包括docker等,而docker是不能自己升级自己的,所以云SRS也不支持界面升级,需要手动升级。 + +Docker启动时会指定版本,比如`ossrs/srs-stack:v1.0.293`,只需要删除容器后指定新版本启动即可,比如`ossrs/srs-stack:v1.0.299`。 + +如果使用`ossrs/srs-stack:1`则是用最新的版本,则需要手动更新,比如`docker pull ossrs/srs-stack:1`。 + +如果使用宝塔,则删除应用后重装新版本即可,数据是保存在`/data`目录,不会丢失。 + +


+ +## 如何设置域名 + +如何设置域名访问管理后台,为何打不开管理后台,为何IP访问不了管理后台。 + +请将下面的域名和IP都换成你自己的域名和IP,可以是内网IP或公网IP,只要你的浏览器能访问到的IP即可。 + +使用宝塔安装云SRS时,需要输入管理后台的域名,例如`bt.yourdomain.com`,会自动创建管理后台的网站。 + +若使用其他方式安装也一样可以,只需要将你的域名解析到云SRS的IP即可。 + +有几种方式设置域名解析: + +1. DNS域名解析,在你的域名供应商的后台,设置一个A记录,指向云SRS的IP。 +```text +A bt.yourdomain.com 121.13.75.20 +``` +2. Linux/Unix修改本地`/etc/hosts`文件,将域名解析到云SRS的IP。 +```text +121.13.75.20 bt.yourdomain.com +``` +3. Windows修改本地的`C:\Windows\System32\drivers\etc`文件,将域名解析到云SRS的IP。 +```text +121.13.75.20 bt.yourdomain.com +``` + +注意:如果是需要通过Let's Encrypt申请免费的HTTPS证书,IP地址必须是公网IP,而且不能通过修改hosts的方式。 + +


+ +## 支持哪些平台 + +云SRS支持Docker镜像,安装脚本,腾讯云Lighthouse和CVM镜像,DigitalOcean镜像,其他平台可以用宝塔安装。 + +云SRS当然是各种云平台多支持,最方便的是镜像,也就是云服务器的镜像,如果想简单省事就请用镜像,其他的方式容易弄出问题来,请不要高估自己的折腾能力,大家真的属于那80%折腾不了的,强烈建议应该用镜像: + +* Docker镜像安装:[这里](https://github.com/ossrs/srs-stack#usage) +* Lighthouse:腾讯云的轻量云服务器镜像,使用参考[这里](https://mp.weixin.qq.com/s/fWmdkw-2AoFD_pEmE_EIkA) +* CVM:腾讯云的云服务器镜像,带宽比Lighthouse高可到100Mbps,使用参考[这里](https://mp.weixin.qq.com/s/x-PjoKjJj6HRF-eCKX0KzQ) +* DigitalOcean: 海外轻量云服务器的镜像,使用参考[这里](https://mp.weixin.qq.com/s/_GcJm15BGv1qbmHixPQAGQ) + +如果你不想用虚拟机镜像,想直接用服务器或命令行安装,或宝塔安装,也是完全没问题: + +* 宝塔:其他云平台可以用宝塔安装,要求是CentOS 7+或Ubuntu 20+的系统,使用参考[这里](https://mp.weixin.qq.com/s/nutc5eJ73aUa4Hc23DbCwQ) +* aaPanel:海外的宝塔,如果你的机器是海外的,一定不要用宝塔而要用aaPanel,使用参考[这里](https://blog.ossrs.io/how-to-setup-a-video-streaming-service-by-aapanel-9748ae754c8c) + +> Note: 如果你要命令行安装云SRS,可以先用命令行安装宝塔,然后再安装云SRS。 + +这些安装方式都在视频教程中有介绍,请参考[这里](https://www.bilibili.com/video/BV1844y1L7dL/),几分钟的视频,有分章节的(要在B站App或者PC浏览器打开才有),可以直接跳到对应章节。 + +


+ +## 如何推多路流 + +默认只有一个推流地址,要推多个流怎么办?如何更换流地址? + +可以改流名称,比如默认给的推流地址是: + +* `rtmp://1.2.3.4/live/livestream?secret=xxx` + +可以把`livestream`修改成任意的,就可以直接推: + +* rtmp://1.2.3.4/live/`any`?secret=xxx +* rtmp://1.2.3.4/live/`stream`?secret=xxx +* rtmp://1.2.3.4/live/`you`?secret=xxx +* rtmp://1.2.3.4/live/`want`?secret=xxx + +如下图所示,可以点更新按钮自动更换推流和播放的名称: + +![](/img/page-2023-03-04-03.png) + +> Note: 当然了,播放也得改成对应的流名称。 + +


+ +## 带宽太低,提升带宽 + +轻量应用服务器的带宽4~20Mbps不等,对于音视频来说还是会有些限制,如果你想更高带宽,比如到100Mbps,那么可以选择CVM主机。 + +> Note: 云SRS的使用都是一致的,购买和平台配置有所不同。 + +CVM云服务器的优势是: + +* 带宽最高100Mbps,可以用多平台转发到另外CVM服务器,十台CVM就可以实现1Gbps带宽,当然得摸摸自己腰包了哈。 +* 按量计费,可以随时停机不收费,需要使用时再开机使用。对于比较低频的应用场景比较友好。 + +CVM云服务器的劣势是: + +* 成本高,没有送的流量包。轻量服务器成本低,送的流量包基本上够一般的直播了。所以请大家自己算一算成本。 +* 操作复杂,CVM的安全组比轻量的防火墙操作复杂多了,请大家自己试试,不行就换轻量吧。 +* 没有后台链接,界面比较复杂,如果不行就换轻量吧。 + +如果知道了优势和劣势,还是要选择CVM,请参考[云SRS:支持CVM镜像](https://mp.weixin.qq.com/s/x-PjoKjJj6HRF-eCKX0KzQ)。 + +


+ +## 如何设置免费HTTPS + +云SRS支持申请免费HTTPS证书,而且可以申请多个域名的证书,还可以自动续期。比如,以下HTTPS网站的证书,都是跑了云SRS后一键自动申请的: + +* https://ossrs.io SRS的海外文档网站。 +* https://www.ossrs.io SRS的海外文档网站。 +* https://r.ossrs.net SRS的稳定版演示服务器。 + +操作非常简单,只需要三步,具体请看[这里](https://ossrs.net/lts/blog/2022/04/12/SRS-Cloud-HTTPS): + +1. 购买域名并备案,一定要有自己的合法域名,否则无法申请证书的哈。 +2. 将域名解析到云SRS的公网IP,可以通过域名访问到你的云SRS就可以,可以加多个域名解析,比如 `ossrs.io` `www.ossrs.io` 都是解析到同一个云SRS服务器的。 +3. 在云SRS的 `系统设置 > HTTPS > 自动HTTPS证书` 填写你的域名,多个用分号分割,点申请就行了。 + +> Note: 申请域名就行了,不要再上传,申请了就可以了,不需要再上传一次。 + +> Note: 请使用宝塔申请,操作步骤和上面类似。云SRS将不再支持证书申请,原因是certbot不支持多平台的docker镜像,在其他平台上使用会有问题。 + +申请成功后,在浏览器敲https加你的域名,就可以访问你的网站了。 + +


+ +## 如何修改推流鉴权的密钥 + +若你需要更新推流鉴权的密钥,或者更换推流密钥,可以按以下操作步骤: + +1. 进入`系统设置`面板。 +1. 选择`流鉴权`标签页。 +1. 输入新的流密钥。 +1. 点`更新`按钮。 +1. 刷新各个场景的页面,推流密钥就自动更新了。 + +如下图所示: + +![](/img/page-2023-03-04-04.png) + +若需要禁用推流鉴权,请参考下面的说明。 + +


+ +## 如何禁用推流鉴权 + +在场景页面中,标准的推流格式,是带`?secret=xxx`鉴权的,比如`rtmp://ip/live/livestream?secret=xxx` + +发现有些摄像机,不支持`?secret=xxx`的格式,所以会提示地址不支持。 + +这种情况下,其实可以直接将密钥`xxx`放在流名称中,比如:`rtmp://ip/live/livestreamsecretxxx`,这样就没问题了。 + +当然如果你就只需要推一个流,可以直接把密钥作为流名称,比如:`rtmp://ip/live/xxx`。 + +> Note: 当然了,播放也得改成一样的流名称才行,也要有密钥,因为这里是把密钥放在流名称中了,播放当然也得改了。 + +这样的方式,是有安全性,也能支持不支持特殊字符的设备,加上推流密钥本来就可以改,所以可以改成自己想要的方式。 + +


+ +## 如何录制到本地磁盘 + +如何录制到云SRS的本地磁盘?升级到v1.0.252后,在录制中就可以看到有本地录制了。 + +本地录制的限制和解决方案,请参考 #42 + +


+ +## 云录制和云点播的区别 + +云SRS提供了云录制和云点播两个类似的功能,录制是用云录制还是云点播,有何区别? + +云录制可以认为是把直播写到了云盘,保存的是HLS格式,是原始的视频流。如果你是要将HLS下载下来转码和剪辑,那会比较合适。云录制是存储在腾讯云COS云存储的,可以认为是个无限磁盘,避免写爆云SRS的磁盘。 + +云点播提供了HLS和MP4两种格式,而且未来会上架更多的功能,比如转出来多码率,加上台标和水印,媒资管理等很多很好用的功能。云点播是一个点播系统,不仅仅是个存储的磁盘,可以认为是个B站或YouTube,如果你要做更丰富的业务那肯定要选云点播。 + +从费用上看,云点播会比云录制多一些,要看具体用到哪些功能。目前云SRS使用的是HLS转MP4,这个费用非常低,因为没有转码。未来如果要上高级功能,费用会高一些。总体来看,云点播的费用是非常低的,和云录制差不多,如果没有额外的计算费用就和云录制一样的了。 + +简单来说,推荐用云点播,好用不贵。 + +


+ +## 如何录制到云存储 + +云SRS支持录制到COS,腾讯云存储,请参考[Usage: Cloud Storage](https://mp.weixin.qq.com/s/axN_TPo-Gk_H7CbdqUud6g)。 + +云SRS也可以录制到其他云存储,比如阿里云OSS或AWS S3,可以按照云存储的指引,将云存储挂载到云SRS,然后使用本地录制,配置本地路径的存储路径,这样就可以将文件写入到云存储了。 + +> Note: 修改本地录制的路径,可以在`本地录制/录制文件夹`中,把录制的路径软链到云存储的路径就可以。 + +


+ +## 安装后无法访问 + +安装后提示错误,比如: + +![](/img/page-2023-03-04-05.png) + +或者Redis没准备好,比如: + +![](/img/page-2023-03-04-06.png) + +这是因为刚刚安装后,云SRS启动需要时间,等待3到5分钟后刷新页面,就可以了。 + +


+ +## SRS转推和OBS转推的区别 + +SRS的多平台转推,可以将流转推给多个平台,它的工作图如下: + +``` +OBS/FFmpeg --RTMP--> 云SRS --RTMP--> 视频号、B站、快手等直播平台 +``` + +其实,OBS也有一个转推插件,它的工作图如下: + +``` +OBS --RTMP--> 视频号、B站、快手等直播平台 +``` + +看起来OBS的链路更短更简单,还不用经过云SRS不用付钱,为何云SRS还要做转推,OBS这个方案有什么缺点? + +OBS转推的优点是不用钱,直接就转推了。缺点是它的上行/上传带宽是翻倍的,比如2Mbps的流,如果转推3个平台就是6Mbps,如果视频号还需要推多个那会更多,比如推10个平台就是20Mbps。 + +带宽高了,会导致所有推流都卡顿或者中断,这会让所有观众都看不了直播,直接造成直播事故。只要翻车一次,直播间的人基本上就跑得差不多了,是非常严重的事故。 + +基本上80%的直播翻车,都是主播推流端的问题。因为云平台和观众观看的问题都解决得差不多了,唯独主播推流这个地方云平台是无解的。 + +如果家里是拉的光纤专线,比如买100Mbps的专线,那肯定没问题。问题是100Mbps的专线是非常贵的,就算暂时免费,一样有收费的那一天,因为专线就是专享的资源,不可能永远免费的。就好像人家免费给你金条一样,能免费多久呢。 + +云SRS其实也是会有带宽翻倍,但是它是下行带宽翻倍,因为它做了一次转换,本质上是其他平台从云SRS这里下载流。下行/下载带宽一般都是更有保障的。而且云SRS和平台之间,都是服务器之间的BGP带宽,比家里到平台质量更有保障。 + +


+ +## SRS如何转推自定义平台 + +SRS的多平台转推,是可以推到自定义的直播平台,比如推到视频号的推流地址和流密钥,也可以填任何其他直播平台的。 + +> Note: 云SRS之所以分成视频号和B站等平台,是为了提供更好的引导,这些平台的RTMP地址格式都是类似的,所以可以随意填,云SRS不会验证具体的平台。 + +如果直播平台的RTMP地址是一个地址,比如: + +``` +rtmp://ip/app/stream +``` + +那么,可以把它拆分成: + +* 推流地址:`rtmp://ip/app` +* 流密钥:`stream` + +> Note: 最后一个斜杠后面的就是流密钥。 + +


+ +## 如何更换FFmpeg + +如果使用Docker版本,可以更换云SRS中的FFmpeg为自定义版本,启动时指定命令: + +```bash +-v /path/to/ffmpeg:/usr/local/bin/ffmpeg +``` + +可以使用命令`which ffmpeg`来查找你的FFmpeg的路径。 + +> Note: 非Docker版本不支持。 + +


+ +## 宝塔安装SRS非常慢 + +有朋友反馈:海外用宝塔安装非常慢,访问阿里云镜像太慢。 + +这是因为海外不能使用宝塔,海外用宝塔安装其他的工具也非常慢,这是因为跨国回源到国内下载数据当然非常慢了。 + +宝塔海外版本叫[aaPanel](https://aapanel.com),请使用aaPanel,安装软件很快,云SRS也会切换到海外的镜像下载。 + +宝塔和aaPanel只是安装方法不同,具体用法是一样的,请参考[宝塔](https://ossrs.net/lts/zh-cn/blog/BT-aaPanel)或[aaPanel](https://blog.ossrs.io/how-to-setup-a-video-streaming-service-by-aapanel-9748ae754c8c)。 + +


+ +## 宝塔如何安装最新的云SRS + +有时候宝塔商店的版本比较老,可以手动安装宝塔插件,安装最新的插件。 + +云SRS最新的版本,可以看[Releases](https://github.com/ossrs/srs-stack/releases),每个版本的附件中`bt-srs_cloud.zip`就是可以下载的插件。 + +下载插件后,可以在宝塔`软件商店 > 第三方应用 > 导入插件`,上传下载的`bt-srs_cloud.zip`即可安装。 + +


+ +## 宝塔CentOS7安装失败 + +> 注意:推荐使用Ubuntu20系统。 + +CentOS7宝塔安装失败,常见错误如下: + +* GLIBC版本问题:```version `GLIBC_2.27' not found``` +* 找不到目录:```ln: failed to access '/www/server/nvm/versions/node/v18.12.1/bin/node'``` + +这都是因为CentOS7上的nodejs有问题,一般是安装pm2后安装的是nodejs18,而它依赖高版本的libc,所以无法使用。 + +解决办法: + +* 升级到云SRS v4.6.3+,可以手动安装最新版本,参考[宝塔如何安装最新的云SRS](#bt-install-manually) +* 打开pm2切换到nodejs 16,也可以绕过去这个问题。 + +> Note: 云SRS v4.6.3+,不再强制依赖pm2安装nodejs,只要系统存在nodejs就可以了。你可以选择nodejs管理器安装,或者pm2安装,或者自己安装也可以。 + +最后,如果安装成功后还不可用,可以重启下系统试试。 + +


+ +## 提的功能如何实现,如何录视频 + +欢迎大家给云SRS提问题和新功能,但请说明真实业务。 + +大部分朋友不知道什么是真实业务,一般都是描述的业务的实现方案。而这个方案不一定是最合适的,甚至已经有了其他的技术方案,可以实现这个业务目标。因此,一定要请描述业务而不要描述功能或方案的技术实现。 + +请详细描述业务场景,可以尝试回答以下的问题: + +1. 你是做什么业务的?作为一个普通人,我怎么用到你的产品和服务?麻烦举个真实的人来讲。 +2. 你在用SRS解决你业务中的什么问题?麻烦举个真实的例子讲。 +3. 你给SRS提的需求或功能,是怎么应用在业务中的?麻烦举个例子讲。 + +> Note: 如果群里不方便说,可以单独微信发给我。 + +SRS云服务器这个开源社区就是这样工作的,你提交应用场景,我们就会优先实现,用真实的钉子选锤子,欢迎大家一起参与~ + +


+ +## 无法实现预期效果 + +如果达不到预期效果,比如延迟高了,或者推拉流失败了,下面的办法可以解决所有问题: + +``` +一个字不要改的,跟着视频教程和应用场景的引导,鼠标操作复制粘贴,一定能疗效良好! +一个字不要改的,跟着视频教程和应用场景的引导,鼠标操作复制粘贴,一定能疗效良好! +一个字不要改的,跟着视频教程和应用场景的引导,鼠标操作复制粘贴,一定能疗效良好! +``` + +因为大家出现问题的原因只有一个:就是觉得音视频简单,乱改! + +* 觉得SRS云服务器简单,自己买其他云服务器后部署,或者买轻量后自己安装程序:扑街! +* 换播放器,换推流器,不按视频和场景指引的,换各种客户端:扑街! +* 不看[视频教程](https://space.bilibili.com/430256302/channel/collectiondetail?sid=180263),不看`应用场景`的文字指引,直接上手乱试:扑街! + +天堂有路你不走,地狱无门你闯的头破血流的要进地域,只能说是自己造孽自己受。 + +如果按照[视频教程](https://space.bilibili.com/430256302/channel/collectiondetail?sid=180263)和`应用场景`的指引,还是有问题,把你的过程录下来,发群里,立刻帮你解决! + +最后再苦口婆心的劝大家从良:音视频水很深,一看就会一试就废,这是为什么我要做SRS云服务器,你先用开箱即用的跑出效果来,然后想一点点折腾也可以,不要路都不会走就跑。 + +


+ +## 云SRS和SRS的差别 + +[SRS](https://github.com/ossrs/srs)是一个开源服务器,是一个流媒体服务器,一般会和FFmpeg以及WebRTC等客户端配合起来实现音视频的能力,请看[这个图](https://github.com/ossrs/srs#srssimple-realtime-server)你就明白了什么是SRS。 + +云SRS是一个音视频的方案,它基于SRS、Nodejs、REACT等实现音视频的常用场景,请看[这个图](https://github.com/ossrs/srs-stack#architecture)你就明白了什么是云SRS。 + +SRS安装后,打开是一个流媒体服务器的演示页面,有播放器和控制台的链接;云SRS安装后,打开是需要登录的管理后台,提供了很多不同场景的引导。 + +如果你是需要详细研究流媒体服务器,请根据SRS的文档操作,也请加SRS的社区,而不要在云SRS的群里问。SRS是一个开源的音视频服务器,面向的是开发能力非常强的C/C++程序员,你可以随意修改,定制能力很强。 + +如果你是想要一个直接就能使用的音视频平台,开箱即用,可以线上使用的,就请用云SRS,请不要在SRS社区问。云SRS的含义,就是云上的SRS,它是个基于云的服务,面向的是用户,不需要了解音视频细节,跟着教程操作就可以。 + +两个都是开源的项目,欢迎贡献。 + +


+ +## 和宝塔的差别 + +宝塔是一个虚拟机的管理工具,SRS云服务器是一个音视频的开箱即用的方案,宝塔也可以安装云SRS,请参考[支持哪些平台](#support-platform)。 + +> Note: 海外的宝塔是叫aaPanel,也支持云SRS;如果你的机器在海外,请不要用宝塔,而要用aaPanel;大家使用的安装源不同,海外用宝塔可能安装非常慢甚至会失败。 + +


+ +## 和视频云的差别 + +视频云是大规模服务的场景,比如云直播、比如TRTC、比如IM、比如云点播、比如CDN、比如腾讯会议或ZOOM,这些都是超大规模的系统。 + +SRS云服务器是把这些系统全部放在一台`Lighthouse/CVM/Droplet/宝塔`云服务器中,所以它主要是全面,但是并发和规模非常小,只适合小微场景,快速搭建应用实现业务,了解和学习新场景,可以跑起来后慢慢看怎么实现。 + +当然,未来SRS云服务器也会支持迁移到成熟的视频云服务,让大家可以快速满足业务要求,同时业务长大后也能得到规模化的支撑。 + +


+ +## 如何重装系统 + +如果已经有`Lighthouse/CVM/Droplet`,或者镜像出现问题,可以重装镜像解决。不要登录上去自己折腾,只会折腾出更多问题,直接选择重装系统比较好。 + +以Lighthouse为例,其他平台类似这样操作。首先,在应用管理中,选择重装系统: + +![](/img/page-2023-03-04-07.png) + +然后,在镜像类型中选择`应用镜像`,再选择`SRS`对应的镜像就可以,如下图: + +![](/img/page-2023-03-04-08.png) + +最后点确认和确定就可以,非常快就重装了。 + +


+ +## 如何授权排查问题 + +出现问题时如何授权机器权限?推荐使用宝塔: + +1. 面板设置。 +2. 安全设置。 +3. 临时访问授权管理。 +4. 创建临时授权。 + +把临时授权的地址,发给问题排查同学就可以。 + +


+ +## OpenAPI + +关于开放API,使用AP对接云SRS,可以在`系统配置 > OpenAPI`中,根据引导操作。 + +所有云SRS的操作,都是调用API完成,这些API可以通过Chrome的Network面板看到具体请求。 + +凡是能在云SRS页面完成的操作,都可以通过OpenAPI完成。 + +


+ +## Features + +云SRS(即SRS云服务器)是nodejs实现的开源方案,代码在[srs-cloud](https://github.com/ossrs/srs-stack),欢迎一起来搞。 + +SRS云服务器面向鼠标编程,让每个人都能做音视频业务。不懂音视频的可以,懂音视频的也可以,种地的可以,撸网线的可以,剪电影的可以,背摄像机的也可以,跳舞的可以,唱歌的可以,卖二手货的也可以,开源项目交流也可以,多平台直播也可以,自建源站可以,会用电脑有微信就可以,守法公民都可以。 + +云SRS的使用说明,请参考视频[SRS云服务器:起步、购买和入门](https://www.bilibili.com/video/BV1844y1L7dL/)。 + +目前云SRS支持的场景和功能包括: + +* [云SRS:起步、购买和入门](https://mp.weixin.qq.com/s/fWmdkw-2AoFD_pEmE_EIkA):如何购买和设置环境,必看。 +* `已支持,打磨中` 对接[宝塔](https://mp.weixin.qq.com/s/nutc5eJ73aUa4Hc23DbCwQ)或[aaPanel](https://blog.ossrs.io/how-to-setup-a-video-streaming-service-by-aapanel-9748ae754c8c):可以用[宝塔](https://www.bt.cn/)安装SRS,支持所有CentOS或Ubuntu的机器,可命令行安装宝塔后装SRS。 +* `已支持,打磨中` [私人直播间](https://mp.weixin.qq.com/s/AKqVWIdk3SBD-6uiTMliyA):OBS推流到SRS,可以和好朋友看电影,私密直播间,专享BGP带宽,想看啥就看啥。 +* `已支持,打磨中` [超高清实时直播](https://mp.weixin.qq.com/s/HQb3gLRyJHHu56pnyHerxA):用SRT低延迟推流,也能做会议,比WebRTC清晰太多了,也适合其他低延迟SRT的场景。 +* `已支持,打磨中` [录制本地](https://mp.weixin.qq.com/s/axN_TPo-Gk_H7CbdqUud6g):录制到云SRS服务器本地文件,提供HLS下载。[#42](https://github.com/ossrs/srs-stack/issues/42) +* `已支持,打磨中` [录制到云存储](https://mp.weixin.qq.com/s/axN_TPo-Gk_H7CbdqUud6g):避免本地磁盘限制,也方便后续直播流的处理,支持录制视频流到云存储,详细参考 [#1193](https://github.com/ossrs/srs/issues/1193)。 +* `已支持,打磨中` [录制到云点播](https://mp.weixin.qq.com/s/axN_TPo-Gk_H7CbdqUud6g):比云录制更高级的能力,云存储是无限磁盘,云点播则是短视频系统,更方便,姿势更骚。 +* `已支持,打磨中` [多平台转播](https://mp.weixin.qq.com/s/FtaeQIJpb7vpmX2eFguLiQ):推流到云SRS,转推到视频号、快手、B站、抖音等直播平台,详细参考 [#2676](https://github.com/ossrs/srs/issues/2676)。 +* `已支持,打磨中` 对接[WordPress](https://mp.weixin.qq.com/s/kOWabmKbYvrmEXG2fPOZxQ):支持[WordPress插件](https://wordpress.org/plugins/srs-player)和[Typecho插件](https://github.com/ossrs/Typecho-Plugin-SrsPlayer),在Post中插入直播流地址。 +* `已支持,打磨中` [DigitalOcean镜像](https://mp.weixin.qq.com/s/_GcJm15BGv1qbmHixPQAGQ):海外支持DigitalOcean Droplet镜像,中英文多语言版本。 +* `已支持,打磨中` [虚拟直播](https://mp.weixin.qq.com/s/I0Kmxtc24txpngO-PiR_tQ):服务端OBS,将点播文件、图片或流推直播,有简单布局能力。 +* `开发中` [一键自动HTTPS](https://mp.weixin.qq.com/s/O70Fz-mxNedZpxgGXQ8DsA):上传HTTPS证书,或者一键自动申请Let's Encrypt证书,属于WebRTC场景的基本能力。 +* `规划中` 云摄像头:支持摄像头GB接入,支持云台,云录制。 +* `规划中` 电商直播间:直播间,文字聊天能力,有商品列表和购买等,详细参考 [#2858](https://github.com/ossrs/srs/issues/2858)。 +* `规划中` 互动直播:直播间,支持文件聊天,送礼物和点赞等。 +* `规划中` 云直播:对接云直播或CDN分发,支持百万人观看,对接CDN分发流。 +* `规划中` 一对一聊天:全平台的一对一聊天,详细参考 [#2857](https://github.com/ossrs/srs/issues/2857)。 +* `规划中` 视频会议:多人视频会议,详细参考 [#2924](https://github.com/ossrs/srs/issues/2924)。 +* `规划中` 直播转码:用FFmpeg将直播流转码成多个直播流,实现不同设备观看不同码率,详细参考 [#2869](https://github.com/ossrs/srs/issues/2869)。 +* `规划中` 云导播:云OBS,给直播流加水印,加LOGO,加背景音乐,多路切换。 +* `规划中` 开发环境:包含音视频相关的工具的源码,比如OBS和WebRTC,开发环境,详细参考 [#2891](https://github.com/ossrs/srs/issues/2891)。 +* `规划中` AI:人脸检测,物体识别,自动字幕等。 +* `规划中` 对接[Moodle](https://stats.moodle.org/):支持Moodle插件,在线教育开源网站。 +* `规划中` [图形化仪表盘](https://mp.weixin.qq.com/s/ub9ZGmntOy_-S11oxFkxvg):以图表形式展示后台数据,比如CPU等等,详细参考 [Prometheus](https://github.com/ossrs/srs/issues/2899#prometheus)。 + +欢迎加群探讨云SRS的使用,这些SRS的周边服务都是开源的,可以自己定制后部署。 + +


+ +## Changelog + +以下为SRS云服务器的更新记录。 + +* 2023.08.07, v1.0.303, minor improvements + * Always use the latest SRS 5.0 release. v1.0.301 + * Use status to check SRS, not by the exit value. v1.0.301 + * Refine DigitalOcean droplet image. v1.0.302 + * Support local test all script. v1.0.302 + * Rewrite script for lighthouse. v1.0.303 + * Set nginx max body to 100GB. v1.0.303 + * Use LEGO instead of certbot. v1.0.304 +* 2023.08.06, v1.0.300, 微改进 + * 简化启动脚本,解决bug,目录调整为`/data`一级目录。v1.0.296 + * 改进消息提示,脚本注释,日志输出。v1.0.297 + * 避免每次启动修改全局目录,在容器和平台脚本中初始化。v1.0.298 + * 改进发布脚本,检查版本匹配,手动更新版本。v1.0.299 + * 删除升级功能,保持docker等平台的一致性。v1.0.300 + * 改进BT和aaPanel脚本,增加测试流水线。v1.0.300 +* 2023.04.05, v1.0.295, 结构改进 + * 去掉HTTPS证书申请、管理员授权、NGINX反向代理等功能。v1.0.283 + * 将Release使用Go实现,减少内存需求和镜像大小。v1.0.284 + * 去掉dashboard和Prometheus,方便支持单个Docker镜像。v1.0.283 + * 将mgmt和platform使用Go实现,减少内存需求和镜像大小。v1.0.283 + * 使用Ubuntu focal(20)作为基础镜像,减少镜像大小。v1.0.283 + * 支持快速升级,安装在40秒左右,升级在10秒左右完成。v1.0.283 + * 解决没有流时转发的问题。v1.0.284 + * 解决上传超大文件卡死问题。v1.0.286 + * 去掉AI换脸的视频,B站审核没过。v1.0.289 (stable) + * 去掉Redis容器,直接在platform中启动redis。v1.0.290 + * 去掉SRS容器,直接在platform中启动SRS。v1.0.291 + * 支持单容器启动,包括mgmt一个容器中。v1.0.292 + * 支持挂载到`/data`目录持久化。v1.0.295 +* 2023.02.01, v1.0.281, 体验改进, Stable version. + * 允许用户关闭自动更新,使用手动更新。 + * 适配宝塔新版本,解决nodejs检测问题。 + * 宝塔检测插件状态,没安装完之前不能操作。 + * 改进转发的状态显示,添加`等待中`状态。 v1.0.260 + * 改进镜像更新,不强依赖certbot。#47 + * 合并hooks/tencent/ffmpeg镜像到platform。v1.0.269 + * 转推支持自定义平台。v1.0.270 + * 支持虚拟直播,文件转直播。v1.0.272 + * 上传文件限制100GB。v1.0.274 + * 修复虚拟直播的bug。v1.0.276 + * Release服务,用Go替换Nodejs,减少镜像大小。v1.0.280 + * 不用buildx打单架构docker镜像,CentOS会失败。v1.0.281 +* 2022.11.20, v1.0.256, 大版本更新,体验改进,Release 4.6 + * 代理根站点的资源,比如favicon.ico + * 支持[SrsPlayer](https://wordpress.org/plugins/srs-player)的WebRTC推流简码。 + * 支持[本地录制](https://github.com/ossrs/srs-stack/issues/42),录制到云SRS本地磁盘。 + * 支持删除本地录制的文件和任务。 + * 支持本地录制为MP4文件和下载。 + * 支持本地录制目录为软链接,存储录制内容到其他磁盘。 + * 改进录制导航栏,合并为录制。 + * 解决主页和代理根目录的冲突问题。 + * 解决升级时未更新NGINX配置的问题。 + * 解决设置record软链接的Bug。 + * 镜像全部更换为标准镜像`ossrs/srs`。 + * 支持设置网站标题和页脚(备案要求)。 + * 提示管理员密码路径,忘记密码时可以找回密码。 + * 出错时允许恢复页面,不必刷新页面。 +* 2022.06.06, v1.0.240, 大版本更新, 宝塔, Release 4.5 + * 减少磁盘占用大小,清理docker镜像 + * 改进依赖,不再强依赖Redis和Nginx + * 支持在[流名称中传secret](https://github.com/ossrs/srs-stack/issues/4#no-publish-auth),避免特殊字符 + * 支持[宝塔](https://mp.weixin.qq.com/s/nutc5eJ73aUa4Hc23DbCwQ)或[aaPanel](https://blog.ossrs.io/how-to-setup-a-video-streaming-service-by-aapanel-9748ae754c8c)插件,支持CentOS或Ubuntu命令行安装 + * 迁移ossrs.net到轻量服务器,不再依赖K8s。 + * 登录密码默认改为显示密码。 + * 停止推流一定时间,清理HLS缓存文件。 + * 创建2GB的交换区,若内存小于2GB。 + * 支持收集SRS的coredump。 + * 直播场景显示SRT推流地址和命令。 + * 支持设置NGINX的根代理路径。 +* 2022.04.18, v1.0.222, 小版本更新, 容器化Redis + * 改进说明,支持禁用推流鉴权。 + * 持英文的引导,[medium](https://blog.ossrs.io)的文章。 + * 改进简易播放器,支持静音自动播放。 + * NGINX分发HLS时,添加CORS支持。 + * 新增英文引导,[创建SRS](https://blog.ossrs.io/how-to-setup-a-video-streaming-service-by-1-click-e9fe6f314ac6)和[设置HTTPS](https://blog.ossrs.io/how-to-secure-srs-with-lets-encrypt-by-1-click-cb618777639f),[WordPress](https://blog.ossrs.io/publish-your-srs-livestream-through-wordpress-ec18dfae7d6f)。 + * 增强密钥长度,加强安全性,避免暴力破解。 + * 支持WordPress的Shortcode引导。 + * 支持设置首页的跳转路径,支持和其他网站混跑。 + * 支持设置反向代理,支持将其他服务挂在NGINX下。 + * 支持HTTPS申请多个域名,解决`www`前缀域名问题。 + * 更改`备案`为`网站`,可设置首页跳转和页脚备案号。 + * 改进NGINX配置文件结构,配置集中在`containers`目录。 + * 支持简单负载均衡的设置,随机选个后端NGINX做HLS分发。 + * 容器工作在独立的`srs-cloud`网络中。 + * 新增`系统 > 工具`选项。 + * 使用Redis容器,不依赖主机的Redis服务。 +* 2022.04.06, v1.0.200, 大版本更新, 多语言, Release 4.4 + * 支持中英文双语。 + * 支持DigitalOcean镜像,参考[SRS Droplet](https://marketplace.digitalocean.com/apps/srs)。 + * 支持OpenAPI获取推流密钥,参考[#19](https://github.com/ossrs/srs-stack/pull/19)。 + * 改进更新容器镜像的脚本。 + * 支持使用NGINX分发HLS,参考[#2989](https://github.com/ossrs/srs/issues/2989#nginx-direclty-serve-hls)。 + * 改进VoD存储和服务检测。 + * 改进安装脚本。 +* 2022.03.18, v1.0.191, 小版本更新, 体验改进 + * 场景默认显示教程。 + * 支持SRT地址分离,播放不带secret。 + * 分离Platform模块,简化mgmt逻辑。 + * 改进UTest升级测试脚本。 + * 支持更换流名称,随机生成流名称。 + * 支持拷贝流名称、配置、地址等。 + * 分离升级和UI,简化mgmt逻辑。 + * 分离容器管理和升级。 + * 快速高效升级,30秒之内升级完成。 + * 支持CVM镜像,参考[SRS CVM](https://mp.weixin.qq.com/s/x-PjoKjJj6HRF-eCKX0KzQ)。 +* 2022.03.16, v1.0.162, 大版本更新,错误处理,Release 4.3 + * 支持React Error Boundary,友好的错误显示。 + * 支持RTMP推流的二维码,芯象的引导。 + * 支持简单播放器,播放HTTP-FLV和HLS。 + * 改进回调,使用React.useCallback创建。 + * 改进页面缓存时间,提高加载速度。 + * 增加REACT UI组件和Nodejs项目的测试。 + * 增加安装依赖包的脚本。 + * 改进简易播放器,默认不静音,需要用户点击才能播放。 + * 新增西瓜播放器[xgplayer](https://github.com/bytedance/xgplayer),播放FLV和HLS +* 2022.03.09, v1.0.144, 小版本更新,多平台转推 + * 支持多平台转推,视频号、B站、快手。 + * 修改转推配置时,重启转推任务。 + * 支持设置升级窗口,默认23点到5点升级。 + * 支持jest单元测试,覆盖mgmt。 + * 支持切换SRS,稳定版和开发版。 + * 优化禁用容器的状态显示。 +* 2022.03.04, v1.0.132, 小版本更新,云点播 + * 支持云点播,HLS和MP4下载。 + * 云点播支持直播中回看,更新SessionKey。 + * 升级时禁止设置密码,避免环境变量冲突。 + * 初始化系统时,重启所有依赖.env的容器。 + * 更新云录制和云点播的区别。 + * SRT支持vMix引导教程。 +* 2022.02.25, v1.0.120, 小版本更新,云录制 + * 改进升级脚本,重启必要的容器。 + * 修改Redis侦听端口,增强安全性。 + * 解决云录制,异步超长时间(8h+)的冲突问题。 + * 改进密钥创建链接,使用云API密钥。 + * 改进场景和设置TAB,按需加载,URL地址标识。 +* 2022.02.23, v1.0.113, 小版本更新,云录制 + * 支持重新设置推流密钥。[#2](https://github.com/ossrs/srs-terraform/pull/2) + * SRT推流断开,当转RTMP失败时。 + * 禁用容器时,不再启动容器。 + * SRT支持扫码二维码推流和播放。[#6](https://github.com/ossrs/srs-terraform/pull/6) + * 支持[云录制](https://mp.weixin.qq.com/s/UXR5EBKZ-LnthwKN_rlIjg),录制到腾讯云COS。 +* 2022.02.14, v1.0.98, 大版本更新,升级,Release 4.2 + * 改进react静态资源缓存,提升后续加载速度。 + * 新增Contact专享群二维码,扫码加群。 + * 支持设置Redis的值,关闭自动更新。 + * 自动检测海外区域,使用海外源更新和升级。 + * 改进升级提示,倒计时和状态检测。 + * 在页面显示大家制作的视频教程,按播放数排序。 + * 支持授权平台管理员访问Lighthouse实例。 + * 小内存系统,自动创建swap,避免升级时OOM。 +* 2022.02.05, v1.0.74, 小版本更新,仪表盘 + * 支持Prometheus监控,WebUI挂载在`/prometheus`,暂无鉴权。 + * 支持Prometheus NodeExporter,节点监控,Lighthouse的CPU、网络、磁盘等。 + * 新增仪表盘,增加了CPU的图,可跳转到[Prometheus](https://github.com/ossrs/srs/issues/2899#prometheus)。 + * 改进certbot,使用docker启动,非安装包。 + * 改进升级流程,防止重复升级。 + * 支持1GB内存的机器升级,禁用node的GENERATE_SOURCEMAP防止OOM。 +* 2022.02.01, v1.0.64, 小版本更新,HTTPS + * 支持Windows版本的ffplay播放SRT地址 + * 支持容器启动hooks,流鉴权和认证 + * 更改Redis侦听在lo和eth0,否则容器无法访问 + * 支持设置HTTPS证书,Nginx格式,参考 [这里](https://github.com/ossrs/srs/issues/2864#ssl-file) + * 支持Let's Encrypt自动申请HTTPS证书,参考 [这里](https://github.com/ossrs/srs/issues/2864#lets-encrypt) +* 2022.01.31, v1.0.58, 小版本更新,SRT + * 支持超清实时直播场景,SRT推拉流,200~500ms延迟,参考 [这里](https://github.com/ossrs/srs/issues/1147#lagging) + * 芯象/OBS+SRS+ffplay推拉SRT流地址,支持鉴权。 + * 支持手动升级到最新版本,支持强制升级。 + * 改进升级脚本,更新脚本后执行 + * 支持重启SRS服务器容器 +* 2022.01.27, v1.0.42, 大版本更新, 流鉴权,Release 4.1 + * 支持推流鉴权和管理后台 + * 支持更新后台,手动更新 + * 直播间场景,推流和播放引导 + * SRS源码下载,带GIT + * 支持Lighthouse镜像,参考[SRS Lighthouse](https://mp.weixin.qq.com/s/fWmdkw-2AoFD_pEmE_EIkA)。 +* 2022.01.21, Initialized. + +![](https://ossrs.net/gif/v1/sls.gif?site=ossrs.net&path=/lts/pages/faq-srs-stack-zh) diff --git a/i18n/zh-cn/docusaurus-plugin-content-pages/faq.md b/i18n/zh-cn/docusaurus-plugin-content-pages/faq.md index aee82c8b..f5093e3a 100644 --- a/i18n/zh-cn/docusaurus-plugin-content-pages/faq.md +++ b/i18n/zh-cn/docusaurus-plugin-content-pages/faq.md @@ -14,7 +14,7 @@ 下面是常见的问题,如果没有找到你的问题,请先在本[Issue](https://github.com/ossrs/srs/issues)中搜索,如果你确认是个Bug并且没有提交过, 请按照要求提交Issue。 -> Note: 这是关于SRS的FAQ,如果是云SRS的FAQ请参考[SRS Cloud FAQ](/faq-srs-cloud) +> Note: 这是关于SRS的FAQ,如果是云SRS的FAQ请参考[SRS Stack FAQ](/faq-srs-cloud) @@ -122,7 +122,7 @@ * `Dynamic DVR`: 关于动态录制,正则表达式匹配需要录制的流等。 > 1. 可以用`on_publish`,回调业务系统,由业务系统实现负责的规则。 > 1. 具体录制文件用`on_hls`,将切片拷贝到录制目录,或者云存储。 - > 1. 可以参考[srs-cloud](https://github.com/ossrs/srs-cloud/blob/main/platform/srs-hooks.go)中DVR的实现。 + > 1. 可以参考[srs-cloud](https://github.com/ossrs/srs-stack/blob/main/platform/srs-hooks.go)中DVR的实现。 > 1. SRS不会支持动态DVR,但给出了一些方案,也可以参考 [#1577](https://github.com/ossrs/srs/issues/1577) @@ -271,7 +271,7 @@ ``` ``` -云SRS的问题,请提交到[srs-cloud](https://github.com/ossrs/srs-cloud),该Issue会被删除,请先阅读FAQ:#2716 +云SRS的问题,请提交到[srs-cloud](https://github.com/ossrs/srs-stack),该Issue会被删除,请先阅读FAQ:#2716 ``` ![](https://ossrs.net/gif/v1/sls.gif?site=ossrs.net&path=/lts/pages/faq-zh) diff --git a/src/pages/faq-srs-cloud.md b/src/pages/faq-srs-cloud.md index e25604c9..48028b7d 100644 --- a/src/pages/faq-srs-cloud.md +++ b/src/pages/faq-srs-cloud.md @@ -1,633 +1,7 @@ # FAQ -> Note: This is FAQ for SRS Cloud, please see [SRS FAQ](/faq) for SRS FAQ. - -Quick Content - -* [Video Guides](#video-guides): Video tutorials. -* [Getting Started](#getting-started): How to use, start, and get started with SRS Cloud Server. -* [How to Upgrade](#how-to-upgrade): How to upgrade to the latest or stable version, and why the interface click upgrade is not supported. -* [How to set a domain](#how-to-set-domain): How to set up a domain to access the admin panel, why can't the admin panel be opened, and why can't the admin panel be accessed via IP. -* [Supported Platforms](#support-platform): Supported platforms, supported images, want to use the server or command line installation directly, or aaPanel installation. -* [How to push multiple streams](#multiple-streams): Want to push multiple streams, want to change the default stream name and stream address. -* [Low bandwidth, increase bandwidth](#bandwidth): Insufficient bandwidth, want to increase bandwidth, use Cloud SRS in CVM. -* [How to set up free HTTPS](#https): How to apply for a free HTTPS certificate, how to apply for certificates for multiple domain names. -* [How to modify the push authentication key](#update-publish-secret): Update the push authentication key, replace the push key. -* [How to disable push authentication](#no-publish-auth): Don't want push authentication, the device does not support special characters. -* [How to record to local disk](#record): How to record to the local disk of Cloud SRS. -* [Difference between cloud recording and cloud on-demand](#cos-vs-vod): Whether to use cloud recording or cloud on-demand, and what are the differences. -* [How to record to cloud storage](#dvr-cloud-storage): Record to COS, OSS, or S3, etc. cloud storage. -* [Unavailable after installation](#unavailable): Error prompt after installation, or Redis not ready. -* [Difference between SRS re-streaming and OBS re-streaming](#restream-vs-obs): The difference between SRS multi-platform re-streaming and OBS re-streaming plugin. -* [How SRS re-streams to custom platforms](#restream-custom): How SRS multi-platform re-streaming pushes to custom live platforms. -* [How to replace FFmpeg](#use-custom-ffmpeg): How to replace the FFmpeg in Cloud SRS with a custom version. -* [aaPanel installation of SRS is very slow](#install-speedup): Overseas aaPanel installation is very slow, access to Alibaba Cloud image is too slow. -* [How to install the latest Cloud SRS in aaPanel](#bt-install-manually): Manually install aaPanel plugin, install the latest plugin. -* [aaPanel CentOS7 installation failed](#bt-centos7-error): CentOS7 aaPanel installation failed, cannot find the directory, or GLIBC version problem. -* [How to purchase AI face-swapping service](#how-to-buy-ai): How to implement AI face-swapping? How to buy models? Who to buy from? -* [How to implement the requirements or features](#rules): Want to implement more features, want to customize, want to optimize and improve. -* [Unable to achieve the desired effect](#can-not-replay): Encounter problems, cannot achieve the desired effect. -* [Difference between Cloud SRS and SRS](#diff-srs): The difference between Cloud SRS and SRS, why there is Cloud SRS. -* [Difference with aaPanel](#diff-baota): Difference with virtual machine management software aaPanel. -* [Difference with Video Cloud](#diff-vcloud): Difference with general video cloud services. -* [How to reinstall the system](#reinstall): For friends who already have Lighthouse or CVM. -* [How to authorize troubleshooting](#auth-bt): How to authorize machine permissions when encountering problems. -* [Cost Optimization](#cost-opt): About cost and cost optimization. -* [OpenAPI](#openapi): About open API, using API to get related information. -* [Feature List](#features): About the list of supported features. -* [Version Planning](#changelog): About versions and milestones. - -You can also search for keywords on the page. - -


- -## Video Guides - -The following are video materials for answering questions, which explain a certain topic in detail. If your question is similar, please watch the video directly: - -* [How to Do Virtual Live Streaming by SRS Cloud](https://youtu.be/68PIGFDGihU) - -


- -## How to get started - -Please purchase and set up [SRS Cloud Server](https://cloud.digitalocean.com/droplets/new?appId=133468816&size=s-1vcpu-512mb-10gb®ion=sgp1&image=ossrs-srs&type=applications) first. - -After entering the SRS Cloud Server, there will be corresponding video tutorials according to different application scenarios, as shown in the following figure: - -![](/img/page-2023-03-04-01.png) - -Each scenario also has a complete introduction and detailed operation steps, as shown in the following figure: - -![](/img/page-2023-03-04-02.png) - -Please do not try randomly, be sure to follow the guide, audio and video random testing will definitely cause problems. - -


- -## How to upgrade - -How to upgrade to the latest version or stable version, and why not support click upgrade on the interface? - -Since Cloud SRS supports multiple platforms, including Docker, and Docker cannot upgrade itself, Cloud SRS also does not support interface upgrades and needs to be upgraded manually. - -The Docker startup specifies the version, such as `ossrs/srs-cloud:v1.0.293`, and you only need to delete the container and start with the new version, such as `ossrs/srs-cloud:v1.0.299`. - -If you use `ossrs/srs-cloud:1`, it is the latest version, and you need to update manually, such as `docker pull ossrs/srs-cloud:1`. - -If you use BT panel, just delete the application and reinstall the new version, the data is saved in the `/data` directory and will not be lost. - -


- -## How to set a domain - -How to set up a domain to access the admin panel, why can't the admin panel be opened, and why can't the admin panel be accessed via IP. - -Please replace the following domain names and IPs with your own domain names and IPs, which can be either private or public IPs, as long as your browser can access them. - -When installing Cloud SRS with aaPanel, you need to enter the domain name of the management backend, such as `bt.yourdomain.com`, and it will automatically create the management backend website. - -If you install it in other ways, it's the same. You just need to resolve your domain name to the Cloud SRS IP. - -There are several ways to set up domain name resolution: - -1. DNS domain name resolution: In the backend of your domain name provider, set an A record pointing to the Cloud SRS IP. -```text -A bt.yourdomain.com 121.13.75.20 -``` -2. Modify the local `/etc/hosts` file in Linux/Unix to resolve the domain name to the Cloud SRS IP. -```text -121.13.75.20 bt.yourdomain.com -``` -3. Modify the local `C:\Windows\System32\drivers\etc` file in Windows to resolve the domain name to the Cloud SRS IP. -```text -121.13.75.20 bt.yourdomain.com -``` - -Note: If you need to apply for a free HTTPS certificate through Let's Encrypt, the IP address must be a public IP, and you cannot use the method of modifying the hosts file. - -


- -## Supported platforms - -Cloud SRS supports Docker, install script, DigitalOcean images, and other platforms can be installed with aaPanel. - -Cloud SRS is, of course, supported on various cloud platforms. The most convenient way is to use images, which are images of cloud servers. If you want to keep it simple and save trouble, please use images. Other methods are prone to problems. Please do not overestimate your ability to tinker. Most people really belong to the 80% who can't tinker. It is strongly recommended to use images: - -* [Run by docker image](https://github.com/ossrs/srs-cloud#usage) -* DigitalOcean: Overseas lightweight cloud server image, use reference [here](https://mp.weixin.qq.com/s/_GcJm15BGv1qbmHixPQAGQ) - -If you don't want to use virtual machine images and want to install directly on a server or command line, or install with aaPanel, that's no problem: - -* aaPanel: If your machine is overseas, be sure to use aaPanel instead of BT panel, use reference [here](https://blog.ossrs.io/how-to-setup-a-video-streaming-service-by-aapanel-9748ae754c8c) - -> Note: If you want to install Cloud SRS from the command line, you can first install BT panel from the command line, and then install Cloud SRS. - -


- -## How to push multiple streams - -By default, there is only one push stream address. What if you want to push multiple streams? How to change the stream address? - -You can change the stream name, for example, the default push stream address is: - -* `rtmp://1.2.3.4/live/livestream?secret=xxx` - -You can modify `livestream` to any other name, and then push directly: - -* rtmp://1.2.3.4/live/`any`?secret=xxx -* rtmp://1.2.3.4/live/`stream`?secret=xxx -* rtmp://1.2.3.4/live/`you`?secret=xxx -* rtmp://1.2.3.4/live/`want`?secret=xxx - -As shown in the figure below, you can click the update button to automatically change the push stream and playback name: - -![](/img/page-2023-03-04-03.png) - -> Note: Of course, the playback must also be changed to the corresponding stream name. - -


- -## Low bandwidth, increase bandwidth - -The bandwidth of lightweight application servers ranges from 4 to 20Mbps, which is somewhat limited for audio and video. If you want higher bandwidth, such as 100Mbps, you can choose CVM or AWS VPS. - -> Note: The usage of Cloud SRS is consistent, but the purchase and platform configuration are different. - -The advantages of CVM cloud servers are: - -* The bandwidth can be up to 100Mbps, and multiple platforms can be used to forward to other CVM servers. Ten CVMs can achieve 1Gbps bandwidth, but of course, you have to consider your budget. -* Pay-as-you-go, you can stop the machine at any time without charge, and use it again when needed. It is more friendly for low-frequency application scenarios. - -The disadvantages of CVM cloud servers are: - -* High cost, no free traffic package. Lightweight servers have low cost, and the free traffic package is basically enough for general live streaming. So please calculate the cost yourself. -* Complex operation, CVM's security group is much more complicated than the lightweight firewall operation. Please try it yourself. If it doesn't work, switch to lightweight. -* No background link, the interface is more complex. If it doesn't work, switch to lightweight. - -If you still want to choose CVM after knowing the advantages and disadvantages, please refer to [Cloud SRS: Support CVM image](https://mp.weixin.qq.com/s/x-PjoKjJj6HRF-eCKX0KzQ). - -


- -## How to set up free HTTPS - -Cloud SRS supports applying for free HTTPS certificates, and you can apply for certificates for multiple domain names and automatically renew them. For example, the certificates for the following HTTPS websites are all automatically applied after running Cloud SRS: - -* https://ossrs.io SRS's overseas documentation website. -* https://www.ossrs.io SRS's overseas documentation website. -* https://r.ossrs.net SRS's stable version demo server. - -The operation is very simple, just follow these three steps, please see [here](https://ossrs.net/lts/blog/2022/04/12/SRS-Cloud-HTTPS): - -1. Purchase a domain name and complete the filing. You must have your own legal domain name, otherwise, you cannot apply for a certificate. -2. Resolve the domain name to the public IP of Cloud SRS. You can add multiple domain names to resolve, for example, `ossrs.io` and `www.ossrs.io` are both resolved to the same Cloud SRS server. -3. In Cloud SRS's `System Settings > HTTPS > Automatic HTTPS Certificate`, fill in your domain name, separate multiple domain names with semicolons, and click Apply. - -> Note: Just apply for the domain name, do not upload it again. Once applied, you don't need to upload it again. - -> Note: Please use aaPanel to apply, the operation steps are similar to the above. Cloud SRS will no longer support certificate application, because certbot does not support multi-platform docker images, and there will be problems when using it on other platforms. - -After the application is successful, enter https plus your domain name in the browser, and you can access your website. - -


- -## How to modify the push authentication key - -If you need to update the push authentication key or change the push key, you can follow these steps: - -1. Enter the `System Settings` panel. -2. Select the `Stream Authentication` tab. -3. Enter the new stream key. -4. Click the `Update` button. -5. Refresh the pages of each scene, and the push key will be automatically updated. - -As shown in the picture below: - -![](/img/page-2023-03-04-04.png) - -If you need to disable push authentication, please refer to the instructions below. - -


- -## How to disable push authentication - -In the scene page, the standard push format is with `?secret=xxx` authentication, such as `rtmp://ip/live/livestream?secret=xxx` - -It is found that some cameras do not support the `?secret=xxx` format, so the address is not supported. - -In this case, you can actually put the key `xxx` directly in the stream name, such as: `rtmp://ip/live/livestreamsecretxxx`, and there will be no problem. - -Of course, if you only need to push one stream, you can directly use the key as the stream name, such as: `rtmp://ip/live/xxx`. - -> Note: Of course, the playback must also be changed to the same stream name, and the key must be included, because the key is placed in the stream name here, so the playback must also be changed. - -This way, there is security, and it can support devices that do not support special characters. In addition, the push key can be changed, so you can change it to the way you want. - -


- -## How to record to local disk - -How to record to the local disk of Cloud SRS? After upgrading to v1.0.252, you can see local recording in the recording. - -For the limitations and solutions of local recording, please refer to #42 - -


- -## Difference between cloud recording and cloud on-demand - -Cloud SRS provides two similar functions, cloud recording and cloud on-demand. What is the difference between using cloud recording or cloud on-demand for recording? - -Cloud recording can be considered as writing live streaming to the cloud disk, saving it in HLS format, which is the original video stream. If you want to download HLS for transcoding and editing, it would be more suitable. Cloud recording is stored in Tencent Cloud COS cloud storage, which can be considered as an unlimited disk, avoiding overwriting the disk of Cloud SRS. - -Cloud on-demand provides both HLS and MP4 formats, and more features will be added in the future, such as outputting multiple bit rates, adding logos and watermarks, media asset management, and many other useful features. Cloud on-demand is a video-on-demand system, not just a storage disk. It can be considered as a Bilibili or YouTube. If you want to do more diverse businesses, you must choose cloud on-demand. - -In terms of cost, cloud on-demand will be slightly higher than cloud recording, depending on which features are used. Currently, Cloud SRS uses HLS to MP4 conversion, which is very low in cost because there is no transcoding. In the future, if you want to use advanced features, the cost will be higher. Overall, the cost of cloud on-demand is very low, similar to cloud recording. If there is no additional computing cost, it will be the same as cloud recording. - -In short, it is recommended to use cloud on-demand, which is easy to use and not expensive. - -


- -## How to record to cloud storage - -Cloud SRS supports recording to COS, Tencent Cloud Storage. Please refer to [Usage: Cloud Storage](https://mp.weixin.qq.com/s/axN_TPo-Gk_H7CbdqUud6g). - -Cloud SRS can also record to other cloud storage, such as Alibaba Cloud OSS or AWS S3. According to the guidance of cloud storage, mount the cloud storage to Cloud SRS, and then use local recording, configure the local storage path, so that you can write files to cloud storage. - -> Note: To modify the local recording path, you can go to `Local Recording/Recording Folder`, and soft link the recording path to the cloud storage path. - -


- -## Unable to access after installation - -After installation, an error is prompted, such as: - -![](/img/page-2023-03-04-05.png) - -Or Redis is not ready, such as: - -![](/img/page-2023-03-04-06.png) - -This is because it takes time for Cloud SRS to start after installation. Refresh the page after waiting for 3 to 5 minutes. - -


- -## Difference between SRS Restream and OBS Restream - -SRS's multi-platform restreaming can push the stream to multiple platforms, and its working diagram is as follows: - -``` -OBS/FFmpeg --RTMP--> Cloud SRS --RTMP--> Video number, Bilibili, Kuaishou, and other live streaming platforms -``` - -In fact, OBS also has a restreaming plugin, and its working diagram is as follows: - -``` -OBS --RTMP--> Video number, Bilibili, Kuaishou, and other live streaming platforms -``` - -It seems that OBS's link is shorter and simpler, and it doesn't need to go through Cloud SRS or pay money. So why does Cloud SRS still need to do restreaming, and what are the drawbacks of OBS's solution? - -The advantage of OBS restreaming is that it doesn't cost money and can be restreamed directly. The disadvantage is that its uplink/upload bandwidth is doubled. For example, a 2Mbps stream, if restreamed to 3 platforms, will be 6Mbps. If more video numbers need to be pushed, it will be even more, such as pushing to 10 platforms, which will be 20Mbps. - -Higher bandwidth will cause all push streams to stutter or interrupt, making it impossible for all viewers to watch the live broadcast, resulting in a live broadcast accident. As long as there is a rollover once, most of the people in the live broadcast room will run away, which is a very serious accident. - -Basically, 80% of live broadcast rollovers are caused by problems with the anchor's push stream. Because the problems of cloud platforms and viewer viewing have been almost solved, the only unsolvable problem is the anchor's push stream. - -If you have a dedicated fiber-optic line at home, such as buying a 100Mbps dedicated line, there will be no problem. The problem is that a 100Mbps dedicated line is very expensive, and even if it is temporarily free, there will be a day when it will be charged because a dedicated line is a dedicated resource and cannot be free forever. It's like someone giving you gold bars for free, how long can it be free? - -Cloud SRS also has doubled bandwidth, but it is the downstream bandwidth that is doubled because it has done a conversion, and essentially other platforms are downloading the stream from Cloud SRS. Downstream/download bandwidth is generally more guaranteed. Moreover, between Cloud SRS and the platform, they are all BGP bandwidth between servers, which is more guaranteed in quality than the home-to-platform connection. - -


- -## How SRS Restreams to Custom Platforms - -SRS's multi-platform restreaming can push to custom live streaming platforms, such as pushing to the video number's push stream address and stream key, and can also fill in any other live streaming platform. - -> Note: The reason why Cloud SRS is divided into video numbers and platforms like Bilibili is to provide better guidance. The RTMP address format of these platforms is similar, so you can fill in any platform, and Cloud SRS will not verify the specific platform. - -If the RTMP address of the live streaming platform is a single address, such as: - -``` -rtmp://ip/app/stream -``` - -Then, you can split it into: - -* Push stream address: `rtmp://ip/app` -* Stream key: `stream` - -> Note: The part after the last slash is the stream key. - -


- -## How to Replace FFmpeg - -If you are using the Docker version, you can replace the FFmpeg in Cloud SRS with a custom version by specifying the command at startup: - -```bash --v /path/to/ffmpeg:/usr/local/bin/ffmpeg -``` - -You can use the command `which ffmpeg` to find the path of your FFmpeg. - -> Note: Non-Docker versions are not supported. - -


- -## Baota Installation of SRS is Very Slow - -Some users have reported that overseas Baota installations are very slow, and accessing Alibaba Cloud's mirror is too slow. - -This is because Baota cannot be used overseas. Installing other tools with Baota overseas is also very slow because downloading data across countries back to China is naturally very slow. - -The overseas version of Baota is called [aaPanel](https://aapanel.com). Please use aaPanel, which installs software quickly, and Cloud SRS will also switch to overseas mirror downloads. - -Baota and aaPanel only have different installation methods, but the specific usage is the same. Please refer to [Baota](https://ossrs.net/lts/zh-cn/blog/BT-aaPanel) or [aaPanel](https://blog.ossrs.io/how-to-setup-a-video-streaming-service-by-aapanel-9748ae754c8c). - -


- -## How to Install the Latest Cloud SRS on Baota - -Sometimes the version in the Baota store is older, and you can manually install the Baota plugin to install the latest plugin. - -The latest version of Cloud SRS can be found in [Releases](https://github.com/ossrs/srs-cloud/releases), and the `aapanel-srs_cloud.zip` attachment in each version can be downloaded as a plugin. - -After downloading the plugin, you can go to Baota `Software Store > Third-Party Applications > Import Plugin` and upload the downloaded `aapanel-srs_cloud.zip` to install. - -


- -## aaPanel CentOS7 Installation Failure - -> Note: Ubuntu 20 (Focal) is highly recommend, please don't use CentOS. - -Common errors for CentOS7 aaPanel installation failure are: - -* GLIBC version issue: ```version `GLIBC_2.27' not found``` -* Directory not found: ```ln: failed to access '/www/server/nvm/versions/node/v18.12.1/bin/node'``` - -These are all due to problems with nodejs on CentOS7. Generally, after installing pm2, nodejs18 is installed, which depends on a higher version of libc, so it cannot be used. - -Solution: - -* Upgrade to Cloud SRS v4.6.3+ and manually install the latest version. Refer to [How to Install the Latest Cloud SRS on aaPanel](#bt-install-manually) -* Open pm2 and switch to nodejs 16, which can also bypass this problem. - -> Note: Cloud SRS v4.6.3+ no longer requires pm2 to install nodejs. As long as the system has nodejs, it can be used. You can choose to install it with the nodejs manager, or with pm2, or you can install it yourself. - -Finally, if it is still not available after successful installation, you can try restarting the system. - -


- -## How to implement the proposed features and how to record videos - -Welcome everyone to submit questions and new features to Cloud SRS, but please explain the real business. - -Most friends don't know what real business is, and generally describe the implementation plan of the business. However, this plan may not be the most suitable, and there may even be other technical solutions that can achieve this business goal. Therefore, please describe the business instead of describing the technical implementation of the function or plan. - -Please describe the business scenario in detail and try to answer the following questions: - -1. What kind of business are you in? As an ordinary person, how can I use your products and services? Please give a real example. -2. What problems are you solving in your business with SRS? Please give a real example. -3. How is the demand or function you proposed for SRS applied in the business? Please give an example. - -> Note: If it is inconvenient to talk in the group, you can send it to me privately on WeChat. - -The SRS cloud server open-source community works like this: you submit application scenarios, and we will prioritize implementation, using real nails to choose hammers, and welcome everyone to participate~ - -


- -## Unable to achieve the desired effect - -If the expected effect is not achieved, such as high latency or failure to push and pull streams, the following methods can solve all problems: - -``` -Don't change a word, follow the video tutorial and application scenario guidance, mouse operation copy and paste, it will definitely work well! -Don't change a word, follow the video tutorial and application scenario guidance, mouse operation copy and paste, it will definitely work well! -Don't change a word, follow the video tutorial and application scenario guidance, mouse operation copy and paste, it will definitely work well! -``` - -Because the only reason everyone has problems is that they think audio and video are simple and make random changes! - -


- -## The difference between Cloud SRS and SRS - -[SRS](https://github.com/ossrs/srs) is an open-source server, a streaming media server, which generally works with FFmpeg and WebRTC clients to achieve audio and video capabilities. Please see [this diagram](https://github.com/ossrs/srs#srssimple-realtime-server) to understand what SRS is. - -Cloud SRS is an audio and video solution that is based on SRS, Nodejs, REACT, etc. to implement common audio and video scenarios. Please see [this diagram](https://github.com/ossrs/srs-cloud#architecture) to understand what Cloud SRS is. - -After SRS is installed, it opens a streaming media server demo page with links to the player and console; after Cloud SRS is installed, it opens a login management backend that provides guidance for many different scenarios. - -If you need to study the streaming media server in detail, please follow the SRS documentation and join the SRS community, and do not ask in the Cloud SRS group. SRS is an open-source audio and video server, aimed at highly skilled C/C++ programmers, and you can modify it at will, with strong customization capabilities. - -If you want an out-of-the-box audio and video platform that can be used online, please use Cloud SRS and do not ask in the SRS community. The meaning of Cloud SRS is SRS in the cloud. It is a cloud-based service aimed at users who do not need to understand the details of audio and video and can operate according to the tutorial. - -Both are open-source projects, and contributions are welcome. - -


- -## The difference with aaPanel - -aaPanel is a virtual machine management tool, and SRS Cloud Server is an out-of-the-box audio and video solution. aaPanel can also install Cloud SRS, please refer to [supported platforms](#support-platform). - -> Note: The overseas version of Baota is called aaPanel, which also supports Cloud SRS; if your machine is overseas, please do not use Baota, but use aaPanel; everyone uses different installation sources, and using Baota overseas may be very slow or even fail. - -


- -## The difference with Video Cloud - -Video Cloud is a large-scale service scenario, such as cloud live broadcasting, TRTC, IM, cloud on-demand, CDN, Tencent Meeting or ZOOM, which are all super-large-scale systems. - -SRS Cloud Server puts all these systems in a single `Lighthouse/CVM/Droplet/aaPanel` cloud server, so it is mainly comprehensive, but the concurrency and scale are very small, only suitable for small and micro scenarios, quickly building applications to achieve business, understanding and learning new scenarios, and can run and slowly see how to implement. - -Of course, in the future, SRS Cloud Server will also support migration to mature video cloud services, allowing everyone to quickly meet business requirements while also getting scalable support as the business grows. - -


- -## How to reinstall the system - -If you already have a `Lighthouse/CVM/Droplet`, or there is a problem with the image, you can reinstall the image to solve it. Do not log in and mess around by yourself, it will only cause more problems, it is better to choose to reinstall the system directly. - -Take Lighthouse as an example, other platforms operate similarly. First, in the application management, select Reinstall System: - -![](/img/page-2023-03-04-07.png) - -Then, in the image type, select `Application Image`, and then select the corresponding `SRS` image, as shown below: - -![](/img/page-2023-03-04-08.png) - -Finally, click Confirm and OK, and it will be reinstalled very quickly. - -


- -## How to authorize troubleshooting - -How to authorize machine permissions when a problem occurs? It is recommended to use aaPanel: - -1. Panel settings. -2. Security settings. -3. Temporary access authorization management. -4. Create temporary authorization. - -Send the temporary authorization address to the troubleshooting classmates. - -


- -## OpenAPI - -Regarding the open API, using AP to dock with Cloud SRS, you can follow the guide in `System Configuration > OpenAPI`. - -All operations of Cloud SRS are done by calling the API, and these APIs can be seen in the Chrome Network panel for specific requests. - -All operations that can be completed on the Cloud SRS page can be completed through OpenAPI. - -


- -## Features - -Cloud SRS (i.e., SRS Cloud Server) is an open-source solution implemented in nodejs, with the code in [srs-cloud](https://github.com/ossrs/srs-cloud). Everyone is welcome to join. - -SRS Cloud Server is aimed at mouse programming, allowing everyone to do audio and video business. It is suitable for those who do not understand audio and video, those who understand audio and video, those who farm, those who pull network cables, those who cut movies, those who carry cameras, those who dance, those who sing, those who sell second-hand goods, those who exchange open-source projects, those who live on multiple platforms, those who build their own source stations, those who can use computers and have WeChat, and those who are law-abiding citizens. - -For instructions on using Cloud SRS, please refer to the video [SRS Cloud Server: Getting Started, Purchasing, and Introduction](https://www.bilibili.com/video/BV1844y1L7dL/). - -Currently, the scenarios and functions supported by Cloud SRS include: - -* [Cloud SRS: Getting Started, Purchasing, and Introduction](https://mp.weixin.qq.com/s/fWmdkw-2AoFD_pEmE_EIkA): How to purchase and set up the environment, a must-read. -* `Supported` Docking with [aaPanel](https://mp.weixin.qq.com/s/nutc5eJ73aUa4Hc23DbCwQ) or [aaPanel](https://blog.ossrs.io/how-to-setup-a-video-streaming-service-by-aapanel-9748ae754c8c): SRS can be installed with [aaPanel](https://aapanel.com/), supporting all CentOS or Ubuntu machines, and can be installed with aaPanel command line after installing SRS. -* `Supported` [Private Live Room](https://mp.weixin.qq.com/s/AKqVWIdk3SBD-6uiTMliyA): OBS pushes the stream to SRS, and you can watch movies with good friends, private live rooms, exclusive BGP bandwidth, and watch whatever you want. -* `Supported` [Ultra HD Real-Time Live Streaming](https://mp.weixin.qq.com/s/HQb3gLRyJHHu56pnyHerxA): Using SRT low-latency push streaming, you can also do conferences, much clearer than WebRTC, and suitable for other low-latency SRT scenarios. -* `Supported` [Local Recording](https://mp.weixin.qq.com/s/axN_TPo-Gk_H7CbdqUud6g): Record to the local file of the Cloud SRS server and provide HLS download. [#42](https://github.com/ossrs/srs-cloud/issues/42) -* `Supported` [Recording to Cloud Storage](https://mp.weixin.qq.com/s/axN_TPo-Gk_H7CbdqUud6g): Avoid local disk limitations and facilitate subsequent live stream processing, support recording video streams to cloud storage, see details in [#1193](https://github.com/ossrs/srs/issues/1193). -* `Supported` [Recording to Cloud VOD](https://mp.weixin.qq.com/s/axN_TPo-Gk_H7CbdqUud6g): A more advanced capability than cloud recording, cloud storage is unlimited disk, and cloud VOD is a short video system, more convenient and more advanced. -* `Supported` [Multi-Platform Rebroadcast](https://mp.weixin.qq.com/s/FtaeQIJpb7vpmX2eFguLiQ): Push the stream to Cloud SRS and forward it to video platforms such as Weishi, Kuaishou, Bilibili, Douyin, etc., see details in [#2676](https://github.com/ossrs/srs/issues/2676). -* `Supported` Docking with [WordPress](https://mp.weixin.qq.com/s/kOWabmKbYvrmEXG2fPOZxQ): Support [WordPress plugin](https://wordpress.org/plugins/srs-player) and [Typecho plugin](https://github.com/ossrs/Typecho-Plugin-SrsPlayer), insert live stream address in Post. -* `Supported` [DigitalOcean Image](https://mp.weixin.qq.com/s/_GcJm15BGv1qbmHixPQAGQ): Overseas support for DigitalOcean Droplet image, multi-language version in Chinese and English. -* `Supported` [Virtual Live Streaming](https://mp.weixin.qq.com/s/I0Kmxtc24txpngO-PiR_tQ): Server-side OBS, pushing VOD files, images, or streams to live streaming, with simple layout capabilities. -* `In development` [One-click Automatic HTTPS](https://mp.weixin.qq.com/s/O70Fz-mxNedZpxgGXQ8DsA): Upload HTTPS certificate, or one-click automatic application for Let's Encrypt certificate, a basic capability of the WebRTC scenario. -* `In planning` Cloud Camera: Support camera GB access, support cloud platform, cloud recording. -* `In planning` E-commerce Live Room: Live room, text chat capability, with product list and purchase, etc., see details in [#2858](https://github.com/ossrs/srs/issues/2858). -* `In planning` Interactive Live Streaming: Live room, support file chat, send gifts and likes, etc. -* `In planning` Cloud Live Streaming: Docking with cloud live streaming or CDN distribution, support millions of people watching, docking with CDN distribution stream. -* `In planning` One-on-one chat: One-on-one chat on all platforms, see details in [#2857](https://github.com/ossrs/srs/issues/2857). -* `In planning` Video Conference: Multi-person video conference, see details in [#2924](https://github.com/ossrs/srs/issues/2924). -* `In planning` Live Transcoding: Use FFmpeg to transcode live streams into multiple live streams, allowing different devices to watch different bit rates, see details in [#2869](https://github.com/ossrs/srs/issues/2869). -* `In planning` Cloud Director: Cloud OBS, add watermark, LOGO, background music, multi-channel switching to live stream. -* `In planning` Development Environment: Contains the source code of audio and video related tools, such as OBS and WebRTC, development environment, see details in [#2891](https://github.com/ossrs/srs/issues/2891). -* `In planning` AI: Face detection, object recognition, automatic subtitles, etc. -* `In planning` Docking with [Moodle](https://stats.moodle.org/): Support Moodle plugin, open-source online education website. -* `In planning` [Graphical Dashboard](https://mp.weixin.qq.com/s/ub9ZGmntOy_-S11oxFkxvg): Display background data in the form of charts, such as CPU, etc., see details in [Prometheus](https://github.com/ossrs/srs/issues/2899#prometheus). - -Welcome to join the group to discuss the use of Cloud SRS. All these SRS peripheral services are open-source and can be customized and deployed by yourself. - -


- -## Changelog - -The following are the update records for the SRS cloud server. - -* 2023.08.07, v1.0.301, minor improvements - * Always use the latest SRS 5.0 release. - * Use status to check SRS, not by the exit value. -* 2023.08.06, v1.0.300, minor improvements - * Simplify startup script, fix bug, adjust directory to `/data` top-level directory. v1.0.296 - * Improve message prompts, script comments, and log output. v1.0.297 - * Avoid modifying the global directory every time it starts, initialize it in the container and platform script. v1.0.298 - * Improve release script, check version matching, manually update version. v1.0.299 - * Remove upgrade function, maintain consistency of docker and other platforms. v1.0.300 - * Improved BT and aaPanel scripts, added test pipeline. v1.0.300 -* 2023.04.05, v1.0.295, structural improvements - * Remove HTTPS certificate application, administrator authorization, NGINX reverse proxy, and other functions. v1.0.283 - * Implement Release using Go, reducing memory requirements and image size. v1.0.284 - * Remove dashboard and Prometheus, making it easier to support a single Docker image. v1.0.283 - * Implement mgmt and platform using Go, reducing memory requirements and image size. v1.0.283 - * Use Ubuntu focal(20) as the base image, reducing image size. v1.0.283 - * Support fast upgrade, installation in about 40 seconds, upgrade in about 10 seconds. v1.0.283 - * Solve the problem of forwarding without stream. v1.0.284 - * Solve the problem of uploading large files and getting stuck. v1.0.286 - * Remove AI face-changing video, B station review did not pass. v1.0.289 (stable) - * Remove Redis container and start Redis directly in the platform. v1.0.290 - * Remove SRS container and start SRS directly in the platform. v1.0.291 - * Support single container startup, including mgmt in one container. v1.0.292 - * Support mounting to `/data` directory for persistence. v1.0.295 -* 2023.02.01, v1.0.281, experience improvement, Stable version. - * Allow users to turn off automatic updates and use manual updates. - * Adapt to the new version of Bao Ta, solve the nodejs detection problem. - * Bao Ta checks the plug-in status, and cannot operate before the installation is complete. - * Improve the display of forwarding status, add `waiting` status. v1.0.260 - * Improve image update, not strongly dependent on certbot. #47 - * Merge hooks/tencent/ffmpeg image into the platform. v1.0.269 - * Support custom platform for forwarding. v1.0.270 - * Support virtual live broadcast, file-to-live broadcast. v1.0.272 - * Upload file limit 100GB. v1.0.274 - * Fix bug in virtual live broadcast. v1.0.276 - * Release service, replace Nodejs with Go, reduce image size. v1.0.280 - * Do not use buildx to build single-architecture docker images, CentOS will fail. v1.0.281 -* 2022.11.20, v1.0.256, major version update, experience improvement, Release 4.6 - * Proxy root site resources, such as favicon.ico - * Support [SrsPlayer](https://wordpress.org/plugins/srs-player) WebRTC push stream shortcode. - * Support [local recording](https://github.com/ossrs/srs-cloud/issues/42), recording to SRS cloud local disk. - * Support deleting local recording files and tasks. - * Support local recording as MP4 files and downloads. - * Support local recording directory as a soft link, storing recorded content on other disks. - * Improve recording navigation bar, merge into recording. - * Resolve conflicts between home page and proxy root directory. - * Solve the problem of not updating NGINX configuration during upgrade. - * Fix the bug of setting record soft link. - * Replace all images with standard images `ossrs/srs`. - * Support setting website title and footer (filing requirements). - * Prompt administrator password path, can retrieve password when forgotten. - * Allow recovery of the page when an error occurs, no need to refresh the page. -* 2022.06.06, v1.0.240, major version update, Bao Ta, Release 4.5 - * Reduce disk usage, clean up docker images - * Improve dependencies, no longer strongly dependent on Redis and Nginx - * Support [Bao Ta](https://mp.weixin.qq.com/s/nutc5eJ73aUa4Hc23DbCwQ) or [aaPanel](https://blog.ossrs.io/how-to-setup-a-video-streaming-service-by-aapanel-9748ae754c8c) plugin, support CentOS or Ubuntu command line installation - * Migrate ossrs.net to lightweight server, no longer dependent on K8s. - * Login password default changed to display password. - * Stop pushing stream for a certain time, clean up HLS cache files. - * Create a 2GB swap area if memory is less than 2GB. - * Support collecting SRS coredump. - * Live scene display SRT push stream address and command. - * Support setting NGINX root proxy path. -* 2022.04.18, v1.0.222, minor version update, containerized Redis - * Improve instructions, support disabling push stream authentication. - * Support English guidance, [medium](https://blog.ossrs.io) articles. - * Improve simple player, support mute autoplay. - * Add CORS support when NGINX distributes HLS. - * Add English guidance, [Create SRS](https://blog.ossrs.io/how-to-setup-a-video-streaming-service-by-1-click-e9fe6f314ac6) and [Set up HTTPS](https://blog.ossrs.io/how-to-secure-srs-with-lets-encrypt-by-1-click-cb618777639f), [WordPress](https://blog.ossrs.io/publish-your-srs-livestream-through-wordpress-ec18dfae7d6f). - * Enhance key length, strengthen security, and avoid brute force cracking. - * Support WordPress Shortcode guidance. - * Support setting home page redirection path, support mixed running with other websites. - * Support setting reverse proxy, support hanging other services under NGINX. - * Support applying for multiple domain names for HTTPS, solving the `www` prefix domain name problem. - * Change `filing` to `website`, can set home page redirection and footer filing number. - * Improve NGINX configuration file structure, centralize configuration in `containers` directory. - * Support setting simple load balancing, randomly selecting a backend NGINX for HLS distribution. - * Containers work in an independent `srs-cloud` network. - * Add `System > Tools` option. - * Use Redis container, not dependent on host Redis service. -* 2022.04.06, v1.0.200, major version update, multi-language, Release 4.4 - * Support Chinese and English bilingual. - * Support DigitalOcean image, see [SRS Droplet](https://marketplace.digitalocean.com/apps/srs). - * Support OpenAPI to get push stream key, see [#19](https://github.com/ossrs/srs-cloud/pull/19). - * Improve container image update script. - * Support using NGINX to distribute HLS, see [#2989](https://github.com/ossrs/srs/issues/2989#nginx-direclty-serve-hls). - * Improve VoD storage and service detection. - * Improve installation script. -* 2022.03.18, v1.0.191, minor version update, experience improvement - * Scenes default to display tutorial. - * Support SRT address separation, play without secret. - * Separate Platform module, simplify mgmt logic. - * Improve UTest upgrade test script. - * Support changing stream name, randomly generating stream name. - * Support copying stream name, configuration, address, etc. - * Separate upgrade and UI, simplify mgmt logic. - * Separate container management and upgrade. - * Fast and efficient upgrade, completed within 30 seconds. - * Support CVM image, see [SRS CVM](https://mp.weixin.qq.com/s/x-PjoKjJj6HRF-eCKX0KzQ). -* 2022.03.16, v1.0.162, major version update, error handling, Release 4.3 - * Support React Error Boundary, friendly error display. - * Support RTMP push stream QR code, Xinxiang guidance +> Note: This is FAQ for SRS Stack, please see [SRS FAQ](/faq) for SRS FAQ. +Migrated to [SRS Stack FAQ](./faq-srs-stack). ![](https://ossrs.net/gif/v1/sls.gif?site=ossrs.io&path=/lts/pages/faq-srs-cloud-en) diff --git a/src/pages/faq-srs-stack.md b/src/pages/faq-srs-stack.md new file mode 100644 index 00000000..7c42a2b0 --- /dev/null +++ b/src/pages/faq-srs-stack.md @@ -0,0 +1,705 @@ +# FAQ + +> Note: This is FAQ for SRS Stack, please see [SRS FAQ](/faq) for SRS FAQ. + +Quick Content + +* [Video Guides](#video-guides): Video tutorials. +* [Getting Started](#getting-started): How to use, start, and get started with SRS Stack Server. +* [How to Upgrade](#how-to-upgrade): How to upgrade to the latest or stable version, and why the interface click upgrade is not supported. +* [How to set a domain](#how-to-set-domain): How to set up a domain to access the admin panel, why can't the admin panel be opened, and why can't the admin panel be accessed via IP. +* [Supported Platforms](#support-platform): Supported platforms, supported images, want to use the server or command line installation directly, or aaPanel installation. +* [How to push multiple streams](#multiple-streams): Want to push multiple streams, want to change the default stream name and stream address. +* [Low bandwidth, increase bandwidth](#bandwidth): Insufficient bandwidth, want to increase bandwidth, use Cloud SRS in CVM. +* [How to set up free HTTPS](#https): How to apply for a free HTTPS certificate, how to apply for certificates for multiple domain names. +* [How to modify the push authentication key](#update-publish-secret): Update the push authentication key, replace the push key. +* [How to disable push authentication](#no-publish-auth): Don't want push authentication, the device does not support special characters. +* [How to record to local disk](#record): How to record to the local disk of Cloud SRS. +* [Difference between cloud recording and cloud on-demand](#cos-vs-vod): Whether to use cloud recording or cloud on-demand, and what are the differences. +* [How to record to cloud storage](#dvr-cloud-storage): Record to COS, OSS, or S3, etc. cloud storage. +* [Unavailable after installation](#unavailable): Error prompt after installation, or Redis not ready. +* [Difference between SRS re-streaming and OBS re-streaming](#restream-vs-obs): The difference between SRS multi-platform re-streaming and OBS re-streaming plugin. +* [How SRS re-streams to custom platforms](#restream-custom): How SRS multi-platform re-streaming pushes to custom live platforms. +* [How to replace FFmpeg](#use-custom-ffmpeg): How to replace the FFmpeg in Cloud SRS with a custom version. +* [aaPanel installation of SRS is very slow](#install-speedup): Overseas aaPanel installation is very slow, access to Alibaba Cloud image is too slow. +* [How to install the latest Cloud SRS in aaPanel](#bt-install-manually): Manually install aaPanel plugin, install the latest plugin. +* [aaPanel CentOS7 installation failed](#bt-centos7-error): CentOS7 aaPanel installation failed, cannot find the directory, or GLIBC version problem. +* [How to purchase AI face-swapping service](#how-to-buy-ai): How to implement AI face-swapping? How to buy models? Who to buy from? +* [How to implement the requirements or features](#rules): Want to implement more features, want to customize, want to optimize and improve. +* [Unable to achieve the desired effect](#can-not-replay): Encounter problems, cannot achieve the desired effect. +* [Difference between Cloud SRS and SRS](#diff-srs): The difference between Cloud SRS and SRS, why there is Cloud SRS. +* [Difference with aaPanel](#diff-baota): Difference with virtual machine management software aaPanel. +* [Difference with Video Cloud](#diff-vcloud): Difference with general video cloud services. +* [How to reinstall the system](#reinstall): For friends who already have Lighthouse or CVM. +* [How to authorize troubleshooting](#auth-bt): How to authorize machine permissions when encountering problems. +* [Cost Optimization](#cost-opt): About cost and cost optimization. +* [OpenAPI](#openapi): About open API, using API to get related information. +* [Feature List](#features): About the list of supported features. +* [Version Planning](#changelog): About versions and milestones. + +You can also search for keywords on the page. + +


+ +## Video Guides + +The following are video materials for answering questions, which explain a certain topic in detail. If your question is similar, please watch the video directly: + +* [How to Do Virtual Live Streaming by SRS Stack](https://youtu.be/68PIGFDGihU) + +


+ +## How to get started + +Please purchase and set up [SRS Stack Server](https://cloud.digitalocean.com/droplets/new?appId=133468816&size=s-1vcpu-512mb-10gb®ion=sgp1&image=ossrs-srs&type=applications) first. + +After entering the SRS Stack Server, there will be corresponding video tutorials according to different application scenarios, as shown in the following figure: + +![](/img/page-2023-03-04-01.png) + +Each scenario also has a complete introduction and detailed operation steps, as shown in the following figure: + +![](/img/page-2023-03-04-02.png) + +Please do not try randomly, be sure to follow the guide, audio and video random testing will definitely cause problems. + +


+ +## How to upgrade + +How to upgrade to the latest version or stable version, and why not support click upgrade on the interface? + +Since Cloud SRS supports multiple platforms, including Docker, and Docker cannot upgrade itself, Cloud SRS also does not support interface upgrades and needs to be upgraded manually. + +The Docker startup specifies the version, such as `ossrs/srs-stack:v1.0.293`, and you only need to delete the container and start with the new version, such as `ossrs/srs-stack:v1.0.299`. + +If you use `ossrs/srs-stack:1`, it is the latest version, and you need to update manually, such as `docker pull ossrs/srs-stack:1`. + +If you use BT panel, just delete the application and reinstall the new version, the data is saved in the `/data` directory and will not be lost. + +


+ +## How to set a domain + +How to set up a domain to access the admin panel, why can't the admin panel be opened, and why can't the admin panel be accessed via IP. + +Please replace the following domain names and IPs with your own domain names and IPs, which can be either private or public IPs, as long as your browser can access them. + +When installing Cloud SRS with aaPanel, you need to enter the domain name of the management backend, such as `bt.yourdomain.com`, and it will automatically create the management backend website. + +If you install it in other ways, it's the same. You just need to resolve your domain name to the Cloud SRS IP. + +There are several ways to set up domain name resolution: + +1. DNS domain name resolution: In the backend of your domain name provider, set an A record pointing to the Cloud SRS IP. +```text +A bt.yourdomain.com 121.13.75.20 +``` +2. Modify the local `/etc/hosts` file in Linux/Unix to resolve the domain name to the Cloud SRS IP. +```text +121.13.75.20 bt.yourdomain.com +``` +3. Modify the local `C:\Windows\System32\drivers\etc` file in Windows to resolve the domain name to the Cloud SRS IP. +```text +121.13.75.20 bt.yourdomain.com +``` + +Note: If you need to apply for a free HTTPS certificate through Let's Encrypt, the IP address must be a public IP, and you cannot use the method of modifying the hosts file. + +


+ +## Supported platforms + +Cloud SRS supports Docker, install script, DigitalOcean images, and other platforms can be installed with aaPanel. + +Cloud SRS is, of course, supported on various cloud platforms. The most convenient way is to use images, which are images of cloud servers. If you want to keep it simple and save trouble, please use images. Other methods are prone to problems. Please do not overestimate your ability to tinker. Most people really belong to the 80% who can't tinker. It is strongly recommended to use images: + +* [Run by docker image](https://github.com/ossrs/srs-stack#usage) +* DigitalOcean: Overseas lightweight cloud server image, use reference [here](https://mp.weixin.qq.com/s/_GcJm15BGv1qbmHixPQAGQ) + +If you don't want to use virtual machine images and want to install directly on a server or command line, or install with aaPanel, that's no problem: + +* aaPanel: If your machine is overseas, be sure to use aaPanel instead of BT panel, use reference [here](https://blog.ossrs.io/how-to-setup-a-video-streaming-service-by-aapanel-9748ae754c8c) + +> Note: If you want to install Cloud SRS from the command line, you can first install BT panel from the command line, and then install Cloud SRS. + +


+ +## How to push multiple streams + +By default, there is only one push stream address. What if you want to push multiple streams? How to change the stream address? + +You can change the stream name, for example, the default push stream address is: + +* `rtmp://1.2.3.4/live/livestream?secret=xxx` + +You can modify `livestream` to any other name, and then push directly: + +* rtmp://1.2.3.4/live/`any`?secret=xxx +* rtmp://1.2.3.4/live/`stream`?secret=xxx +* rtmp://1.2.3.4/live/`you`?secret=xxx +* rtmp://1.2.3.4/live/`want`?secret=xxx + +As shown in the figure below, you can click the update button to automatically change the push stream and playback name: + +![](/img/page-2023-03-04-03.png) + +> Note: Of course, the playback must also be changed to the corresponding stream name. + +


+ +## Low bandwidth, increase bandwidth + +The bandwidth of lightweight application servers ranges from 4 to 20Mbps, which is somewhat limited for audio and video. If you want higher bandwidth, such as 100Mbps, you can choose CVM or AWS VPS. + +> Note: The usage of Cloud SRS is consistent, but the purchase and platform configuration are different. + +The advantages of CVM cloud servers are: + +* The bandwidth can be up to 100Mbps, and multiple platforms can be used to forward to other CVM servers. Ten CVMs can achieve 1Gbps bandwidth, but of course, you have to consider your budget. +* Pay-as-you-go, you can stop the machine at any time without charge, and use it again when needed. It is more friendly for low-frequency application scenarios. + +The disadvantages of CVM cloud servers are: + +* High cost, no free traffic package. Lightweight servers have low cost, and the free traffic package is basically enough for general live streaming. So please calculate the cost yourself. +* Complex operation, CVM's security group is much more complicated than the lightweight firewall operation. Please try it yourself. If it doesn't work, switch to lightweight. +* No background link, the interface is more complex. If it doesn't work, switch to lightweight. + +If you still want to choose CVM after knowing the advantages and disadvantages, please refer to [Cloud SRS: Support CVM image](https://mp.weixin.qq.com/s/x-PjoKjJj6HRF-eCKX0KzQ). + +


+ +## How to set up free HTTPS + +Cloud SRS supports applying for free HTTPS certificates, and you can apply for certificates for multiple domain names and automatically renew them. For example, the certificates for the following HTTPS websites are all automatically applied after running Cloud SRS: + +* https://ossrs.io SRS's overseas documentation website. +* https://www.ossrs.io SRS's overseas documentation website. +* https://r.ossrs.net SRS's stable version demo server. + +The operation is very simple, just follow these three steps, please see [here](https://ossrs.net/lts/blog/2022/04/12/SRS-Cloud-HTTPS): + +1. Purchase a domain name and complete the filing. You must have your own legal domain name, otherwise, you cannot apply for a certificate. +2. Resolve the domain name to the public IP of Cloud SRS. You can add multiple domain names to resolve, for example, `ossrs.io` and `www.ossrs.io` are both resolved to the same Cloud SRS server. +3. In Cloud SRS's `System Settings > HTTPS > Automatic HTTPS Certificate`, fill in your domain name, separate multiple domain names with semicolons, and click Apply. + +> Note: Just apply for the domain name, do not upload it again. Once applied, you don't need to upload it again. + +> Note: Please use aaPanel to apply, the operation steps are similar to the above. Cloud SRS will no longer support certificate application, because certbot does not support multi-platform docker images, and there will be problems when using it on other platforms. + +After the application is successful, enter https plus your domain name in the browser, and you can access your website. + +


+ +## How to modify the push authentication key + +If you need to update the push authentication key or change the push key, you can follow these steps: + +1. Enter the `System Settings` panel. +2. Select the `Stream Authentication` tab. +3. Enter the new stream key. +4. Click the `Update` button. +5. Refresh the pages of each scene, and the push key will be automatically updated. + +As shown in the picture below: + +![](/img/page-2023-03-04-04.png) + +If you need to disable push authentication, please refer to the instructions below. + +


+ +## How to disable push authentication + +In the scene page, the standard push format is with `?secret=xxx` authentication, such as `rtmp://ip/live/livestream?secret=xxx` + +It is found that some cameras do not support the `?secret=xxx` format, so the address is not supported. + +In this case, you can actually put the key `xxx` directly in the stream name, such as: `rtmp://ip/live/livestreamsecretxxx`, and there will be no problem. + +Of course, if you only need to push one stream, you can directly use the key as the stream name, such as: `rtmp://ip/live/xxx`. + +> Note: Of course, the playback must also be changed to the same stream name, and the key must be included, because the key is placed in the stream name here, so the playback must also be changed. + +This way, there is security, and it can support devices that do not support special characters. In addition, the push key can be changed, so you can change it to the way you want. + +


+ +## How to record to local disk + +How to record to the local disk of Cloud SRS? After upgrading to v1.0.252, you can see local recording in the recording. + +For the limitations and solutions of local recording, please refer to #42 + +


+ +## Difference between cloud recording and cloud on-demand + +Cloud SRS provides two similar functions, cloud recording and cloud on-demand. What is the difference between using cloud recording or cloud on-demand for recording? + +Cloud recording can be considered as writing live streaming to the cloud disk, saving it in HLS format, which is the original video stream. If you want to download HLS for transcoding and editing, it would be more suitable. Cloud recording is stored in Tencent Cloud COS cloud storage, which can be considered as an unlimited disk, avoiding overwriting the disk of Cloud SRS. + +Cloud on-demand provides both HLS and MP4 formats, and more features will be added in the future, such as outputting multiple bit rates, adding logos and watermarks, media asset management, and many other useful features. Cloud on-demand is a video-on-demand system, not just a storage disk. It can be considered as a Bilibili or YouTube. If you want to do more diverse businesses, you must choose cloud on-demand. + +In terms of cost, cloud on-demand will be slightly higher than cloud recording, depending on which features are used. Currently, Cloud SRS uses HLS to MP4 conversion, which is very low in cost because there is no transcoding. In the future, if you want to use advanced features, the cost will be higher. Overall, the cost of cloud on-demand is very low, similar to cloud recording. If there is no additional computing cost, it will be the same as cloud recording. + +In short, it is recommended to use cloud on-demand, which is easy to use and not expensive. + +


+ +## How to record to cloud storage + +Cloud SRS supports recording to COS, Tencent Cloud Storage. Please refer to [Usage: Cloud Storage](https://mp.weixin.qq.com/s/axN_TPo-Gk_H7CbdqUud6g). + +Cloud SRS can also record to other cloud storage, such as Alibaba Cloud OSS or AWS S3. According to the guidance of cloud storage, mount the cloud storage to Cloud SRS, and then use local recording, configure the local storage path, so that you can write files to cloud storage. + +> Note: To modify the local recording path, you can go to `Local Recording/Recording Folder`, and soft link the recording path to the cloud storage path. + +


+ +## Unable to access after installation + +After installation, an error is prompted, such as: + +![](/img/page-2023-03-04-05.png) + +Or Redis is not ready, such as: + +![](/img/page-2023-03-04-06.png) + +This is because it takes time for Cloud SRS to start after installation. Refresh the page after waiting for 3 to 5 minutes. + +


+ +## Difference between SRS Restream and OBS Restream + +SRS's multi-platform restreaming can push the stream to multiple platforms, and its working diagram is as follows: + +``` +OBS/FFmpeg --RTMP--> Cloud SRS --RTMP--> Video number, Bilibili, Kuaishou, and other live streaming platforms +``` + +In fact, OBS also has a restreaming plugin, and its working diagram is as follows: + +``` +OBS --RTMP--> Video number, Bilibili, Kuaishou, and other live streaming platforms +``` + +It seems that OBS's link is shorter and simpler, and it doesn't need to go through Cloud SRS or pay money. So why does Cloud SRS still need to do restreaming, and what are the drawbacks of OBS's solution? + +The advantage of OBS restreaming is that it doesn't cost money and can be restreamed directly. The disadvantage is that its uplink/upload bandwidth is doubled. For example, a 2Mbps stream, if restreamed to 3 platforms, will be 6Mbps. If more video numbers need to be pushed, it will be even more, such as pushing to 10 platforms, which will be 20Mbps. + +Higher bandwidth will cause all push streams to stutter or interrupt, making it impossible for all viewers to watch the live broadcast, resulting in a live broadcast accident. As long as there is a rollover once, most of the people in the live broadcast room will run away, which is a very serious accident. + +Basically, 80% of live broadcast rollovers are caused by problems with the anchor's push stream. Because the problems of cloud platforms and viewer viewing have been almost solved, the only unsolvable problem is the anchor's push stream. + +If you have a dedicated fiber-optic line at home, such as buying a 100Mbps dedicated line, there will be no problem. The problem is that a 100Mbps dedicated line is very expensive, and even if it is temporarily free, there will be a day when it will be charged because a dedicated line is a dedicated resource and cannot be free forever. It's like someone giving you gold bars for free, how long can it be free? + +Cloud SRS also has doubled bandwidth, but it is the downstream bandwidth that is doubled because it has done a conversion, and essentially other platforms are downloading the stream from Cloud SRS. Downstream/download bandwidth is generally more guaranteed. Moreover, between Cloud SRS and the platform, they are all BGP bandwidth between servers, which is more guaranteed in quality than the home-to-platform connection. + +


+ +## How SRS Restreams to Custom Platforms + +SRS's multi-platform restreaming can push to custom live streaming platforms, such as pushing to the video number's push stream address and stream key, and can also fill in any other live streaming platform. + +> Note: The reason why Cloud SRS is divided into video numbers and platforms like Bilibili is to provide better guidance. The RTMP address format of these platforms is similar, so you can fill in any platform, and Cloud SRS will not verify the specific platform. + +If the RTMP address of the live streaming platform is a single address, such as: + +``` +rtmp://ip/app/stream +``` + +Then, you can split it into: + +* Push stream address: `rtmp://ip/app` +* Stream key: `stream` + +> Note: The part after the last slash is the stream key. + +


+ +## How to Replace FFmpeg + +If you are using the Docker version, you can replace the FFmpeg in Cloud SRS with a custom version by specifying the command at startup: + +```bash +-v /path/to/ffmpeg:/usr/local/bin/ffmpeg +``` + +You can use the command `which ffmpeg` to find the path of your FFmpeg. + +> Note: Non-Docker versions are not supported. + +


+ +## Baota Installation of SRS is Very Slow + +Some users have reported that overseas Baota installations are very slow, and accessing Alibaba Cloud's mirror is too slow. + +This is because Baota cannot be used overseas. Installing other tools with Baota overseas is also very slow because downloading data across countries back to China is naturally very slow. + +The overseas version of Baota is called [aaPanel](https://aapanel.com). Please use aaPanel, which installs software quickly, and Cloud SRS will also switch to overseas mirror downloads. + +Baota and aaPanel only have different installation methods, but the specific usage is the same. Please refer to [Baota](https://ossrs.net/lts/zh-cn/blog/BT-aaPanel) or [aaPanel](https://blog.ossrs.io/how-to-setup-a-video-streaming-service-by-aapanel-9748ae754c8c). + +


+ +## How to Install the Latest Cloud SRS on Baota + +Sometimes the version in the Baota store is older, and you can manually install the Baota plugin to install the latest plugin. + +The latest version of Cloud SRS can be found in [Releases](https://github.com/ossrs/srs-stack/releases), and the `aapanel-srs_cloud.zip` attachment in each version can be downloaded as a plugin. + +After downloading the plugin, you can go to Baota `Software Store > Third-Party Applications > Import Plugin` and upload the downloaded `aapanel-srs_cloud.zip` to install. + +


+ +## aaPanel CentOS7 Installation Failure + +> Note: Ubuntu 20 (Focal) is highly recommend, please don't use CentOS. + +Common errors for CentOS7 aaPanel installation failure are: + +* GLIBC version issue: ```version `GLIBC_2.27' not found``` +* Directory not found: ```ln: failed to access '/www/server/nvm/versions/node/v18.12.1/bin/node'``` + +These are all due to problems with nodejs on CentOS7. Generally, after installing pm2, nodejs18 is installed, which depends on a higher version of libc, so it cannot be used. + +Solution: + +* Upgrade to Cloud SRS v4.6.3+ and manually install the latest version. Refer to [How to Install the Latest Cloud SRS on aaPanel](#bt-install-manually) +* Open pm2 and switch to nodejs 16, which can also bypass this problem. + +> Note: Cloud SRS v4.6.3+ no longer requires pm2 to install nodejs. As long as the system has nodejs, it can be used. You can choose to install it with the nodejs manager, or with pm2, or you can install it yourself. + +Finally, if it is still not available after successful installation, you can try restarting the system. + +


+ +## How to implement the proposed features and how to record videos + +Welcome everyone to submit questions and new features to Cloud SRS, but please explain the real business. + +Most friends don't know what real business is, and generally describe the implementation plan of the business. However, this plan may not be the most suitable, and there may even be other technical solutions that can achieve this business goal. Therefore, please describe the business instead of describing the technical implementation of the function or plan. + +Please describe the business scenario in detail and try to answer the following questions: + +1. What kind of business are you in? As an ordinary person, how can I use your products and services? Please give a real example. +2. What problems are you solving in your business with SRS? Please give a real example. +3. How is the demand or function you proposed for SRS applied in the business? Please give an example. + +> Note: If it is inconvenient to talk in the group, you can send it to me privately on WeChat. + +The SRS Stack server open-source community works like this: you submit application scenarios, and we will prioritize implementation, using real nails to choose hammers, and welcome everyone to participate~ + +


+ +## Unable to achieve the desired effect + +If the expected effect is not achieved, such as high latency or failure to push and pull streams, the following methods can solve all problems: + +``` +Don't change a word, follow the video tutorial and application scenario guidance, mouse operation copy and paste, it will definitely work well! +Don't change a word, follow the video tutorial and application scenario guidance, mouse operation copy and paste, it will definitely work well! +Don't change a word, follow the video tutorial and application scenario guidance, mouse operation copy and paste, it will definitely work well! +``` + +Because the only reason everyone has problems is that they think audio and video are simple and make random changes! + +


+ +## The difference between Cloud SRS and SRS + +[SRS](https://github.com/ossrs/srs) is an open-source server, a streaming media server, which generally works with FFmpeg and WebRTC clients to achieve audio and video capabilities. Please see [this diagram](https://github.com/ossrs/srs#srssimple-realtime-server) to understand what SRS is. + +Cloud SRS is an audio and video solution that is based on SRS, Nodejs, REACT, etc. to implement common audio and video scenarios. Please see [this diagram](https://github.com/ossrs/srs-stack#architecture) to understand what Cloud SRS is. + +After SRS is installed, it opens a streaming media server demo page with links to the player and console; after Cloud SRS is installed, it opens a login management backend that provides guidance for many different scenarios. + +If you need to study the streaming media server in detail, please follow the SRS documentation and join the SRS community, and do not ask in the Cloud SRS group. SRS is an open-source audio and video server, aimed at highly skilled C/C++ programmers, and you can modify it at will, with strong customization capabilities. + +If you want an out-of-the-box audio and video platform that can be used online, please use Cloud SRS and do not ask in the SRS community. The meaning of Cloud SRS is SRS in the cloud. It is a cloud-based service aimed at users who do not need to understand the details of audio and video and can operate according to the tutorial. + +Both are open-source projects, and contributions are welcome. + +


+ +## The difference with aaPanel + +aaPanel is a virtual machine management tool, and SRS Stack Server is an out-of-the-box audio and video solution. aaPanel can also install Cloud SRS, please refer to [supported platforms](#support-platform). + +> Note: The overseas version of Baota is called aaPanel, which also supports Cloud SRS; if your machine is overseas, please do not use Baota, but use aaPanel; everyone uses different installation sources, and using Baota overseas may be very slow or even fail. + +


+ +## The difference with Video Cloud + +Video Cloud is a large-scale service scenario, such as cloud live broadcasting, TRTC, IM, cloud on-demand, CDN, Tencent Meeting or ZOOM, which are all super-large-scale systems. + +SRS Stack Server puts all these systems in a single `Lighthouse/CVM/Droplet/aaPanel` cloud server, so it is mainly comprehensive, but the concurrency and scale are very small, only suitable for small and micro scenarios, quickly building applications to achieve business, understanding and learning new scenarios, and can run and slowly see how to implement. + +Of course, in the future, SRS Stack Server will also support migration to mature video cloud services, allowing everyone to quickly meet business requirements while also getting scalable support as the business grows. + +


+ +## How to reinstall the system + +If you already have a `Lighthouse/CVM/Droplet`, or there is a problem with the image, you can reinstall the image to solve it. Do not log in and mess around by yourself, it will only cause more problems, it is better to choose to reinstall the system directly. + +Take Lighthouse as an example, other platforms operate similarly. First, in the application management, select Reinstall System: + +![](/img/page-2023-03-04-07.png) + +Then, in the image type, select `Application Image`, and then select the corresponding `SRS` image, as shown below: + +![](/img/page-2023-03-04-08.png) + +Finally, click Confirm and OK, and it will be reinstalled very quickly. + +


+ +## How to authorize troubleshooting + +How to authorize machine permissions when a problem occurs? It is recommended to use aaPanel: + +1. Panel settings. +2. Security settings. +3. Temporary access authorization management. +4. Create temporary authorization. + +Send the temporary authorization address to the troubleshooting classmates. + +


+ +## OpenAPI + +Regarding the open API, using AP to dock with Cloud SRS, you can follow the guide in `System Configuration > OpenAPI`. + +All operations of Cloud SRS are done by calling the API, and these APIs can be seen in the Chrome Network panel for specific requests. + +All operations that can be completed on the Cloud SRS page can be completed through OpenAPI. + +


+ +## Features + +Cloud SRS (i.e., SRS Stack Server) is an open-source solution implemented in nodejs, with the code in [srs-cloud](https://github.com/ossrs/srs-stack). Everyone is welcome to join. + +SRS Stack Server is aimed at mouse programming, allowing everyone to do audio and video business. It is suitable for those who do not understand audio and video, those who understand audio and video, those who farm, those who pull network cables, those who cut movies, those who carry cameras, those who dance, those who sing, those who sell second-hand goods, those who exchange open-source projects, those who live on multiple platforms, those who build their own source stations, those who can use computers and have WeChat, and those who are law-abiding citizens. + +For instructions on using Cloud SRS, please refer to the video [SRS Stack Server: Getting Started, Purchasing, and Introduction](https://www.bilibili.com/video/BV1844y1L7dL/). + +Currently, the scenarios and functions supported by Cloud SRS include: + +* [Cloud SRS: Getting Started, Purchasing, and Introduction](https://mp.weixin.qq.com/s/fWmdkw-2AoFD_pEmE_EIkA): How to purchase and set up the environment, a must-read. +* `Supported` Docking with [aaPanel](https://mp.weixin.qq.com/s/nutc5eJ73aUa4Hc23DbCwQ) or [aaPanel](https://blog.ossrs.io/how-to-setup-a-video-streaming-service-by-aapanel-9748ae754c8c): SRS can be installed with [aaPanel](https://aapanel.com/), supporting all CentOS or Ubuntu machines, and can be installed with aaPanel command line after installing SRS. +* `Supported` [Private Live Room](https://mp.weixin.qq.com/s/AKqVWIdk3SBD-6uiTMliyA): OBS pushes the stream to SRS, and you can watch movies with good friends, private live rooms, exclusive BGP bandwidth, and watch whatever you want. +* `Supported` [Ultra HD Real-Time Live Streaming](https://mp.weixin.qq.com/s/HQb3gLRyJHHu56pnyHerxA): Using SRT low-latency push streaming, you can also do conferences, much clearer than WebRTC, and suitable for other low-latency SRT scenarios. +* `Supported` [Local Recording](https://mp.weixin.qq.com/s/axN_TPo-Gk_H7CbdqUud6g): Record to the local file of the Cloud SRS server and provide HLS download. [#42](https://github.com/ossrs/srs-stack/issues/42) +* `Supported` [Recording to Cloud Storage](https://mp.weixin.qq.com/s/axN_TPo-Gk_H7CbdqUud6g): Avoid local disk limitations and facilitate subsequent live stream processing, support recording video streams to cloud storage, see details in [#1193](https://github.com/ossrs/srs/issues/1193). +* `Supported` [Recording to Cloud VOD](https://mp.weixin.qq.com/s/axN_TPo-Gk_H7CbdqUud6g): A more advanced capability than cloud recording, cloud storage is unlimited disk, and cloud VOD is a short video system, more convenient and more advanced. +* `Supported` [Multi-Platform Rebroadcast](https://mp.weixin.qq.com/s/FtaeQIJpb7vpmX2eFguLiQ): Push the stream to Cloud SRS and forward it to video platforms such as Weishi, Kuaishou, Bilibili, Douyin, etc., see details in [#2676](https://github.com/ossrs/srs/issues/2676). +* `Supported` Docking with [WordPress](https://mp.weixin.qq.com/s/kOWabmKbYvrmEXG2fPOZxQ): Support [WordPress plugin](https://wordpress.org/plugins/srs-player) and [Typecho plugin](https://github.com/ossrs/Typecho-Plugin-SrsPlayer), insert live stream address in Post. +* `Supported` [DigitalOcean Image](https://mp.weixin.qq.com/s/_GcJm15BGv1qbmHixPQAGQ): Overseas support for DigitalOcean Droplet image, multi-language version in Chinese and English. +* `Supported` [Virtual Live Streaming](https://mp.weixin.qq.com/s/I0Kmxtc24txpngO-PiR_tQ): Server-side OBS, pushing VOD files, images, or streams to live streaming, with simple layout capabilities. +* `In development` [One-click Automatic HTTPS](https://mp.weixin.qq.com/s/O70Fz-mxNedZpxgGXQ8DsA): Upload HTTPS certificate, or one-click automatic application for Let's Encrypt certificate, a basic capability of the WebRTC scenario. +* `In planning` Cloud Camera: Support camera GB access, support cloud platform, cloud recording. +* `In planning` E-commerce Live Room: Live room, text chat capability, with product list and purchase, etc., see details in [#2858](https://github.com/ossrs/srs/issues/2858). +* `In planning` Interactive Live Streaming: Live room, support file chat, send gifts and likes, etc. +* `In planning` Cloud Live Streaming: Docking with cloud live streaming or CDN distribution, support millions of people watching, docking with CDN distribution stream. +* `In planning` One-on-one chat: One-on-one chat on all platforms, see details in [#2857](https://github.com/ossrs/srs/issues/2857). +* `In planning` Video Conference: Multi-person video conference, see details in [#2924](https://github.com/ossrs/srs/issues/2924). +* `In planning` Live Transcoding: Use FFmpeg to transcode live streams into multiple live streams, allowing different devices to watch different bit rates, see details in [#2869](https://github.com/ossrs/srs/issues/2869). +* `In planning` Cloud Director: Cloud OBS, add watermark, LOGO, background music, multi-channel switching to live stream. +* `In planning` Development Environment: Contains the source code of audio and video related tools, such as OBS and WebRTC, development environment, see details in [#2891](https://github.com/ossrs/srs/issues/2891). +* `In planning` AI: Face detection, object recognition, automatic subtitles, etc. +* `In planning` Docking with [Moodle](https://stats.moodle.org/): Support Moodle plugin, open-source online education website. +* `In planning` [Graphical Dashboard](https://mp.weixin.qq.com/s/ub9ZGmntOy_-S11oxFkxvg): Display background data in the form of charts, such as CPU, etc., see details in [Prometheus](https://github.com/ossrs/srs/issues/2899#prometheus). + +Welcome to join the group to discuss the use of Cloud SRS. All these SRS peripheral services are open-source and can be customized and deployed by yourself. + +


+ +## Changelog + +The following are the update records for the SRS Stack server. + +* 2023.08.07, v1.0.303, minor improvements + * Always use the latest SRS 5.0 release. v1.0.301 + * Use status to check SRS, not by the exit value. v1.0.301 + * Refine DigitalOcean droplet image. v1.0.302 + * Support local test all script. v1.0.302 + * Rewrite script for lighthouse. v1.0.303 + * Set nginx max body to 100GB. v1.0.303 + * Use LEGO instead of certbot. v1.0.304 +* 2023.08.06, v1.0.300, minor improvements + * Simplify startup script, fix bug, adjust directory to `/data` top-level directory. v1.0.296 + * Improve message prompts, script comments, and log output. v1.0.297 + * Avoid modifying the global directory every time it starts, initialize it in the container and platform script. v1.0.298 + * Improve release script, check version matching, manually update version. v1.0.299 + * Remove upgrade function, maintain consistency of docker and other platforms. v1.0.300 + * Improved BT and aaPanel scripts, added test pipeline. v1.0.300 +* 2023.04.05, v1.0.295, structural improvements + * Remove HTTPS certificate application, administrator authorization, NGINX reverse proxy, and other functions. v1.0.283 + * Implement Release using Go, reducing memory requirements and image size. v1.0.284 + * Remove dashboard and Prometheus, making it easier to support a single Docker image. v1.0.283 + * Implement mgmt and platform using Go, reducing memory requirements and image size. v1.0.283 + * Use Ubuntu focal(20) as the base image, reducing image size. v1.0.283 + * Support fast upgrade, installation in about 40 seconds, upgrade in about 10 seconds. v1.0.283 + * Solve the problem of forwarding without stream. v1.0.284 + * Solve the problem of uploading large files and getting stuck. v1.0.286 + * Remove AI face-changing video, B station review did not pass. v1.0.289 (stable) + * Remove Redis container and start Redis directly in the platform. v1.0.290 + * Remove SRS container and start SRS directly in the platform. v1.0.291 + * Support single container startup, including mgmt in one container. v1.0.292 + * Support mounting to `/data` directory for persistence. v1.0.295 +* 2023.02.01, v1.0.281, experience improvement, Stable version. + * Allow users to turn off automatic updates and use manual updates. + * Adapt to the new version of Bao Ta, solve the nodejs detection problem. + * Bao Ta checks the plug-in status, and cannot operate before the installation is complete. + * Improve the display of forwarding status, add `waiting` status. v1.0.260 + * Improve image update, not strongly dependent on certbot. #47 + * Merge hooks/tencent/ffmpeg image into the platform. v1.0.269 + * Support custom platform for forwarding. v1.0.270 + * Support virtual live broadcast, file-to-live broadcast. v1.0.272 + * Upload file limit 100GB. v1.0.274 + * Fix bug in virtual live broadcast. v1.0.276 + * Release service, replace Nodejs with Go, reduce image size. v1.0.280 + * Do not use buildx to build single-architecture docker images, CentOS will fail. v1.0.281 +* 2022.11.20, v1.0.256, major version update, experience improvement, Release 4.6 + * Proxy root site resources, such as favicon.ico + * Support [SrsPlayer](https://wordpress.org/plugins/srs-player) WebRTC push stream shortcode. + * Support [local recording](https://github.com/ossrs/srs-stack/issues/42), recording to SRS Stack local disk. + * Support deleting local recording files and tasks. + * Support local recording as MP4 files and downloads. + * Support local recording directory as a soft link, storing recorded content on other disks. + * Improve recording navigation bar, merge into recording. + * Resolve conflicts between home page and proxy root directory. + * Solve the problem of not updating NGINX configuration during upgrade. + * Fix the bug of setting record soft link. + * Replace all images with standard images `ossrs/srs`. + * Support setting website title and footer (filing requirements). + * Prompt administrator password path, can retrieve password when forgotten. + * Allow recovery of the page when an error occurs, no need to refresh the page. +* 2022.06.06, v1.0.240, major version update, Bao Ta, Release 4.5 + * Reduce disk usage, clean up docker images + * Improve dependencies, no longer strongly dependent on Redis and Nginx + * Support [Bao Ta](https://mp.weixin.qq.com/s/nutc5eJ73aUa4Hc23DbCwQ) or [aaPanel](https://blog.ossrs.io/how-to-setup-a-video-streaming-service-by-aapanel-9748ae754c8c) plugin, support CentOS or Ubuntu command line installation + * Migrate ossrs.net to lightweight server, no longer dependent on K8s. + * Login password default changed to display password. + * Stop pushing stream for a certain time, clean up HLS cache files. + * Create a 2GB swap area if memory is less than 2GB. + * Support collecting SRS coredump. + * Live scene display SRT push stream address and command. + * Support setting NGINX root proxy path. +* 2022.04.18, v1.0.222, minor version update, containerized Redis + * Improve instructions, support disabling push stream authentication. + * Support English guidance, [medium](https://blog.ossrs.io) articles. + * Improve simple player, support mute autoplay. + * Add CORS support when NGINX distributes HLS. + * Add English guidance, [Create SRS](https://blog.ossrs.io/how-to-setup-a-video-streaming-service-by-1-click-e9fe6f314ac6) and [Set up HTTPS](https://blog.ossrs.io/how-to-secure-srs-with-lets-encrypt-by-1-click-cb618777639f), [WordPress](https://blog.ossrs.io/publish-your-srs-livestream-through-wordpress-ec18dfae7d6f). + * Enhance key length, strengthen security, and avoid brute force cracking. + * Support WordPress Shortcode guidance. + * Support setting home page redirection path, support mixed running with other websites. + * Support setting reverse proxy, support hanging other services under NGINX. + * Support applying for multiple domain names for HTTPS, solving the `www` prefix domain name problem. + * Change `filing` to `website`, can set home page redirection and footer filing number. + * Improve NGINX configuration file structure, centralize configuration in `containers` directory. + * Support setting simple load balancing, randomly selecting a backend NGINX for HLS distribution. + * Containers work in an independent `srs-cloud` network. + * Add `System > Tools` option. + * Use Redis container, not dependent on host Redis service. +* 2022.04.06, v1.0.200, major version update, multi-language, Release 4.4 + * Support Chinese and English bilingual. + * Support DigitalOcean image, see [SRS Droplet](https://marketplace.digitalocean.com/apps/srs). + * Support OpenAPI to get push stream key, see [#19](https://github.com/ossrs/srs-stack/pull/19). + * Improve container image update script. + * Support using NGINX to distribute HLS, see [#2989](https://github.com/ossrs/srs/issues/2989#nginx-direclty-serve-hls). + * Improve VoD storage and service detection. + * Improve installation script. +* 2022.03.18, v1.0.191, minor version update, experience improvement + * Scenes default to display tutorial. + * Support SRT address separation, play without secret. + * Separate Platform module, simplify mgmt logic. + * Improve UTest upgrade test script. + * Support changing stream name, randomly generating stream name. + * Support copying stream name, configuration, address, etc. + * Separate upgrade and UI, simplify mgmt logic. + * Separate container management and upgrade. + * Fast and efficient upgrade, completed within 30 seconds. + * Support CVM image, see [SRS CVM](https://mp.weixin.qq.com/s/x-PjoKjJj6HRF-eCKX0KzQ). +* 2022.03.16, v1.0.162, Major version update, error handling, Release 4.3 + * Support for React Error Boundary, friendly error display. + * Support for RTMP push QR code, core image guidance. + * Support for simple player, playing HTTP-FLV and HLS. + * Improved callbacks, created with React.useCallback. + * Improved page cache time, increased loading speed. + * Added REACT UI components and Nodejs project testing. + * Added script for installing dependency packages. + * Improved simple player, not muted by default, requires user click to play. + * Added Watermelon Player [xgplayer](https://github.com/bytedance/xgplayer), playing FLV and HLS +* 2022.03.09, v1.0.144, Minor version update, multi-platform forwarding + * Support for multi-platform forwarding, video number, Bilibili, Kuaishou. + * Restart forwarding task when modifying forwarding configuration. + * Support for setting upgrade window, default upgrade from 23:00 to 5:00. + * Support for jest unit testing, covering mgmt. + * Support for switching SRS, stable version and development version. + * Optimized display of disabled container status. +* 2022.03.04, v1.0.132, Minor version update, cloud on-demand + * Support for cloud on-demand, HLS and MP4 downloads. + * Cloud on-demand supports live playback, updating SessionKey. + * Disable password setting during upgrade to avoid environment variable conflicts. + * Restart all containers dependent on .env when initializing the system. + * Update the differences between cloud recording and cloud on-demand. + * SRT supports vMix tutorial. +* 2022.02.25, v1.0.120, Minor version update, cloud recording + * Improved upgrade script, restarting necessary containers. + * Modified Redis listening port, enhanced security. + * Resolved cloud recording, asynchronous long time (8h+) conflict issue. + * Improved key creation link, using cloud API key. + * Improved scene and settings TAB, loaded on demand, URL address identification. +* 2022.02.23, v1.0.113, Minor version update, cloud recording + * Support for resetting push key. [#2](https://github.com/ossrs/srs-terraform/pull/2) + * SRT push disconnects when RTMP conversion fails. + * Disabled containers no longer start. + * SRT supports QR code scanning for push and playback. [#6](https://github.com/ossrs/srs-terraform/pull/6) + * Support for [cloud recording](https://mp.weixin.qq.com/s/UXR5EBKZ-LnthwKN_rlIjg), recording to Tencent Cloud COS. +* 2022.02.14, v1.0.98, Major version update, upgrade, Release 4.2 + * Improved React static resource caching, increasing subsequent loading speed. + * Added Contact exclusive group QR code, scan code to join group. + * Support for setting Redis values, disabling automatic updates. + * Automatically detect overseas regions, use overseas sources for updates and upgrades. + * Improved upgrade prompts, countdown and status detection. + * Display video tutorials created by everyone on the page, sorted by play count. + * Support for authorizing platform administrators to access Lighthouse instances. + * Small memory systems, automatically create swap to avoid OOM during upgrades. +* 2022.02.05, v1.0.74, minor update, dashboard + * Support for Prometheus monitoring, WebUI mounted on `/prometheus`, no authentication for now. + * Support for Prometheus NodeExporter, node monitoring, Lighthouse's CPU, network, disk, etc. + * Added dashboard, added CPU chart, can jump to [Prometheus](https://github.com/ossrs/srs/issues/2899#prometheus). + * Improved certbot, started with docker, not an installation package. + * Improved upgrade process to prevent duplicate upgrades. + * Support for upgrading machines with 1GB memory, disabling node's GENERATE_SOURCEMAP to prevent OOM. +* 2022.02.01, v1.0.64, minor update, HTTPS + * Support for Windows version of ffplay to play SRT addresses + * Support for container startup hooks, stream authentication and authorization + * Change Redis listening on lo and eth0, otherwise container cannot access + * Support for setting HTTPS certificates, Nginx format, refer to [here](https://github.com/ossrs/srs/issues/2864#ssl-file) + * Support for Let's Encrypt automatic application of HTTPS certificates, refer to [here](https://github.com/ossrs/srs/issues/2864#lets-encrypt) +* 2022.01.31, v1.0.58, minor update, SRT + * Support for ultra-clear real-time live streaming scenarios, SRT push and pull streaming, 200~500ms latency, refer to [here](https://github.com/ossrs/srs/issues/1147#lagging) + * Chip/OBS+SRS+ffplay push and pull SRT stream address, support authentication. + * Support for manual upgrade to the latest version, support for forced upgrade. + * Improved upgrade script, execute after updating the script + * Support for restarting SRS server container +* 2022.01.27, v1.0.42, major update, stream authentication, Release 4.1 + * Support for push stream authentication and management backend + * Support for updating backend, manual update + * Live room scenario, push stream and play guide + * SRS source code download, with GIT + * Support for Lighthouse image, refer to [SRS Lighthouse](https://mp.weixin.qq.com/s/fWmdkw-2AoFD_pEmE_EIkA). +* 2022.01.21, Initialized. + +![](https://ossrs.net/gif/v1/sls.gif?site=ossrs.io&path=/lts/pages/faq-srs-stack-en) diff --git a/src/pages/faq.md b/src/pages/faq.md index 430b3228..9d227ac0 100644 --- a/src/pages/faq.md +++ b/src/pages/faq.md @@ -17,7 +17,7 @@ Here are some common questions. If you can't find your question, please search i first. If you are sure it is a bug and it has not been submitted before, please submit an Issue according to the requirements. -> Note: This is FAQ about SRS, please see [SRS Cloud FAQ](/faq-srs-cloud) for SRS Cloud. +> Note: This is FAQ about SRS, please see [SRS Stack FAQ](/faq-srs-cloud) for SRS Stack. @@ -125,7 +125,7 @@ Issue according to the requirements. * `Dynamic DVR`: About dynamic recording, regular expression matching for streams that need to be recorded, etc. > 1. You can use `on_publish` to callback the business system and implement complex rules. > 1. For specific recording files, use `on_hls` to copy the slices to the recording directory or cloud storage. - > 1. You can refer to the DVR implementation in [srs-cloud](https://github.com/ossrs/srs-cloud/blob/main/platform/srs-hooks.go). + > 1. You can refer to the DVR implementation in [srs-cloud](https://github.com/ossrs/srs-stack/blob/main/platform/srs-hooks.go). > 1. SRS will not support dynamic DVR, but some solutions are provided. You can also refer to [#1577](https://github.com/ossrs/srs/issues/1577). diff --git a/versioned_docs/version-4.0/doc/getting-started-cloud.md b/versioned_docs/version-4.0/doc/getting-started-cloud.md index 1fb568eb..3b55737e 100644 --- a/versioned_docs/version-4.0/doc/getting-started-cloud.md +++ b/versioned_docs/version-4.0/doc/getting-started-cloud.md @@ -7,7 +7,7 @@ hide_table_of_contents: false # Cloud SRS -SRS Cloud is a lightweight open-source video cloud based on Nodejs, SRS, FFmpeg, WebRTC, etc. +SRS Stack is a lightweight open-source video cloud based on Nodejs, SRS, FFmpeg, WebRTC, etc. ## aaPanel @@ -15,7 +15,7 @@ Pelase read [aaPanel](/blog/BT-aaPanel). ## DigitalOcean Droplet -Please read [DigitalOcean Droplet](https://github.com/ossrs/srs-cloud/wiki/Droplet): Create SRS Droplet. +Please read [DigitalOcean Droplet](https://github.com/ossrs/srs-stack/wiki/Droplet): Create SRS Droplet. ## TencentCloud CVM diff --git a/versioned_docs/version-4.0/tutorial/srs-cloud-server.md b/versioned_docs/version-4.0/tutorial/srs-cloud-server.md index da08c1e3..3a922ab3 100644 --- a/versioned_docs/version-4.0/tutorial/srs-cloud-server.md +++ b/versioned_docs/version-4.0/tutorial/srs-cloud-server.md @@ -1,11 +1,11 @@ --- -title: SRS Cloud -sidebar_label: SRS Cloud +title: SRS Stack +sidebar_label: SRS Stack hide_title: false hide_table_of_contents: false --- -# SRS Cloud +# SRS Stack ![](https://ossrs.net/gif/v1/sls.gif?site=ossrs.io&path=/lts/tutorial/en/v4/srs-cloud-server) diff --git a/versioned_docs/version-5.0/doc/getting-started-cloud.md b/versioned_docs/version-5.0/doc/getting-started-cloud.md index 9727bef9..8535319c 100644 --- a/versioned_docs/version-5.0/doc/getting-started-cloud.md +++ b/versioned_docs/version-5.0/doc/getting-started-cloud.md @@ -7,29 +7,29 @@ hide_table_of_contents: false # Cloud SRS -SRS Cloud is a video cloud solution that is lightweight, open-source, and based on Go, +SRS Stack is a video cloud solution that is lightweight, open-source, and based on Go, Reactjs, SRS, FFmpeg, WebRTC, etc. -Comparing SRS Cloud and SRS, both offer media streaming capabilities at a similar level. -However, SRS Cloud provides a more powerful and feature-rich experience for end users, -eliminating the need to write any code. Users can directly utilize SRS Cloud for your +Comparing SRS Stack and SRS, both offer media streaming capabilities at a similar level. +However, SRS Stack provides a more powerful and feature-rich experience for end users, +eliminating the need to write any code. Users can directly utilize SRS Stack for your media services needs. -| Comparison | SRS Cloud | SRS | Notes | +| Comparison | SRS Stack | SRS | Notes | |------------------|-----------|---------------|--------------------------------------------------------------------| | License | MIT | MIT | Both are open-source with an MIT license. | | Live Streaming | Yes | Yes | Both support RTMP, HLS, and HTTP-FLV protocols. | | WebRTC | Yes | Yes | WebRTC is supported by both. | -| Console | Enhanced | HTTP API | SRS Cloud offers a more powerful console. | -| Authentication | Yes | HTTP Callback | SRS Cloud has built-in authentication, while SRS uses callbacks. | -| DVR | Enhanced | File-based | SRS Cloud supports DVR to file and cloud storage. | -| Forwarding | Enhanced | Basic | SRS Cloud can forward to multiple platforms via various protocols. | -| Virtual Live | Yes | No | SRS Cloud provides advanced virtual live streaming capabilities. | -| WordPress | Yes | No | SRS Cloud offers a WordPress plugin and step-by-step guidelines. | +| Console | Enhanced | HTTP API | SRS Stack offers a more powerful console. | +| Authentication | Yes | HTTP Callback | SRS Stack has built-in authentication, while SRS uses callbacks. | +| DVR | Enhanced | File-based | SRS Stack supports DVR to file and cloud storage. | +| Forwarding | Enhanced | Basic | SRS Stack can forward to multiple platforms via various protocols. | +| Virtual Live | Yes | No | SRS Stack provides advanced virtual live streaming capabilities. | +| WordPress | Yes | No | SRS Stack offers a WordPress plugin and step-by-step guidelines. | ## DigitalOcean Droplet -Please read [DigitalOcean Droplet](https://github.com/ossrs/srs-cloud/wiki/Droplet): Create SRS Droplet. +Please read [DigitalOcean Droplet](https://github.com/ossrs/srs-stack/wiki/Droplet): Create SRS Droplet. ## TencentCloud CVM diff --git a/versioned_docs/version-5.0/tutorial/srs-cloud-server.md b/versioned_docs/version-5.0/tutorial/srs-cloud-server.md index 69643d88..2201090d 100644 --- a/versioned_docs/version-5.0/tutorial/srs-cloud-server.md +++ b/versioned_docs/version-5.0/tutorial/srs-cloud-server.md @@ -1,22 +1,22 @@ --- -title: SRS Cloud -sidebar_label: SRS Cloud +title: SRS Stack +sidebar_label: SRS Stack hide_title: false hide_table_of_contents: false --- -# SRS Cloud +# SRS Stack -SRS Cloud is an open source, media streaming service solution, which is easy to use and can be used in multiple media +SRS Stack is an open source, media streaming service solution, which is easy to use and can be used in multiple media scenarios. It combines the SRS, FFmpeg, WebRTC and other projects, and provides a one-stop solution for small and medium-sized enterprises to easily obtain digital capabilities. -## How to Do Virtual Live Streaming by SRS Cloud +## How to Do Virtual Live Streaming by SRS Stack https://youtu.be/68PIGFDGihU How to push a MP4 file, or DVR content to a live room? That's virtual live streaming. -This video introduce how to do virtual live by SRS Cloud. +This video introduce how to do virtual live by SRS Stack. ![](https://ossrs.net/gif/v1/sls.gif?site=ossrs.io&path=/lts/tutorial/en/v5/srs-cloud-server) diff --git a/versioned_docs/version-5.0/tutorial/srs-open-source.md b/versioned_docs/version-5.0/tutorial/srs-open-source.md index 630ff9b6..f2f52b78 100644 --- a/versioned_docs/version-5.0/tutorial/srs-open-source.md +++ b/versioned_docs/version-5.0/tutorial/srs-open-source.md @@ -13,7 +13,7 @@ hide_table_of_contents: false Simple Realtime Server (SRS) is a real-time video server that supports various protocols, such as RTMP, WebRTC, HLS, HTTP-FLV, SRT, and MPEG-DASH. It acts as a media gateway, converting between RTMP, SRT, and WebRTC. SRS has several -use cases, including as an origin cluster, for virtual live-streaming with SRS Cloud, with the SRS Player WordPress +use cases, including as an origin cluster, for virtual live-streaming with SRS Stack, with the SRS Player WordPress plugin, for Unity developers, in the broadcast industry, for AI video and audio processing, and for cutting live-streaming expenses. SRS is compatible with various open-source technologies and has a global community on Discord.