h264编码
我用android手机摄像头采集视频帧压缩h264,再保存在到文件用流媒体客户端vlc播放花屏,求解
我把数据帧保存成h264文件后用流媒体客户端vlc播放花屏(live555测试列子作为服务器)你们遇到过这样的情况吗
private void Decode(byte[] yuvData){
long size=0;
if(H264Encode.handle>0){
size=H264Encode.encodeFrame(H264Encode.handle,0, yuvData, yuvData.length, encodedFrame);//h264编码
}
if (size>0) {
try {
FileOutputStream file_out = new FileOutputStream ("/sdcard/hh9.264",true);
DataOutputStream out=new DataOutputStream(file_out);
// byte []b={0,0,0,1};
// out.write(b);
out.write(encodedFrame,0,(int)size);
out.close();
file_out.close();
} catch (FileNotFoundException e) {
e.printStackTrace();
} catch (IOException e) {
e.printStackTrace();
}
}
}
【学弱】白纸一张 2015/5/30 21:38:50
class WorkRun implements Runnable{///线程接口
byte[] buf;//帧数据
public WorkRun(byte[] buf){
this.buf=buf;
}
@Override
public void run() {
// TODO Auto-generated method stub
Decode(buf);
// SaveH264(buf,buf.length);
}
}
// Camera.PreviewCallback previewCallBack = new Camera.PreviewCallback() {
public void onPreviewFrame(byte[] data, Camera camera) {
// Message message = Message.obtain(handler, DECODE, data);
// message.sendToTarget();
Runnable run=new WorkRun(data);//工作线程
worker.addWork(run);//添加到工作队列
}
// };