ZlmediaKit rtp包排序后流程

客户端通过rtc 推流(视频为h264)到 ZlmediaKit 时,ZlmediaKit收到包,进行rtp 包排序,之后的处理流程堆栈

Thread 12 "event poller 0" hit Breakpoint 1, mediakit::getAVCInfo (strSps=..., iVideoWidth=@0x7fffdc003608: 0, iVideoHeight=@0x7fffdc00360c: 0, iVideoFps=@0x7fffdc003610: 0)
    at /root/src/tantao/cmds_master/cmds/src/Extension/H264.cpp:39
39        return getAVCInfo(strSps.data(), strSps.size(), iVideoWidth, iVideoHeight, iVideoFps);
(gdb) bt
#0  mediakit::getAVCInfo (strSps=..., iVideoWidth=@0x7fffdc003608: 0, iVideoHeight=@0x7fffdc00360c: 0, iVideoFps=@0x7fffdc003610: 0) at /root/src/tantao/cmds_master/cmds/src/Extension/H264.cpp:39
#1  0x000000000126b370 in mediakit::H264Track::onReady (this=0x7fffdc003598) at /root/src/tantao/cmds_master/cmds/src/Extension/H264.cpp:170
#2  0x000000000126b8f6 in mediakit::H264Track::inputFrame_l (this=0x7fffdc003598, frame=...) at /root/src/tantao/cmds_master/cmds/src/Extension/H264.cpp:216
#3  0x000000000126b04d in mediakit::H264Track::__lambda20::operator() (__closure=0x7fffdc00bce0, ptr=0x7fffdc03eb18 "", len=8, prefix=4)
    at /root/src/tantao/cmds_master/cmds/src/Extension/H264.cpp:161
#4  0x000000000126be7d in std::_Function_handler<void(char const*, long unsigned int, long unsigned int), mediakit::H264Track::inputFrame(const Ptr&)::__lambda20>::_M_invoke(const std::_Any_data &, const char *, unsigned long, unsigned long) (__functor=..., __args#0=0x7fffdc03eb18 "", __args#1=8, __args#2=4) at /usr/include/c++/4.8.2/functional:2071
#5  0x000000000126c67a in std::function<void (char const*, unsigned long, unsigned long)>::operator()(char const*, unsigned long, unsigned long) const (this=0x7fffea5de180, 
    __args#0=0x7fffdc03eb18 "", __args#1=8, __args#2=4) at /usr/include/c++/4.8.2/functional:2471
#6  0x000000000126a92a in mediakit::splitH264(char const*, unsigned long, unsigned long, std::function<void (char const*, unsigned long, unsigned long)> const&) (ptr=0x7fffdc03eb18 "", len=8, 
    prefix=4, cb=...) at /root/src/tantao/cmds_master/cmds/src/Extension/H264.cpp:77
#7  0x000000000126b292 in mediakit::H264Track::inputFrame (this=0x7fffdc003598, frame=...) at /root/src/tantao/cmds_master/cmds/src/Extension/H264.cpp:164
#8  0x00000000011deb3b in mediakit::MediaSink::inputFrame (this=0x7fffdc00a7d0, frame=...) at /root/src/tantao/cmds_master/cmds/src/Common/MediaSink.cpp:78
#9  0x00000000011d1ff2 in mediakit::FrameDispatcher::inputFrame (this=0x7fffdc02c1c8, frame=...) at /root/src/tantao/cmds_master/cmds/src/Extension/Frame.h:338
#10 0x000000000126b772 in mediakit::H264Track::inputFrame_l (this=0x7fffdc02c1c8, frame=...) at /root/src/tantao/cmds_master/cmds/src/Extension/H264.cpp:196
#11 0x000000000126b04d in mediakit::H264Track::__lambda20::operator() (__closure=0x7fffdc03f000, ptr=0x7fffdc03eb18 "", len=8, prefix=4)
    at /root/src/tantao/cmds_master/cmds/src/Extension/H264.cpp:161
#12 0x000000000126be7d in std::_Function_handler<void(char const*, long unsigned int, long unsigned int), mediakit::H264Track::inputFrame(const Ptr&)::__lambda20>::_M_invoke(const std::_Any_data &, const char *, unsigned long, unsigned long) (__functor=..., __args#0=0x7fffdc03eb18 "", __args#1=8, __args#2=4) at /usr/include/c++/4.8.2/functional:2071
#13 0x000000000126c67a in std::function<void (char const*, unsigned long, unsigned long)>::operator()(char const*, unsigned long, unsigned long) const (this=0x7fffea5de500, 
    __args#0=0x7fffdc03eb18 "", __args#1=8, __args#2=4) at /usr/include/c++/4.8.2/functional:2471
#14 0x000000000126a92a in mediakit::splitH264(char const*, unsigned long, unsigned long, std::function<void (char const*, unsigned long, unsigned long)> const&) (ptr=0x7fffdc03eb18 "", len=8, 
    prefix=4, cb=...) at /root/src/tantao/cmds_master/cmds/src/Extension/H264.cpp:77
#15 0x000000000126b292 in mediakit::H264Track::inputFrame (this=0x7fffdc02c1c8, frame=...) at /root/src/tantao/cmds_master/cmds/src/Extension/H264.cpp:164
#16 0x00000000011d1ff2 in mediakit::FrameDispatcher::inputFrame (this=0x7fffdc032c30, frame=...) at /root/src/tantao/cmds_master/cmds/src/Extension/Frame.h:338
#17 0x00000000014115ae in mediakit::H264RtpDecoder::outputFrame (this=0x7fffdc032c18, rtp=..., frame=...) at /root/src/tantao/cmds_master/cmds/src/Extension/H264Rtp.cpp:191
#18 0x0000000001410deb in mediakit::H264RtpDecoder::singleFrame (this=0x7fffdc032c18, rtp=..., ptr=0x7fffdc02e057 "h\316<\200", size=4, stamp=44270762)
    at /root/src/tantao/cmds_master/cmds/src/Extension/H264Rtp.cpp:81
#19 0x0000000001410f5a in mediakit::H264RtpDecoder::unpackStapA (this=0x7fffdc032c18, rtp=..., ptr=0x7fffdc02e057 "h\316<\200", size=22, stamp=44270762)
    at /root/src/tantao/cmds_master/cmds/src/Extension/H264Rtp.cpp:97
#20 0x000000000141128d in mediakit::H264RtpDecoder::decodeRtp (this=0x7fffdc032c18, rtp=...) at /root/src/tantao/cmds_master/cmds/src/Extension/H264Rtp.cpp:157
#21 0x0000000001410bcf in mediakit::H264RtpDecoder::inputRtp (this=0x7fffdc032c18, rtp=..., key_pos=true) at /root/src/tantao/cmds_master/cmds/src/Extension/H264Rtp.cpp:50
#22 0x00000000014ae7b1 in mediakit::RtspDemuxer::inputRtp (this=0x7fffdc00a618, rtp=...) at /root/src/tantao/cmds_master/cmds/src/Rtsp/RtspDemuxer.cpp:58
#23 0x00000000013cafd3 in mediakit::RtspMediaSourceImp::onWrite (this=0x7fffdc00a2e8, rtp=..., key_pos=false) at /root/src/tantao/cmds_master/cmds/src/Rtsp/RtspMediaSourceImp.h:61
#24 0x00000000015da247 in WebRtcPusher::onRecvRtp (this=0x7fffdc01ee10, track=..., rid=..., rtp=...) at /root/src/tantao/cmds_master/cmds/webrtc/WebRtcPusher.cpp:85
#25 0x00000000015282f8 in WebRtcTransportImp::onSortedRtp (this=0x7fffdc01ee10, track=..., rid=..., rtp=...) at /root/src/tantao/cmds_master/cmds/webrtc/WebRtcTransport.cpp:1079
#26 0x0000000001526fde in WebRtcTransportImp::__lambda95::operator() (__closure=0x7fffdc038fa0, rtp=...) at /root/src/tantao/cmds_master/cmds/webrtc/WebRtcTransport.cpp:925
#27 0x0000000001532742 in std::_Function_handler<void(std::shared_ptr<mediakit::RtpPacket>), WebRtcTransportImp::createRtpChannel(const string&, uint32_t, MediaTrack&)::__lambda95>::_M_invoke(const std::_Any_data &, std::shared_ptr<mediakit::RtpPacket>) (__functor=..., __args#0=...) at /usr/include/c++/4.8.2/functional:2071
#28 0x00000000014acd04 in std::function<void (std::shared_ptr<mediakit::RtpPacket>)>::operator()(std::shared_ptr<mediakit::RtpPacket>) const (this=0x7fffdc038c80, __args#0=...)
    at /usr/include/c++/4.8.2/functional:2471
#29 0x00000000014ab595 in mediakit::RtpTrackImp::onRtpSorted (this=0x7fffdc038bc8, rtp=...) at /root/src/tantao/cmds_master/cmds/src/Rtsp/RtpReceiver.cpp:142
#30 0x00000000014aa4d9 in mediakit::RtpTrack::RtpTrack()::{lambda(unsigned short, std::shared_ptr<mediakit::RtpPacket>&)#1}::operator()(unsigned short, std::shared_ptr<mediakit::RtpPacket>&) const

相关推荐

  1. ZlmediaKit rtp排序流程

    2023-12-15 15:38:09       42 阅读
  2. Zlmediakit 接收到 rtc的处理流程

    2023-12-15 15:38:09       50 阅读
  3. oracle分组排序取第一条

    2023-12-15 15:38:09       56 阅读

最近更新

  1. docker php8.1+nginx base 镜像 dockerfile 配置

    2023-12-15 15:38:09       94 阅读
  2. Could not load dynamic library ‘cudart64_100.dll‘

    2023-12-15 15:38:09       101 阅读
  3. 在Django里面运行非项目文件

    2023-12-15 15:38:09       82 阅读
  4. Python语言-面向对象

    2023-12-15 15:38:09       91 阅读

热门阅读

  1. 【Mysql】myisam和innodb的区别?

    2023-12-15 15:38:09       53 阅读
  2. 【PHP】计算某个特定时间戳距离现在的天数

    2023-12-15 15:38:09       67 阅读
  3. 鸿蒙(HarmonyOS)应用开发——三方库(题目答案)

    2023-12-15 15:38:09       117 阅读
  4. 【C++多线程编程】(一)之详解互斥锁mutex

    2023-12-15 15:38:09       57 阅读
  5. Python之禅

    2023-12-15 15:38:09       52 阅读
  6. PHP的协程是什么?

    2023-12-15 15:38:09       65 阅读
  7. MFC Picture控件显示图片并适应控件大小

    2023-12-15 15:38:09       52 阅读
  8. 小程序跳转按钮

    2023-12-15 15:38:09       45 阅读
  9. Linux---终端命令格式的组成

    2023-12-15 15:38:09       53 阅读
  10. Android Binder 调用栈

    2023-12-15 15:38:09       50 阅读
  11. 如何测试Nginx防盗链是否生效?

    2023-12-15 15:38:09       57 阅读
  12. 《Kotlin核心编程》笔记:面向表达式编程

    2023-12-15 15:38:09       57 阅读
  13. 浅谈EC防御技术

    2023-12-15 15:38:09       61 阅读
  14. 开发人员必用的Linux命令,建议收藏

    2023-12-15 15:38:09       67 阅读
  15. nvm动态管理node.js

    2023-12-15 15:38:09       69 阅读
  16. MySQL高可用实战(MHA)

    2023-12-15 15:38:09       45 阅读