android 视频录像 H264 硬编码 视频流输出

时间:2016-09-25 03:40:16
【文件属性】:

文件名称:android 视频录像 H264 硬编码 视频流输出

文件大小:1MB

文件格式:ZIP

更新时间:2016-09-25 03:40:16

android 视频录像 H264 硬编码 视频流输出

第一次打开估计会死一次(待优化),因为第一次会在data/data/cn.itcast.h264test下生成h264.3gp文件,该文件是视频流的范例文件,用于读取该手机录像生成的SPS和pps的值和位置,正式录像是以视频流一帧一帧输出,然后将每一帧和SPS与pps结合,据说每台机器的SPS和pps不同,我也不是很确定,但是前面读取本身的h264.3gp文件貌似解决的这一问题,现在亲测两台三星4.0 与2.3.3可以使用。(大家有什么奇葩型号的机器无法运行的望告知,没人力物力组织测试,囧)成功的也望告知,不胜感激。 生成文件为SD卡:encoder.h264 生成的视频时间戳上有一些问题(录像15秒,得到的视频流输出文件只有10S),但笔者后续是用作网络传输流应该这个问题就不大。各位高手要是能解决这个问题,望指教。 前段时间一直在用 ndk 编译ffmpeg最终成功,但实在不懂那些接口怎么调用,且软编码似乎很耗CPU很卡,最后放弃,囧。


【文件预览】:
H264Test
----.project(844B)
----project.properties(563B)
----src()
--------cn()
----AndroidManifest.xml(1KB)
----res()
--------drawable-ldpi()
--------drawable-hdpi()
--------values-v11()
--------menu()
--------drawable-mdpi()
--------layout()
--------values-sw600dp()
--------drawable-xxhdpi()
--------drawable-xhdpi()
--------values()
--------values-sw720dp-land()
--------values-v14()
----.settings()
--------org.eclipse.jdt.core.prefs(177B)
----assets()
----gen()
--------cn()
----libs()
--------android-support-v4.jar(384KB)
----.classpath(364B)
----proguard-project.txt(781B)
----ic_launcher-web.png(50KB)
----bin()
--------resources.ap_(40KB)
--------classes()
--------AndroidManifest.xml(1KB)
--------dexedLibs()
--------jarlist.cache(119B)
--------res()
--------H264Test.apk(196KB)
--------classes.dex(451KB)

网友评论

  • 这个资源不错,在Nexus5,android4.4.4下测试通过,默认录制参数分辨率比较低,调整高分辨率之后要把缓冲区也调整一下,不然保存文件会出错。
  • 还不错,值得新手学习
  • 很有帮助!多谢分享!!
  • 有一定的参考价值。
  • 很有帮助!多谢分享!!
  • 生成的文件除了SPS和PPS之外,其他数据没写进去
  • 很有帮助!多谢分享!!
  • 不好用,没有电脑端的接收软件
  • 还行吧,可以参考
  • 只有小部分的手机可以使用
  • 值得学习,谢谢!
  • 不错 可以用 已用到项目中
  • 编译成功,等有空了好好看看
  • 不错 可以用 已用到项目中
  • 不错 可以 运行 挺好的
  • 完全看不懂,得好好研究才行
  • 经修改可用。某些机型要改个把参数
  • 编译成功 我还不是很懂,视频录制后的文件放在什么地方,录制的时候也没有什么控制的
  • vivo手机可以运行,看了vivo的手机兼容性做得不错。这个例子我还以为是通过mediacodec实现的,后来看了代码才知道是使用的mediarecord实现的。
  • 真机,报数组下标越界,退出后再录制,无画面显示,资源被暂用