【问题标题】:Stream live audio live555直播音频 live555
【发布时间】:2015-03-05 08:23:01
【问题描述】:

我正在写作,因为我在以前的主题中找不到答案。我正在使用 live555 流式传输实时视频(h264)和音频(g723),它们正在由网络摄像头记录。视频部分已经完成,效果很好,但我对音频任务一无所知。

只要我已经阅读,我必须创建一个 ServerMediaSession,我应该向其中添加两个子会话:一个用于视频,一个用于音频。对于视频部分,我创建了 OnDemandServerMediaSubsession 的子类、FramedSource 的子类和 Encoder 类,但对于音频方面,我不知道我应该基于哪些类来实现。

网络摄像头以 g723 格式记录和传送与视频分开的音频帧。我会说音频是原始的,因为当我尝试在 VLC 中播放它时,它说它找不到任何起始码;所以我想这是网络摄像头记录的原始音频流。

我想知道是否有人可以给我一个提示。

【问题讨论】:

    标签: c++ audio rtsp live live555


    【解决方案1】:

    对于音频流,您对 OnDemandServerMediaSubsession::createNewRTPSink 的覆盖应该创建一个 SimpleRTPSink。

    类似:

    RTPSink* YourAudioMediaSubsession::createNewRTPSink(Groupsock* rtpGroupsock, unsigned char rtpPayloadTypeIfDynamic, FramedSource* inputSource) 
    {
       return SimpleRTPSink::createNew(envir(), rtpGroupsock,
                                           4,
                                           frequency,
                                           "audio", 
                                           "G723",
                                           channels );
    } 
    

    频率和频道数应该来自inputSource。

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 2013-06-03
      • 1970-01-01
      • 2019-05-10
      • 2020-11-27
      • 1970-01-01
      • 1970-01-01
      • 2017-02-05
      • 2021-07-28
      相关资源
      最近更新 更多