Do more on the web, with a fast and secure browser!

Download Opera browser with:

  • built-in ad blocker
  • battery saver
  • free VPN
Download Opera

pepperflashplugin stable vs. developer

  • hi @all,

    i'm reporting a rather peculiar issue concerning the flash plugin on debian linux. both the opera-stable (26.0.1656.32), and the opera-developer (27.0.1689.22) packages are installed, dpkg reports version 1.8 for the pepperflashplugin-nonfree package.

    it all started a few days ago when i was watching a video on youtube, and when i suddenly noticed that my computer was stopping to react on input. first i could switch to a terminal window and issue the command "killall -9 opera", but acting upon this seemed to take ages, and after a short while the whole system was frozen completely, except for the sound from the video, which was still working unimpeded. the only thing i could do was a hardware-reset.

    after this reset the pepper plugin plays videos (images & sound) only in the developer version of opera, the stable version is giving me just the sound with a blank black patch where the video should be running. it does not react on any input, thus giving me no chance to activate the plugin's configuration menu.

    the plugin is of course the very same for both versions of opera, i've checked that. i've also compared each and everything in the experimental opera://flags of the two browsers. i've "dpkg --purge"d and reinstalled both the opera-stable, and the pepperflashplugin-nonfree packages (the latter with a complete new download of chrome from google), still the misterious behaviour persists. and still only in opera-stable.

    something clearly has happened, but what, and where? and what can i do?

  • edit: perhaps i should mention that in the stable version i've enabled hardware acceleration with 4 raster threads, whereas in opera-dev hardware acceleration is disabled. but the config changes in stable i had made some time before the "crash" happened, and i'm pretty certain i had restarted the browser after that.

    and maybe i should also mention that i'm running jackd, version 5.

  • no reaction, nothing at all? not even questions, no further details asked for? that's rather poor for a performance, isn't it? could someone from opera at least have the goodness to inform me about when someone will look into the issue?

    because it's quite cumbersome to always switch between two browser versions, or to keep everything up to date in both of the two (or to remind myself always in which version i currently am, when i'm looking for a bookmark and can't find it.)

  • no reaction, nothing at all? not even questions, no further details asked for? that's rather poor for a performance, isn't it?

    This is a user support forum. Employees such as myself drop by but it is not guaranteed. If you have a bug you should report it to:

    Even there you are not guaranteed a response. Opera is a product used by millions and therefore we cannot give a personal reply to every person that asks a question.

    That said, try running with a clean test profile and see if it works there:

    opera --user-data-dir=$(mktemp -t -d opera-test.XXXXXX) &
  • opera --user-data-dir=$(mktemp -t -d opera-test.XXXXXX)

    with that it worked, though i got two probably unimportant messages in the terminal:

    MESA-LOADER: could not create udev device for fd 12
    ATTENTION: default value of option force_s3tc_enable overridden by environment.

    (i didn't mean to be rude, please accept my apologies.)

  • Ok, if it works in a clean profile but not your main one I would assume it is something special about your main setup. Do you have any extensions installed? If so try disabling them and see if that helps.

    (i didn't mean to be rude, please accept my apologies.)

    No problem, I do understand the frustration!

  • Do you have any extensions installed? If so try disabling them and see if that helps.

    no effect. apart from this, i have the same extensions installed in both browser versions: adguard, classic images, classic tabs, ghostery, internal pages.

    my theory is that there exists some file (or a corrupted file, for that matter) somewhere which normally would have been removed or closed in a normal shutdown procedure of both the plugin and the browser. this removal or closing couldn't take place a) because the system was (or at least appeared to be) frozen, and b) because of my manual resetting the hardware.

    the fact that in a clean profile the effect does not appear corroborates my theory. the funny question now is: which file amongst the myriads in a normal user profile might that be? i'm neither familiar with "find", nor with "diff", but if you could provide me with a oneliner i could use, i would try to compare the resulting outputs for the two profile directories. (i haven't shut down and rebooted the system since then, but always sent it into hibernation, hence the test profile still exists in its pristine state.)

    however, there's probably a simpler solution.

  • i think i got something that might be of help. i started both versions of opera from the shell:

    opera --disable-gl-error-limit 2>opera-stable.log


    opera-developer --disable-gl-error-limit 2>opera-developer.log

    both browsers report html parser errors from the speed dial page. 😉
    then the developer version's output ends with:

    [WARNING:flash/platform/pepper/pep_module.cpp(63)] SANDBOXED

    not so the output from opera-stable. first it reports:

    [1223/] [.RenderCompositor-0x3fb4d035b900]GL ERROR :GL_INVALID_OPERATION : glTexStorage2DEXT: <- error from previous GL command

    then the above sandbox message appears, after that the log says (twice):

    [1223/] WebContentsDelegate::CheckMediaAccessPermission: Not supported.

    and then i get streams of error messages always repeating something like:

    [1223/] [GroupMarkerNotSet(!:D0D47B24E13F0000]GL ERROR :GL_INVALID_OPERATION : ScopedFrameBufferBinder::ctor: was unhandled
    [1223/] [GroupMarkerNotSet(!:D0D47B24E13F0000]GL ERROR :GL_INVALID_OPERATION : ScopedFrameBufferBinder::dtor: <- error from previous GL command
    [1223/] [GroupMarkerNotSet(!:D0D47B24E13F0000]GL ERROR :GL_INVALID_OPERATION : ScopedFrameBufferBinder::dtor: was unhandled
    [1223/] [GroupMarkerNotSet(!:D0D47B24E13F0000]GL ERROR :GL_INVALID_OPERATION : ScopedFrameBufferBinder::ctor: was unhandled
    [1223/] [GroupMarkerNotSet(!:D0D47B24E13F0000]GL ERROR :GL_INVALID_OPERATION : ScopedFrameBufferBinder::dtor: was unhandled
    [1223/] [GroupMarkerNotSet(!:D0D47B24E13F0000]GL ERROR :GL_INVALID_OPERATION : ScopedFrameBufferBinder::ctor: was unhandled
    [1223/] [GroupMarkerNotSet(!:D0D47B24E13F0000]GL ERROR :GL_INVALID_OPERATION : ScopedFrameBufferBinder::dtor: was unhandled
    [1223/] [GroupMarkerNotSet(!:D0D47B24E13F0000]GL ERROR :GL_INVALID_OPERATION : ScopedFrameBufferBinder::ctor: was unhandled
    [1223/] [GroupMarkerNotSet(!:D0D47B24E13F0000]GL ERROR :GL_INVALID_OPERATION : ScopedFrameBufferBinder::dtor: <- error from previous GL command
    [1223/] [GroupMarkerNotSet(!:D0D47B24E13F0000]GL ERROR :GL_INVALID_OPERATION : ScopedFrameBufferBinder::dtor: was unhandled
    [1223/] [GroupMarkerNotSet(!:D0D47B24E13F0000]GL ERROR :GL_INVALID_OPERATION : ScopedFrameBufferBinder::ctor: was unhandled
    [1223/] [GroupMarkerNotSet(!:D0D47B24E13F0000]GL ERROR :GL_INVALID_OPERATION : ScopedFrameBufferBinder::dtor: was unhandled
    [1223/070749:ERROR:gles2_cmd_decoder_autogen.h(1217)] [.PPAPIContext]GL ERROR :GL_INVALID_OPERATION : GetShaderiv: <- error from previous GL command
    [1223/] [.PPAPIContext]GL ERROR :GL_INVALID_OPERATION : ScopedFrameBufferBinder::ctor: was unhandled
    [1223/] [.PPAPIContext]GL ERROR :GL_INVALID_OPERATION : ScopedFrameBufferBinder::dtor: <- error from previous GL command
    [1223/] [.PPAPIContext]GL ERROR :GL_INVALID_OPERATION : ScopedFrameBufferBinder::dtor: was unhandled

    and so on. i can send you the whole log if you give me an address. you'll find mine in your database, i trust.

    happy holidays, btw. (this time i'm not awaiting a swift answer. 😃 )

  • from this discussion i am learning that there exists a built-in task manager. obviously this ominous thing might help. how can i access it? should i install a dbg-version?

    questions over questions, i know... 😉

  • just with the purpose of bringing this issue back to opera's attention (meaning that i'm still in hope someone actually cares about it):

    (1) i removed the whole .config/opera-stable/ directory, only the files connected with my browsing history (cookies, history, stash, and so forth) i first moved out of the way. then i forced dpkg via mc to re-install opera-stable and opera to create its .config directory from scratch.

    (2) i modified the opera://flags so that hardware acceleration is enabled.

    (3) the problem persists. i get the audio, but a black rectangle where the video should be.

    here's what the opera://gpu summary says:

    Graphics Feature Status

    • Canvas: Hardware accelerated
    • Flash: Hardware accelerated
    • Flash Stage3D: Hardware accelerated
    • Flash Stage3D Baseline profile: Hardware accelerated
    • Compositing: Hardware accelerated
    • Multiple Raster Threads: Force enabled
    • Rasterization: Hardware accelerated
    • Threaded Rasterization: Enabled
    • Video Decode: Hardware accelerated
    • Video Encode: Hardware accelerated
    • WebGL: Hardware accelerated

    Driver Bug Workarounds

    • clear_uniforms_before_first_program_use
    • count_all_in_varyings_packing
    • disable_ext_occlusion_query
    • disable_post_sub_buffers_for_onscreen_surfaces
    • scalarize_vec_and_mat_constructor_args

    Problems Detected
    EXT_occlusion_query appears to be buggy with Intel GPUs on Linux
    Applied Workarounds: disable_ext_occlusion_query
    Clear uniforms before first program use on all platforms: 124764, 349137
    Applied Workarounds: clear_uniforms_before_first_program_use
    Mesa drivers in Linux handle varyings without static use incorrectly: 333885
    Applied Workarounds: count_all_in_varyings_packing
    Disable partial swaps on linux drivers: 339493
    Applied Workarounds: disable_post_sub_buffers_for_onscreen_surfaces
    Always rewrite vec/mat constructors to be consistent: 398694
    Applied Workarounds: scalarize_vec_and_mat_constructor_args


    Command Line Args
    --alt-high-dpi-setting=96 --ppapi-flash-path=/usr/lib/pepperflashplugin-nonfree/ --ppapi-flash-version= --enable-proprietary-media-types-playback --flag-switches-begin --no-pings --enable-devtools-experiments --enable-encrypted-media --enable-web-midi --with-feature:experimental-start-page=off --with-feature:extension-system-cpu-api --with-feature:extension-system-memory-api --ignore-gpu-blacklist --num-raster-threads=4 --show-autofill-type-predictions --with-feature:stash-suggestions --with-feature:tab-menu --with-feature:tab-preview-with-keyboard --flag-switches-end --disable-direct-npapi-requests --enable-download-resumption --with-feature:enhanced-autofill

    Driver Information
    GPU0 VENDOR = 0x8086, DEVICE= 0x2772
    Optimus false
    AMD switchable false
    Driver vendor MESA
    Driver version 9.1.6
    Driver date <empty>
    Pixel shader version 1.20
    Vertex shader version 1.20
    Machine model name <empty>
    Machine Model version <empty>
    GL_VENDOR Intel Open Source Technology Center
    GL_RENDERER Mesa DRI Intel(R) 945G
    GL_VERSION 1.4 Mesa 9.1.6
    GL_EXTENSIONS GL_ARB_multisample GL_EXT_abgr GL_EXT_bgra GL_EXT_blend_color GL_EXT_blend_minmax GL_EXT_blend_subtract GL_EXT_copy_texture GL_EXT_polygon_offset GL_EXT_subtexture GL_EXT_texture_object GL_EXT_vertex_array GL_EXT_compiled_vertex_array GL_EXT_texture GL_EXT_texture3D GL_IBM_rasterpos_clip GL_ARB_point_parameters GL_EXT_draw_range_elements GL_EXT_packed_pixels GL_EXT_point_parameters GL_EXT_rescale_normal GL_EXT_separate_specular_color GL_EXT_texture_edge_clamp GL_SGIS_generate_mipmap GL_SGIS_texture_border_clamp GL_SGIS_texture_edge_clamp GL_SGIS_texture_lod GL_ARB_multitexture GL_IBM_multimode_draw_arrays GL_IBM_texture_mirrored_repeat GL_3DFX_texture_compression_FXT1 GL_ARB_texture_cube_map GL_ARB_texture_env_add GL_ARB_transpose_matrix GL_EXT_blend_func_separate GL_EXT_fog_coord GL_EXT_multi_draw_arrays GL_EXT_secondary_color GL_EXT_texture_env_add GL_EXT_texture_filter_anisotropic GL_EXT_texture_lod_bias GL_INGR_blend_func_separate GL_NV_blend_square GL_NV_light_max_exponent GL_NV_texgen_reflection GL_NV_texture_env_combine4 GL_S3_s3tc GL_SUN_multi_draw_arrays GL_ARB_texture_border_clamp GL_ARB_texture_compression GL_EXT_framebuffer_object GL_EXT_texture_compression_s3tc GL_EXT_texture_env_combine GL_EXT_texture_env_dot3 GL_MESA_window_pos GL_NV_packed_depth_stencil GL_NV_texture_rectangle GL_ARB_depth_texture GL_ARB_shadow GL_ARB_texture_env_combine GL_ARB_texture_env_crossbar GL_ARB_texture_env_dot3 GL_ARB_texture_mirrored_repeat GL_ARB_window_pos GL_EXT_stencil_two_side GL_EXT_texture_cube_map GL_APPLE_packed_pixels GL_APPLE_vertex_array_object GL_ARB_draw_buffers GL_ARB_fragment_program GL_ARB_fragment_shader GL_ARB_shader_objects GL_ARB_vertex_program GL_ARB_vertex_shader GL_ATI_draw_buffers GL_ATI_texture_env_combine3 GL_EXT_shadow_funcs GL_EXT_stencil_wrap GL_MESA_pack_invert GL_MESA_ycbcr_texture GL_ARB_half_float_pixel GL_ARB_point_sprite GL_ARB_shading_language_100 GL_ARB_sync GL_ARB_texture_non_power_of_two GL_ARB_vertex_buffer_object GL_ATI_blend_equation_separate GL_EXT_blend_equation_separate GL_OES_read_format GL_ARB_pixel_buffer_object GL_ARB_texture_rectangle GL_EXT_pixel_buffer_object GL_EXT_texture_compression_dxt1 GL_EXT_texture_rectangle GL_ARB_framebuffer_object GL_EXT_framebuffer_blit GL_EXT_framebuffer_multisample GL_EXT_packed_depth_stencil GL_APPLE_object_purgeable GL_ARB_vertex_array_object GL_ATI_separate_stencil GL_EXT_gpu_program_parameters GL_OES_EGL_image GL_ARB_copy_buffer GL_ARB_map_buffer_range GL_EXT_separate_shader_objects GL_ARB_ES2_compatibility GL_ARB_debug_output GL_ARB_draw_elements_base_vertex GL_ARB_explicit_attrib_location GL_ARB_provoking_vertex GL_ARB_sampler_objects GL_EXT_provoking_vertex GL_ARB_get_program_binary GL_ARB_robustness GL_ANGLE_texture_compression_dxt3 GL_ANGLE_texture_compression_dxt5 GL_ARB_internalformat_query GL_ARB_texture_storage GL_ARB_invalidate_subdata
    Window system binding vendor SGI
    Window system binding version 1.4
    Window system binding extensions GLX_ARB_create_context GLX_ARB_create_context_profile GLX_ARB_multisample GLX_EXT_create_context_es2_profile GLX_EXT_import_context GLX_EXT_texture_from_pixmap GLX_EXT_visual_info GLX_EXT_visual_rating GLX_MESA_copy_sub_buffer GLX_OML_swap_method GLX_SGI_swap_control GLX_SGIS_multisample GLX_SGIX_fbconfig GLX_SGIX_pbuffer GLX_SGIX_visual_select_group GLX_INTEL_swap_event
    Window manager Fluxbox
    Compositing manager No
    Direct rendering Yes
    Reset notification strategy 0x8261
    GPU process crash count 0

    the problem clearly starts at line 1909 in, because this is what the first error messages states:
    [0119/] : [.PPAPIContext]GL ERROR :GL_INVALID_OPERATION : ScopedFrameBufferBinder::ctor: was unhandled

    that's all i can do for you gays, short of dropping my pants. but for that i first might want to get to know you better. 😉

    any suggestions on how i can circumvent things without disabling hardware acceleration?