[Author Prev][Author Next][Thread Prev][Thread Next][Author Index][Thread Index]

Re: [pygame] Re: Movie module being merged



Yeah I know about that. Its because of everything that is done to the video file in the example code. Its a very hard error to pindown. Sometimes it happens during debugging, sometimes not. It happens on various kinds of videos, so its not format dependent, and it only happens after stopping and restarting, and adding surfaces. I haven't found it happening any other way.

Thanks for the feedback.

-Tyler

On Thu, Aug 20, 2009 at 2:05 PM, Lenard Lindstrom <len-l@xxxxxxxxx> wrote:
Hi,

It builds and installs in Debian lenny now. The __movie_test.py even works for the most part, though fails at the end with this error:

Unpausing...
True
True
Stopping..., sleeping for 3 seconds
Playing again...
done restart play...
Surface time...
ValueError: surface does not have the same aspect ratio as the video. This would cause surface corruption.
Fatal Python error: ceval: tstate mix-up
Aborted

I was playing an .flv file, so maybe that had something to do with it.

Lenard

Tyler Laing wrote:
Fixed that, sorry. I should have done an else, but I did an endif >.>

-Tyler

On Thu, Aug 20, 2009 at 1:09 PM, Lenard Lindstrom <len-l@xxxxxxxxx <mailto:len-l@xxxxxxxxx>> wrote:

   Hi Tyler,

   It is finding the headers, but now I am getting this compiler error:

   gcc -pthread -fno-strict-aliasing -DNDEBUG -g -fwrapv -O2 -Wall
   -Wstrict-prototypes -fPIC -D_REENTRANT -I/usr/X11R6/include
   -I/usr/include/SDL -I/usr/include/ffmpeg -I/usr/include/ffmpeg
   -I/usr/include/SDL -I/usr/include/python2.5 -c src/_gmovie.c -o
   build/temp.linux-i686-2.5/src/_gmovie.o

   src/_gmovie.c: In function ‘video_image_display’:
   src/_gmovie.c:516: warning: unused variable ‘_oldtstate’
   src/_gmovie.c: In function ‘queue_picture’:
   src/_gmovie.c:826: warning: unused variable ‘_oldtstate’
   src/_gmovie.c: In function ‘stream_open’:
   src/_gmovie.c:1482: warning: unused variable ‘wanted_subti_stream’

   src/_gmovie.c: In function ‘video_render’:
   src/_gmovie.c:2444: error: ‘AVCodecContext’ has no member named
   ‘reordered_opaque’

   error: command 'gcc' failed with exit status 1
   l

   Here is the version information returned by ffmpeg:

   $/usr/bin/ffmpeg
   FFmpeg version r11872+debian_0.svn20080206-17+lenny1, Copyright
   (c) 2000-2008 Fabrice Bellard, et al.
    configuration: --enable-gpl --enable-libfaad --enable-pp
   --enable-swscaler --enable-x11grab --prefix=/usr --enable-libgsm
   --enable-libtheora --enable-libvorbis --enable-pthreads
   --disable-strip --enable-libdc1394 --disable-armv5te
   --disable-armv6 --disable-altivec --disable-vis --enable-shared
   --disable-static
    libavutil version: 49.6.0
    libavcodec version: 51.50.0
    libavformat version: 52.7.0
    libavdevice version: 52.0.0
    built on Apr 28 2009 02:12:01, gcc: 4.3.2

   Though ffmpeg is statically linked I assume it use the same
   library versions as the share libraries.

   Lenard

   Tyler Laing wrote:

       And I've now committed a fix for throwing exceptions if the
       surface given has the wrong aspect ratio.

       -Tyler

       On Thu, Aug 20, 2009 at 9:46 AM, Tyler Laing
       <trinioler@xxxxxxxxx <mailto:trinioler@xxxxxxxxx>
       <mailto:trinioler@xxxxxxxxx <mailto:trinioler@xxxxxxxxx>>> wrote:

          I have this fixed, with it committed in revision 2628. I have a
          custom Dependency class that adds extra directories to the
       include
          search path(like libavformat or ffmpeg). This prevents any
          accidental conflict of namespaces. Let me know if this
       works or not.

          -Tyler


          On Tue, Aug 18, 2009 at 5:17 PM, Lenard Lindstrom
       <len-l@xxxxxxxxx <mailto:len-l@xxxxxxxxx>
          <mailto:len-l@xxxxxxxxx <mailto:len-l@xxxxxxxxx>>> wrote:

              Hi,

              No, I don't see any Debian specific predefined compiler
              macros. ffmpeg library information is available through
              pkg-config.

              Lenard

              Tyler Laing wrote:

                  Does debian have a unique compile time flag I can use?

                  -Tyler

                  On Tue, Aug 18, 2009 at 12:09 PM, Lenard Lindstrom
                  <len-l@xxxxxxxxx <mailto:len-l@xxxxxxxxx>
       <mailto:len-l@xxxxxxxxx <mailto:len-l@xxxxxxxxx>>
                  <mailto:len-l@xxxxxxxxx <mailto:len-l@xxxxxxxxx>
       <mailto:len-l@xxxxxxxxx <mailto:len-l@xxxxxxxxx>>>> wrote:

                     Hi Tyler,

                     /usr/include is included in the default header
       search
                  paths. What
                     is installed is /usr/include/ffmpeg/avformat.h, not
                     /usr/include/ffmpeg/libavformat/avformat.h. This
       may be
                  a quirk of
                     the Debian dev package and not the general case.

                     Lenard

                     Tyler Laing wrote:

                         You don't have -l/usr/include actually. What
       I will
                  do is add
                         to the directories searched, for the specific
                  libraries to
                         search in /usr/include/ffmpeg &&
       /usr/include/<relevant
                         library name> for if people install from source.
                  Does that
                         sound like a good solution?

                         -Tyler

                         On Tue, Aug 18, 2009 at 9:03 AM, Lenard
       Lindstrom
                         <len-l@xxxxxxxxx <mailto:len-l@xxxxxxxxx>
       <mailto:len-l@xxxxxxxxx <mailto:len-l@xxxxxxxxx>>
                  <mailto:len-l@xxxxxxxxx <mailto:len-l@xxxxxxxxx>
       <mailto:len-l@xxxxxxxxx <mailto:len-l@xxxxxxxxx>>>
                         <mailto:len-l@xxxxxxxxx
       <mailto:len-l@xxxxxxxxx> <mailto:len-l@xxxxxxxxx
       <mailto:len-l@xxxxxxxxx>>
                  <mailto:len-l@xxxxxxxxx <mailto:len-l@xxxxxxxxx>
       <mailto:len-l@xxxxxxxxx <mailto:len-l@xxxxxxxxx>>>>> wrote:

                            Ok, when I add

                            _movie src/_gsound.c src/_gmovie.c
                  src/_gcommand.c src/gmovie.c
                            $(SDL) $(AVFORMAT) $(SWSCALE) $(MIXER)
       $(DEBUG)

                            to Setup I get these build errors:


                            building 'pygame._movie' extension
                            gcc -pthread -fno-strict-aliasing -DNDEBUG -g
                  -fwrapv -O2 -Wall
                            -Wstrict-prototypes -fPIC -D_REENTRANT
                  -I/usr/X11R6/include
                            -I/usr/include/SDL -I/usr/include/SDL
                         -I/usr/include/python2.5 -c
                            src/_gsound.c -o
                  build/temp.linux-i686-2.5/src/_gsound.o
                            In file included from src/_gsound.c:35:
                            src/_gsound.h:36:34: error:
                  libavformat/avformat.h: No such
                         file
                            or directory
                            src/_gsound.c: In function ‘seekBuffer’:
                            src/_gsound.c:403: error: ‘AV_NOPTS_VALUE’
                  undeclared
                         (first use
                            in this function)
                            src/_gsound.c:403: error: (Each undeclared
                  identifier is
                         reported
                            only once
                            src/_gsound.c:403: error: for each
       function it
                  appears in.)
                            error: command 'gcc' failed with exit
       status 1

                            The Debian dev package installs avformat.h in
                  ffmpeg, not
                         libavformat.

                            Lenard


                            Lenard Lindstrom wrote:

                                Hi René,

                                My mistake. I didn't pay attention to
       the error.
                         _movie.so was
                                not event built since the _movie entry is
                  missing in
                         Setup.in.
                                I had to manually enter it to Setup
       the last
                  time, and that
                                was clobbered when I reran config.py.

                                Lenard


                                René Dudfield wrote:

                                    On Tue, Aug 18, 2009 at 4:47 PM,
       Lenard
                                    Lindstrom<len-l@xxxxxxxxx
       <mailto:len-l@xxxxxxxxx>
                  <mailto:len-l@xxxxxxxxx <mailto:len-l@xxxxxxxxx>>
       <mailto:len-l@xxxxxxxxx <mailto:len-l@xxxxxxxxx>
                  <mailto:len-l@xxxxxxxxx <mailto:len-l@xxxxxxxxx>>>
                         <mailto:len-l@xxxxxxxxx
       <mailto:len-l@xxxxxxxxx> <mailto:len-l@xxxxxxxxx
       <mailto:len-l@xxxxxxxxx>>
                  <mailto:len-l@xxxxxxxxx <mailto:len-l@xxxxxxxxx>
       <mailto:len-l@xxxxxxxxx <mailto:len-l@xxxxxxxxx>>>>> wrote:

                                        Hi Tyler,

                                        The module now builds, but the
                  _movie_test.py unit
                                        tests fail:

                                        ERROR: MovieTypeTest.test_height
                                                              ----------------------------------------------------------------------
                                        Traceback (most recent call
       last):
                                        File
                                                              "/home/lenard/.local/lib/python2.5/site-packages/pygame/tests/_movie_test.py",

                                        line 125, in test_height
                                        movie = gmovie.Movie(movie_file)
                                        AttributeError: 'NoneType'
       object has no
                         attribute 'Movie'

                                        If "movie_file" is missing
       shouldn't
                  gmovie.Movie
                                        raise an exception?

                                        Lenard


                                    hi,

                                    check out the try/except at the
       top of
                  that test...
                         maybe
                                    it is
                                    raising an exception, and
       catching it.

                                    that try/except was added to try
       and get
                  the build
                         bot to
                                    build again.

                                    cheers,






                         --        Visit my blog at
       http://oddco.ca/zeroth/zblog





                  --            Visit my blog at
       http://oddco.ca/zeroth/zblog






          --    Visit my blog at http://oddco.ca/zeroth/zblog




       --        Visit my blog at http://oddco.ca/zeroth/zblog





--
Visit my blog at http://oddco.ca/zeroth/zblog




--
Visit my blog at http://oddco.ca/zeroth/zblog