[GEM-dev] problem to play movies at normal speed with GEM objects

chris clepper cgclepper at gmail.com
Sat Aug 15 20:18:02 CEST 2009


Have you checked RAM and hard disk usage while playing the movies?  Is it
just a specific part of certain clips that slow down or do all clips do it?

On Sat, Aug 15, 2009 at 1:32 PM, Jack <jack at rybn.org> wrote:

> Hello,
>
> I come back with my problem.
> I try different option on the nvidia driver (180.44) in the part opengl
> settings and antialiasing settings but nothing new. I always get
> slowings down on my movies.
> They seem to start during long scenes of the movie (no logic here, i
> know, but it is what i observe).
> Any help ?
> ++
>
> Jack
>
>
> Le lundi 10 août 2009 à 14:43 +0200, Jack a écrit :
> > Le lundi 10 août 2009 à 13:23 +0200, Matteo Sisti Sette a écrit :
> > > Hi,
> > >
> > > Maybe this won't help at all (I only use gem on windows), but just in
> > > case it does:
> > >
> > > Does it work as expected if you disable the "auto" mode and pass the
> > > frame number to the right outlet?
> >
> > I done a counter with a metro and not with gemhead because the framerate
> > pass from 25 to 7 then back to 25, etc. Then it should not change
> > anything compare to [auto 1(.
> > On Linux, the movie is played at each frame render but the rate is not
> > really constant. It was much better on my old Powerbook G4 and MacOSX :)
> > Is there a minipulation to do on the NVidia driver (v. 180.44) ?
> > I know that each frame is render when the buffer is ready with OpenGL
> > (swap buffer in double buffer). But here the swap is very very slow on
> > my brand new Qosmio with a NVidia 9700M GTS ! :)))
> > And this is the same in single buffer mode with :
> >
> > [1 (
> > |
> > [metro 40]
> > |
> > [t b b]
> > |     |
> > |     to right inlet of pix_film
> > |
> > to gemhead
> >
> >
> > Play a movie with the help patch of [pix_film] at a almost constant rate
> > would not be possible on Linux, i really don't think that it is correct.
> > So, if someone can help me, please ! ;)
> > Thanx a lot.
> > ++
> >
> > Jack
> >
> >
> > PS : some informations from GEM about my config. :
> >
> > GEM information
> > ---------------
> > OpenGL info
> > Vendor: NVIDIA Corporation
> > Renderer: GeForce 9700M GTS/PCI/SSE2
> > Version: 3.0.0 NVIDIA 180.44
> > Extensions: GL_ARB_color_buffer_float
> > Extensions: GL_ARB_depth_buffer_float
> > Extensions: GL_ARB_depth_texture
> > Extensions: GL_ARB_draw_buffers
> > Extensions: GL_ARB_draw_instanced
> > Extensions: GL_ARB_fragment_program
> > Extensions: GL_ARB_fragment_program_shadow
> > Extensions: GL_ARB_fragment_shader
> > Extensions: GL_ARB_half_float_pixel
> > Extensions: GL_ARB_half_float_vertex
> > Extensions: GL_ARB_framebuffer_object
> > Extensions: GL_ARB_geometry_shader4
> > Extensions: GL_ARB_imaging
> > Extensions: GL_ARB_map_buffer_range
> > Extensions: GL_ARB_multisample
> > Extensions: GL_ARB_multitexture
> > Extensions: GL_ARB_occlusion_query
> > Extensions: GL_ARB_pixel_buffer_object
> > Extensions: GL_ARB_point_parameters
> > Extensions: GL_ARB_point_sprite
> > Extensions: GL_ARB_shadow
> > Extensions: GL_ARB_shader_objects
> > Extensions: GL_ARB_shading_language_100
> > Extensions: GL_ARB_texture_border_clamp
> > Extensions: GL_ARB_texture_buffer_object
> > Extensions: GL_ARB_texture_compression
> > Extensions: GL_ARB_texture_cube_map
> > Extensions: GL_ARB_texture_env_add
> > Extensions: GL_ARB_texture_env_combine
> > Extensions: GL_ARB_texture_env_dot3
> > Extensions: GL_ARB_texture_float
> > Extensions: GL_ARB_texture_mirrored_repeat
> > Extensions: GL_ARB_texture_non_power_of_two
> > Extensions: GL_ARB_texture_rectangle
> > Extensions: GL_ARB_texture_rg
> > Extensions: GL_ARB_transpose_matrix
> > Extensions: GL_ARB_vertex_array_object
> > Extensions: GL_ARB_vertex_buffer_object
> > Extensions: GL_ARB_vertex_program
> > Extensions: GL_ARB_vertex_shader
> > Extensions: GL_ARB_window_pos
> > Extensions: GL_ATI_draw_buffers
> > Extensions: GL_ATI_texture_float
> > Extensions: GL_ATI_texture_mirror_once
> > Extensions: GL_S3_s3tc
> > Extensions: GL_EXT_texture_env_add
> > Extensions: GL_EXT_abgr
> > Extensions: GL_EXT_bgra
> > Extensions: GL_EXT_blend_color
> > Extensions: GL_EXT_blend_equation_separate
> > Extensions: GL_EXT_blend_func_separate
> > Extensions: GL_EXT_blend_minmax
> > Extensions: GL_EXT_blend_subtract
> > Extensions: GL_EXT_compiled_vertex_array
> > Extensions: GL_EXT_Cg_shader
> > Extensions: GL_EXT_bindable_uniform
> > Extensions: GL_EXT_depth_bounds_test
> > Extensions: GL_EXT_direct_state_access
> > Extensions: GL_EXT_draw_buffers2
> > Extensions: GL_EXT_draw_instanced
> > Extensions: GL_EXT_draw_range_elements
> > Extensions: GL_EXT_fog_coord
> > Extensions: GL_EXT_framebuffer_blit
> > Extensions: GL_EXT_framebuffer_multisample
> > Extensions: GL_EXT_framebuffer_object
> > Extensions: GL_EXTX_framebuffer_mixed_formats
> > Extensions: GL_EXT_framebuffer_sRGB
> > Extensions: GL_EXT_geometry_shader4
> > Extensions: GL_EXT_gpu_program_parameters
> > Extensions: GL_EXT_gpu_shader4
> > Extensions: GL_EXT_multi_draw_arrays
> > Extensions: GL_EXT_packed_depth_stencil
> > Extensions: GL_EXT_packed_float
> > Extensions: GL_EXT_packed_pixels
> > Extensions: GL_EXT_pixel_buffer_object
> > Extensions: GL_EXT_point_parameters
> > Extensions: GL_EXT_rescale_normal
> > Extensions: GL_EXT_secondary_color
> > Extensions: GL_EXT_separate_specular_color
> > Extensions: GL_EXT_shadow_funcs
> > Extensions: GL_EXT_stencil_two_side
> > Extensions: GL_EXT_stencil_wrap
> > Extensions: GL_EXT_texture3D
> > Extensions: GL_EXT_texture_array
> > Extensions: GL_EXT_texture_buffer_object
> > Extensions: GL_EXT_texture_compression_latc
> > Extensions: GL_EXT_texture_compression_rgtc
> > Extensions: GL_EXT_texture_compression_s3tc
> > Extensions: GL_EXT_texture_cube_map
> > Extensions: GL_EXT_texture_edge_clamp
> > Extensions: GL_EXT_texture_env_combine
> > Extensions: GL_EXT_texture_env_dot3
> > Extensions: GL_EXT_texture_filter_anisotropic
> > Extensions: GL_EXT_texture_integer
> > Extensions: GL_EXT_texture_lod
> > Extensions: GL_EXT_texture_lod_bias
> > Extensions: GL_EXT_texture_mirror_clamp
> > Extensions: GL_EXT_texture_object
> > Extensions: GL_EXT_texture_sRGB
> > Extensions: GL_EXT_texture_swizzle
> > Extensions: GL_EXT_texture_shared_exponent
> > Extensions: GL_EXT_timer_query
> > Extensions: GL_EXT_vertex_array
> > Extensions: GL_EXT_vertex_array_bgra
> > Extensions: GL_IBM_rasterpos_clip
> > Extensions: GL_IBM_texture_mirrored_repeat
> > Extensions: GL_KTX_buffer_region
> > Extensions: GL_NV_blend_square
> > Extensions: GL_NV_copy_depth_to_color
> > Extensions: GL_NV_depth_buffer_float
> > Extensions: GL_NV_conditional_render
> > Extensions: GL_NV_depth_clamp
> > Extensions: GL_NV_explicit_multisample
> > Extensions: GL_NV_fence
> > Extensions: GL_NV_float_buffer
> > Extensions: GL_NV_fog_distance
> > Extensions: GL_NV_fragment_program
> > Extensions: GL_NV_fragment_program_option
> > Extensions: GL_NV_fragment_program2
> > Extensions: GL_NV_framebuffer_multisample_coverage
> > Extensions: GL_NV_geometry_shader4
> > Extensions: GL_NV_gpu_program4
> > Extensions: GL_NV_half_float
> > Extensions: GL_NV_light_max_exponent
> > Extensions: GL_NV_multisample_coverage
> > Extensions: GL_NV_multisample_filter_hint
> > Extensions: GL_NV_occlusion_query
> > Extensions: GL_NV_packed_depth_stencil
> > Extensions: GL_NV_parameter_buffer_object
> > Extensions: GL_NV_pixel_data_range
> > Extensions: GL_NV_point_sprite
> > Extensions: GL_NV_primitive_restart
> > Extensions: GL_NV_register_combiners
> > Extensions: GL_NV_register_combiners2
> > Extensions: GL_NV_texgen_reflection
> > Extensions: GL_NV_texture_compression_vtc
> > Extensions: GL_NV_texture_env_combine4
> > Extensions: GL_NV_texture_expand_normal
> > Extensions: GL_NV_texture_rectangle
> > Extensions: GL_NV_texture_shader
> > Extensions: GL_NV_texture_shader2
> > Extensions: GL_NV_texture_shader3
> > Extensions: GL_NV_transform_feedback
> > Extensions: GL_NV_vertex_array_range
> > Extensions: GL_NV_vertex_array_range2
> > Extensions: GL_NV_vertex_program
> > Extensions: GL_NV_vertex_program1_1
> > Extensions: GL_NV_vertex_program2
> > Extensions: GL_NV_vertex_program2_option
> > Extensions: GL_NV_vertex_program3
> > Extensions: GL_NVX_conditional_render
> > Extensions: GL_SGIS_generate_mipmap
> > Extensions: GL_SGIS_texture_lod
> > Extensions: GL_SGIX_depth_texture
> > Extensions: GL_SGIX_shadow
> > Extensions: GL_SUN_slice_accum
> > ---------------
> > window state: 1
> > topmost: 0
> > profile: 0
> > buffer: 2
> > stereo: 0
> > full screen: 0
> > width: 500, height 500
> > offset: 0+0
> > frame rate: 50.000000
> > red: 8
> > green: 8
> > blue: 8
> > max texture: 8192
> > lighting 0
> > rectangle texturing: 2
> > direct yuv texturing: 0
> > >
> > > If the answer is yes, than a workaround would be:
> > >
> > > [gemhead]
> > > |
> > > [t b]
> > > |
> > > [any implementation of a counter]
> > > |
> > > (to the right outlet of pix_movie)
> > >
> > > I am not good at ASCII art, but if you want a frame rate different than
> > > 1:1 (meaning one movie frame per gem frame), you can implement the
> > > "counter" with necessary calculations and roundings to get the needed
> > > frame number.
> > >
> > > Obviously, if the answer to the initial question is "NO" and/or if the
> > > framerate unstability you describe is not only in the playing of the
> > > pix_movie but also in the framerate of the gemwin, then all this won't
> > > be of any help.
> > >
> > > I always use this technique (well it's too simple to call it a
> > > "technique") and never the "auto" mode even if I have never experienced
> > > problems with auto: the fact is that this also lets you easily control
> > > the playing speed.
> > > But I have to say that I have only used codecs that compress each frame
> > > separately (namely DV-PAL in my case); with any codec that uses
> previous
> > > frames to decode a given frame, this method may give, I guess, problems
> > > of performance.
> > >
> > > Bye
> > > m.
> > >
> > > Jack escribió:
> > > > The behavior of [pix_film] is not the same on Macosx and on Ubuntu.
> > > > What is described in the help file seems to work only for Linux OS.
> > > > I am a newbie on Ubuntu, that's why i am a little surprised to have a
> > > > different behavior between the two OS. And, if i'm right, the movie
> > > > doesn't play each frame on MacOSX and it play in loop when you click
> on
> > > > [auto 1(.
> > > > However, you are right on Linux ;) I have tested and see that the
> frame
> > > > started at 25 and go down to 7 !
> > > > So my question is : how to have a approximate 'constant' frame rate ?
> > > > (to send a bang to [gemhead] with a [metro] changes not at all the
> > > > problem).
> > > > Thanx.
> > > > ++
> > > >
> > > > Jack
> > > >
> > > >
> > > > Le lundi 10 août 2009 à 09:47 +0200, Max a écrit :
> > > >> In the helpfile to pix_film is written:
> > > >> -----
> > > >> use the "auto" message, to automatically proceed to the next frame
> > > >> each rendering cycle.
> > > >> -----
> > > >> that means that the movie is never played back according to a header
> > > >> information about the real fps, but according to the frame rate the
> > > >> gemwin is running at.
> > > >>
> > > >> so i the behavior you are describing is expected. no movie will run
> > > >> just like in VLC other than purely by coincidence.
> > > >> please correct me if i'm wrong.
> > > >>
> > > >> max
> > > >>
> > > >> Am 10.08.2009 um 00:48 schrieb Jack:
> > > >>
> > > >>> Hello,
> > > >>>
> > > >>> I encounter a problem to play movies at normal speed with
> [pix_film]
> > > >>> and
> > > >>> [pix_movie]. I tried with a .mov (photo JPEG) and a .avi movies.
> > > >>> During
> > > >>> the movie play, sometimes the movies go fast, sometimes they go
> > > >>> slowly.
> > > >>> I use the message [auto 1( to start the movies or the second inlet
> > > >>> with
> > > >>> a counter but still have the problem !?
> > > >>> So i think i have something wrong with Pd (or Ubuntu) and not GEM.
> > > >>> For information, all is ok to play these movies with VLC.
> > > >>> Can you help me to configure something wrong on my computer ? :)
> > > >>> Thanx a
> > > >>> lot !
> > > >>>
> > > >>> Here my configuration :
> > > >>> Pd version 0.41.4-extended
> > > >>> GEM: ver: 0.92.CVS
> > > >>> GEM: compiled: Jun 15 2009
> > > >>> Ubuntu 9.04
> > > >>> GPU : Nvidia 9700M GTS
> > > >>>
> > > >>> ++
> > > >>>
> > > >>> Jack
> > > >>>
> > > >>>
> > > >>>
> > > >>> _______________________________________________
> > > >>> GEM-dev mailing list
> > > >>> GEM-dev at iem.at
> > > >>> http://lists.puredata.info/listinfo/gem-dev
> > > >
> > > >
> > > > _______________________________________________
> > > > GEM-dev mailing list
> > > > GEM-dev at iem.at
> > > > http://lists.puredata.info/listinfo/gem-dev
> > >
> > >
> >
> >
> > _______________________________________________
> > GEM-dev mailing list
> > GEM-dev at iem.at
> > http://lists.puredata.info/listinfo/gem-dev
>
>
> _______________________________________________
> GEM-dev mailing list
> GEM-dev at iem.at
> http://lists.puredata.info/listinfo/gem-dev
>
-------------- next part --------------
An HTML attachment was scrubbed...
URL: <http://lists.puredata.info/pipermail/gem-dev/attachments/20090815/28c4cd35/attachment.htm>


More information about the GEM-dev mailing list