ossrs / srs Goto Github PK
View Code? Open in Web Editor NEWSRS is a simple, high-efficiency, real-time video server supporting RTMP, WebRTC, HLS, HTTP-FLV, SRT, MPEG-DASH, and GB28181.
Home Page: https://ossrs.io
License: MIT License
SRS is a simple, high-efficiency, real-time video server supporting RTMP, WebRTC, HLS, HTTP-FLV, SRT, MPEG-DASH, and GB28181.
Home Page: https://ossrs.io
License: MIT License
https://github.com/winlinvip/simple-rtmp-server/pull/277
TRANS_BY_GPT3
Support MPEGTS over UDP streaming to SRS.
Start SRS.
./objs/srs -c conf/push.mpegts.over.udp.conf
Start FFmpeg streaming.
ffmpeg -re -f flv -i doc/source.flv -c copy -f mpegts udp://127.0.0.1:8935
Play: http://localhost:8080/players/srs_player.html?autostart=true
TRANS_BY_GPT3
!!! Attention, the RAW API has been disabled after version 4.0, please refer to #2653 for background information.
!!! RAW API is removed from SRS 4.0, please see #2653
Other than the ability to reload, all other RAW API capabilities have been removed.
Provide an HTTP API to modify the configuration file and then reload the effective configuration.
https://github.com/winlinvip/simple-rtmp-server/issues/319
TRANS_BY_GPT3
WebRTC is now quite mature, with stable playback and the protocol already being an RFC. There are also quite a few corresponding open-source projects. However, I believe that WebRTC still lacks a high-performance, simple and easy-to-use server. I have analyzed the existing servers before and found various issues. SRS has a great opportunity to solve these problems.
SRS 3/4 supports MP3 over RTMP/HTTP-FLV/HTTP-TS, however there is some bugs need to be fixed.
Start SRS server:
# For RTMP/HTTP-FLV/HLS
./objs/srs -c conf/mp3.conf
# For HTTP-TS
./objs/srs -c conf/mp3.ts.conf
# For HTTP-MP3
./objs/srs -c conf/mp3.http.conf
# For RTMP(MP3) to WebRTC
./objs/srs -c conf/mp3.rtc.conf
Publish RTMP stream with mp3 audio:
ffmpeg -stream_loop -1 -re -i doc/source.flv -vcodec copy -acodec libmp3lame \
-f flv rtmp://localhost/live/livestream
Play live stream:
rtmp://localhost/live/livestream
http://localhost:8080/live/livestream.flv
http://localhost:8080/live/livestream.mp3
http://localhost:8080/live/livestream.ts
http://localhost:8080/live/livestream.m3u8
webrtc://localhost/live/livestream
I tested the ability for MP3 over serval protocols, found that some is ok but others fail, and listed the test result bellow.
Note: There is a bug for playing HTTP-TS with mp3 audio by H5, see mpegts.js #83
https://github.com/winlinvip/simple-rtmp-server/pull/114
TRANS_BY_GPT3
Make sure your SRS version is SRS 5.0.96+
.
Build SRS and run:
./configure && make && ./objs/srs -c conf/dash.conf
Publish by FFmpeg:
ffmpeg -re -i doc/source.flv -c copy -f flv rtmp://localhost/live/livestream
Play by
ffplay http://localhost:8080/live/livestream.mpd
http://localhost:8080/live/livestream.mpd
https://github.com/winlinvip/simple-rtmp-server/issues/120
Supports sub-100 millisecond latency, replaceable fast channel technology
Support <500ms latency, FRSC(fast RTMP-compatible stream channel tech)
Sub-100 millisecond latency requires improvement on the existing RTMP mechanism:
In summary, supporting sub-100 millisecond latency requires a comprehensive set of mechanisms and customization on top of RTMP. Compatibility with standard RTMP should also be considered. Therefore, the main goal of the system is to establish a fast channel, control the latency within the sub-100 millisecond range, and support integration with universal solutions at any point in the fast channel.
TRANS_BY_GPT3
RTMP Low Latency.
https://github.com/winlinvip/simple-rtmp-server/pull/173
TRANS_BY_GPT3
Currently, the forwarding mode in circulation needs to be configured through a configuration file. Can you please add the option to configure the forwarding URL?
For example:
Forwarding URL: rtmp://192.168.1.2/myapp/mystream?forward=rtmp://cdn.com/myapp/mystream?XXXXXX
This would make it more convenient to change whether the stream needs to be forwarded at any time. Currently, we have a use case where most of the streams only need to be viewed within the local network and do not require internet access. However, sometimes certain playback sources need to be played on the internet. Configuring this forwarding through a config file is not very flexible.
Could you please add this functionality or suggest a way to achieve a similar effect? Alternatively, could you provide guidance on how I can quickly modify the code to achieve this functionality?
TRANS_BY_GPT3
A declarative, efficient, and flexible JavaScript library for building user interfaces.
๐ Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.
TypeScript is a superset of JavaScript that compiles to clean JavaScript output.
An Open Source Machine Learning Framework for Everyone
The Web framework for perfectionists with deadlines.
A PHP framework for web artisans
Bring data to life with SVG, Canvas and HTML. ๐๐๐
JavaScript (JS) is a lightweight interpreted programming language with first-class functions.
Some thing interesting about web. New door for the world.
A server is a program made to process requests and deliver data to clients.
Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.
Some thing interesting about visualization, use data art
Some thing interesting about game, make everyone happy.
We are working to build community through open source technology. NB: members must have two-factor auth.
Open source projects and samples from Microsoft.
Google โค๏ธ Open Source for everyone.
Alibaba Open Source for everyone
Data-Driven Documents codes.
China tencent open source team.