Mailing List archive

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

[linux-dvb] Re: dvb-mpegtools LARGEFILE support issue??



Marcus,


dvb-mplex -t DVD -i TS_STREAM -o ../Films/Ronin.vob ../Films/Ronin.ts

where Ronin.ts is a file of 4211200000 bytes recorded with dvbstream.  

dvb-mplex fails when trying to remux the temporary audio and video it's
created.  The error was "Error getting size of input file......"  The
only place the string appears is at line 44 of inptstrn.cpp.

I wrote a test programme to try and access a 4GB file using the same
fopen/fseek/ftell sequence used in inptstrn.  Compiling revealed that
fopen was substituted with fopen64 during compilation but ftell wasn't
replaced with ftello64.

I don't know if I'm correct, but my investigation suggests that ftell is
not capable of dealing with files greater than 2GB.  ftello is the
identical call but uses type off_t throughout to support large files. 
When compiling with LARGEFILE support on mandrake 9.1 ftello is
redefined to ftello64 - where ftell is left unchanged.

At first glance I would think that ftell should be redefined too, which
makes me suspicious.
If anyone can clarify that ftell should also be redefined I'd be glad to
let the people at Mandrake know there's a problem.  In the meantime I've
replaced ftell with ftello and for safety also replaced fseek with
fseeko as it also fails to be redefined on mandrake 9.1.

For info
gcc version 3.2.2 (Mandrake Linux 9.1 3.2.2-3mdk)

If you want any more info - let me know.

Laurence

On Mon, 2003-06-02 at 10:17, Marcus Metzler wrote:
> Laurence Culhane writes:
>  > Hi,
>  > 
>  > I recently upgraded one machine and found that dvb-mplex failed on large
>  > files with an EOVERFLOW resulting from an ftell call in inptstrn.cpp. 
>  > The problem is that ftell doesn't handle LARGEFILES I think.  A quick
>  > search through include files and the net seems to indicate that ftell
>  > and fseek should be replaced throughout by ftello and fseeko.
>  > 
>  > These functions are correctly redeclared in the headers to ftello64 and
>  > fseeko64 when using large files.
>  > 
>  > Apologies if I'm behind lagging behind - the problem may lie elsewhere -
>  > like with the Mandrake 9.1 I put on the offending machine.
>  > 
>  > Laurence
> 
> Do you have a specific example of the failure?
> 
> Marcus
-- 
Laurence Culhane <mycroft@holmes.demon.co.uk>



-- 
Info:
To unsubscribe send a mail to ecartis@linuxtv.org with "unsubscribe linux-dvb" as subject.



Home | Main Index | Thread Index