大家好,欢迎来到IT知识分享网。
目录
代码修改
要被子类引用 ,所以放在protected 不能放private
下面的结论,可以在下面的实验数据里引用。“同时拉一路视频后”
注:onSortedRtp发生的频率比较大,所以可以理解为在播放过程中,更改配置文件后,全局的配置也是实时变化的;所以这个针对单个设备的设置,其它不能实时变化,因为在建链时就已经成为这个链里的私有变量了。
在WebRTC的实现中,`onSortedRtp` 方法的被调用频率取决于多个因素,包括媒体流的特性、网络条件以及WebRTC框架自身的工作机制。一般来说,`onSortedRtp` 是在接收到排序后的RTP数据包时被调用的。
以下是一些可能导致 `onSortedRtp` 被调用的情况:
1. 接收到新的RTP数据包: 当接收到新的RTP数据包时,WebRTC框架可能会将其传递给 `onSortedRtp` 进行处理。这可以是实时传输中的音频或视频数据。
2. 网络重传: 在不稳定的网络条件下,可能会发生数据包的丢失,从而触发网络重传。在这种情况下,WebRTC可能需要对接收到的数据包进行排序和处理,以确保正确的重建媒体流。
3. 媒体流变化: 当媒体流中的特性发生变化时,例如分辨率、编解码器切换等,可能会触发 `onSortedRtp` 被调用以适应这些变化。
4. 网络状况改变: 当网络状况发生变化,例如带宽的增加或减少,可能会导致需要调整媒体流的处理方式。
要了解具体的调用频率,您可能需要查看WebRTC的实现文档、源代码或者相应的文档。通常,这种调用频率是由WebRTC的内部算法和策略来决定的,以适应不同的应用场景和网络条件。
实验数据一
https://10.60.3.45:10443/index/api/webrtc?app=live&stream=test&type=push&speed=
下面数据95000kBps * 8 ~~ kbps
实验数据二
181 261 * 8 ~ 1600 000 kbps
同时拉一路视频后
发现在拉的时候,是与设置的码率无关的。因为依赖于push上的流的码率即可!
修改记录
PS D:\java\xiachu\ZLMediaKit\www\webassist> cd ../../ PS D:\java\xiachu\ZLMediaKit> git branch * gbcomZlm master PS D:\java\xiachu\ZLMediaKit> git log -1 --name-only commit cc11e4b5e9a23351d0260c3126c0584c08c8e89d (HEAD -> gbcomZlm) Author: dualven <> Date: Tue Jan 23 12:13:00 2024 +0800 增加对每个设备单独的码率控制 server/WebApi.cpp webrtc/WebRtcPusher.cpp webrtc/WebRtcPusher.h webrtc/WebRtcTransport.cpp webrtc/WebRtcTransport.h
使用方法
https://10.60.3.45:10443/index/api/webrtc?app=live&stream=test&type=push&speed=
各库实操
(1) 将windows上的库提交到 gbcomZlm
git remote add gbcomRemote http://10.30.40.10/version/gbcomzlm.git
git push -u gbcomRemote gbcomZlm
(2) 192上的环境 (linux)
/opt/temp/ZlmMediaKit
先更新,及submodule更新到最新;然后对照windows上2023-12-12日的版本,知道各个版本的commitid hash,然后在192上的此目录,及submodule 进行git checkout commitidHash,保证与windows一样的版本。
然后git pull gbcomRemote gbcomZlm与本地融合,这样就将上面的五个文件进行了合入。
./build.sh 进行编译, 放至
cp release/linux/Release/MediaServer /opt/Release/gbcomzlm/2024-1-23-MediaServer
896 git submodule update --init 897 cd 3rdpart/ 898 cd ZLToolKit/ 899 ll 900 git checkout 9a545d7 901 cd ../jsoncpp/ 902 git checkout 8190e06 903 cd ../media-server/ 904 git checkout a8a80e0 905 cd ../../www/ 906 ll 907 cd webassist/ 908 git status 909 git checkout b02d2a4
在新的工程里,注意 项目——》重新配置,就会生成新的cmake等;然后 生成-》再生成具体的可执行文件
在一个分支上,随便合入一个commit -id
git checkout current-branch
git cherry-pick <commit-id>
3-27号的zlm对应的第三方库
896 git submodule update --init 897 cd 3rdpart/ 898 cd ZLToolKit/ 899 ll 900 git checkout 04d1c47d2568f5ce1ff84260cefaf2754e514a5e 901 cd ../jsoncpp/ 902 git checkout 69098a18b9af0c47549d9a271c054d13ca92b006 903 cd ../media-server/ 904 git checkout 527c0f5117b489fda78fcd123dddd9ec9a 905 cd ../../www/ 906 ll 907 cd webassist/ 908 git status 909 git checkout b02d2a4c1abf95db45e50bb77d789defa0fcc4b7
免责声明:本站所有文章内容,图片,视频等均是来源于用户投稿和互联网及文摘转载整编而成,不代表本站观点,不承担相关法律责任。其著作权各归其原作者或其出版社所有。如发现本站有涉嫌抄袭侵权/违法违规的内容,侵犯到您的权益,请在线联系站长,一经查实,本站将立刻删除。 本文来自网络,若有侵权,请联系删除,如若转载,请注明出处:https://haidsoft.com/130080.html