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