Haibo Chen(陈海博)
|
64bbb5adcc
|
rtmp2rtc: Support HEVC. v7.0.33 (#4289)
## 1. Usage
### Launch Chrome with H.265 enabled:
```bash
# Windows:
C:\Program Files\Google\Chrome\Application>"C:\Program Files\Google\Chrome\Application\chrome.exe" --enable-features=WebRtcAllowH265Receive --force-fieldtrials=WebRTC-Video-H26xPacketBuffer/Enabled
# macOS:
open -a "Google Chrome" --args --enable-features=WebRtcAllowH265Receive --force-fieldtrials=WebRTC-Video-H26xPacketBuffer/Enabled
```
> Note: The latest Chrome browser (version 136) fully enables this by
default, so there's no need to launch it with any extra parameters.
### Launch SRS with `rtmp2rtc.conf`
```bash
./objs/srs -c conf/rtmp2rtc.conf
```
### Push H.265 with RTMP
```bash
ffmpeg -stream_loop -1 -re -i input.mp4 -c:v libx265 -preset fast -b:v 2000k -maxrate 2000k -bufsize 4000k -bf 0 -c:a aac -b:a 128k -ar 44100 -ac 2 -f flv rtmp://localhost/live/livestream
```
### Play with WebRTC
```bash
http://localhost:1985/rtc/v1/whep/?app=live&stream=livestream
```

## 2. Parameter Combinations for SDP
sendrecv offer
```bash
--enable-features=WebRtcAllowH265Send,PlatformHEVCEncoderSupport,WebRtcAllowH265Receive --force-fieldtrials=WebRTC-Video-H26xPacketBuffer/Enabled
```
sendonly offer
```bash
--enable-features=WebRtcAllowH265Send,PlatformHEVCEncoderSupport
```
recvonly offer
```bash
--enable-features=WebRtcAllowH265Receive --force-fieldtrials=WebRTC-Video-H26xPacketBuffer/Enabled
```
## 3. How to test if H.265 is working
* Browser Test for supporting H265
https://webrtc.github.io/samples/src/content/peerconnection/change-codecs/

* How to test Safari: https://github.com/ossrs/srs/pull/3441
* Debug in Safari

---------
Co-authored-by: chundonglinlin <chundonglinlin@163.com>
Co-authored-by: winlin <winlinvip@gmail.com>
Co-authored-by: john <hondaxiao@tencent.com>
---------
Co-authored-by: chundonglinlin <chundonglinlin@163.com>
Co-authored-by: john <hondaxiao@tencent.com>
|
2025-05-13 14:55:52 +08:00 |
|
ChenGH
|
13597d1b7f
|
update copyright to 2025. v5.0.218 v6.0.159 v7.0.21 (#4271)
update copyright to 2025
---------
Co-authored-by: john <hondaxiao@tencent.com>
Co-authored-by: winlin <winlinvip@gmail.com>
|
2025-01-14 17:35:18 +08:00 |
|
Winlin
|
e7069788e9
|
SmartPtr: Support shared ptr for live source. v6.0.129 (#4089)
Detail change log:
1. [Simple,Refactor] Remove member fields of http entry, etc.
e34b3d3aa4
2. [Ignore] Rename source to live_source.
846f95ec96
3. [Ignore] Use directly ptr in consumer.
d38af021ad
4. [Complex, Important] Use shared ptr for live source.
88f922413a
The object relationship:

---
Co-authored-by: Jacob Su <suzp1984@gmail.com>
|
2024-06-15 07:54:56 +08:00 |
|
Winlin
|
9dba99a1cc
|
SmartPtr: Support shared ptr for RTC source. v6.0.128 (#4085)
---------
Co-authored-by: Haibo Chen <495810242@qq.com>
|
2024-06-14 08:07:26 +08:00 |
|
Winlin
|
242152bd6b
|
SmartPtr: Use shared ptr in RTC TCP connection. v6.0.127 (#4083)
Fix issue https://github.com/ossrs/srs/issues/3784
---
Co-authored-by: Jacob Su <suzp1984@gmail.com>
|
2024-06-13 16:04:31 +08:00 |
|
winlin
|
2a2da2253f
|
Switch to 2013-2024. v6.0.109
|
2024-01-01 10:51:24 +08:00 |
|
winlin
|
29eff1a242
|
Refine LICENSE.
|
2023-10-23 14:33:19 +08:00 |
|
Winlin
|
dcd02fe69c
|
Support composited bridges for 1:N protocols converting. v6.0.41 (#3392)
Co-authored-by: john <hondaxiao@tencent.com>
Co-authored-by: chundonglinlin <chundonglinlin@163.com>
|
2023-04-01 21:34:59 +08:00 |
|