Iphone 如何在两台iOS设备(如facetime、skype、fring、tango)之间有效传输实时视频

Iphone 如何在两台iOS设备(如facetime、skype、fring、tango)之间有效传输实时视频,iphone,video-streaming,real-time,Iphone,Video Streaming,Real Time,我知道如何从iOS sdk获取框架。 [如何使用AV Foundation将摄像机中的视频帧捕获为图像( 它是像素,我可以把它转换成JPEG格式 我希望以如下方式传输视频: 一个iOS设备A: 从调用函数中获取像素或JPEG -(void)captureOutput:(AVCaptureOutput*)captureOutput didOutputSampleBuffer:(CMSampleBufferRef)SampleBufferfromConnection:(AVCaptureConnec

我知道如何从iOS sdk获取框架。 [如何使用AV Foundation将摄像机中的视频帧捕获为图像( 它是像素,我可以把它转换成JPEG格式

我希望以如下方式传输视频:

一个iOS设备A:

  • 从调用函数中获取像素或JPEG
  • -(void)captureOutput:(AVCaptureOutput*)captureOutput didOutputSampleBuffer:(CMSampleBufferRef)SampleBufferfromConnection:(AVCaptureConnection*)连接

  • 利用现有技术编码h.264-ffmpeg

  • 用TS流封装视频

  • 运行http服务器,并等待请求

  • 其他iOS设备B:

  • 对的http请求(仅使用http而不是rtp/rtsp)
  • 所以我的问题是,我需要使用ffmpeg来获取h.264流,还是可以从iOS API获取? 如果我使用ffmpeg编码到h.264(libx264),如何做到这一点,是否有任何示例代码或指南

    我读过这篇文章
    这是一个非常好的讨论,但我想知道细节。

    ffmpeg的许可证与通过App Store分发的iOS应用程序不兼容


    如果您想要传输实时视频并具有任何可用的帧速率,您将不想使用http或TCP。

    虽然这并不能直接回答您关于使用哪种视频格式的问题,但我建议您研究一些第三方框架,如或。这里有一个使用Parse和OpenTok的精彩教程: