
由于工作问题,有必要最近在Android和iOS平台上播放视频录制。 Android已将录制视频的格式设置为3GP(此文件相对较小,适用于流量较小的传输)
然后我们的iOS也支持3GP
Apple的官方文档以3GP格式支持视频文件,但是大多数人发现在播放实际播放时将出现“无法解码”(无法解码)
这意味着您的3GP编解码器格式不正确,并且无法播放。解决方案是根据Apple的编解码格式录制视频。
那么苹果需要什么编码?阅读文档
支持格式
该课程播放iOS支持的任何电影或音频文件。这同时包括流式内容和固定长度文件。对于电影文件,这通常意味着使用Extensions.mov,.mp4,.mpv和.3GP的文件,并使用以下压缩标准之一:
如果您使用此类播放音频文件,则在音频播放时显示带有快速时间徽标的白屏幕。对于音频文件,此类支持高达48 kHz的AAC-LC音频和MP3(MPEG-1音频层),最高为48 kHz,立体声音频。
这意味着您的视频编码为H264,每秒30帧(在这里支持640x480,使用320x240我没有问题)
如果您执行以上操作,您会发现...!呢呢仍然不能玩~~~
关键在这里
您的音频编码格式可能不是AAC-LC!
我不禁抱怨。录制视频与音频有关,但后来我想,确实,录制视频时,实际上记录了音频。如果音频格式不是用AAC编码,而是使用AMR或其他内容编码,则仍然无法播放。
在这一点上,将视频录制到AAC-LC时更改音频参数,并且可以播放您的3GP视频。
另外,知识普及
3GP和H264之间的关系是什么? MP4还意味着什么?
3GP和MP4都是文件格式。那么什么是文件格式?例如,您有一张白纸,上面有水平网格,这是一种格式。我们暂时称他为3GP。同一条白皮书,所有网格都是垂直的。这是另一种称为MP4的格式。现在,看看您的论文。水平网格通常是水平写作,就像现在在外面出售的笔记本(不是笔记本电脑〜)一样。垂直网格更像过去用来写的竹条。他写书的方式是垂直的。放置网格的不同方式是不同的。 3GP格式MP4格式AVI是另一种格式。用不同网格写的字符存储不同的信息,速度也不同。
H264是一种编码方法。以上说,由于将3GP纳入网格,我们应该写,但是您写了什么话?汉字?英语?阿拉伯?还是Mosse代码?对于计算机,如果要存储大量数据,则需要一种将文本转换为符号的方法。这样,只有一页可以写100个汉字。如果您用英语写作,可能是150,Mosse代码可能是300
H264是编码格式之一。它以规定的方式将一些信息编码到文件中。播放时,它将以这种方式解码,以便可以播放。
例如,我们想发送以下文本
“你今晚有空吗?让我们一起吃饭吗?”
如果我们将秘密单词定义为JW,那么我们实际发送的信息是JW
另一方收到JW之后,它根据解码方法进行解码。解码后的含义是
“你今晚有空吗?让我们一起吃饭吗?”
这样做的优点是它节省了空间。要表达14个汉字的原始含义,但是用2英语,JW,如果您想说些什么,可以在JW之后继续编写代码...
如何查看视频的编码格式
最简单的方法是找到3GP文件,使用kmplayer打开它,右键单击媒体信息,您可以看到视频和音频的编码格式。
以下是我的3GP视频编码格式
AVC是H264,您会发现我的音频编码是AVC,这就是为什么我之前无法播放视频
一般的
格式:AVC
持续时间:1974
视频#1
ID:1
格式:AVC
格式/信息:高级视频编解码器
格式资料:baseline@l3.0
格式设置,cabac:否
格式设置,重构:1帧
编解码ID:AVC1
编解码器ID/信息:高级视频编码
持续时间:1S 901ms
来源持续时间:1S 974ms
比特率:196 kbps
宽度:320像素
身高:240像素
显示纵横比:4:3
帧速率模式:变量
帧速率:28.880 fps
最低帧速率:9.376 fps
最大帧速率:32.514 fps
色彩空间:YUV
色度亚采样:4:2:0
位深度:8位
扫描类型:进步
位/(像素*帧):0.089
流尺寸:45.7 KIB(85%)
源流大小:47.1 KIB(88%)
标题:VideoHandle
语言:英语
mdhd_duration:1901
音频#2
ID:1
格式:AVC
格式/信息:高级视频编解码器
格式资料:baseline@l3.0
流大小:8位
语言:45.7 KIB