Hi!
I think there will be no problems on single disk systems cause of they
have enough speed, but I found a Problem with external NFS-Devices.
Beside my internal video-device I'm using one harddisk for Music, one
for all of my Image's and an additional
Device for VDR-Recordings.
Cause of the slower network-access the initial scanning for recordings
and empty directories, VDR
is scanning all that Sound and Image-Stuff for several minutes. If I
include my 4 GB cddb-archiv, it is about 20 minutes.
Therefor I changed the code of ScanVideoDir with a simple extension. It
now looks first wether a file ".vdrexclude" Exists. If so it skips the
entire directory-tree. This makes it easy to exclude a subdirectory tree
by simply touching ".vdrexclude" in a directory that will not contain
VDR-Recordings.
Might be, this could find a way into VDR sometimes.
Bye
Volker Schierz
And here is what I did:
void cRecordings::ScanVideoDir(const char *DirName, bool Foreground, int
LinkLevel) ... ... ...
if (S_ISDIR(st.st_mode))
{
// Start changes 1
char *excludeFile;
asprintf(&excludeFile, "%s/%s", buffer, ".vdrexclude");
if( access( excludeFile,0) )
{
// End changes 1
if (endswith(buffer, deleted ? DELEXT : RECEXT))
{
cRecording *r = new cRecording(buffer);
if (r->Name())
{
Lock();
Add(r);
ChangeState();
Unlock();
if (deleted)
{
r->fileSizeMB = DirSizeMB(buffer);
r->deleted = time(NULL);
}
}
else
delete r;
}
else
ScanVideoDir(buffer, Foreground, LinkLevel + Link);
// Start changes 2
}
free(excludeFile);
// End Changes 2
}
...
...