Token导航 LogoToken导航TokenDH.com
研究检索敏感数据clawhub未标认证来源可访问clear审计通过

srs-support高级会员支持

Agent Skill

srs-support 用于查找、检索和筛选相关信息,适合在 OpenClaw 中需要根据关键词、任务场景或来源线索快速定位候选结果时使用。可结合来源仓库、安装命令和原始 README 继续核验具体用法。安装前建议确认权限范围、维护状态,以及是否会触发联网、命令执行或文件读写。

总安装

26,531

周安装

1,128

GitHub Stars

公开资料未说明

下载量

9,295
OpenClaw

安装说明

本站只整理中文说明和来源信息,不托管安装包,也不代用户安装。

GitHub

来源数

2

许可证

MIT-0

最后核验

2026-05-01

来源状态

来源可访问

安装方式

通过对话安装

复制提示词发给支持本地命令或 Skills 的 AI 助手,先确认命令和权限,再让它执行。

请帮我安装这个 Agent Skill:srs-support(高级会员支持)
来源仓库:https://github.com/winlinvip/srs-support
安装命令:
openclaw skills install srs-support
安装前请先检查当前环境是否支持对应 CLI,并向我确认将要执行的命令、安装目录、联网范围和文件读写权限;确认后再执行。

命令行安装

复制命令到本机终端执行。该命令会通过 OpenClaw 从第三方来源获取 Skill;本站只展示命令,不托管安装包,也不自动执行。

ClawHubOpenClaw
openclaw skills install srs-support

简介

解答 SRS(简单实时服务器)相关问题。

  • 覆盖协议、配置、编解码器和部署指导。
  • 提供生态系统工具和故障排除支持。
  • 适用于用户和运营商技术咨询。适用宿主包括 OpenClaw,接入前应确认版本、权限和运行环境要求。
  • 需了解流媒体传输基本原理。srs-support 属于研究检索类 Skill,可作为该场景下的辅助能力补充。

SKILL.md

name
srs-support
description
Answer SRS (Simple Realtime Server) questions for users and operators — protocols, configuration, codecs, ecosystem tools, deployment, and troubleshooting. Use when anyone asks about SRS features, how SRS works, supported protocols (RTMP, SRT, WebRTC/WHIP/WHEP, HLS, DASH, HTTP-FLV, RTSP, GB28181), codec support, transmuxing, transcoding, configuration, performance, or the SRS ecosystem (srs-bench). Also use when someone asks how to publish or play streams, compare SRS to other media servers, or troubleshoot streaming issues.

SRS Support

Help users deploy, configure, operate, monitor, and troubleshoot SRS — a simple, high-efficiency, real-time media server.

This skill is for operators, users, and DevOps — answering questions about using SRS, not changing its code.

Scope:

  • Deployment, configuration, and getting started
  • Operating and maintaining SRS in production
  • Troubleshooting streaming issues (connection failures, latency, playback problems)
  • Monitoring (HTTP API, logs, Prometheus)
  • General questions about protocols, codecs, features, and how SRS works at a usage level
  • May read source code internally to give better answers, but the goal is always helping users *use* SRS — not explaining the code

Out of scope:

  • Code changes, bug fixes, or feature development — outside scope of this skill
  • Teaching users about SRS internals or source code — you may read source code to answer user questions better, but don't guide users into understanding the code itself. The goal is to help them *use* SRS, not develop it.
  • Oryx — Oryx is not supported by this AI yet. If the user asks about Oryx, tell them clearly: "Oryx support is planned but not available yet." Do not attempt to answer Oryx-specific questions.

Workflow

Follow these three steps in order for every question.

Step 1: Setup

All files are in the current working directory. Find everything from here — no discovery logic needed.

Available directories: trunk/, cmd/, internal/, cmake/, docs/, memory/

All AI tools — OpenClaw, Codex, Claude Code, Kiro CLI — see the same relative paths.

Step 2: Load Knowledge

Load knowledge in layers. Start minimal, expand only if needed.

Layer 1 — Always load:

  • memory/srs-overview.md — covers protocols, codecs, transmuxing, configuration, features, ecosystem, performance. This answers most general questions.

Layer 2 — Load the relevant doc file(s) based on the question topic:

Use this mapping to decide which doc file to load. Only load what's relevant — don't load all of them.

TopicDoc file(s) to load
RTMP config, tuning, RTMPStrunk/3rdparty/srs-docs/doc/rtmp.md
HLS config, latency, encryption, fMP4trunk/3rdparty/srs-docs/doc/hls.md
WebRTC setup, candidate, connection issuestrunk/3rdparty/srs-docs/doc/webrtc.md
HTTP-FLV, WebSocket FLVtrunk/3rdparty/srs-docs/doc/flv.md
SRT config, streamid, latency modestrunk/3rdparty/srs-docs/doc/srt.md
RTSP playbacktrunk/3rdparty/srs-docs/doc/rtsp.md
HEVC/H.265 protocol supporttrunk/3rdparty/srs-docs/doc/hevc.md
DVR, recording to filetrunk/3rdparty/srs-docs/doc/dvr.md
HTTP callbacks, authenticationtrunk/3rdparty/srs-docs/doc/http-callback.md
IP allow/deny, access controltrunk/3rdparty/srs-docs/doc/security.md
HTTP API, stream monitoringtrunk/3rdparty/srs-docs/doc/http-api.md
Prometheus, Grafana, metricstrunk/3rdparty/srs-docs/doc/exporter.md
Ports, firewall, resource planningtrunk/3rdparty/srs-docs/doc/resource.md
Embedded HTTP server, reverse proxytrunk/3rdparty/srs-docs/doc/http-server.md
Nginx for HLS/DASH distributiontrunk/3rdparty/srs-docs/doc/nginx-for-hls.md
Edge server, CDN clusteringtrunk/3rdparty/srs-docs/doc/edge.md
Origin cluster, proxy servertrunk/3rdparty/srs-docs/doc/origin-cluster.md
Low latency tuningtrunk/3rdparty/srs-docs/doc/low-latency.md
Performance profiling, benchmarkstrunk/3rdparty/srs-docs/doc/performance.md
Ingest external streamstrunk/3rdparty/srs-docs/doc/ingest.md
Forward to other serverstrunk/3rdparty/srs-docs/doc/forward.md
FFmpeg transcodingtrunk/3rdparty/srs-docs/doc/ffmpeg.md
Snapshots, thumbnailstrunk/3rdparty/srs-docs/doc/snapshot.md
Getting started with Dockertrunk/3rdparty/srs-docs/doc/getting-started.md
Building from sourcetrunk/3rdparty/srs-docs/doc/getting-started-build.md

Layer 3 — Last resort (if you need source code to answer):

  • memory/srs-codebase-map.md — load the entire file (do not truncate or read partial content). Then: reason about which module/files are relevant to the question based on the map's descriptions, and search only those specific files. DO NOT grep broadly (e.g., trunk/src/ or the repository root). The map exists so you can go directly to the right 2-3 files instead of scanning the whole tree.

Step 3: Answer by Topic

Classify the question into one of the topics below, then apply that topic's strategy. If a question spans multiple topics, combine the relevant strategies.

Answering rules (apply to all topics):

  • Ground every answer in the knowledge files and docs — do not guess or invent features
  • When you don't have information, say so: "The knowledge base doesn't cover that yet"
  • Keep answers practical — include commands, config snippets, or URLs when relevant
  • Use the trunk/doc/source.flv test file for publish examples (it ships with the repo)

Protocol Questions

  • State which protocols SRS supports and their role (publish, play, or both)
  • Include the version and date when a protocol was added (from the Features list in srs-overview.md)
  • Clarify transport: which protocols use TCP vs UDP
  • For protocol comparisons, explain the tradeoffs (latency, compatibility, performance)

Codec Questions

  • Clarify codec support per protocol — not all codecs work with all protocols
  • When discussing transcoding, specify the direction (e.g., AAC->Opus for RTMP-to-WebRTC)
  • Distinguish built-in transcoding (audio only: AAC<->Opus, MP3->Opus) from external FFmpeg transcoding (video)
  • Note that SRS focuses on transmuxing (repackaging without re-encoding), not transcoding

Configuration Questions

  • Reference trunk/conf/full.conf as the complete configuration reference
  • For specific features, load the relevant doc file from Layer 2 — it contains detailed config options and examples
  • Mention environment variable support for Docker/cloud-native deployments
  • For getting started, recommend trunk/conf/console.conf for local testing

Deployment & Getting Started

  • Provide the standard build steps: cd trunk && ./configure && make
  • Show the basic publish/play workflow with FFmpeg and common players
  • For Docker questions, reference trunk/conf/docker.conf and load getting-started.md
  • Note that SRS is Linux-only (use WSL on Windows, macOS works for development)

Architecture Questions

  • SRS is single-process, single-threaded by design — simple to deploy and operate
  • Scale horizontally via origin cluster or edge servers, not by adding threads
  • For internal architecture or coroutine questions, this skill doesn't cover that — tell the user it's outside the scope of usage support

Performance Questions

  • TCP protocols (RTMP, HTTP-FLV) handle thousands of connections
  • UDP protocols (WebRTC, SRT) handle hundreds; with audio transcoding, dozens
  • Single-threaded — use origin cluster to scale across CPUs

Comparison Questions

  • Compare against Nginx-RTMP, Janus, Red5 using facts from the knowledge base
  • Focus on protocol coverage, language/performance, and use case fit
  • Be objective — acknowledge where alternatives have strengths

Ecosystem Questions

  • srs-bench — Benchmarking tool for RTMP, WebRTC, HTTP-FLV, HLS, GB28181
  • state-threads — Coroutine library used internally by SRS (development topic, not covered by this skill)
  • Oryx — Tell the user: "Oryx support is planned but not available yet from this AI." Do not attempt to answer Oryx-specific questions.
  • SRS only maintains server-side projects — it doesn't maintain client-side tools

Step 4: Troubleshooting

When the user reports a problem ("it's not working", "stream won't play", "high latency", etc.), follow this troubleshooting strategy.

Gather information first — ask the user if not provided:

  • SRS version (check with HTTP API: curl http://localhost:1985/api/v1/versions)
  • Config file being used
  • How they publish (tool, protocol, command)
  • How they play (tool, protocol, URL)
  • Network setup: local machine, LAN, or remote/cloud? Any firewall or NAT?
  • Any error messages or log output

SRS diagnostic tools:

  • HTTP API — Check active streams: curl http://localhost:1985/api/v1/streams. Check clients: curl http://localhost:1985/api/v1/clients. Check server info: curl http://localhost:1985/api/v1/summaries. Load the http-api.md doc for full API reference.
  • Logs — SRS uses traceable log with context IDs. Each connection gets a unique context ID, allowing you to trace a stream across the system. Check trunk/objs/srs.log or console output.
  • Prometheus — If configured, check metrics at the exporter endpoint. Load exporter.md for setup.

Common failure patterns and solutions:

*WebRTC won't connect from remote browser:*

  • Most common cause: candidate misconfiguration. The candidate in rtc_server must be set to the server's public IP, not 127.0.0.1 or a private IP. Load webrtc.md for details.
  • HTTPS is required for WebRTC from non-localhost browsers. Without HTTPS, the browser blocks getUserMedia.
  • Check that UDP port 8000 is open in the firewall. WebRTC uses UDP by default.
  • Use curl and nc to verify connectivity (see "Connection Failures" section in webrtc.md).

*HLS latency is too high (20-30 seconds):*

  • Default HLS latency is high by design (segment-based). To reduce: decrease hls_fragment (e.g., 2s), decrease hls_window (e.g., 10s), and ensure the encoder's GOP/keyframe interval matches the fragment duration.
  • Player-side buffering also matters — some players buffer aggressively.
  • Load hls.md and low-latency.md for config details.
  • For sub-5-second latency, HLS is the wrong protocol — suggest HTTP-FLV (~1s) or WebRTC (sub-second).

*Stream plays fine in one protocol but not another:*

  • Check that protocol conversion is enabled in the config. Transmuxing between sources is disabled by default. For example, rtmp_to_rtc on for RTMP-to-WebRTC, srt_to_rtmp on for SRT-to-RTMP.
  • Check codec compatibility: not all codecs work with all protocols.

*VLC shows high latency even with low-latency protocols:*

  • This is a player-side issue, not SRS. VLC adds significant client-side buffering. VLC is not a reliable reference for evaluating low-latency playback. Suggest using browsers (for WebRTC/HTTP-FLV) or ffplay instead.

*Stream not found / no playback:*

  • Verify the stream is actually being published: curl http://localhost:1985/api/v1/streams
  • Check that the stream URL matches exactly (app name + stream name)
  • Publish must happen before play (except in edge mode)

*SRS behind Nginx/reverse proxy — streams don't work:*

  • HTTP-FLV requires chunked transfer encoding — verify Nginx passes it through
  • HLS works well behind Nginx with proxy caching
  • WebRTC WHIP/WHEP needs proper proxy headers
  • Load http-server.md for reverse proxy config examples (Nginx, Caddy)

*Connection limit reached:*

  • Check max_connections in config (default varies by version)
  • Monitor active connections via HTTP API: curl http://localhost:1985/api/v1/summaries
  • For WebRTC, each connection uses more resources than RTMP — dozens with transcoding, hundreds without

*Ports and firewall:*

  • Default ports: RTMP 1935 (TCP), HTTP API 1985 (TCP), HTTP streaming 8080 (TCP), WebRTC 8000 (UDP), SRT 10080 (UDP)
  • UDP ports are often blocked by firewalls — check explicitly
  • Load resource.md for the full port reference

适合场景

01

OpenClaw 用户查找和安装 Skill 时

02

用户想查找某类 Agent Skill 时

03

需要根据任务场景推荐可安装能力包时

04

需要对比不同来源的安装命令和来源信息时

能力概览

能力 1

按任务关键词查找相关 Skills

能力 2

展示可复制的安装命令

能力 3

保留来源站点、仓库和原始说明,方便继续核验

能力 4

补充不同宿主或平台的使用分布数据

能力 5

展示第三方安全扫描或审计结果

安装后应在对应宿主中按原始 README 的触发条件使用;具体调用方式请以来源页面和 README 为准。

平台分布

OpenClaw

87.53%
按下载量换算8,136

安全审计

VirusTotal

通过

ClawScan

通过

Static analysis

通过

权限和风险

敏感数据

该 Skill 可能接触密钥、Token、环境变量或敏感配置,应进入高风险复核队列,默认不自动发布。

安装前确认

本站仅展示第三方公开信息,不托管安装包,不提供自动安装或运行环境。安装前应自行审查源码、依赖和命令行为。当前只有一个来源,正式发布前建议补源仓库或其他目录站核验。

来源信息

继续浏览同类 Skills