2009-08-05 08:37:07 UTC
It turns out my LD_LIBRARY_PATH was empty indeed. I simply set it in Matlab: setenv('LD_LIBRARY_PATH', '/usr/local/lib');
Both standardTestBatteries now terminate with a different error. The standardTestBattery('ffmpegDirect') is actually running for quite some time, claiming it runs doFullRead and doMultiFullReadTest on all movies, but when it gets to doMultiFullReadTestOnAllLoadables it exits. The standardTestBattery('ffmpegOpen2') exit pretty much right away, also at doMultiFullReadTestOnAllLoadables. Here's the error message I get:
doMultiFullReadTestOnAllLoadables...
"intersection147.25fps.xvid.avi" (or more likely its codec) is not fully compatible with videoReader... not tested (Error using ==> videoReader_ffmpegPopen2\nEOF found while trying to read the communication tag. The server process probably died. String so far: "" Function: int VideoIO::readMessageHeader(FILE*)\n File : pipecomm.h\n Line : 306)
"intersection256.25fps.xvid.avi" (or more likely its codec) is not fully compatible with videoReader... not tested (Error using ==> videoReader_ffmpegPopen2\nEOF found while trying to read the communication tag. The server process probably died. String so far: "" Function: int VideoIO::readMessageHeader(FILE*)\n File : pipecomm.h\n Line : 306)
"intersection300.10fps.ffdshowXvid.avi" (or more likely its codec) is not fully compatible with videoReader... not tested (Error using ==> videoReader_ffmpegPopen2\nEOF found while trying to read the communication tag. The server process probably died. String so far: "" Function: int VideoIO::readMessageHeader(FILE*)\n File : pipecomm.h\n Line : 306)
"intersection300.10fps.wmv3.avi" (or more likely its codec) is not fully compatible with videoReader... not tested (Error using ==> videoReader_ffmpegPopen2\nEOF found while trying to read the communication tag. The server process probably died. String so far: "" Function: int VideoIO::readMessageHeader(FILE*)\n File : pipecomm.h\n Line : 306)
"intersection300.10fps.xvid.avi" (or more likely its codec) is not fully compatible with videoReader... not tested (Error using ==> videoReader_ffmpegPopen2\nEOF found while trying to read the communication tag. The server process probably died. String so far: "" Function: int VideoIO::readMessageHeader(FILE*)\n File : pipecomm.h\n Line : 306)
"intersection300.25fps.xvid.avi" (or more likely its codec) is not fully compatible with videoReader... not tested (Error using ==> videoReader_ffmpegPopen2\nEOF found while trying to read the communication tag. The server process probably died. String so far: "" Function: int VideoIO::readMessageHeader(FILE*)\n File : pipecomm.h\n Line : 306)
"intersection300.orig.revel.avi" (or more likely its codec) is not fully compatible with videoReader... not tested (Error using ==> videoReader_ffmpegPopen2\nEOF found while trying to read the communication tag. The server process probably died. String so far: "" Function: int VideoIO::readMessageHeader(FILE*)\n File : pipecomm.h\n Line : 306)
"numbers.3ivx.avi" (or more likely its codec) is not fully compatible with videoReader... not tested (Error using ==> videoReader_ffmpegPopen2\nEOF found while trying to read the communication tag. The server process probably died. String so far: "" Function: int VideoIO::readMessageHeader(FILE*)\n File : pipecomm.h\n Line : 306)
"numbers.divx611.avi" (or more likely its codec) is not fully compatible with videoReader... not tested (Error using ==> videoReader_ffmpegPopen2\nEOF found while trying to read the communication tag. The server process probably died. String so far: "" Function: int VideoIO::readMessageHeader(FILE*)\n File : pipecomm.h\n Line : 306)
"numbers.uncompressed.avi" (or more likely its codec) is not fully compatible with videoReader... not tested (Error using ==> videoReader_ffmpegPopen2\nEOF found while trying to read the communication tag. The server process probably died. String so far: "" Function: int VideoIO::readMessageHeader(FILE*)\n File : pipecomm.h\n Line : 306)
"numbers.uncompressed.rgba.avi" (or more likely its codec) is not fully compatible with videoReader... not tested (Error using ==> videoReader_ffmpegPopen2\nEOF found while trying to read the communication tag. The server process probably died. String so far: "" Function: int VideoIO::readMessageHeader(FILE*)\n File : pipecomm.h\n Line : 306)
"numbers.wmv3.avi" (or more likely its codec) is not fully compatible with videoReader... not tested (Error using ==> videoReader_ffmpegPopen2\nEOF found while trying to read the communication tag. The server process probably died. String so far: "" Function: int VideoIO::readMessageHeader(FILE*)\n File : pipecomm.h\n Line : 306)
"numbers.x264.10fps.avi" (or more likely its codec) is not fully compatible with videoReader... not tested (Error using ==> videoReader_ffmpegPopen2\nEOF found while trying to read the communication tag. The server process probably died. String so far: "" Function: int VideoIO::readMessageHeader(FILE*)\n File : pipecomm.h\n Line : 306)
"numbers.x264.29_97fps.avi" (or more likely its codec) is not fully compatible with videoReader... not tested (Error using ==> videoReader_ffmpegPopen2\nEOF found while trying to read the communication tag. The server process probably died. String so far: "" Function: int VideoIO::readMessageHeader(FILE*)\n File : pipecomm.h\n Line : 306)
"numbers.x264.30fps.avi" (or more likely its codec) is not fully compatible with videoReader... not tested (Error using ==> videoReader_ffmpegPopen2\nEOF found while trying to read the communication tag. The server process probably died. String so far: "" Function: int VideoIO::readMessageHeader(FILE*)\n File : pipecomm.h\n Line : 306)
"numbers.x264.avi" (or more likely its codec) is not fully compatible with videoReader... not tested (Error using ==> videoReader_ffmpegPopen2\nEOF found while trying to read the communication tag. The server process probably died. String so far: "" Function: int VideoIO::readMessageHeader(FILE*)\n File : pipecomm.h\n Line : 306)
...doMultiFullReadTestOnAllLoadables
??? Error using ==> videoReader_ffmpegPopen2
EOF found while trying to read the communication tag. The server process probably died. String so far:
"" Function: int VideoIO::readMessageHeader(FILE*)
File : pipecomm.h
Line : 306
Error in ==> videoReader.videoReader at 151
vr.handle = feval(vr.plugin, 'open',vr.handle, ...
And here's the results from running videoSysInfo:
allLibDirs:
/usr/local/lib
/usr/lib
/lib/i686-apple-darwin9/4.0.1/
/lib/
/usr/lib/i686-apple-darwin9/4.0.1/
/usr/lib/
/usr/lib/gcc/i686-apple-darwin9/4.0.1/
/usr/lib/gcc/i686-apple-darwin9/4.0.1/
/usr/lib/gcc/i686-apple-darwin9/4.0.1/../../../../i686-apple-darwin9/lib/i686-apple-darwin9/4.0.1/
/usr/lib/gcc/i686-apple-darwin9/4.0.1/../../../../i686-apple-darwin9/lib/
/usr/lib/gcc/i686-apple-darwin9/4.0.1/../../../i686-apple-darwin9/4.0.1/
/usr/lib/gcc/i686-apple-darwin9/4.0.1/../../../
arch:
maci
computer:
MACI
cxxflags:
endian:
L
ffmpegCflags:
-I/usr/local/include -I/usr/include -m32
ffmpegLibs:
-L/usr/local/lib -L/usr/lib -lavformat -lavcodec -lavutil -lswscale -lz -ldl -lm
gccLibDirs:
/lib/i686-apple-darwin9/4.0.1/
/lib/
/usr/lib/i686-apple-darwin9/4.0.1/
/usr/lib/
/usr/lib/gcc/i686-apple-darwin9/4.0.1/
/usr/lib/gcc/i686-apple-darwin9/4.0.1/
/usr/lib/gcc/i686-apple-darwin9/4.0.1/../../../../i686-apple-darwin9/lib/i686-apple-darwin9/4.0.1/
/usr/lib/gcc/i686-apple-darwin9/4.0.1/../../../../i686-apple-darwin9/lib/
/usr/lib/gcc/i686-apple-darwin9/4.0.1/../../../i686-apple-darwin9/4.0.1/
/usr/lib/gcc/i686-apple-darwin9/4.0.1/../../../
java:
Java 1.5.0_19 with Apple Inc. Java HotSpot(TM) Client VM mixed mode, sharing
libsArch:
libavformat.a
libavcodec.a
libavutil.a
libswscale.a
libz.a
matlabDate:
23-Jan-2008
matlabRelease:
(R2008a)
matlabVersion:
7.6
maxsize:
2147483647
mexext:
mexmaci
os:
ProductName: Mac OS X
ProductVersion: 10.5.7
BuildVersion: 9J61
version_date:
??? Undefined function or variable "field".
Error in ==> videoIoSysInfo>printStruct at 139
if isempty(field)
Error in ==> videoIoSysInfo at 113
printStruct(info, 1);
So it seems like one of the two plugins is pretty much working; at least it reads in frames. What's the difference with the ffmpegPopen2-plugin? Any speed differences / different features / etc.? Is the EOF error somehow fixable?