Android实时视频采集方案

时间:2021-05-24 15:35:16

实时视频流采集

方案一:  通过Android Camera拍摄预览中设置setPreviewCallback实现onPreviewFrame接口,实时截取每一帧视频流数据 

方案二:  通过Android的MediaRecorder,在SetoutputFile函数中绑定LocalSocket实现 

方案三:  流媒体服务器方式,利用ffmpeg或GetStreamer等获取Camera视频

方案四:  待补充...


压缩编码

方案一:  不编码,直接通过Socket传输原始YUV420SP视频帧 

方案二:  JPEG.  将原始YUV420SP视频帧压缩转换为JPEG格式,JPEG传输 

方案三:  H.264/AVC.将原始YUV420SP视频帧压缩成H.264再传输

            常见的基于H264的开源Encoder有JM、X264、T264、Hdot264等 

方案四:  MPEG4.将原始YUV420SP视频帧压缩成MPEG4再传输

方案五:  待补充...

 


传输

方案一:  Socket传输

方案二:  HTTP传输

方案三:  RTP/RTSP传输

方案四:  流媒体服务器方式,如live555等

方案五:  待补充...

 


解码

与编码对应的的解码器


视频播放

方案一:    通过Andorid VideoView

方案二:    通过Andorid MediaPlay

方案三:    通过Canvas直接粘贴帧图

方案四:    待补充...