调试的过程中遇到过这样一个问题,不知道有没有人遇到过。另外我目前程序的做法不知道是不是合理暂且也难说,就单说问题吧。
因为根据需求需要在应用中同时调用Camera设备进行录像,并同时还要实现边录边拍照的功能,功能实现倒是都实现了。但是有个问题就是有概率会出现在录像的过程中操作拍照后程序会卡死,录像停止。继续操作则会出现ANR的问题。
看过log如下
W/CameraSource( 855): Timed out waiting for incoming camera video frames: 1273404957 us
当程序卡住时会反复弹此log。看的出事某个操作超时导致的,因此继续跟进log打印的代码中
\android\frameworks\av\media\libstagefright下的 CameraSource.cpp
函数status_t CameraSource::read内找到相关代码如下:
while (mStarted && mFramesReceived.empty()) {
if (NO_ERROR !