用ffmpeg进行流解析,出现Error splitting the input into NAL units错误,如下
[h264 @ 000001bd7dd0a200] Invalid NAL unit size (0 > 22282).
[h264 @ 000001bd7dd0a200] Error splitting the input into NAL units.
[mov,mp4,m4a,3gp,3g2,mj2 @ 000001bd7c747080] Stream #0: not enough frames to estimate rate; consider increasing probesize
[mov,mp4,m4a,3gp,3g2,mj2 @ 000001bd7c747080] Could not find codec parameters for stream 0 (Video: h264 (Constrained Baseline) (avc1 / 0x31637661), none(progressive), 640x480): unspecified pixel format
Consider increasing the value for the 'analyzeduration' (0) and 'probesize' (13000) options
Assertion desc failed at libswscale/swscale_internal.h:727
修改probesize发现还是一样出现,后来觉得可能是流的数据太少,控制接收到的数据多少进行解码,如果等待接收到更多的数据才开始解码就不会出现这个错误,但可能会造成更大的延迟,还有发现一个问题,同样的640*480分辨率,一个PC端摄像头推流,一个Android端推流,发现PC端调好的参数,在手机端需要更大的数据量,暂时不确定区别在哪里,也许是跟接收流的速度有关系,跟某个时间有关系。