bugGnash - The GNU Flash player - Bugs: bug #23416, Plugin quits with "Player...

 
 

bug #23416: Plugin quits with "Player request channel hang up"

Submitted by:  Deanna Phillips <deanna>
Submitted on:  Wed 28 May 2008 08:21:34 PM UTC  
 
Category: NoneSeverity: 3 - Normal
Release: NoneStatus: Invalid
Privacy: PublicAssigned to: None
Open/Closed: Closed

Add a New Comment(Rich Markup)
   

You are not logged in

Please log in, so followups can be emailed to you.

 

(Jump to the original submission Jump to the original submission)

Tue 03 Jun 2008 09:18:06 PM UTC, comment #8:

Apparently this is what happens when gstreamer dies. I didn't see any error messages from Gnash while using the gstreamer-configured plugin, but when running the same videos through gst-launch I found that they always crashed in the same place. gstreamer-ffmpeg 0.10.4 contains some bugfixes for flash video that seem to have completely resolved the issue. Super! Please close this.

Deanna Phillips <deanna>
Thu 29 May 2008 12:39:46 PM UTC, comment #7:

consider also switchign to ffmpeg, I committed the sound-enabled
patch there.

Sandro Santilli <strk>
Project Member
Thu 29 May 2008 11:55:37 AM UTC, comment #6:

Since this only happens with gstreamer, and our gstreamer port is mostly untested, I'm going to take a very close look at that. It may not be a gnash bug at all.

Deanna Phillips <deanna>
Wed 28 May 2008 10:59:49 PM UTC, comment #5:

Could you try this command from the standalone?

/usr/local/bin/gtk-gnash http://youtube.com/player2.swf -F 2 -U 'http://youtube.com/watch?v=ItXDJy1JHvE#' -P 'flashvars=BASE_YT_URL=http://youtube.com/&vq=null&video_id=ItXDJy1JHvE&l=162&sk=xHEaTdUmkJToHDcuzPkx6KTYGTR23eNnC&fmt_map=&t=OEgsToPDskIQcM2p-PieAUNHAbWV1wbL&hl=en&plid=AAROUNwIrZF-yisPAAAAoIA4QAA&playnext=0&enablejsapi=1'

Note that the flashvars part expires pretty often, so if it stops
working you'll have to fetch it again from browser log..

It looks like it's dying so we want to know how/why...

Sandro Santilli <strk>
Project Member
Wed 28 May 2008 09:14:27 PM UTC, comment #4:

While it's playing I see two gnash processes. Once it's stopped, one of them hangs around and the other dies.

Two:

[/tmp] daylight% ps auxwww | grep gtk-gnash
deanna 2069 56.1 2.9 15760 30592 p5 RN/0 5:07PM 0:11.81 /usr/local/bin/gtk-gnash -x 10537720 -j 480 -k 395 -u http://youtube.com/player2.swf -F 55 -U http://youtube.com/watch?v=ItXDJy1JHvE# -P allowfullscreen=true -P allowscriptaccess=always -P bgcolor=#FFFFFF -P flashvars=BASE_YT_URL=http://youtube.com/&vq=null&video_id=ItXDJy1JHvE&l=162&sk=xHEaTdUmkJToHDcuzPkx6KTYGTR23eNnC&fmt_map=&t=OEgsToPDskIQcM2p-PieAUNHAbWV1wbL&hl=en&plid=AAROUNwIrZF-yisPAAAAoIA4QAA&playnext=0&enablejsapi=1 -P height=395 -P id=movie_player -P name=movie_player -P quality=high -P src=/player2.swf -P style= -P type=application/x-shockwave-flash -P width=480 -
deanna 29909 0.0 0.1 792 696 p3 R+/0 5:08PM 0:00.00 grep gtk-gnash (zsh)
deanna 20676 0.2 1.3 4968 13672 p5 SN 5:07PM 0:00.29 /usr/local/bin/gtk-gnash -x 0 -j 0 -k 0 -u http://youtube.com/version-check.swf -F 58 -U http://youtube.com/watch?v=ItXDJy1JHvE# -P bgcolor=#FFFFFF -P height=0 -P id=checker -P name=checker -P quality=high -P src=/version-check.swf -P style= -P type=application/x-shockwave-flash -P width=0 -

One:

[/tmp] daylight% ps auxwww | grep gtk-gnash
deanna 7398 0.0 0.0 792 496 p3 R/0 5:09PM 0:00.00 grep gtk-gnash (zsh)
deanna 2069 0.0 0.0 0 0 p5 Z - 0:00.00 (gtk-gnash)
deanna 20676 0.0 1.3 4968 13672 p5 SN 5:07PM 0:00.36 /usr/local/bin/gtk-gnash -x 0 -j 0 -k 0 -u http://youtube.com/version-check.swf -F 58 -U http://youtube.com/watch?v=ItXDJy1JHvE# -P bgcolor=#FFFFFF -P height=0 -P id=checker -P name=checker -P quality=high -P src=/version-check.swf -P style= -P type=application/x-shockwave-flash -P width=0 -

Deanna Phillips <deanna>
Wed 28 May 2008 08:51:42 PM UTC, comment #3:

"request channel hangup" has nothing to do with SharedObject.
It's when a SIGHUP is sent to the standalone player
spawned by the plugin:

bool
nsPluginInstance::handlePlayerRequests(GIOChannel* iochan, GIOCondition cond)
{
if ( cond & G_IO_HUP )
{
cout << "Player request channel hang up" << endl;
g_source_remove(_ichanWatchId);
return false;
}
....

Did the standalone player die ?
Can anyone see another reason for getting G_IO_HUP ?

_ichanWatchId = g_io_add_watch(_ichan, (GIOCondition)(G_IO_IN|G_IO_HUP), (GIOFunc)handlePlayerRequestsWrapper, this);

Sandro Santilli <strk>
Project Member
Wed 28 May 2008 08:37:26 PM UTC, comment #2:

SOLSafeDir in gnashrc does get rid of that error, but the plugin still quits with "request channel hangup"

Deanna Phillips <deanna>
Wed 28 May 2008 08:26:19 PM UTC, comment #1:

Try using /tmp, rather than /dev/null. I don't belive /dev/null is the proper place for writing files like this.

Rob Savoye <rsavoye>
Project Administrator
Wed 28 May 2008 08:21:34 PM UTC, original submission:

This seems random.. it happens sometimes at the beginning and sometimes near the end of a youtube movie. Full verbose output follows.

I guess it's probably not right that it's trying to create a file called /dev/null/videostats.sol.

4500:2208038912] 16:10:48: DEBUG: gnash::media::sound_handler* gnash::media::create_sound_handler_gst() enter
4500:2208038912] 16:10:48: DEBUG: returning
4500:2208038912] 16:10:48: DEBUG: Your X server expects RGB24 pixmap data for standard mode.
4500:2208038912] 16:10:48: DEBUG: Created XEmbedded window
4500:2208038912] 16:10:48: DEBUG: void gnash::Gui::resize_view(int, int) enter
4500:2208038912] 16:10:48: DEBUG: returning
4500:2208038912] 16:10:48: DEBUG: Framebuffer pixel format is RGB24 (little-endian host)
4500:2208038912] 16:10:48: DEBUG: Base url set to: http://youtube.com/watch?v=ItXDJy1JHvE
4500:2208038912] 16:10:48: DEBUG: GTK-AGG: 570000 bytes offscreen buffer allocated

4500:2208038912] 16:10:48: DEBUG: Initialized AGG buffer <0x857de000>, 570000 bytes, 480x395, rowsize is 1440 bytes
4500:2163279872] 16:10:48: DEBUG: Setting jpeg loader to 0x86576400
24877:2190897152] 16:10:48: DEBUG: gnash::media::sound_handler* gnash::media::create_sound_handler_gst() enter
24877:2190897152] 16:10:49: DEBUG: returning
24877:2190897152] 16:10:49: DEBUG: Base url set to: http://youtube.com/watch?v=ItXDJy1JHvE
24877:2190897152] 16:10:49: UNIMPLEMENTED: SWF8 is not fully supported, trying anyway but don't expect it to work
24877:2131870720] 16:10:49: UNIMPLEMENTED: FileAttributes tag in the SWF requests that network access is not grante
d to this movie (or application?) when loaded from the filesystem. Anyway Gnash won't care; use white/black listing
in your .gnashrc instead
24877:2190897152] 16:10:49: DEBUG: Loading native class System
24877:2190897152] 16:10:49: DEBUG: Loading flash package
24877:2190897152] 16:10:49: DEBUG: Loading flash.external package
24877:2190897152] 16:10:49: DEBUG: Global instance list grew to 1 entries
24877:2190897152] 16:10:49: DEBUG: void gnash::Gui::resize_view(int, int) enter
24877:2190897152] 16:10:49: DEBUG: returning
4500:2208038912] 16:10:52: DEBUG: VariableName associated to text field (_root.strings.Views) refer to an unknown t
arget. It is possible that the character will be instantiated later in the SWF stream. Gnash will try to register a
gain on next access.
4500:2208038912] 16:10:52: DEBUG: VariableName associated to text field (_root.strings.From) refer to an unknown ta
rget. It is possible that the character will be instantiated later in the SWF stream. Gnash will try to register ag
ain on next access.
4500:2208038912] 16:10:52: DEBUG: Loading native class MovieClip
4500:2208038912] 16:10:52: DEBUG: Loading native class SharedObject
4500:2208038912] 16:10:52: DEBUG: The rootdir is: /
4500:2208038912] 16:10:52: SECURITY: Opening SharedObject file: /dev/null/soundData.sol
4500:2208038912] 16:10:52: SECURITY: empty or non-existing SOL file "/dev/null/soundData.sol", will be created on f
lush/exit
4500:2208038912] 16:10:52: DEBUG: Loading native class Sound
4500:2208038912] 16:10:52: DEBUG: start: 7, end: 18, retlen: 11
4500:2208038912] 16:10:52: DEBUG: start: 19, end: 19, retlen: 0
4500:2208038912] 16:10:52: UNIMPLEMENTED: MovieClip.attachAudio()
4500:2208038912] 16:10:52: DEBUG: Loading native class Stage
4500:2208038912] 16:10:52: DEBUG: Going to or from scaleMode=noScale. Viewport:450x370 Def:450x370
4500:2208038912] 16:10:52: DEBUG: Loading native class Math
4500:2208038912] 16:10:52: DEBUG: The rootdir is: /
4500:2208038912] 16:10:52: SECURITY: Opening SharedObject file: /dev/null/videostats.sol
4500:2208038912] 16:10:52: SECURITY: empty or non-existing SOL file "/dev/null/videostats.sol", will be created on
flush/exit
4500:2208038912] 16:10:52: DEBUG: Loading native class NetConnection
4500:2208038912] 16:10:52: DEBUG: gnash::as_value gnash::netconnection_new(const gnash::fn_call&) enter
4500:2208038912] 16:10:52: DEBUG: returning
4500:2208038912] 16:10:52: DEBUG: static gnash::as_value gnash::NetConnection::connect_method(const gnash::fn_call&
) enter
4500:2208038912] 16:10:52: DEBUG: returning
4500:2208038912] 16:10:52: DEBUG: Loading native class NetStream
4500:2208038912] 16:10:53: DEBUG: Got a non-NULL audio sink; its wrapper name is: gnashrcsink0
4500:2208038912] 16:10:53: SECURITY: Checking security of URL 'http://youtube.com/get_video?video_id=ItXDJy1JHvE&t=
OEgsToPDskLagrHj8lepT__bMd5IJ_6h'
4500:2208038912] 16:10:53: SECURITY: Load from host youtube.com granted (default)
4500:2208038912] 16:10:53: DEBUG: Connection to movie: http://youtube.com/get_video?video_id=ItXDJy1JHvE&t=OEgsToPD
skLagrHj8lepT__bMd5IJ_6h
4500:2208038912] 16:10:53: DEBUG: URI handler "HTTP client source" found for URI http://youtube.com/get_video?video
_id=ItXDJy1JHvE&t=OEgsToPDskLagrHj8lepT__bMd5IJ_6h
4500:2208038912] 16:10:54: DEBUG: Global instance list grew to 102 entries
4500:2208038912] 16:10:54: DEBUG: void gnash::Gui::resize_view(int, int) enter
4500:2208038912] 16:10:54: DEBUG: returning
4500:2208038912] 16:10:54: DEBUG: Initialized AGG buffer <0x857de000>, 570000 bytes, 1x1, rowsize is 3 bytes
4500:2208038912] 16:10:54: DEBUG: void gnash::Gui::resize_view(int, int) enter
4500:2208038912] 16:10:54: DEBUG: notifying Stage listeners about a resize
4500:2208038912] 16:10:54: DEBUG: returning
4500:2208038912] 16:10:54: DEBUG: Initialized AGG buffer <0x857de000>, 570000 bytes, 480x395, rowsize is 1440 bytes
4500:2208038912] 16:10:54: DEBUG: void gnash::Gui::resize_view(int, int) enter
4500:2208038912] 16:10:54: DEBUG: notifying Stage listeners about a resize
4500:2208038912] 16:10:54: DEBUG: returning
4500:2208038912] 16:10:54: DEBUG: notifying Stage listeners about a resize
4500:2208038912] 16:10:54: DEBUG: returning
4500:2275765248] 16:10:54: DEBUG: decodebin_newpad_cb: linking video/x-raw-rgb stream.
4500:2088763392] 16:10:55: DEBUG: decodebin_newpad_cb: linking audio/x-raw-int stream.
4500:2208038912] 16:10:55: DEBUG: Loading native class System
4500:2208038912] 16:10:55: DEBUG: Loading native class MovieClipLoader
4500:2208038912] 16:10:55: DEBUG: Target is [gnash::sprite_instance(_level0.junkClip):0x8535d800]
4500:2208038912] 16:10:55: SECURITY: Checking security of URL 'http://video-stats.video.google.com/s?ns=yt&plid=AAR
OUA_bpLI_IWKwAAAAoIA4QAA&vid=xHEaTdUmkJToHDcuzPkx6KTYGTR23eNnC&docid=ItXDJy1JHvE&el=detailpage&rt=0.922&bt=0.78&bd=
73728&bc=77824&nbe=1&len=162&st=0.056&et=0.056&fv=BSD%209%2C0%2C999%2C0'
4500:2208038912] 16:10:55: SECURITY: Load from host video-stats.video.google.com granted (default)
4500:2208038912] 16:11:01: DEBUG: No filedescriptors; breaking
4500:2208038912] 16:11:01: DEBUG: HTTP response 200 from url http://video-stats.video.google.com/s?ns=yt&plid=AAROU
A_bpLI_IWKwAAAAoIA4QAA&vid=xHEaTdUmkJToHDcuzPkx6KTYGTR23eNnC&docid=ItXDJy1JHvE&el=detailpage&rt=0.922&bt=0.78&bd=73
728&bc=77824&nbe=1&len=162&st=0.056&et=0.056&fv=BSD%209%2C0%2C999%2C0
4500:2208038912] 16:11:01: ERROR: unknown file type (unknown)
4500:2208038912] 16:11:01: ERROR: Couldn't load library movie 'http://video-stats.video.google.com/s?ns=yt&plid=AAR
OUA_bpLI_IWKwAAAAoIA4QAA&vid=xHEaTdUmkJToHDcuzPkx6KTYGTR23eNnC&docid=ItXDJy1JHvE&el=detailpage&rt=0.922&bt=0.78&bd=
73728&bc=77824&nbe=1&len=162&st=0.056&et=0.056&fv=BSD%209%2C0%2C999%2C0'
4500:2208038912] 16:11:01: ERROR: can't create movie_definition for http://video-stats.video.google.com/s?ns=yt&pli
d=AAROUA_bpLI_IWKwAAAAoIA4QAA&vid=xHEaTdUmkJToHDcuzPkx6KTYGTR23eNnC&docid=ItXDJy1JHvE&el=detailpage&rt=0.922&bt=0.7
8&bd=73728&bc=77824&nbe=1&len=162&st=0.056&et=0.056&fv=BSD%209%2C0%2C999%2C0
4500:2208038912] 16:11:01: DEBUG: The rootdir is: /
4500:2208038912] 16:11:01: SECURITY: Opening SharedObject file: /dev/null/videostats.sol
4500:2208038912] 16:11:01: SECURITY: empty or non-existing SOL file "/dev/null/videostats.sol", will be created on
flush/exit
4500:2208038912] 16:11:01: DEBUG: void gnash::PropsSerializer::operator()(long unsigned int, const gnash::as_value&
) const enter
4500:2208038912] 16:11:01: DEBUG: returning
4500:2208038912] 16:11:01: DEBUG: void gnash::PropsSerializer::operator()(long unsigned int, const gnash::as_value&
) const enter
4500:2208038912] 16:11:01: DEBUG: returning
4500:2208038912] 16:11:01: DEBUG: void gnash::PropsSerializer::operator()(long unsigned int, const gnash::as_value&
) const enter
4500:2208038912] 16:11:01: DEBUG: returning
4500:2208038912] 16:11:01: ERROR: Failed opening file '/dev/null/videostats.sol' in binary mode
4500:2208038912] 16:11:01: ERROR: writing SharedObject file to /dev/null/videostats.sol

Then on stderr:

Player request channel hang up

Deanna Phillips <deanna>

 

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

Attach File(s):
   
   
Comment:
   

No files currently attached

 

Depends on the following items: None found

Items that depend on this one: None found

 

Carbon-Copy List
  • -unavailable- added by strk (Posted a comment)
  • -unavailable- added by rsavoye (Posted a comment)
  • -unavailable- added by deanna (Submitted the item)
  •  

    Do you think this task is very important?
    If so, you can click here to add your encouragement to it.
    This task has 0 encouragements so far.

    Only logged-in users can vote.

     

    Please enter the title of George Orwell's famous dystopian book (it's a date):

     

     

    Follow 3 latest changes.

    Date Changed By Updated Field Previous Value => Replaced By
    Tue 03 Jun 2008 09:44:02 PM UTCstrkStatusNeed Info=>Invalid
      Open/ClosedOpen=>Closed
    Thu 29 May 2008 02:50:20 PM UTCstrkStatusNone=>Need Info

    Back to the top


    Powered by Savane 3.1-cleanup1