文件名称:H264Android_code
-
所属分类:
- 标签属性:
- 上传时间:2012-10-13
-
文件大小:634.97kb
-
已下载:0次
-
提 供 者:
-
相关连接:无下载说明:别用迅雷下载,失败请重下,重下不扣分!
介绍说明--下载内容来自于网络,使用问题请自行百度
H264解码器源码,移植ffmpeg中的H264解码部分到Android,深度删减优化,在模拟器(320x480)中验证通过。
程序的采用jni架构。界面部分,文件读取,视频显示都是用java做的,底层的视频解码用C来做满足速度的要求。
在这个版本中,从H264码流中分割出Nal是在java层做的,这样在java层直接调用解码时就知道是否有显示视频,缺点的就是耦合度/封装性差一点。
如果采用在底层做Nal分割的方法,可以封装得好看一些,但是每次送的数据有限制,如果送的数据太多,底层可能会一次解码出好几帧视频,但是通知到界面层只能显示一帧,造成丢帧的现象。 如果每次送的数据较少,就会有很多次底层调用没有进行实质解码,很小气的做法,比如有一压缩数据帧需要600字节,如果一次送100个字节给解码器,那么要送6次才会进行实质解码,因为每个数据帧有大有小,所以只能取极小值才不会导致丢帧。
不过所有的编码解码都是各种因素平衡折中的结果,具体用什么方法具体分析。
注意解码库写死了视频大小240x320,其他视频大小要简单修改一下底层的代码。-H264 decoder source code, porting ffmpeg s H264 decoding to Android, the depth of cut optimization, in the simulator (320x480) in the validation passed.
程序的采用jni架构。界面部分,文件读取,视频显示都是用java做的,底层的视频解码用C来做满足速度的要求。
在这个版本中,从H264码流中分割出Nal是在java层做的,这样在java层直接调用解码时就知道是否有显示视频,缺点的就是耦合度/封装性差一点。
如果采用在底层做Nal分割的方法,可以封装得好看一些,但是每次送的数据有限制,如果送的数据太多,底层可能会一次解码出好几帧视频,但是通知到界面层只能显示一帧,造成丢帧的现象。 如果每次送的数据较少,就会有很多次底层调用没有进行实质解码,很小气的做法,比如有一压缩数据帧需要600字节,如果一次送100个字节给解码器,那么要送6次才会进行实质解码,因为每个数据帧有大有小,所以只能取极小值才不会导致丢帧。
不过所有的编码解码都是各种因素平衡折中的结果,具体用什么方法具体分析。
注意解码库写死了视频大小240x320,其他视频大小要简单修改一下底层的代码。-H264 decoder source code, porting ffmpeg s H264 decoding to Android, the depth of cut optimization, in the simulator (320x480) in the validation passed.
相关搜索: h264
Android ffmpeg h264
h264 java
android h264
ffmpeg android co
FFMPEG H264
h264 decoder
h264 解码
android
android porting
(系统自动生成,下载前可以参看下载内容)
下载文件列表
H264Android/.project
H264Android/AndroidManifest.xml
H264Android/default.properties
H264Android/jni/avcodec.h
H264Android/jni/cabac.c
H264Android/jni/cabac.h
H264Android/jni/common.c
H264Android/jni/common.h
H264Android/jni/dsputil.c
H264Android/jni/dsputil.h
H264Android/jni/golomb.c
H264Android/jni/golomb.h
H264Android/jni/h264.c
H264Android/jni/h264.h
H264Android/jni/h264data.h
H264Android/jni/h264utils.c
H264Android/jni/mpegvideo.c
H264Android/jni/mpegvideo.h
H264Android/jni/Android.mk
H264Android/jni/main.c.old
H264Android/jni/main.dsp.old
H264Android/jni/H264Android.c
H264Android/Application.mk
H264Android/libs/armeabi/libH264Android.so
H264Android/bin/h264/com/H264Android.class
H264Android/bin/h264/com/R$attr.class
H264Android/bin/h264/com/R$drawable.class
H264Android/bin/h264/com/R$layout.class
H264Android/bin/h264/com/R.class
H264Android/bin/h264/com/R$string.class
H264Android/bin/h264/com/VView.class
H264Android/bin/classes.dex
H264Android/bin/resources.ap_
H264Android/bin/H264Android.apk
H264Android/gen/h264/com/R.java
H264Android/res/drawable-hdpi/icon.png
H264Android/res/drawable-mdpi/icon.png
H264Android/res/drawable-ldpi/icon.png
H264Android/res/layout/main.xml
H264Android/res/values/strings.xml
H264Android/src/h264/com/H264Android.java
H264Android/.classpath
butterfly.264/butterfly.264
H264Android/bin/h264/com
H264Android/gen/h264/com
H264Android/src/h264/com
H264Android/libs/armeabi
H264Android/bin/h264
H264Android/gen/h264
H264Android/res/drawable-hdpi
H264Android/res/drawable-mdpi
H264Android/res/drawable-ldpi
H264Android/res/layout
H264Android/res/values
H264Android/src/h264
H264Android/jni
H264Android/libs
H264Android/bin
H264Android/gen
H264Android/res
H264Android/src
H264Android/assets
H264Android
butterfly.264
H264Android/AndroidManifest.xml
H264Android/default.properties
H264Android/jni/avcodec.h
H264Android/jni/cabac.c
H264Android/jni/cabac.h
H264Android/jni/common.c
H264Android/jni/common.h
H264Android/jni/dsputil.c
H264Android/jni/dsputil.h
H264Android/jni/golomb.c
H264Android/jni/golomb.h
H264Android/jni/h264.c
H264Android/jni/h264.h
H264Android/jni/h264data.h
H264Android/jni/h264utils.c
H264Android/jni/mpegvideo.c
H264Android/jni/mpegvideo.h
H264Android/jni/Android.mk
H264Android/jni/main.c.old
H264Android/jni/main.dsp.old
H264Android/jni/H264Android.c
H264Android/Application.mk
H264Android/libs/armeabi/libH264Android.so
H264Android/bin/h264/com/H264Android.class
H264Android/bin/h264/com/R$attr.class
H264Android/bin/h264/com/R$drawable.class
H264Android/bin/h264/com/R$layout.class
H264Android/bin/h264/com/R.class
H264Android/bin/h264/com/R$string.class
H264Android/bin/h264/com/VView.class
H264Android/bin/classes.dex
H264Android/bin/resources.ap_
H264Android/bin/H264Android.apk
H264Android/gen/h264/com/R.java
H264Android/res/drawable-hdpi/icon.png
H264Android/res/drawable-mdpi/icon.png
H264Android/res/drawable-ldpi/icon.png
H264Android/res/layout/main.xml
H264Android/res/values/strings.xml
H264Android/src/h264/com/H264Android.java
H264Android/.classpath
butterfly.264/butterfly.264
H264Android/bin/h264/com
H264Android/gen/h264/com
H264Android/src/h264/com
H264Android/libs/armeabi
H264Android/bin/h264
H264Android/gen/h264
H264Android/res/drawable-hdpi
H264Android/res/drawable-mdpi
H264Android/res/drawable-ldpi
H264Android/res/layout
H264Android/res/values
H264Android/src/h264
H264Android/jni
H264Android/libs
H264Android/bin
H264Android/gen
H264Android/res
H264Android/src
H264Android/assets
H264Android
butterfly.264
本网站为编程资源及源代码搜集、介绍的搜索网站,版权归原作者所有! 粤ICP备11031372号
1999-2046 搜珍网 All Rights Reserved.