Arm9-linux-2.6.30.4
X264进行yuv420视频转换。
进行各种尝试结果出错:
[root@EmbedSky /media]# ./x264 -o qq.264 foreman_qcif.yuv 176X144
raw [error]: raw input requires a resolution.
x264 [error]: could not open input file `foreman_qcif.yuv'
然后再网上看到一段经典的话:
raw [error]: raw input requires a resolution
x264 encode error,while encode a file like"x264 -o test.264 filename.cif 352x288"
Naming the file something like 'filename_widthXheight.yuv'; x264 can read resolution from a filename
上面说要把文件名命名为 filename_分辨率.yuv的格式,这样x264会自动获取分辨率的。
于是就如下了:
我插,那个X不要大写的,要小写的x。我开始就是在那里卡了半天没发现:
[root@EmbedSky /media]# mv foreman_176X144.yuv filename_176x144.yuv
[root@EmbedSky /media]# ./x264 -o qq.264 filename_176x144.yuv
yuv [info]: 176x144p 0:0 @ 25/1 fps (cfr)
x264 [info]: using cpu capabilities: none!
x264 [info]: profile High, level 1.1
……….
就可以开始转换了。
其他设置,例如帧率设置,可以如下:
./x264 –fps 2 –o test.264 test_640x480.yuv
在arm开发板上压缩好的.264文件,拷到window是下面,现在要做的工作就是进行验证其是否正确,坑爹的是我在网络上找了几天的VLC播放器,还有什么.264播放器一堆一堆的,结果测试都不行,开始怀疑自己的压缩有问题,结果我直接用电脑上的QQ影音播放器,靠,我把文件拉进去,然后QQ影音开始说下载解码器,我想肯定没有,结果就随便等待,坑爹啊,最后居然打开了我的.264文件,开始播放了。我自己做的视频,很短,我要设置为单个循环播放,然后才可以看见图片的,要不就直接晃了一下就过去了,看不见的。