[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.


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

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:

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

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


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


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

   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

   error: command 'gcc' failed with exit status 1

   Here is the version information returned by 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
    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.


   Tyler Laing wrote:

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


       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
          search path(like libavformat or ffmpeg). This prevents any
          accidental conflict of namespaces. Let me know if this
       works or not.


          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:


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


              Tyler Laing wrote:

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


                  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
                  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.


                     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 &&
                         library name> for if people install from source.
                  Does that
                         sound like a good solution?


                         On Tue, Aug 18, 2009 at 9:03 AM, Lenard
                         <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)

                            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/include/SDL -I/usr/include/SDL
                         -I/usr/include/python2.5 -c
                            src/_gsound.c -o
                            In file included from src/_gsound.c:35:
                            src/_gsound.h:36:34: error:
                  libavformat/avformat.h: No such
                            or directory
                            src/_gsound.c: In function ‘seekBuffer’:
                            src/_gsound.c:403: error: ‘AV_NOPTS_VALUE’
                         (first use
                            in this function)
                            src/_gsound.c:403: error: (Each undeclared
                  identifier is
                            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


                            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
                                I had to manually enter it to Setup
       the last
                  time, and that
                                was clobbered when I reran config.py.


                                René Dudfield wrote:

                                    On Tue, Aug 18, 2009 at 4:47 PM,
                  <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

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

                                        If "movie_file" is missing
                                        raise an exception?



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

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


                         --        Visit my blog at

                  --            Visit my blog at

          --    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