需要配置一台rtsp视频服务器,当模拟器使用。
在live555 文件操作地方,文件读完了,重新读取即可,代码修改如下:
void ByteStreamFileSource::doGetNextFrame() {
if (feof(fFid) || ferror(fFid) || (fLimitNumBytesToStream && fNumBytesToStream == 0)) {
//todo 把文件读指针移到文件开头实现循环读取
fseek(fFid, 0, SEEK_SET);
//handleClosure(this);
//return;
}
#ifdef READ_FROM_FILES_SYNCHRONOUSLY
doReadFromFile();
#else
if (!fHaveStartedReading) {
// Await readable data from the file:
envir().taskScheduler().turnOnBackgroundReadHandling(fileno(fFid),
(TaskScheduler::BackgroundHandlerProc*)&fileReadableHandler, this);
fHaveStartedReading = True;
}
#endif
}