【问题标题】:How to record live streaming video?如何录制直播视频?
【发布时间】:2015-11-04 09:05:57
【问题描述】:

我正在使用VideoCore 库来流式传输运行良好的实时视频。

我的要求是我想要将直播视频记录并存储在文档目录中,以便任何人都可以告诉我该怎么做?

如何录制直播视频?

【问题讨论】:

    标签: ios objective-c video-streaming http-live-streaming videocore


    【解决方案1】:

    我检查了库,看起来拥有记录功能的唯一方法是创建自定义输出。

    Split 类允许将缓冲区推送到多个输出。因此,您需要创建具有文件保存功能的新 IOuput 实现,并使用该 Split 类将其添加到流中。

    更新 #1

    我发现库中有一个文件输出示例(VCSimpleSession.mm文件):

    {
        m_h264Packetizer = std::make_shared<videocore::rtmp::H264Packetizer>(ctsOffset);
        m_aacPacketizer = std::make_shared<videocore::rtmp::AACPacketizer>(self.audioSampleRate, self.audioChannelCount, ctsOffset);
    
        m_h264Split->setOutput(m_h264Packetizer);
        m_aacSplit->setOutput(m_aacPacketizer);
    
    }
    {
        /*m_muxer = std::make_shared<videocore::Apple::MP4Multiplexer>();
         videocore::Apple::MP4SessionParameters_t parms(0.) ;
         std::string file = [[[self applicationDocumentsDirectory] stringByAppendingString:@"/output.mp4"] UTF8String];
         parms.setData(file, self.fps, self.videoSize.width, self.videoSize.height);
         m_muxer->setSessionParameters(parms);
         m_aacSplit->setOutput(m_muxer);
         m_h264Split->setOutput(m_muxer);*/
    }
    
    m_h264Packetizer->setOutput(m_outputSession);
    m_aacPacketizer->setOutput(m_outputSession);
    

    尝试取消注释并检查。

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 2019-05-10
      • 1970-01-01
      • 2011-03-12
      • 1970-01-01
      • 1970-01-01
      • 2017-05-27
      • 2021-04-06
      相关资源
      最近更新 更多