如果不使用文件作为输入,而是使用自定义的(内存)输入流,会看到此运行时警告。
解决方法:在读取函数中 如果输入流(内存数据),读取完毕返回-1。出现Invalid return value 0 for stream protocol的原因就是无有效数据时,返回的时0.
int read(void *opaque, unsigned char *buf, int buf_size)
{
// 如果输入流(内存数据),读取完毕返回-1
// 如果还未到输入流结尾,则返回实际读取数据长度!
}