Re : memory leaks with qtdemux

classic Classic list List threaded Threaded
2 messages Options
Reply | Threaded
Open this post in threaded view
|

Re : memory leaks with qtdemux

Albert Costa
Hi,
I've been working a bit more on the qtdemux leaking problem.
I found 2 issues:
 
-when the mov file is over 2Gb, the qtdemux runs in push mode, and it does not work. I've replaced in gstfilesrc all 32bits version of lseek and fstat functions by their 64bits equivalent. It now works fine (the qtdemux runs in pull mode again).
Should I commit a patch for gstfilesrc so that it can now work with normal and large files?
 
-with the previous problem fixed, if I try anyway to make the qtdemux plugin work in push mode (by forcing it), there is still the leaking problem. And it seems it is not working anyway (it never gets to the end of the file header). Has anyone ever tried to use qtdemux in push mode?
 
Regards,
Al


 
----- Message d'origine ----
De : Albert Costa <[hidden email]>
À : [hidden email]..net
Envoyé le : Jeudi, 7 Février 2008, 17h56mn 38s
Objet : Re: [gst-devel] memory leaks with qtdemux

Hi,

in fact I got similar problem. It came not from the format, but from the size of file.

If I use a file which is larger than 2Gb, then the component does not have same behavior as if smaller.

In normal case, qtdemux acts in pull mode, whereas it acts in push mode when file is >2Gb. Reason is that (in short terms), in gstfilesrc code the seekable flag is set to false because the fseek function used returns only signed 32bits length. In case the file is over 2Gb, fseek fails.

I have tried to replace all functions (fseek and other fstat...) by their 64bits equivalent, but still the qtdemux does not work properly.

And I don't know yet why it leaks memory in push mode.

 

Has anyone already got this kind of problem? Is there a way to handle nice and smooth files that are above the 2Gb limit? Is it expected to be handled in later releases of gstreamer?

Btw, I run under win32.

Regards,

Al.

 

 

 

>Hi,

>When I run gst-launch with this command line : gst-launch filesrc

>location=AAA.mov ! qtdemux ! fakesink

>On some file I have a big memory leaks (10Mo /s)

>file type : QuickTime (.mov)

>video codec : dvcp (apple dv-pal)

>audio codec : twos: 16 bit signed big-endian 48kHz

>size : 720x576

>But with another files There are not memory leaks

>NO memory leaks with qtdemix :

>file type : QuickTime (.mov)

>video codec : jpeg(apple photos jpeg)

>no sound

>size : 640x480

>Do you know if the problem becomes from audio stream or video stream

>(dvcp) ?

>Do you know what kind/type of test I should make to localize the bug ?

>Samuel



Ne gardez plus qu'une seule adresse mail ! Copiez vos mails vers Yahoo! Mail


-----La pièce jointe correspondante suit-----

-------------------------------------------------------------------------
This SF.net email is sponsored by: Microsoft
Defy all challenges. Microsoft(R) Visual Studio 2008.
http://clk.atdmt.com/MRT/go/vse0120000070mrt/direct/01/


-----La pièce jointe correspondante suit-----

_______________________________________________
gstreamer-devel mailing list
[hidden email]
https://lists.sourceforge.net/lists/listinfo/gstreamer-devel



Yahoo! Mail innove : interface hyper pratique, messenger intégré, couleurs - découvrez la démo !
-------------------------------------------------------------------------
This SF.net email is sponsored by: Microsoft
Defy all challenges. Microsoft(R) Visual Studio 2008.
http://clk.atdmt.com/MRT/go/vse0120000070mrt/direct/01/
_______________________________________________
gstreamer-devel mailing list
[hidden email]
https://lists.sourceforge.net/lists/listinfo/gstreamer-devel
Reply | Threaded
Open this post in threaded view
|

Re: Re : memory leaks with qtdemux

Edward Hervey-2
Hi,

On Mon, 2008-02-11 at 16:45 +0000, Albert Costa wrote:

> Hi,
> I've been working a bit more on the qtdemux leaking problem.
> I found 2 issues:
>  
> -when the mov file is over 2Gb, the qtdemux runs in push mode, and it
> does not work. I've replaced in gstfilesrc all 32bits version of lseek
> and fstat functions by their 64bits equivalent. It now works fine (the
> qtdemux runs in pull mode again).
> Should I commit a patch for gstfilesrc so that it can now work with
> normal and large files?

  Yes, please open a new bug on bugzilla with the patch.

>  
> -with the previous problem fixed, if I try anyway to make the qtdemux
> plugin work in push mode (by forcing it), there is still the leaking
> problem. And it seems it is not working anyway (it never gets to the
> end of the file header). Has anyone ever tried to use qtdemux in push
> mode?

  Can you run it under valgrind an give us a valgrind report showing us
exactly where it's leaking ? The best would be to open a new bug on
bugzilla and attach the valgrind report there.

    Thanks,

>  
> Regards,
> Al
>
>
>  
> ----- Message d'origine ----
> De : Albert Costa <[hidden email]>
> À : [hidden email]..net
> Envoyé le : Jeudi, 7 Février 2008, 17h56mn 38s
> Objet : Re: [gst-devel] memory leaks with qtdemux
>
> Hi,
>
> in fact I got similar problem. It came not from the format, but from
> the size of file.
>
> If I use a file which is larger than 2Gb, then the component does not
> have same behavior as if smaller.
>
> In normal case, qtdemux acts in pull mode, whereas it acts in push
> mode when file is >2Gb. Reason is that (in short terms), in gstfilesrc
> code the seekable flag is set to false because the fseek function used
> returns only signed 32bits length. In case the file is over 2Gb, fseek
> fails.
>
> I have tried to replace all functions (fseek and other fstat...) by
> their 64bits equivalent, but still the qtdemux does not work properly.
>
> And I don't know yet why it leaks memory in push mode.
>
>  
>
> Has anyone already got this kind of problem? Is there a way to handle
> nice and smooth files that are above the 2Gb limit? Is it expected to
> be handled in later releases of gstreamer?
>
> Btw, I run under win32.
>
> Regards,
>
> Al.
>
>  
>
>  
>
>  
>
> >Hi,
>
> >When I run gst-launch with this command line : gst-launch filesrc
>
> >location=AAA.mov ! qtdemux ! fakesink
>
> >On some file I have a big memory leaks (10Mo /s)
>
> >file type : QuickTime (.mov)
>
> >video codec : dvcp (apple dv-pal)
>
> >audio codec : twos: 16 bit signed big-endian 48kHz
>
> >size : 720x576
>
> >But with another files There are not memory leaks
>
> >NO memory leaks with qtdemix :
>
> >file type : QuickTime (.mov)
>
> >video codec : jpeg(apple photos jpeg)
>
> >no sound
>
> >size : 640x480
>
> >Do you know if the problem becomes from audio stream or video stream
>
> >(dvcp) ?
>
> >Do you know what kind/type of test I should make to localize the
> bug ?
>
> >Samuel
>
>
>
>
> ______________________________________________________________________
> Ne gardez plus qu'une seule adresse mail ! Copiez vos mails vers
> Yahoo! Mail
>
>
> -----La pièce jointe correspondante suit-----
>
> -------------------------------------------------------------------------
> This SF.net email is sponsored by: Microsoft
> Defy all challenges. Microsoft(R) Visual Studio 2008.
> http://clk.atdmt.com/MRT/go/vse0120000070mrt/direct/01/
>
>
> -----La pièce jointe correspondante suit-----
>
> _______________________________________________
> gstreamer-devel mailing list
> [hidden email]
> https://lists.sourceforge.net/lists/listinfo/gstreamer-devel
>
>
>
>
>
> ______________________________________________________________________
> Yahoo! Mail innove : interface hyper pratique, messenger intégré,
> couleurs - découvrez la démo !
> -------------------------------------------------------------------------
> This SF.net email is sponsored by: Microsoft
> Defy all challenges. Microsoft(R) Visual Studio 2008.
> http://clk.atdmt.com/MRT/go/vse0120000070mrt/direct/01/
> _______________________________________________ gstreamer-devel mailing list [hidden email] https://lists.sourceforge.net/lists/listinfo/gstreamer-devel
--
Edward Hervey
Lead Platforms Engineer / Director
(+34) 666 350 320
Collabora Multimedia


-------------------------------------------------------------------------
This SF.net email is sponsored by: Microsoft
Defy all challenges. Microsoft(R) Visual Studio 2008.
http://clk.atdmt.com/MRT/go/vse0120000070mrt/direct/01/
_______________________________________________
gstreamer-devel mailing list
[hidden email]
https://lists.sourceforge.net/lists/listinfo/gstreamer-devel