2011-05-19 51 views
4

AVAssetWriter将文件URL作为参数,并将附加到其AVAssetWriterInput的缓冲区写入该文件。是否可以将AVAssetWriter路由到iOS4中的网络流?

AVAssetWriter* assetWriter = [[AVAssetWriter alloc] 
    initWithURL:[NSURL URLWithString:@"...fileURL..."] 
    fileType:AVFileTypeMPEG4 
    error:&error]; 

如果一个网络的URL被指定(即RTSP - 服务器期待一个直播流源),则抛出异常因为需要基于文件的URL。

是否有另一种访问资产编写器输出的方式?我想利用集成的H.264编码,并通过网络逐位访问编码数据进行流式传输。

+1

正如你发现你必须将它写入一个文件。我已经编写了使用iPhone通过RTP实时传输H.264/AAC的代码。它使用iPhone上的H.264编码器芯片,不使用私有API,所以至少现在你知道它是可能的。 – 2011-05-22 02:39:18

+2

你大咧咧!你是从MPEG4 mdat原子中的AVC数据解析H.264流的吗? – 2011-05-22 15:36:27

+1

@Rhythmmic Fistman:你看过我的博文历史了吗?我想你有你的答案!大部分解析是我正在做的。还有一些其他的事情需要做,以确保解码器知道如何处理帧。通过一些有创意的C编码,它可以实时完成。 – 2011-05-23 20:08:13

回答

1

编号

改为捕获原始样本。

+0

你能否提供一些关于如何去做你的建议的指导 - 也就是说,如何从AV中获取原始样本而不写入磁盘? :-) – 2013-06-06 14:26:38

+0

http://developer.apple.com/library/ios/#qa/qa1702/_index.html – Anton 2013-06-06 19:18:52

+0

简而言之,用'AVFoundation'无法获得h264帧。谢谢! – 2013-06-08 17:57:58

相关问题