bugGnash - The GNU Flash player - Bugs: bug #32001, yt video assertion failure

 
 

bug #32001: yt video assertion failure

Submitter:  Gabriele Giacone <gg0>
Submitted:  Wed 29 Dec 2010 05:23:44 AM UTC
   
 
Category:  video-ffmpeg Severity:  5 - Blocker
Release:  master Status:  Fixed
Privacy:  Public Assigned to:  bjacques
Open/Closed:  Closed
* Mandatory Fields

Add a New Comment Rich Markup
   

Jump to the original submission

Thu 10 Mar 2011 08:20:12 AM UTC, comment #15: 

I think it's better to open a new one, so that all references from commits and such are mainteined correctly.

Sandro Santilli <strk>
Group Member
Thu 10 Mar 2011 01:05:51 AM UTC, comment #14: 

Thanks!

So the conclusion is Gnash doesn't abort on this movie anymore, but it doesn't always play.

I'll use this bug to track the playback issue.

Bastiaan Jacques <bjacques>
Group Member
Wed 09 Mar 2011 11:07:34 PM UTC, comment #13: 


Some tests:

debian  ffmpeg     gnash
squeeze 4:0.5.2-6   rc3     crash
squeeze 4:0.5.2-6  current  no crash, no play
testing 4:0.5.2-6   rc3     crash
testing 4:0.5.2-6  current  no crash, no play
testing 4:0.6.1-5   rc3     no crash, no play
testing 4:0.6.1-5  current  play!


Gabriele Giacone <gg0>
Group Member
Wed 09 Mar 2011 05:44:12 PM UTC, comment #12: 

As I've been asked, the movie played too in addition to not crashing.
Same with second url: http://www.youtube.com/watch?v=T94F7nSuaZE&feature=related

Video in third url was removed on copyright grounds, but anyway the plugin doesn't crash there either: http://www.youtube.com/watch?gl=US&feature=topvideos&v=VuL9ZI-_MdM

Sandro Santilli <strk>
Group Member
Wed 09 Mar 2011 05:29:48 PM UTC, comment #11: 

Url the original submission refers to is:
http://www.youtube.com/watch?v=4DFtcsp1I7Q&feature=related

That one doesn't crash for me with
Gnash 0.8.9dev (master-19988-c0e405e) and ffmpeg.

Gabriele, can you confirm ?
bjacques: I'll file another for the abort.

Sandro Santilli <strk>
Group Member
Wed 09 Mar 2011 01:01:01 PM UTC, comment #10: 

lt-gtk-gnash: ../../gnash-git/libbase/tu_file.cpp:182: virtual bool gnash::tu_file::seek(std::streampos): Assertion `std::ftell(_data) == pos' failed.

The assertion is in tu_file, which indicates you're not actually testing youtube, but a movie you downloaded to the hard drive.

Please test using the instructions from the original submission.

Bastiaan Jacques <bjacques>
Group Member
Wed 09 Mar 2011 12:14:14 PM UTC, comment #9: 

Sandro, could you please provide a stacktrace for issue described in comment #7?

Bastiaan Jacques <bjacques>
Group Member
Wed 09 Mar 2011 12:11:31 PM UTC, comment #8: 


> I can reproduce, any reason why this is in 'ready_for_test' state ?


The idea is that you test whether the fix was successful.

Bastiaan Jacques <bjacques>
Group Member
Wed 09 Mar 2011 07:21:57 AM UTC, comment #7: 

The crash is still a problem as of master-19987-3697946, altought it looks like it's not an exception anymore:

...
30579:2] 08:15:47 ERROR: MediaParserFfmpeg couldn't parse input format: tried to
 seek at negative offset -9223372036854305453.
30579:2] 08:15:47 ERROR: MediaParserFfmpeg couldn't parse input format: tried to
 seek at negative offset -9223372036854305487.
30579:2] 08:15:47 ERROR: MediaParserFfmpeg couldn't parse input format: tried to seek at negative offset -9223372036854305521.
lt-gtk-gnash: ../../gnash-git/libbase/tu_file.cpp:182: virtual bool gnash::tu_file::seek(std::streampos): Assertion `std::ftell(_data) == pos' failed.

Sandro Santilli <strk>
Group Member
Wed 09 Mar 2011 06:43:41 AM UTC, comment #6: 

I can reproduce, any reason why this is in 'ready_for_test' state ?

Sandro Santilli <strk>
Group Member
Tue 08 Mar 2011 01:23:17 AM UTC, comment #5: 

Seeing as seekMedia is called from an external library, I suspect that throwing an exception would leave the FFMPEG parser in an undefined state (even if the exception is eventually caught by Gnash). So the exception should not be thrown.

Bastiaan Jacques <bjacques>
Group Member
Tue 08 Mar 2011 01:06:42 AM UTC, comment #4: 

I can't reproduce the crash with FFMPEG. However, it is easy to explain.

parseNextFrame() calls av_read_frame which triggers a seek. seekMedia() throws an exception because FFMPEG seeks to an offset < 0. The exception is uncaught, and Gnash aborts.

It seems to me that parseNextFrame() should either be prepared to catch the exception, or seekMedia() should not throw exceptions.

Bastiaan Jacques <bjacques>
Group Member
Mon 21 Feb 2011 02:09:23 AM UTC, comment #3: 


It happens with ffmpeg only.
With gst it plays fine.
Attached bt.

Debian squeeze amd64
libavcodec52 4:0.5.2-6

(file #22742)

Gabriele Giacone <gg0>
Group Member
Mon 21 Feb 2011 01:21:14 AM UTC, comment #2: 

I can't reproduce with master. Could you please verify whether this happens with current sources?

Bastiaan Jacques <bjacques>
Group Member
Wed 29 Dec 2010 02:19:25 PM UTC, comment #1: 

Attached stdout from cli.

(file #22313)

Gabriele Giacone <gg0>
Group Member
Wed 29 Dec 2010 05:23:44 AM UTC, original submission:  


First url from http://lists.gnu.org/archive/html/gnash-dev/2010-04/msg00008.html makes npapi plugin crash.

Both 0.8.8 and git snapshot.

Gabriele Giacone <gg0>
Group Member

 

(Note: upload size limit is set to 16384 kB, after insertion of the required escape characters.)

Attach Files:
   
   
Comment:
   

Attached Files
file #22742:  bt.log added by gg0 (7KiB - text/x-log)
file #22313:  output.log added by gg0 (12KiB - text/x-log)

 

Depends on the following items: None found

Items that depend on this one: None found

 

Carbon-Copy List
  • -email is unavailable- added by strk (Posted a comment)
  • -email is unavailable- added by bjacques (Posted a comment)
  • -email is unavailable- added by gg0 (Submitted the item)
  •  

    There are 0 votes so far. Votes easily highlight which items people would like to see resolved in priority, independently of the priority of the item set by tracker managers.

    Only logged-in users can vote.

     

    Follow 17 latest changes.

    Date Changed by Updated Field Previous Value => Replaced by
    2011-03-10 bjacques Severity3 - Normal 5 - Blocker
        StatusNone Fixed
        Open/ClosedOpen Closed
        Summaryyt video fails to play with FFMPEG &lt; 0.6 yt video assertion failure
    2011-03-10 bjacques Severity5 - Blocker 3 - Normal
        StatusReady For Test None
        Summaryyt video makes Gnash crash yt video fails to play with FFMPEG < 0.6
    2011-03-09 bjacques StatusConfirmed Ready For Test
    2011-03-09 strk StatusReady For Test Confirmed
    2011-03-08 bjacques StatusNone Ready For Test
        Assigned tostrk bjacques
    2011-03-08 bjacques Severity3 - Normal 5 - Blocker
    2011-03-08 bjacques Categoryplugin video-ffmpeg
        Assigned toNone strk
        Summaryyt video makes plugin crash yt video makes Gnash crash
    2011-02-21 gg0 Attached File- Added bt.log, #22742
    2010-12-29 gg0 Attached File- Added output.log, #22313

    Back to the top

    Powered by Savane 3.13-4448.
    Corresponding source code