1
0
Fork 0
mirror of https://github.com/ossrs/srs.git synced 2025-03-09 15:49:59 +00:00
srs/trunk/research/players
Jacob Su 101382afd0
RTC2RTMP: Fix screen sharing stutter caused by packet loss. v5.0.216 v6.0.157 v7.0.18 (#4160)
## How to reproduce?

1. Refer this commit, which contains the web demo to capture screen as
video stream through RTC.
2. Copy the `trunk/research/players/whip.html` and
`trunk/research/players/js/srs.sdk.js` to replace the `develop` branch
source code.
3. `./configure && make`
4. `./objs/srs -c conf/rtc2rtmp.conf`
5. open `http://localhost:8080/players/whip.html?schema=http`
6. check `Screen` radio option.
7. click `publish`, then check the screen to share.
8. play the rtmp live stream: `rtmp://localhost/live/livestream`
9. check the video stuttering.

## Cause
When capture screen by the chrome web browser, which send RTP packet
with empty payload frequently, then all the cached RTP packets are
dropped before next key frame arrive in this case.

The OBS screen stream and camera stream do not have such problem.

## Add screen stream to WHIP demo

><img width="581" alt="Screenshot 2024-08-28 at 2 49 46 PM"
src="https://github.com/user-attachments/assets/9557dbd2-c799-4dfd-b336-5bbf2e4f8fb8">

---------

Co-authored-by: winlin <winlinvip@gmail.com>
2024-10-15 19:00:07 +08:00
..
css remove the wizard control, too complex 2013-12-22 19:51:07 +08:00
img add fullscreen event and rescale 2013-12-21 01:04:29 +08:00
js RTC2RTMP: Fix screen sharing stutter caused by packet loss. v5.0.216 v6.0.157 v7.0.18 (#4160) 2024-10-15 19:00:07 +08:00
api-server_index.html Upgrade jquery from 1.10.2 to 1.12.2 (#3571) 2023-06-30 06:28:10 +08:00
crossdomain.xml add crossdomain.xml 2013-12-18 14:30:48 +08:00
index.html Upgrade jquery from 1.10.2 to 1.12.2 (#3571) 2023-06-30 06:28:10 +08:00
nginx_index.html refine the demo pages, move scripts after body. 2015-08-20 15:19:43 +08:00
rtc_player.html Player: Fix empty img tag occupy 20px size in safari. v6.0.142 (#4029) 2024-07-24 11:20:56 +08:00
rtc_publisher.html Player: Fix empty img tag occupy 20px size in safari. v6.0.142 (#4029) 2024-07-24 11:20:56 +08:00
srs-http-server_index.html Upgrade jquery from 1.10.2 to 1.12.2 (#3571) 2023-06-30 06:28:10 +08:00
srs_bwt.html Player: Fix empty img tag occupy 20px size in safari. v6.0.142 (#4029) 2024-07-24 11:20:56 +08:00
srs_chat.html Player: Fix empty img tag occupy 20px size in safari. v6.0.142 (#4029) 2024-07-24 11:20:56 +08:00
srs_gb28181.html Player: Fix empty img tag occupy 20px size in safari. v6.0.142 (#4029) 2024-07-24 11:20:56 +08:00
srs_player.html Player: Fix empty img tag occupy 20px size in safari. v6.0.142 (#4029) 2024-07-24 11:20:56 +08:00
srs_player_deprecated.html Player: Fix empty img tag occupy 20px size in safari. v6.0.142 (#4029) 2024-07-24 11:20:56 +08:00
srs_publisher.html Player: Fix empty img tag occupy 20px size in safari. v6.0.142 (#4029) 2024-07-24 11:20:56 +08:00
srs_publisher_flash.html Player: Fix empty img tag occupy 20px size in safari. v6.0.142 (#4029) 2024-07-24 11:20:56 +08:00
vlc.html Player: Fix empty img tag occupy 20px size in safari. v6.0.142 (#4029) 2024-07-24 11:20:56 +08:00
whep.html Player: Fix empty img tag occupy 20px size in safari. v6.0.142 (#4029) 2024-07-24 11:20:56 +08:00
whip.html RTC2RTMP: Fix screen sharing stutter caused by packet loss. v5.0.216 v6.0.157 v7.0.18 (#4160) 2024-10-15 19:00:07 +08:00