linphone-developers
[Top][All Lists]
Advanced

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

Re: [Linphone-developers] liblinpone H264, again


From: Cynthia He
Subject: Re: [Linphone-developers] liblinpone H264, again
Date: Mon, 21 Mar 2016 16:05:41 +0000

Oh my goodness! That was it!  After a week and half of struggling, using the wrong version of openh264 was the last thing.  Thank you so much Ghisian for your help.  I was about to give up…

To briefly summerize all the obstacles I had to overcome to get this working, in hope of giving some pointers to other people:

1.  Always turn on debug and inspect the log output carefully.

2.  Find out what and where linphone is trying to load.  Make sure the openh264 library is at the right place and that liblinphone can find it.  Look for something like the following.  There could be lots of reasons that h264 is not loaded, ranging from not being able to find the plugin directory, to incorrect file names, to wrong dylib names.

2016-03-21 11:42:05:037 ortp-message-Loading ms plugins from [./lib/mediastreamer/plugins]
2016-03-21 11:42:05:037 ortp-message-Loading plugin ./lib/mediastreamer/plugins/libmsilbc.0.dylib...
2016-03-21 11:42:05:069 ortp-message-Plugin loaded (./lib/mediastreamer/plugins/libmsilbc.0.dylib)
2016-03-21 11:42:05:069 ortp-message-Loading plugin ./lib/mediastreamer/plugins/libmsopenh264.0.dylib...
2016-03-21 11:42:05:074 ortp-warning-Fail to load plugin ./lib/mediastreamer/plugins/libmsopenh264.0.dylib : dlopen(./lib/mediastreamer/plugins/libmsopenh264.0.dylib, 2): Library not loaded: @rpath/libopenh264.0.dylib
  Referenced from: /Users/interopsolutions/Library/Developer/Xcode/DerivedData/TurtleAlert-carbbnslxexreshgpbuuyoxaonmd/Build/Products/Debug/TurtleAlert.app/Contents/MacOS/lib/mediastreamer/plugins/libmsopenh264.0.dylib
  Reason: image not found



3. on OS X, use tool and install_name_tool to make sure everything is matched correctly

4. And of course, use the version of openh264 that media stream 2 supports.  If everything is loaded, but H264 still does not work, you may be using a incorrect version.

5. Finally, don’t give up, openH264 does work with liblinphone.  :)



Thanks again, everyone.  

Cynthia


On Mar 21, 2016, at 11:28 AM, Ghislain MARY <address@hidden> wrote:

Hi Cynthia,

It looks like you are using an openh264 library that is newer than the version 1.5.0 for which the msopenh264 mediastreamer2 plugin is designed. Maybe you build it from source? Either build the version 1.5.0 or use a version distributed by Cisco.
Regarding your licensing question, the H.264 license is handled by MPEGLA. Take a look at http://www.mpegla.com/main/programs/AVC/Pages/Intro.aspx

Cheers,
Ghislain

On 21/03/2016 15:07, Cynthia He wrote:
Hello,

I managed to get open H264 loaded. SIP hand shake all seems well.  Now the error I am getting is much more cryptic to me (see below).  I am not sure what uiSliceMode is and how I can change its value.  Any ideas?

[OpenH264] this = 0x0x60000004cea0, Error:ParamValidationExt(), invalid uiSliceMode (4) settings!
[OpenH264] this = 0x0x60000004cea0, Error:WelsInitEncoderExt(), ParamValidationExt failed return 2.
[OpenH264] this = 0x0x60000004cea0, Error:CWelsH264SVCEncoder::Initialize(), WelsInitEncoderExt failed.


Thanks for any help you can offer!


-------------—more information from the log output-------------

2016-03-21 09:55:06:031 ortp-message-Setting video size 288x352 on stream [0x100e26080]
2016-03-21 09:55:06:031 ortp-message-linphone_call_start_video_stream lc rotation:0

2016-03-21 09:55:06:032 ortp-message-RtpSession [0x101061a00] sending to rtp [192.168.137.27:15586] rtcp [192.168.137.27:15587] 
2016-03-21 09:55:06:032 ortp-message-Using permissive algorithm
2016-03-21 09:55:06:032 ortp-message-Stun packet sent for session [0x101061a00]
2016-03-21 09:55:06:033 ortp-message-Using the default video configuration list
2016-03-21 09:55:06:033 ortp-message-target bitrate not set for stream [0x100e26080] using payload's bitrate is 1500000
2016-03-21 09:55:06:033 ortp-message-Limiting bitrate of video encoder to 1500000 bits/s for stream [0x100e26080]
2016-03-21 09:55:06:033 ortp-message-OpenH264 encoder: Video configuration set: bitrate=1500000bits/s, fps=25.000000, vsize=288x352
2016-03-21 09:55:06:033 ortp-message-ogl_display_new : 0x6080001e2d00

2016-03-21 09:55:06:040 ortp-message-Stun packet sent for session [0x1010e8c00]
2016-03-21 09:55:06:047 ortp-warning-Getting reference signal but no echo to synchronize on.
2016-03-21 09:55:06:047 ortp-message-MSAudioMixer [0x600000123660] is entering bypass mode.
2016-03-21 09:55:06:060 ortp-warning-Getting reference signal but no echo to synchronize on.
2016-03-21 09:55:06:062 ortp-message-init opengles_display (0 x 0, gl initialized:0)
2016-03-21 09:55:06:062 ortp-message-resize opengles_display (0 x 0, gl initialized:0)
2016-03-21 09:55:06:062 ortp-message-OpenGL version string: 2.1 ATI-1.40.16
2016-03-21 09:55:06:062 ortp-message-OpenGL extensions: GL_ARB_color_buffer_float GL_ARB_depth_buffer_float GL_ARB_depth_clamp GL_ARB_depth_texture GL_ARB_draw_buffers GL_ARB_draw_elements_base_vertex GL_ARB_draw_instanced GL_ARB_fragment_program GL_ARB_fragment_program_shadow GL_ARB_fragment_shader GL_ARB_framebuffer_object GL_ARB_framebuffer_sRGB GL_ARB_half_float_pixel GL_ARB_half_float_vertex GL_ARB_imaging GL_ARB_instanced_arrays GL_ARB_multisample GL_ARB_multitexture GL_ARB_occlusion_query GL_ARB_pixel_buffer_object GL_ARB_point_parameters GL_ARB_point_sprite GL_ARB_provoking_vertex GL_ARB_seamless_cube_map GL_ARB_shader_objects GL_ARB_shader_texture_lod GL_ARB_shading_language_100 GL_ARB_shadow GL_ARB_shadow_ambient GL_ARB_sync GL_ARB_texture_border_clamp GL_ARB_texture_compression GL_ARB_texture_compression_rgtc GL_ARB_texture_cube_map GL_ARB_texture_env_add GL_ARB_texture_env_combine GL_ARB_texture_env_crossbar GL_ARB_texture_env_dot3 GL_ARB_texture_float GL_ARB_texture_mirrored_repeat GL_ARB_texture_non_power_of_two GL_ARB_texture_rectangle GL_ARB_texture_rg GL_ARB_transpose_matrix GL_ARB_vertex_array_bgra GL_ARB_vertex_blend GL_ARB_vertex_buffer_object GL_ARB_vertex_program GL_ARB_vertex_shader GL_ARB_window_pos GL_EXT_abgr GL_EXT_bgra GL_EXT_bindable_uniform GL_EXT_blend_color GL_EXT_blend_equation_separate GL_EXT_blend_func_separate GL_EXT_blend_minmax GL_EXT_blend_subtract GL_EXT_clip_volume_hint GL_EXT_debug_label GL_EXT_debug_marker GL_EXT_draw_buffers2 GL_EXT_draw_range_elements GL_EXT_fog_coord GL_EXT_framebuffer_blit GL_EXT_framebuffer_multisample GL_EXT_framebuffer_object GL_EXT_framebuffer_sRGB GL_EXT_geometry_shader4 GL_EXT_gpu_program_parameters GL_EXT_gpu_shader4 GL_EXT_multi_draw_arrays GL_EXT_packed_depth_stencil GL_EXT_packed_float GL_EXT_provoking_vertex GL_EXT_rescale_normal GL_EXT_secondary_color GL_EXT_separate_specular_color GL_EXT_shadow_funcs GL_EXT_stencil_two_side GL_EXT_stencil_wrap GL_EXT_texture_array GL_EXT_texture_compression_dxt1 GL_EXT_texture_compression_s3tc GL_EXT_texture_env_add GL_EXT_texture_filter_anisotropic GL_EXT_texture_integer GL_EXT_texture_lod_bias GL_EXT_texture_mirror_clamp GL_EXT_texture_rectangle GL_EXT_texture_shared_exponent GL_EXT_texture_sRGB GL_EXT_texture_sRGB_decode GL_EXT_timer_query GL_EXT_transform_feedback GL_EXT_vertex_array_bgra GL_APPLE_aux_depth_stencil GL_APPLE_client_storage GL_APPLE_element_array GL_APPLE_fence GL_APPLE_float_pixels GL_APPLE_flush_buffer_range GL_APPLE_flush_render GL_APPLE_object_purgeable GL_APPLE_packed_pixels GL_APPLE_pixel_buffer GL_APPLE_rgb_422 GL_APPLE_row_bytes GL_APPLE_specular_vector GL_APPLE_texture_range GL_APPLE_transform_hint GL_APPLE_vertex_array_object GL_APPLE_vertex_array_range GL_APPLE_vertex_point_size GL_APPLE_vertex_program_evaluators GL_APPLE_ycbcr_422 GL_ATI_blend_equation_separate GL_ATI_blend_weighted_minmax GL_ATI_separate_stencil GL_ATI_texture_compression_3dc GL_ATI_texture_env_combine3 GL_ATI_texture_float GL_ATI_texture_mirror_once GL_IBM_rasterpos_clip GL_NV_blend_square GL_NV_conditional_render GL_NV_depth_clamp GL_NV_fog_distance GL_NV_light_max_exponent GL_NV_texgen_reflection GL_NV_texture_barrier GL_SGI_color_matrix GL_SGIS_generate_mipmap GL_SGIS_texture_edge_clamp GL_SGIS_texture_lod 
2016-03-21 09:55:06:062 ortp-message-OpenGL vendor: ATI Technologies Inc.
2016-03-21 09:55:06:062 ortp-message-OpenGL renderer: AMD Radeon HD 6750M OpenGL Engine
2016-03-21 09:55:06:062 ortp-message-OpenGL version: 2.1 ATI-1.40.16
2016-03-21 09:55:06:062 ortp-message-OpenGL GLSL version: 1.20
2016-03-21 09:55:06:065 ortp-message-QTCapture set size w=288, h=352 fmt=2037741171
2016-03-21 09:55:06:065 ortp-message-Output video size adjusted to match camera resolution (288x352)
2016-03-21 09:55:06:065 ortp-message-OpenH264 encoder: Video configuration set: bitrate=512000bits/s, fps=15.000000, vsize=288x352
2016-03-21 09:55:06:065 ortp-message-Setting sent vsize=288x352, fps=12.000000
2016-03-21 09:55:06:065 ortp-message-OpenH264 encoder: Video configuration set: bitrate=512000bits/s, fps=12.000000, vsize=288x352
2016-03-21 09:55:06:065 ortp-message-OSType= 2037741171
2016-03-21 09:55:06:065 ortp-message-FORMAT = MS_YUY2
2016-03-21 09:55:06:065 ortp-message-getPixFmt forced capture FMT: 7
2016-03-21 09:55:06:065 ortp-message-ms_filter_link: MSQtCapture:0x600000123b60,0-->MSPixConv:0x6080001242e0,0
2016-03-21 09:55:06:065 ortp-message-ms_filter_link: MSPixConv:0x6080001242e0,0-->MSTee:0x600000123ca0,0
2016-03-21 09:55:06:065 ortp-message-ms_filter_link: MSTee:0x600000123ca0,0-->MSSizeConv:0x608000124560,0
2016-03-21 09:55:06:065 ortp-message-ms_filter_link: MSSizeConv:0x608000124560,0-->MSOpenH264Enc:0x600000123c00,0
2016-03-21 09:55:06:065 ortp-message-ms_filter_link: MSOpenH264Enc:0x600000123c00,0-->MSRtpSend:0x610000123d40,0
2016-03-21 09:55:06:065 ortp-message-ms_filter_link: MSTee:0x600000123ca0,1-->MSOSXGLDisplay:0x6080001244c0,0
2016-03-21 09:55:06:065 ortp-message-ms_filter_link: MSTee:0x600000123ca0,2-->MSJpegWriter:0x600000123d40,0
2016-03-21 09:55:06:065 ortp-error-no such method on filter MSOpenH264Dec, fid=16389 method index=7
2016-03-21 09:55:06:065 ortp-message-ogl_display_new : 0x6080001e3a00

2016-03-21 09:55:06:065 ortp-message-Device opened, model is UVC Camera VendorID_1452 ProductID_34059
2016-03-21 09:55:06:066 ortp-message-init opengles_display (0 x 0, gl initialized:0)
2016-03-21 09:55:06:066 ortp-message-resize opengles_display (0 x 0, gl initialized:0)
2016-03-21 09:55:06:068 ortp-error-no such method on filter MSOpenH264Dec, fid=16389 method index=8
2016-03-21 09:55:06:068 ortp-error-no such method on filter MSOSXGLDisplay, fid=16387 method index=0
2016-03-21 09:55:06:068 ortp-message-ms_filter_link: MSRtpRecv:0x610000125960,0-->MSTee:0x610000122d00,0
2016-03-21 09:55:06:068 ortp-message-ms_filter_link: MSTee:0x610000122d00,1-->MSItcSink:0x610000123e80,0
2016-03-21 09:55:06:068 ortp-message-configure_itc(): format set to type=video;encoding=H264;vsize=0x0;fps=0.000000;fmtp=''
2016-03-21 09:55:06:068 ortp-message-ms_filter_link: MSTee:0x610000122d00,0-->MSOpenH264Dec:0x6080001246a0,0
2016-03-21 09:55:06:068 ortp-message-ms_filter_link: MSOpenH264Dec:0x6080001246a0,0-->MSTee:0x610000125aa0,0
2016-03-21 09:55:06:068 ortp-message-ms_filter_link: MSTee:0x610000125aa0,1-->MSJpegWriter:0x610000125a00,0
2016-03-21 09:55:06:068 ortp-message-ms_filter_link: MSTee:0x610000125aa0,0-->MSOSXGLDisplay:0x608000124740,0
2016-03-21 09:55:06:068 ortp-message-qtcapture video device opened.
2016-03-21 09:55:06:068 ortp-warning-Getting reference signal but no echo to synchronize on.
2016-03-21 09:55:06:068 ortp-message-MSVideo MSTicker priority left to normal.
[OpenH264] this = 0x0x60000004cea0, Error:ParamValidationExt(), invalid uiSliceMode (4) settings!
[OpenH264] this = 0x0x60000004cea0, Error:WelsInitEncoderExt(), ParamValidationExt failed return 2.
[OpenH264] this = 0x0x60000004cea0, Error:CWelsH264SVCEncoder::Initialize(), WelsInitEncoderExt failed.
2016-03-21 09:55:06:068 ortp-error-OpenH264 encoder: Failed to initialize: 1
(lldb) 


_______________________________________________
Linphone-developers mailing list
address@hidden
https://lists.nongnu.org/mailman/listinfo/linphone-developers

_______________________________________________
Linphone-developers mailing list
address@hidden
https://lists.nongnu.org/mailman/listinfo/linphone-developers


reply via email to

[Prev in Thread] Current Thread [Next in Thread]