Comments (4)
Could you gives the video source to test? and the steps to reproduce this issue?
from srs.
sure
forest.mp4
then
fmpeg -d -stream_loop -1 -re -i ./forest.mp4 -c copy -f flv -y rtmp:/{your_ip}/live/test </dev/null
from srs.
ffprobe -show_frames forest.mp4 | grep -i 'pict_type'
There are B frames in this video, while webrtc don't support B frame, which will be drop by default at SRS.
That's the reason of bad quality.
How to workaround
ffmpeg -d -stream_loop -1 -re -i ./forest.mp4 -vcodec h264 -profile:v baseline -f flv -y rtmp:/{your_ip}/live/test </dev/null
or
ffmpeg -d -stream_loop -1 -re -i ./forest.mp4 -vcodec h264 -profile:v high -bf 0 -f flv -y rtmp:/{your_ip}/live/test </dev/null
Both of above publish cmd will resolve your problem.
About the GPU Acceleration question
No, SRS will not do any decode or encode, but just demux the video format, get the nalu elements inside the video frames, for the RTMP which is flv tags, then remux the nalu to the RTP packet. In short, the most common job of a live stream server is just do video format demux -> remux, or just re-streaming.
For the OvenMediaEngine, I didn't read it's source code yet, but he process video stream in this way: demux -> decode -> encode -> remux. Which means he did video decode->encode which is cpu | gpu intense job, and this kinds of server will be quite different than general live media server.
from srs.
Well thks for the clarification.
That was not really intensive on a RTX Titan GPU though (around 1% usage if I remember well..)
I will go back to SRS if I see that OvenMediaEngine is consuming too much resources (not the case right now 😉)
from srs.
Related Issues (20)
- ingree config ffmpeg rtsp_transport tcp cause the exec ffmpeg cli log part has error, and cause whole cli failed HOT 2
- using vlc play srt stream, play fail and coredump HOT 1
- WebRTC: h264 FU-A parse for both S and E flag HOT 1
- requesting the HTTP-FLV using the HEAD method will cause a nullptr crash HOT 8
- heap-use-after-free crash occurs after the streaming endpoint disconnects. HOT 3
- Need current number of client in on_play/on_stop webhook body. HOT 3
- Regarding the issue of static compilation not taking effect HOT 3
- The first few seconds of audio will be lost, only video without audio play HOT 7
- SRS5 WHEP have memory leaks HOT 1
- Simultaneous SRT callers HOT 2
- A user tutorial guide
- RTMP2WebRTC play failed on ios
- HLS Encryption with AES-128 and PKCS7 padding HOT 1
- Not being able to reconnect after network unavailability HOT 2
- The srs-cloud service is no longer operational, and it is also not functioning within the Baota panel. Could you provide an updated release of resources and a new method for setting up within the Baota environment? HOT 1
- WebRTC: 10 concurrent rtc push and pull stream, crashes after a few hours~ HOT 2
- WebRTC: Chrome HEVC support HOT 1
- Recommend an alternative coroutine implementation
- Questions about webrtc one to one !!!
- The source stream fails to be pulled via HTTP-FLV during the `http_hooks_on_publish` period, and subsequent stream pulls will continue to fail. HOT 2
Recommend Projects
-
React
A declarative, efficient, and flexible JavaScript library for building user interfaces.
-
Vue.js
🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.
-
Typescript
TypeScript is a superset of JavaScript that compiles to clean JavaScript output.
-
TensorFlow
An Open Source Machine Learning Framework for Everyone
-
Django
The Web framework for perfectionists with deadlines.
-
Laravel
A PHP framework for web artisans
-
D3
Bring data to life with SVG, Canvas and HTML. 📊📈🎉
-
Recommend Topics
-
javascript
JavaScript (JS) is a lightweight interpreted programming language with first-class functions.
-
web
Some thing interesting about web. New door for the world.
-
server
A server is a program made to process requests and deliver data to clients.
-
Machine learning
Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.
-
Visualization
Some thing interesting about visualization, use data art
-
Game
Some thing interesting about game, make everyone happy.
Recommend Org
-
Facebook
We are working to build community through open source technology. NB: members must have two-factor auth.
-
Microsoft
Open source projects and samples from Microsoft.
-
Google
Google ❤️ Open Source for everyone.
-
Alibaba
Alibaba Open Source for everyone
-
D3
Data-Driven Documents codes.
-
Tencent
China tencent open source team.
from srs.