bugGnash - The GNU Flash player - Bugs: bug #23081, FLV renders as colorized grid

 
 

bug #23081: FLV renders as colorized grid

Submitted by:  Michael <mchladek>
Submitted on:  Sun 27 Apr 2008 10:45:53 PM UTC  
 
Category: video-gstSeverity: 3 - Normal
Release: NoneStatus: Fixed
Privacy: PublicAssigned to: Bastiaan Jacques <bjacques>
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)

Mon 09 Jun 2008 01:59:40 PM UTC, comment #12:

Thanks!

Benjamin Wolsey <bwy>
Project Member
Mon 09 Jun 2008 01:46:38 PM UTC, comment #11:

Yes, it can be closed. Sorry for not reporting sooner.

Michael <mchladek>
Sat 07 Jun 2008 04:45:00 PM UTC, comment #10:

Can we close this bug? It would be ideal if the original reporter could confirm that it's fixed.

Benjamin Wolsey <bwy>
Project Member
Wed 07 May 2008 01:28:43 AM UTC, comment #9:

I've committed a fix for this issue. Michael, could you please again try CVS HEAD?

Bastiaan Jacques <bjacques>
Project MemberIn charge of this item.
Wed 07 May 2008 12:23:03 AM UTC, comment #8:

I wonder if this is an issue with endianness.

Bastiaan Jacques <bjacques>
Project MemberIn charge of this item.
Tue 06 May 2008 09:01:38 PM UTC, comment #7:

This is not AGG related, so I'm not the right person for this bug. Who made the video interface? There must be something wrong in the video decoding department.

Udo Giacomozzi <udog>
Project Member
Tue 06 May 2008 01:02:46 AM UTC, comment #6:

Same effect with OpenGL. Here is the debug output:

805573440] 20:55:11: DEBUG: gnash::media::sound_handler* gnash::media::create_sound_handler_gst() enter
805573440] 20:55:12: DEBUG: OpenGL extension version - 1.2
805573440] 20:55:12: DEBUG: Got double-buffered visual.
805573440] 20:55:12: DEBUG: Created top level window
805573440] 20:55:13: DEBUG: void gnash::Gui::resize_view(int, int) enter
805573440] 20:55:13: DEBUG: Base url set to: http://youtube.com/player2.swf
805573440] 20:55:13: SECURITY: Checking security of URL 'http://youtube.com/player2.swf'
805573440] 20:55:13: SECURITY: Load from host youtube.com granted (default).
805573440] 20:55:13: DEBUG: Movie http://youtube.com/player2.swf (SWF7) added to library
860452016] 20:55:13: DEBUG: Setting jpeg loader to 0x10745570
860452016] 20:55:13: DEBUG: HTTP response 200 from url http://youtube.com/player2.swf
805573440] 20:55:13: DEBUG: At StagePlacementCallback, button _level0.player.movie.overlay.play_button got 2 active chars for state UP
805573440] 20:55:13: DEBUG: At StagePlacementCallback, button _level0.player.movie.end_screen.prev_button got 2 active chars for state UP
805573440] 20:55:13: DEBUG: VariableName associated to text field (_root.strings.Views) refer to an unknown target. It is possible that the character will be instantiated later in the SWF stream. Gnash will try to register again on next access.
805573440] 20:55:13: DEBUG: VariableName associated to text field (_root.strings.From) refer to an unknown target. It is possible that the character will be instantiated later in the SWF stream. Gnash will try to register again on next access.
805573440] 20:55:13: DEBUG: At StagePlacementCallback, button _level0.player.max_movie got 3 active chars for state UP
805573440] 20:55:13: DEBUG: At StagePlacementCallback, button _level0.player.close_movie got 1 active chars for state UP
805573440] 20:55:13: DEBUG: At StagePlacementCallback, button _level0.player.controller.min got 1 active chars for state UP
805573440] 20:55:13: DEBUG: At StagePlacementCallback, button _level0.player.controller.max got 1 active chars for state UP
805573440] 20:55:13: DEBUG: At StagePlacementCallback, button _level0.player.controller.regular got 1 active chars for state UP
805573440] 20:55:13: DEBUG: At StagePlacementCallback, button _level0.player.controller.small got 1 active chars for state UP
805573440] 20:55:13: DEBUG: At StagePlacementCallback, button _level0.player.controller.stop_button got 3 active chars for state UP
805573440] 20:55:13: DEBUG: At StagePlacementCallback, button _level0.player.controller.play_button got 3 active chars for state UP
805573440] 20:55:13: DEBUG: At StagePlacementCallback, button _level0.player.controller.pause_button got 3 active chars for state UP
805573440] 20:55:13: DEBUG: At StagePlacementCallback, button _level0.player.controller.sound_control.v4 got 1 active chars for state UP
805573440] 20:55:13: DEBUG: At StagePlacementCallback, button _level0.player.controller.sound_control.v3 got 1 active chars for state UP
805573440] 20:55:13: DEBUG: At StagePlacementCallback, button _level0.player.controller.sound_control.v2 got 1 active chars for state UP
805573440] 20:55:13: DEBUG: At StagePlacementCallback, button _level0.player.controller.sound_control.v1 got 1 active chars for state UP
805573440] 20:55:13: DEBUG: Loading native class MovieClip
805573440] 20:55:13: DEBUG: Loading native class SharedObject
805573440] 20:55:13: DEBUG: The rootdir is: /
805573440] 20:55:13: SECURITY: Opening SharedObject file: /tmp//soundData.sol
805573440] 20:55:13: SECURITY: empty or non-existing SOL file "/tmp//soundData.sol", will be created on flush/exit
805573440] 20:55:13: DEBUG: Loading native class Sound
805573440] 20:55:13: DEBUG: start: 7, end: 18, retlen: 11
805573440] 20:55:13: DEBUG: start: 19, end: 19, retlen: 0
805573440] 20:55:13: UNIMPLEMENTED: MovieClip.attachAudio()
805573440] 20:55:13: DEBUG: Loading native class Stage
805573440] 20:55:13: DEBUG: Going to or from scaleMode=noScale. Viewport:450x370 Def:450x370
805573440] 20:55:14: DEBUG: Loading native class Math
805573440] 20:55:14: DEBUG: The rootdir is: /
805573440] 20:55:14: SECURITY: Opening SharedObject file: /tmp//videostats.sol
805573440] 20:55:14: DEBUG: /tmp//videostats.sol is an SOL file
805573440] 20:55:14: DEBUG: Read 2 AMF objects from /tmp//videostats.sol
805573440] 20:55:14: DEBUG: Loading native class NetConnection
805573440] 20:55:14: DEBUG: gnash::as_value gnash::netconnection_new(const gnash::fn_call&) enter
805573440] 20:55:14: DEBUG: static gnash::as_value gnash::NetConnection::connect_method(const gnash::fn_call&) enter
805573440] 20:55:14: DEBUG: Loading native class NetStream
805573440] 20:55:14: DEBUG: Unable to retrieve a valid audio sink from ~/.gnashrc
805573440] 20:55:14: DEBUG: Got a non-NULL audio sink; its wrapper name is: autoaudiosink0
805573440] 20:55:14: SECURITY: Checking security of URL 'http://youtube.com/get_video?video_id=9sJUDx7iEJw&t=OEgsToPDskJ4dR1cBZ3pnNwOF2zHW6tU'
805573440] 20:55:14: SECURITY: Load from host youtube.com granted (default).
805573440] 20:55:14: DEBUG: Connection to movie: http://youtube.com/get_video?video_id=9sJUDx7iEJw&t=OEgsToPDskJ4dR1cBZ3pnNwOF2zHW6tU
805573440] 20:55:14: DEBUG: URI handler "GnomeVFS Source" found for URI http://youtube.com/get_video?video_id=9sJUDx7iEJw&t=OEgsToPDskJ4dR1cBZ3pnNwOF2zHW6tU
805573440] 20:55:15: DEBUG: Global instance list grew to 102 entries
805573440] 20:55:15: DEBUG: notifying Stage listeners about a resize
805573440] 20:55:15: DEBUG: get url: target=, url=http://youtube.com/javascript:checkCurrentVideo('9sJUDx7iEJw'); (javascript:checkCurrentVideo('9sJUDx7iEJw');), method=0 (sendVars:0, loadTarget:0, loadVariable:0)
805573440] 20:55:15: SECURITY: Checking security of URL 'http://youtube.com/javascript:checkCurrentVideo('9sJUDx7iEJw');'
805573440] 20:55:15: SECURITY: Load from host youtube.com granted (default).
805573440] 20:55:15: DEBUG: Attempt to write geturl requests fd 2
805573440] 20:55:15: DEBUG: Sent request 'GET :javascript:checkCurrentVideo('9sJUDx7iEJw');' to host fd 2
870347952] 20:55:16: DEBUG: decodebin_newpad_cb: linking audio/x-raw-int stream.
805573440] 20:55:16: ERROR: OpenGL: invalid value
870347952] 20:55:16: DEBUG: decodebin_newpad_cb: linking video/x-raw-rgb stream.
805573440] 20:55:17: DEBUG: void gnash::Gui::resize_view(int, int) enter
805573440] 20:55:17: DEBUG: notifying Stage listeners about a resize
805573440] 20:55:18: DEBUG: Loading native class System
805573440] 20:55:18: DEBUG: Loading native class MovieClipLoader
805573440] 20:55:18: DEBUG: Target is [gnash::sprite_instance(_level0.junkClip):0x1094b6e8]
805573440] 20:55:18: SECURITY: Checking security of URL 'http://video-stats.video.google.com/s?ns=yt&plid=AARMhUX5-tPY85X-AAAAoAAoQAA&vid=CynI8QoUoidfGhCldm8n1e7ovF0qArAhC&docid=9sJUDx7iEJw&el=detailpage&rt=2.484&bc=871960&nbe=3&len=121&st=1.486&et=1.486&fv=LNX%208%2C0%2C99%2C0&fs=1'
805573440] 20:55:18: SECURITY: Load from host video-stats.video.google.com granted (default).
805573440] 20:55:19: DEBUG: HTTP response 200 from url http://video-stats.video.google.com/s?ns=yt&plid=AARMhUX5-tPY85X-AAAAoAAoQAA&vid=CynI8QoUoidfGhCldm8n1e7ovF0qArAhC&docid=9sJUDx7iEJw&el=detailpage&rt=2.484&bc=871960&nbe=3&len=121&st=1.486&et=1.486&fv=LNX%208%2C0%2C99%2C0&fs=1
805573440] 20:55:19: ERROR: unknown file type (unknown)
805573440] 20:55:19: ERROR: Couldn't load library movie 'http://video-stats.video.google.com/s?ns=yt&plid=AARMhUX5-tPY85X-AAAAoAAoQAA&vid=CynI8QoUoidfGhCldm8n1e7ovF0qArAhC&docid=9sJUDx7iEJw&el=detailpage&rt=2.484&bc=871960&nbe=3&len=121&st=1.486&et=1.486&fv=LNX%208%2C0%2C99%2C0&fs=1'
805573440] 20:55:19: ERROR: can't create movie_definition for http://video-stats.video.google.com/s?ns=yt&plid=AARMhUX5-tPY85X-AAAAoAAoQAA&vid=CynI8QoUoidfGhCldm8n1e7ovF0qArAhC&docid=9sJUDx7iEJw&el=detailpage&rt=2.484&bc=871960&nbe=3&len=121&st=1.486&et=1.486&fv=LNX%208%2C0%2C99%2C0&fs=1
805573440] 20:55:19: DEBUG: Loading native class Mouse
805573440] 20:55:25: DEBUG: The rootdir is: /
805573440] 20:55:25: SECURITY: Opening SharedObject file: /tmp//videostats.sol
805573440] 20:55:25: DEBUG: /tmp//videostats.sol is an SOL file
805573440] 20:55:25: DEBUG: Read 2 AMF objects from /tmp//videostats.sol
805573440] 20:55:25: DEBUG: void gnash::PropsSerializer::operator()(size_t, const gnash::as_value&) const enter
805573440] 20:55:25: DEBUG: void gnash::PropsSerializer::operator()(size_t, const gnash::as_value&) const enter
805573440] 20:55:25: DEBUG: void gnash::PropsSerializer::operator()(size_t, const gnash::as_value&) const enter
805573440] 20:55:25: SECURITY: SharedObject '/tmp//videostats.sol' written to filesystem.
805573440] 20:55:28: DEBUG: static gboolean gnash::GtkGui::delete_event(GtkWidget, GdkEvent, void*) enter

Michael <mchladek>
Fri 02 May 2008 01:27:36 PM UTC, comment #5:

When you look closely (Screenshot.png) only the video part is distorted, while the controls are fine. Looks like AGG doesn't deal with the video data as it should be.

The AGG renderer assumes (as noted in drawVideoFrame implementation) that the video stream is encoded in R/G/B with 8 bits for each channel. Maybe that assumption is not always right (who can tell/wrote video decoding?)

Michael: Can you try with OpenGL backend and see if it shows the same effect?

Udo Giacomozzi <udog>
Project Member
Wed 30 Apr 2008 02:07:46 PM UTC, comment #4:

Here is a bit more info that I hope will be helpful. Note that what follows is from building from CVS (2008-04-27). However, the same issue is there and debug info is the same. Here is agg-relevant warnings I received while running make:

/usr/include/agg2/agg_color_gray.h: In member function 'const agg::gray16& agg::gray16::demultiply()':
/usr/include/agg2/agg_color_gray.h:338: warning: enumeral and non-enumeral type in conditional expression
/usr/include/agg2/agg_scanline_bin.h: At global scope:
/usr/include/agg2/agg_scanline_bin.h:189: warning: unused parameter 'min_x'
/usr/include/agg2/agg_scanline_bin.h:189: warning: unused parameter 'max_x'
/usr/include/agg2/agg_rasterizer_sl_clip.h:320: warning: unused parameter 'x1'
/usr/include/agg2/agg_rasterizer_sl_clip.h:320: warning: unused parameter 'y1'
/usr/include/agg2/agg_rasterizer_sl_clip.h:320: warning: unused parameter 'x2'
/usr/include/agg2/agg_rasterizer_sl_clip.h:320: warning: unused parameter 'y2'
/usr/include/agg2/agg_bezier_arc.h: In member function 'unsigned int agg::bezier_arc::vertex(double, double)':
/usr/include/agg2/agg_bezier_arc.h:71: warning: enumeral and non-enumeral type in conditional expression
/usr/include/agg2/agg_image_accessors.h: In member function 'const agg::int8u* agg::image_accessor_clone<PixFmt>::span(int, int, unsigned int) [with PixFmt = agg::pixfmt_alpha_blend_rgba<agg::blender_rgba_pre<agg::rgba8, agg::order_rgba>, agg::row_accessor<unsigned char>, unsigned int>]':
/usr/include/agg2/agg_span_image_filter_rgba.h:144: instantiated from 'void agg::span_image_filter_rgba_bilinear<Source, Interpolator>::generate(typename Source::color_type*, int, int, unsigned int) [with Source = agg::image_accessor_clone<agg::pixfmt_alpha_blend_rgba<agg::blender_rgba_pre<agg::rgba8, agg::order_rgba>, agg::row_accessor<unsigned char>, unsigned int> >, Interpolator = agg::span_interpolator_linear_subdiv<agg::trans_affine, 8u>]'
render_handler_agg_style.h:148: instantiated from 'void gnash::agg_style_bitmap<PixelFormat, span_allocator_type, img_source_type, interpolator_type, sg_type>::generate_span(agg::rgba8*, int, int, unsigned int) [with PixelFormat = agg::pixfmt_alpha_blend_rgba<agg::blender_rgba_pre<agg::rgba8, agg::order_rgba>, agg::row_accessor<unsigned char>, unsigned int>, span_allocator_type = agg::span_allocator<agg::pixfmt_alpha_blend_rgba<agg::blender_rgba_pre<agg::rgba8, agg::order_rgba>, agg::row_accessor<unsigned char>, unsigned int> >, img_source_type = agg::image_accessor_clone<agg::pixfmt_alpha_blend_rgba<agg::blender_rgba_pre<agg::rgba8, agg::order_rgba>, agg::row_accessor<unsigned char>, unsigned int> >, interpolator_type = agg::span_interpolator_linear_subdiv<agg::trans_affine, 8u>, sg_type = agg::span_image_filter_rgba_bilinear<agg::image_accessor_clone<agg::pixfmt_alpha_blend_rgba<agg::blender_rgba_pre<agg::rgba8, agg::order_rgba>, agg::row_accessor<unsigned char>, unsigned int> >, agg::span_interpolator_linear_subdiv<agg::trans_affine, 8u> >]'
render_handler_agg.cpp:2226: instantiated from here
/usr/include/agg2/agg_image_accessors.h:191: warning: comparison between signed and unsigned integer expressions
/usr/include/agg2/agg_image_accessors.h: In member function 'const agg::int8u* agg::image_accessor_clone<PixFmt>::span(int, int, unsigned int) [with PixFmt = agg::pixfmt_alpha_blend_rgb<agg::blender_rgb_pre<agg::rgba8, agg::order_rgb>, agg::row_accessor<unsigned char> >]':
/usr/include/agg2/agg_span_image_filter_rgb.h:141: instantiated from 'void agg::span_image_filter_rgb_bilinear<Source, Interpolator>::generate(typename Source::color_type*, int, int, unsigned int) [with Source = agg::image_accessor_clone<agg::pixfmt_alpha_blend_rgb<agg::blender_rgb_pre<agg::rgba8, agg::order_rgb>, agg::row_accessor<unsigned char> > >, Interpolator = agg::span_interpolator_linear_subdiv<agg::trans_affine, 8u>]'
render_handler_agg_style.h:148: instantiated from 'void gnash::agg_style_bitmap<PixelFormat, span_allocator_type, img_source_type, interpolator_type, sg_type>::generate_span(agg::rgba8*, int, int, unsigned int) [with PixelFormat = agg::pixfmt_alpha_blend_rgb<agg::blender_rgb_pre<agg::rgba8, agg::order_rgb>, agg::row_accessor<unsigned char> >, span_allocator_type = agg::span_allocator<agg::pixfmt_alpha_blend_rgb<agg::blender_rgb_pre<agg::rgba8, agg::order_rgb>, agg::row_accessor<unsigned char> > >, img_source_type = agg::image_accessor_clone<agg::pixfmt_alpha_blend_rgb<agg::blender_rgb_pre<agg::rgba8, agg::order_rgb>, agg::row_accessor<unsigned char> > >, interpolator_type = agg::span_interpolator_linear_subdiv<agg::trans_affine, 8u>, sg_type = agg::span_image_filter_rgb_bilinear<agg::image_accessor_clone<agg::pixfmt_alpha_blend_rgb<agg::blender_rgb_pre<agg::rgba8, agg::order_rgb>, agg::row_accessor<unsigned char> > >, agg::span_interpolator_linear_subdiv<agg::trans_affine, 8u> >]'
render_handler_agg.cpp:2226: instantiated from here
/usr/include/agg2/agg_image_accessors.h:191: warning: comparison between signed and unsigned integer expressions
/usr/include/agg2/agg_pixfmt_gray.h: At global scope:
/usr/include/agg2/agg_pixfmt_gray.h: In instantiation of 'static void agg::blender_gray<ColorT>::blend_pix(typename ColorT::value_type*, unsigned int, unsigned int, unsigned int) [with ColorT = agg::gray8]':
/usr/include/agg2/agg_pixfmt_gray.h:370: instantiated from 'void agg::pixfmt_alpha_blend_gray<Blender, RenBuf, Step, Offset>::blend_solid_hspan(int, int, unsigned int, const typename Blender::color_type&, const agg::int8u*) [with Blender = agg::blender_gray<agg::gray8>, RenBuf = agg::row_accessor<unsigned char>, unsigned int Step = 1u, unsigned int Offset = 0u]'
/usr/include/agg2/agg_renderer_base.h:281: instantiated from 'void agg::renderer_base<PixelFormat>::blend_solid_hspan(int, int, int, const typename PixelFormat::color_type&, const agg::cover_type*) [with PixelFormat = agg::pixfmt_alpha_blend_gray<agg::blender_gray<agg::gray8>, agg::row_accessor<unsigned char>, 1u, 0u>]'
/usr/include/agg2/agg_renderer_scanline.h:40: instantiated from 'void agg::render_scanline_aa_solid(const Scanline&, BaseRenderer&, const ColorT&) [with Scanline = agg::scanline_u8, BaseRenderer = agg::renderer_base<agg::pixfmt_alpha_blend_gray<agg::blender_gray<agg::gray8>, agg::row_accessor<unsigned char>, 1u, 0u> >, ColorT = agg::gray8]'
/usr/include/agg2/agg_renderer_scanline.h:705: instantiated from 'void agg::render_scanlines_compound_layered(Rasterizer&, ScanlineAA&, BaseRenderer&, SpanAllocator&, StyleHandler&) [with Rasterizer = agg::rasterizer_compound_aa<agg::rasterizer_sl_clip<agg::ras_conv_dbl> >, ScanlineAA = agg::scanline_u8, BaseRenderer = agg::renderer_base<agg::pixfmt_alpha_blend_gray<agg::blender_gray<agg::gray8>, agg::row_accessor<unsigned char>, 1u, 0u> >, SpanAllocator = agg::span_allocator<agg::gray8>, StyleHandler = gnash::render_handler_agg<PixelFormat>::draw_mask_shape_impl(const std::vector<gnash::Path<float>, std::allocator<gnash::Path<float> > >&, int, scanline_type&)::sh_type]'
render_handler_agg.cpp:1647: instantiated from 'void gnash::render_handler_agg<PixelFormat>::draw_mask_shape_impl(const std::vector<gnash::Path<float>, std::allocator<gnash::Path<float> > >&, int, scanline_type&) [with scanline_type = agg::scanline_u8, PixelFormat = agg::pixfmt_alpha_blend_rgba<agg::blender_rgba_pre<agg::rgba8, agg::order_abgr>, agg::row_accessor<unsigned char>, unsigned int>]'
render_handler_agg.cpp:1557: instantiated from 'void gnash::render_handler_agg<PixelFormat>::draw_mask_shape(const std::vector<gnash::Path<float>, std::allocator<gnash::Path<float> > >&, int) [with PixelFormat = agg::pixfmt_alpha_blend_rgba<agg::blender_rgba_pre<agg::rgba8, agg::order_abgr>, agg::row_accessor<unsigned char>, unsigned int>]'
render_handler_agg.cpp:976: instantiated from 'void gnash::render_handler_agg<PixelFormat>::draw_shape_character(gnash::shape_character_def*, const gnash::matrix&, const gnash::cxform&, float, const std::vector<gnash::fill_style, std::allocator<gnash::fill_style> >&, const std::vector<gnash::line_style, std::allocator<gnash::line_style> >&) [with PixelFormat = agg::pixfmt_alpha_blend_rgba<agg::blender_rgba_pre<agg::rgba8, agg::order_abgr>, agg::row_accessor<unsigned char>, unsigned int>]'
render_handler_agg.cpp:2226: instantiated from here
/usr/include/agg2/agg_pixfmt_gray.h:44: warning: unused parameter 'cover'
/usr/include/agg2/agg_conv_curve.h: In member function 'unsigned int agg::conv_curve<VertexSource, Curve3, Curve4>::vertex(double, double) [with VertexSource = agg::path_base<agg::vertex_block_storage<double, 8u, 256u> >, Curve3 = agg::curve3, Curve4 = agg::curve4]':
/usr/include/agg2/agg_conv_curve.h:160: warning: 'end_y' may be used uninitialized in this function
/usr/include/agg2/agg_conv_curve.h:159: warning: 'end_x' may be used uninitialized in this function
/usr/include/agg2/agg_conv_curve.h:158: warning: 'ct2_y' may be used uninitialized in this function
/usr/include/agg2/agg_conv_curve.h:157: warning: 'ct2_x' may be used uninitialized in this function
/usr/include/agg2/agg_gradient_lut.h: In member function 'void agg::gradient_lut<ColorInterpolator, ColorLutSize>::build_lut() [with ColorInterpolator = agg::color_interpolator<agg::rgba8>, unsigned int ColorLutSize = 256u]':
/usr/include/agg2/agg_gradient_lut.h:213: warning: 'end' may be used uninitialized in this function
gtk_glue_agg.cpp:121: warning: unused parameter 'display'
gtk_glue_agg.cpp:156: warning: unused parameter 'width'
gtk_glue_agg.cpp:156: warning: unused parameter 'height'

And here is flv-relevant warnings I received while running make:

gst/gstflvdemux.c:56: warning: missing initializer
gst/gstflvdemux.c:56: warning: (near initialization for 'flv_demux_details._gst_reserved')
gst/gstflvdemux.c: In function 'gst_flv_demux_class_init_trampoline':
gst/gstflvdemux.c:61: warning: unused parameter 'data'
gst/gstflvdemux.c: In function 'gst_flv_demux_get_type':
gst/gstflvdemux.c:61: warning: missing initializer
gst/gstflvdemux.c:61: warning: (near initialization for 'object_info.value_table')
gst/gstflvdemux.c: In function 'gst_flv_demux_flush':
gst/gstflvdemux.c:67: warning: unused parameter 'discont'
gst/gstflvdemux.c: In function 'gst_flv_demux_seek_to_prev_keyframe':
gst/gstflvdemux.c:417: warning: unused parameter 'demux'
gst/gstflvdemux.c: In function 'gst_flv_demux_sink_activate_push':
gst/gstflvdemux.c:814: warning: unused parameter 'active'
gst/gstflvdemux.c: In function 'gst_flv_demux_init':
gst/gstflvdemux.c:1164: warning: unused parameter 'g_class'

Michael <mchladek>
Tue 29 Apr 2008 03:41:17 PM UTC, comment #3:

Maybe Udo can help here (from the log):

6172] 18:42:29: DEBUG: Your X server expects RGB24 pixmap data for standard mode.
6172] 18:42:29: DEBUG: Created top level window
6172] 18:42:30: DEBUG: X server pixel format is (R16:8, G8:8, B0:8, 32 bpp)
6172] 18:42:30: DEBUG: X server is using ARGB32 pixel format
6172] 18:42:30: DEBUG: framebuffer pixel format is ARGB32 (big-endian host)

Benjamin Wolsey <bwy>
Project Member
Mon 28 Apr 2008 11:31:10 PM UTC, comment #2:

Yeah, it could make for a good video effects plugin!

I'm using gstreamer 0.10.12. Old, I know, but it's the latest package available for ubuntu-powerpc. Perhaps I'll try building the latest release.

My debug log is attached below. I downloaded the movie, and it plays fine in totem-gst. A screenshot of that is also attached for comparison.

(file #15546, file #15547)

Michael <mchladek>
Mon 28 Apr 2008 09:05:47 AM UTC, comment #1:

Wow, that looks pretty cool.

Can you post your gstreamer version and the output from AGG? You can get the latter by pasting Gnash's debugging output (See 'Producing debug logs' at http://wiki.gnashdev.org/Bug_reports) (Though I see you're running Gnash from the command line, so you probably already know that).

Also, you could verify that gstreamer works outside gnash by downloading the FLV directly (URL also revealed in Gnash's debug log) and playing with gstreamer.

Benjamin Wolsey <bwy>
Project Member
Sun 27 Apr 2008 10:45:53 PM UTC, original submission:

I've compiled 0.8.2 on my PowerPC iBook G4 under Ubuntu Feisty (7.04). Flash is running well except for YouTube or any other sites that use FLV. Gnash is rendering the video horribly; a screenshot is attached. Here are the details of my build:

Build options 0.8.2
Target:
Renderer: agg - GUI: GTK - Media handler: gst
Configured with: --prefix=/usr --disable-debugger --enable-gui=gtk --enable-media=gst --enable-renderer=agg --enable-plugins --with-npapi-plugindir=/usr/lib/mozilla/plugins
CXXFLAGS: -g -O2 -pthread -pthread -W -Wall -Wcast-align -Wcast-qual -Wpointer-arith -Wreturn-type
Gstreamer version is: 0.10.12.

I recently tried compiling from the CVS (2008-04-25), and the same issue was there. Let me know what debug info would be helpful. Thanks!

Michael <mchladek>

 

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

Attach File(s):
   
   
Comment:
   

Attached Files
file #15546:  debug.txt added by mchladek (5KiB - text/plain)
file #15547:  totem_flv.png added by mchladek (127KiB - image/png)
file #15535:  Screenshot.png added by mchladek (269KiB - image/png - YouTube video in standalone player)

 

Depends on the following items: None found

Items that depend on this one: None found

 

Carbon-Copy List
  • -unavailable- added by bjacques (Posted a comment)
  • -unavailable- added by udog (Posted a comment)
  • -unavailable- added by bwy (Posted a comment)
  • -unavailable- added by mchladek (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 11 latest changes.

    Date Changed By Updated Field Previous Value => Replaced By
    Mon 09 Jun 2008 01:59:40 PM UTCbwyStatusReady For Test=>Fixed
      Open/ClosedOpen=>Closed
    Wed 07 May 2008 01:29:04 AM UTCbjacquesCategoryrender-agg=>video-gst
    Wed 07 May 2008 01:28:43 AM UTCbjacquesStatusNone=>Ready For Test
    Wed 07 May 2008 12:23:03 AM UTCbjacquesAssigned toNone=>bjacques
    Tue 06 May 2008 09:01:38 PM UTCudogAssigned toudog=>None
    Tue 29 Apr 2008 03:41:17 PM UTCbwyCategoryNone=>render-agg
      Assigned toNone=>udog
    Mon 28 Apr 2008 11:31:10 PM UTCmchladekAttached File-=>Added debug.txt, #15546
      Attached File-=>Added totem_flv.png, #15547
    Sun 27 Apr 2008 10:45:53 PM UTCmchladekAttached File-=>Added Screenshot.png, #15535

    Back to the top


    Powered by Savane 3.1-cleanup1