[vlc-devel] [PATCH] Added support for VDR recordings.
Tobias Güntner
fatbull at web.de
Sat Aug 21 20:55:06 CEST 2010
Hi!
Am 08.05.2010 22:09, schrieb Laurent Aimar:
>> + while( i_new_seekpoint + 1< p_sys->p_marks->i_seekpoint&&
>> + p_access->info.i_pos>= (uint64_t)p_sys->p_marks->
>> + seekpoint[ i_new_seekpoint + 1 ]->i_byte_offset )
>> + {
>> + i_new_seekpoint++;
>> + }
> I am not sure, but maybe using bsearch() would be simpler.
Tried it, and it's not. At least not in an obvious way. The callback for
bsearch() needs access to i_byte_offset of array elements n and n+1.
Also, in most cases, the seek point does not change anyway.
>> +static void UpdateVideoFileSize( access_t *p_access )
>> +{
>> + access_sys_t *p_sys = p_access->p_sys;
>> + struct stat st;
>> +
>> + if( p_access->info.i_size>= p_access->info.i_pos )
>> + return;
> It would be better to do as the file access does it (ie checking periodically).
I don't think this is a good idea, as this function does only half the
work. VDR recordings are split into several files, hence a periodic
check would need to stat() all of them, as well as check if new files
have been created. This is a lot of work. I don't think a subroutine
called by Read() is the right place to do it.
See revised patch in attachment.
Regards,
Tobias
-------------- next part --------------
An embedded and charset-unspecified text was scrubbed...
Name: 0001-Added-support-for-VDR-recordings.patch
URL: <http://mailman.videolan.org/pipermail/vlc-devel/attachments/20100821/a9c54177/attachment.ksh>
More information about the vlc-devel
mailing list