"tstate mix-up". I've looked, and there are no Python calls done without
having the GIL. Like I said, its an extremely weird bug. It also occurs if
you do five play throughs(play(0)) sequentially.

-Tyler

On Fri, Aug 21, 2009 at 6:11 PM, Lenard Lindstrom <[email protected]> wrote:

> Hi,
>
> Is it always a "tstate mix-up". If so, then it is likely a threading
> problem. Absolutely no Python api calls should be made while the GIL is
> released. If not then probably a memory problem.
>
> Lenard
>
> Tyler Laing wrote:
>
>> 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 <[email protected]<mailto:
>> [email protected]>> 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
>>        <[email protected] <mailto:[email protected]>
>>        <mailto:[email protected] <mailto:[email protected]>>> 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
>>               <[email protected] <mailto:[email protected]>
>>        <mailto:[email protected] <mailto:[email protected]>>
>>               <mailto:[email protected]
>>        <mailto:[email protected]> <mailto:[email protected]
>>        <mailto:[email protected]>>>> 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
>>               <[email protected] <mailto:[email protected]>
>>        <mailto:[email protected] <mailto:[email protected]>>
>>                  <mailto:[email protected] <mailto:[email protected]>
>>        <mailto:[email protected] <mailto:[email protected]>>>> 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
>>                          <[email protected] <mailto:[email protected]>
>>        <mailto:[email protected] <mailto:[email protected]>>
>>               <mailto:[email protected] <mailto:[email protected]>
>>        <mailto:[email protected] <mailto:[email protected]>>>
>>                          <mailto:[email protected]
>>        <mailto:[email protected]> <mailto:[email protected]
>>        <mailto:[email protected]>>
>>               <mailto:[email protected] <mailto:[email protected]>
>>        <mailto:[email protected] <mailto:[email protected]>>>>> 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
>>                                 <[email protected]
>>        <mailto:[email protected]> <mailto:[email protected]
>>        <mailto:[email protected]>>
>>               <mailto:[email protected] <mailto:[email protected]>
>>        <mailto:[email protected] <mailto:[email protected]>>>
>>                          <mailto:[email protected]
>>        <mailto:[email protected]> <mailto:[email protected]
>>        <mailto:[email protected]>>
>>               <mailto:[email protected] <mailto:[email protected]>
>>        <mailto:[email protected] <mailto:[email protected]>>>>
>>                                 <mailto:[email protected]
>>        <mailto:[email protected]>
>>               <mailto:[email protected] <mailto:[email protected]>>
>>        <mailto:[email protected] <mailto:[email protected]>
>>               <mailto:[email protected] <mailto:[email protected]>>>
>>                          <mailto:[email protected]
>>        <mailto:[email protected]> <mailto:[email protected]
>>        <mailto:[email protected]>>
>>               <mailto:[email protected] <mailto:[email protected]>
>>        <mailto:[email protected] <mailto:[email protected]>>>>>> 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<[email protected]
>>        <mailto:[email protected]>
>>               <mailto:[email protected] <mailto:[email protected]>>
>>                          <mailto:[email protected]
>>        <mailto:[email protected]> <mailto:[email protected]
>>        <mailto:[email protected]>>>
>>               <mailto:[email protected] <mailto:[email protected]>
>>        <mailto:[email protected] <mailto:[email protected]>>
>>                          <mailto:[email protected]
>>        <mailto:[email protected]> <mailto:[email protected]
>>        <mailto:[email protected]>>>>
>>                                 <mailto:[email protected]
>>        <mailto:[email protected]>
>>               <mailto:[email protected] <mailto:[email protected]>>
>>        <mailto:[email protected] <mailto:[email protected]>
>>               <mailto:[email protected] <mailto:[email protected]>>>
>>                          <mailto:[email protected]
>>        <mailto:[email protected]> <mailto:[email protected]
>>        <mailto:[email protected]>>
>>               <mailto:[email protected] <mailto:[email protected]>
>>        <mailto:[email protected] <mailto:[email protected]>>>>>> 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
>>
>
>


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

Reply via email to