[PD] gem segfault when opening video
Charles Goyard
cg at fsck.fr
Tue Feb 19 11:36:46 CET 2013
Hi IOhannes,
> > when opening a .mov file on pd-extended on linux, I get :
> [...]
> > Segmentation fault (core dumped)
> >
> > On the command line, gmerlin fails to open the file as well, with
> > the same message, but lqtplay is able to play the movie.
>
> by the "same message", do you mean that gmerlin also segfaults?
No, I mean "No video decoder found for fourcc avc1" that I quoted below.
> i think it's a bug in gmerlin rather than Gem. so gmerlin first thinks
> it can decode the film and then fails
Yes, that's sound just like it. Because gmerlin returns the right
video size and frame count[1]. That can be tricky to handle in a
reliable and consistent way.
However, I would blame Gem for the segfault. Maybe Gem could check if
the pointer to the video stream is valid before using it?
> it would be great if you could provide a (short) clip that triggers
> the crash, so the underlying bug can be fixed.
Here's one and a test patch:
http://charles.goyard.free.fr/temp/
> actually there is an undocumented and little tested extra argument to
> "open" that allows you to give a given backend priority (that is: the
> given backend will be tried first, and then all the rest):
> [open foo.mov RGBA quicktime4linux(
> should use lqt4l before gmerlin.
This does the trick with Gem from git but not Gem in pd-extended.
Thanks !
> come to think of it, i think the API should be changed to be
> consistent with [pix_video].
> e.g. [driver quicktime4linux, open foo.mov(
> to exclusively(!) select lqt for opening any file.
Sounds good to me.
Thanks,
Charles
[1] btw the help files for pix_film and pix_movie mention fps instead of
frame count.
More information about the Pd-list
mailing list