Closed j1elo closed 1 year ago
Currently making a new build with this branch, that will be available at
http://ubuntu.openvidu.io/dev-18-encoder-bitrate
for apt-get
and
kurento/kurento-media-server:dev-18-encoder-bitrate
for Docker
@neilyoung seems that we're having difficulties with the infra and apt-get repos won't be available in the next days so I cannot ask you to test with packages built from https://github.com/Kurento/kurento/pull/24
But I know you can use a custom Kurento built from sources so maybe you can test it out already to see if it provides a good enough solution to the issue you were facing?
All the changes are in the 18-encoder-bitrate
branch of this repository, so it should be a matter of checking it out and just building the server.
Note that for my tests I was using the RecorderEndpoint and plotbitrate to make the graph, and I found a very different behavior between the current versions of the VP8 encoder (vpx) and H.264 encoder (x264); the former does what it wants with the bitrate and didn't really follow the requested target bitrate, while the latter goes much closer to what I was requesting. This tells me that something might be wrong in the configuration of the encoder itself, but the whole mechanism of the EncoderBitrate API is working as expected (the values are correctly processed and passed to the encoder, then the encoder should honor them).
If there is a better configuration of GStreamer's vp8enc
(here: kmsenctreebin.c:145), that would be a separate improvement to study and make.
Thanks. Will check it out and test
Looks as if I would have a little problem to install my new built. I'm running
bin/build-run.sh --build-only
since this was the command, which I ran with my very first build and it also installed the service.
Now, since I still could not see any improvement, I was checking version and date and location of what is run with kurento-media-server
:
which kurento-media-server
/usr/bin/kurento-media-server
kurento-media-server --version
Kurento Media Server version: 7.0.0
Found modules:
'core' version 7.0.0
'elements' version 7.0.0
'filters' version 7.0.0
'webrtcarucocode' version 0.2.0~17.g4a42814
'webrtcbarcode' version 0.2.0~8.g2dc7fb7
'webrtccbr' version 0.2.0~9.ge481621
Looks the build command didn't install the newly built file. I found it here:
./build-Debug/media-server/server/kurento-media-server --version
/build-Debug/media-server/server/kurento-media-server --version
0:00:00.007931265 19231 0x559ec7fdda70 INFO KurentoModuleManager ModuleManager.cpp:161:loadModules: Skip non-existent path: /usr/local/lib/kurento/modules
Kurento Media Server version: 7.0.1~8.g2fff9a80b
This now loads 7.0.1, which seems to be the most recent version. I can't load my modules with it but this is secondary.
If I set the KURENTO_MODULES_PATH I'm again loading some old version:
ubuntu@kms7:~/kurento/server$ export KURENTO_MODULES_PATH=/usr/lib/x86_64-linux-gnu/kurento/modules/
ubuntu@kms7:~/kurento/server$ ./build-Debug/media-server/server/kurento-media-server --version
0:00:00.008221354 18974 0x562b0e704a70 INFO KurentoModuleManager ModuleManager.cpp:89:loadModule: Load file: /usr/lib/x86_64-linux-gnu/kurento/modules/libkmscoremodule.so, module name: /usr/lib/x86_64-linux-gnu/kurento/modules/libkmscoremodule.so
0:00:00.008255233 18974 0x562b0e704a70 INFO KurentoModuleManager ModuleManager.cpp:136:loadModule: Loaded module: core, version: 7.0.0, date: Mar 21 2023 16:57:44
0:00:00.010373558 18974 0x562b0e704a70 INFO KurentoModuleManager ModuleManager.cpp:89:loadModule: Load file: /usr/lib/x86_64-linux-gnu/kurento/modules/libkmswebrtccbrmodule.so, module name: /usr/lib/x86_64-linux-gnu/kurento/modules/libkmswebrtccbrmodule.so
0:00:00.010394851 18974 0x562b0e704a70 INFO KurentoModuleManager ModuleManager.cpp:136:loadModule: Loaded module: webrtccbr, version: 0.2.0~9.ge481621, date: Mar 28 2023 10:51:39
0:00:00.012080067 18974 0x562b0e704a70 INFO KurentoModuleManager ModuleManager.cpp:89:loadModule: Load file: /usr/lib/x86_64-linux-gnu/kurento/modules/libkmswebrtcbarcodemodule.so, module name: /usr/lib/x86_64-linux-gnu/kurento/modules/libkmswebrtcbarcodemodule.so
0:00:00.012101968 18974 0x562b0e704a70 INFO KurentoModuleManager ModuleManager.cpp:136:loadModule: Loaded module: webrtcbarcode, version: 0.2.0~8.g2dc7fb7, date: Mar 28 2023 10:51:02
0:00:00.016527944 18974 0x562b0e704a70 INFO KurentoModuleManager ModuleManager.cpp:89:loadModule: Load file: /usr/lib/x86_64-linux-gnu/kurento/modules/libkmselementsmodule.so, module name: /usr/lib/x86_64-linux-gnu/kurento/modules/libkmselementsmodule.so
0:00:00.016553621 18974 0x562b0e704a70 INFO KurentoModuleManager ModuleManager.cpp:136:loadModule: Loaded module: elements, version: 7.0.0, date: Mar 21 2023 17:03:47
0:00:00.016709645 18974 0x562b0e704a70 INFO KurentoModuleManager ModuleManager.cpp:89:loadModule: Load file: /usr/lib/x86_64-linux-gnu/kurento/modules/libkmsfiltersmodule.so, module name: /usr/lib/x86_64-linux-gnu/kurento/modules/libkmsfiltersmodule.so
0:00:00.016722672 18974 0x562b0e704a70 INFO KurentoModuleManager ModuleManager.cpp:136:loadModule: Loaded module: filters, version: 7.0.0, date: Mar 21 2023 17:09:51
0:00:00.017280808 18974 0x562b0e704a70 INFO KurentoModuleManager ModuleManager.cpp:89:loadModule: Load file: /usr/lib/x86_64-linux-gnu/kurento/modules/libkmswebrtcarucocodemodule.so, module name: /usr/lib/x86_64-linux-gnu/kurento/modules/libkmswebrtcarucocodemodule.so
0:00:00.017297984 18974 0x562b0e704a70 INFO KurentoModuleManager ModuleManager.cpp:136:loadModule: Loaded module: webrtcarucocode, version: 0.2.0~17.g4a42814, date: Mar 28 2023 10:51:21
0:00:00.017309708 18974 0x562b0e704a70 INFO KurentoModuleManager ModuleManager.cpp:161:loadModules: Skip non-existent path: /usr/local/lib/kurento/modules
Kurento Media Server version: 7.0.1~8.g2fff9a80b
Found modules:
'core' version 7.0.0
'elements' version 7.0.0
'filters' version 7.0.0
'webrtcarucocode' version 0.2.0~17.g4a42814
'webrtcbarcode' version 0.2.0~8.g2dc7fb7
'webrtccbr' version 0.2.0~9.ge481621
Sorry for this. This explains, why I couldn't see an improvement in the first round. I compiled it, but it never did install.
What command could enable me to install the latest build?
As said, it seemed to have worked for the very first build only.
Copied the built file to /usr/bin/kurento-media-server
as sudo. Seems to make more sense now (even though I'm not sure with the old versions of core elements and filters)
Kurento Media Server version: 7.0.1~19.ga2cd30b9e
Found modules:
'core' version 7.0.0
'elements' version 7.0.0
'filters' version 7.0.0
'webrtcarucocode' version 0.2.0~17.g4a42814
'webrtcbarcode' version 0.2.0~8.g2dc7fb7
'webrtccbr' version 0.2.0~9.ge481621
EDIT: No doesn't work
:00:26.084774638 33782 0x7f6a000022c0 WARN GST_PLUGIN_LOADING gstplugin.c:1330:gst_plugin_load_by_name: load_plugin error: Opening module failed: /usr/lib/x86_64-linux-gnu/gstreamer-1.0/libkmscore.so: undefined symbol: kms_enc_tree_bin_set_bitrate_limits
I have some mix of versions now
The build done by bin/build-run.sh
is intended to be a standalone build that doesn't depend on any other Kurento package installed in the system, so it's not at all intended to be used as you're doing, by copying the binary. Also even though that does seem to work, you'd only be copying the main binary (which has like only the boot code) and not the core/elements/filters libraries, which have like the actual 99% of functionality.
The correct way to work with this script is to run it without --build-only
, and let it run the media server as an ad-hoc execution (no service integration).
In order to make it load your modules successfully, you'd have to set the variable KURENTO_MODULES_PATH before running the script; I'll verify a sample command that works and will let you know in a few minutes.
I tried to get rid of the old installation by deleting everything, which sounds like kurento and wasn't in my home dir. Unfortunately all /etc/kurento things were lost too.
Abandoned this VM. Will make a fresh install with 18-encoder-bitrate. Not an issue.
The build done by bin/build-run.sh is intended to be a standalone build that doesn't depend on any other Kurento package installed in the system, so it's not at all intended to be used as you're doing, by
Hmm. Not fully understanding this: Shouldn't be kmscore, kmsfilter and kmselements be built as well? I didn't install those separately. But after build-only (also tried --release, no --build-only) those were still at 7.0.0, while some modules where at 7.0.1
Well, no. I'm now not knowing what's cooking anymore. Fresh VM, fresh install of KMS7. Branch 18-encoder-bitrate.
ubuntu@kms7:~/kurento$ git branch
* 18-encoder-bitrate
main
ubuntu@kms7:~/kurento$ git pull
Already up to date.
Compiled. Service terminated. Debug statements configured and KMS started:
export GST_DEBUG="2,Kurento*:4,kms*:4,sdp*:4,webrtc*:4,*rtpendpoint:4,rtp*handler:4,rtpsynchronizer:4,agnosticbin:4,enctreebin:5,agnosticbin:5"
kurento-media-server
My application once at startup configures this (order is deciding!)
await webRtcEndpoint.setMinEncoderBitrate((config.maxBandwidth - 0.5 * config.maxBandwidth) * 1000)
await webRtcEndpoint.setEncoderBitrate(config.maxBandwidth * 1000)
await webRtcEndpoint.setMaxEncoderBitrate((config.maxBandwidth + 0.5 * config.maxBandwidth) * 1000)
config.maxBandwidth = 3000
KMS traces this:
0:00:00.016578528 4373 0x559003967c60 INFO KurentoServerMethods ServerMethods.cpp:88:ServerMethods: Using above 80% of system limits will throw NOT_ENOUGH_RESOURCES exception
0:00:00.016586129 4373 0x559003967c60 INFO KurentoServerMethods ServerMethods.cpp:107:ServerMethods: System limits: 42898 threads, 1024 files
0:00:00.016635394 4373 0x559003967c60 INFO KurentoWorkerPool WorkerPool.cpp:67:WorkerPool: Worker thread pool size: 6
0:00:00.016935034 4373 0x559003967c60 INFO KurentoServerMethods ServerMethods.cpp:143:ServerMethods: RPC Request Cache is ENABLED
0:00:00.016999702 4373 0x559003967c60 INFO KurentoWebSocketTransport WebSocketTransport.cpp:203:initWebSocket: WebSocket server (ws://) listening on address '::', port 8888
0:00:00.017006707 4373 0x559003967c60 INFO KurentoWebSocketTransport WebSocketTransport.cpp:89:WebSocketTransport: Secure WebSocket server (wss://) not enabled
0:00:00.017191362 4373 0x559003967c60 INFO KurentoMediaServer main.cpp:259:main: Kurento Media Server started
0:00:15.260627781 4373 0x7f8fe4001d80 INFO KurentoWebRtcEndpointImpl WebRtcEndpointImpl.cpp:160:generateDefaultCertificates: Unable to load the RSA certificate from file. Using the default certificate.
0:00:15.306547061 4373 0x7f8fe4001d80 INFO KurentoWebRtcEndpointImpl WebRtcEndpointImpl.cpp:169:generateDefaultCertificates: Unable to load the ECDSA certificate from file. Using the default certificate.
0:00:15.306699153 4373 0x7f8fe4001d80 INFO KurentoWebRtcEndpointImpl WebRtcEndpointImpl.cpp:572:WebRtcEndpointImpl: No QOS-DSCP value set
0:00:15.306727768 4373 0x7f8fe4001d80 INFO KurentoWebRtcEndpointImpl WebRtcEndpointImpl.cpp:112:remove_not_supported_codecs_from_array:<kmswebrtcendpoint0> Removing not supported codec 'AMR/8000'
0:00:15.309767811 4373 0x7f90040022c0 DEBUG agnosticbin kmsagnosticbin.c:1189:kms_agnostic_bin2_set_property:<kmsfilterelement0_kmsagnosticbin2-0> target-encoder-bitrate set: 300000
0:00:15.309839888 4373 0x7f90040022c0 DEBUG agnosticbin kmsagnosticbin.c:1223:kms_agnostic_bin2_set_property:<kmsfilterelement0_kmsagnosticbin2-0> max-encoder-bitrate set: 2147483647
0:00:15.309869846 4373 0x7f90040022c0 DEBUG agnosticbin kmsagnosticbin.c:1204:kms_agnostic_bin2_set_property:<kmsfilterelement0_kmsagnosticbin2-0> min-encoder-bitrate set: 0
0:00:15.310155762 4373 0x7f90040022c0 INFO kmsutils kmsutils.c:518:kms_utils_pad_monitor_gaps:<'':sink_video_default> Add probe: DISCONT buffers and GAP events
0:00:15.312369122 4373 0x7f8ffc001400 WARN default webrtccbrOpenCVImpl.cpp:329:set_params: Set params: filter: 'cbr', cbrWidth: 9, cbrHeight: 6, minImages: 20, debug: 1
0:00:15.396386829 4373 0x7f8ffc001400 WARN kmswebrtcsession kmswebrtcsession.c:818:kms_webrtc_session_set_stun_server_info:<kmswebrtcsession0> STUN server not configured! NAT traversal requires STUN or TURN
0:00:15.396403945 4373 0x7f8ffc001400 WARN kmswebrtcsession kmswebrtcsession.c:838:kms_webrtc_session_set_relay_info:<kmswebrtcsession0> TURN relay server not configured! NAT traversal requires STUN or TURN
0:00:15.399111616 4373 0x7f8fe8016860 INFO KurentoWorkerPool WorkerPool.cpp:67:WorkerPool: Worker thread pool size: 6
0:00:17.065003589 4373 0x7f90040022c0 WARN kmsbasertpsession kmsbasertpsession.c:774:kms_base_rtp_session_start_transport_send:<kmswebrtcsession0> Cannot configure connection for media (id=1)
0:00:17.138693950 4373 0x7f8fe0002300 INFO kmsutils kmsutils.c:518:kms_utils_pad_monitor_gaps:<'':sink_video_default> Add probe: DISCONT buffers and GAP events
0:00:17.223138581 4373 0x7f8fe0002300 INFO basertpendpoint kmsbasertpendpoint.c:1956:kms_base_rtp_endpoint_jitterbuffer_set_latency:<rtpjitterbuffer0> Add probe: Set jitterbuffer latency
0:00:17.223235887 4373 0x7f8fe0002300 INFO basertpendpoint kmsbasertpendpoint.c:2005:kms_base_rtp_endpoint_jitterbuffer_monitor_rtp_out:<rtpjitterbuffer0> Add probe: Adjust jitterbuffer PTS out
0:00:17.223853172 4373 0x7f8fe0002300 INFO basertpendpoint kmsbasertpendpoint.c:2050:kms_base_rtp_endpoint_jitterbuffer_monitor_rtcp_in:<rtpjitterbuffer0> Add probe: Get jitterbuffer RTCP SR timing
0:00:17.224206700 4373 0x7f8ffc0091e0 INFO basertpendpoint kmsbasertpendpoint.c:1941:kms_base_rtp_endpoint_jitterbuffer_set_latency_probe:<rtpjitterbuffer0> Setting latency to 500 ms
0:00:17.224299347 4373 0x7f8ffc0091e0 INFO basertpendpoint kmsbasertpendpoint.c:1944:kms_base_rtp_endpoint_jitterbuffer_set_latency_probe:<rtpjitterbuffer0> Jitterbuffer latency set; remove probe
0:00:17.224843046 4373 0x7f8ffc0091e0 DEBUG agnosticbin kmsagnosticbin.c:1189:kms_agnostic_bin2_set_property:<kmswebrtcendpoint0_kmsagnosticbin2-2> target-encoder-bitrate set: 3000000
0:00:17.224905686 4373 0x7f8ffc0091e0 DEBUG agnosticbin kmsagnosticbin.c:1223:kms_agnostic_bin2_set_property:<kmswebrtcendpoint0_kmsagnosticbin2-2> max-encoder-bitrate set: 4500000
0:00:17.224920627 4373 0x7f8ffc0091e0 DEBUG agnosticbin kmsagnosticbin.c:1204:kms_agnostic_bin2_set_property:<kmswebrtcendpoint0_kmsagnosticbin2-2> min-encoder-bitrate set: 1500000
0:00:17.226593009 4373 0x7f8ffc0091e0 INFO kmsutils kmsutils.c:1511:kms_utils_depayloader_monitor_pts_out:<rtph264depay0> Add probe: Adjust depayloader PTS out
0:00:17.231462909 4373 0x7f8ffc0091e0 INFO kmsutils kmsutils.c:518:kms_utils_pad_monitor_gaps:<kmswebrtcendpoint0_kmsagnosticbin2-2:sink> Add probe: DISCONT buffers and GAP events
0:00:17.231720715 4373 0x7f8ffc0091e0 DEBUG agnosticbin kmsagnosticbin.c:900:input_bin_src_caps_probe:<kmswebrtcendpoint0_kmsagnosticbin2-2> Set input caps: video/x-h264, stream-format=(string)avc, alignment=(string)au, codec_data=(buffer)0142c01fffe1000f6742c01f8c8d405017fcb00f08846a01000468ce3c80, level=(string)3.1, profile=(string)constrained-baseline, width=(int)640, height=(int)360, framerate=(fraction)0/1, interlace-mode=(string)progressive, chroma-format=(string)4:2:0, bit-depth-luma=(uint)8, bit-depth-chroma=(uint)8, parsed=(boolean)true
0:00:17.231768676 4373 0x7f8ffc0091e0 DEBUG agnosticbin kmsagnosticbin.c:775:kms_agnostic_bin2_link_pad:<kmswebrtcendpoint0_kmsagnosticbin2-2> Upstream provided caps: ANY
0:00:17.231872680 4373 0x7f8ffc0091e0 DEBUG agnosticbin kmsagnosticbin.c:784:kms_agnostic_bin2_link_pad:<kmswebrtcendpoint0_kmsagnosticbin2-2> Downstream wanted caps: video/x-raw, format=(string)BGRA, width=(int)[ 1, 2147483647 ], height=(int)[ 1, 2147483647 ], framerate=(fraction)[ 0/1, 2147483647/1 ]
0:00:17.263021589 4373 0x7f8ffc0091e0 INFO agnosticbin kmsagnosticbin.c:730:kms_agnostic_bin2_find_or_create_bin_for_caps:<kmswebrtcendpoint0_kmsagnosticbin2-2> TRANSCODING ACTIVE for video
0:00:17.274178125 4373 0x7f8ff4011640 INFO kmsutils kmsutils.c:518:kms_utils_pad_monitor_gaps:<kmsfilterelement0_kmsagnosticbin2-0:sink> Add probe: DISCONT buffers and GAP events
0:00:17.274230277 4373 0x7f8ff4011640 DEBUG agnosticbin kmsagnosticbin.c:900:input_bin_src_caps_probe:<kmsfilterelement0_kmsagnosticbin2-0> Set input caps: video/x-raw, width=(int)640, height=(int)360, interlace-mode=(string)progressive, multiview-mode=(string)mono, multiview-flags=(GstVideoMultiviewFlagsSet)0:ffffffff:/right-view-first/left-flipped/left-flopped/right-flipped/right-flopped/half-aspect/mixed-mono, pixel-aspect-ratio=(fraction)1/1, framerate=(fraction)0/1, format=(string)BGRA
0:00:19.259535969 4373 0x7f9000002300 INFO KurentoWebRtcEndpointImpl WebRtcEndpointImpl.cpp:572:WebRtcEndpointImpl: No QOS-DSCP value set
0:00:19.259580232 4373 0x7f9000002300 INFO KurentoWebRtcEndpointImpl WebRtcEndpointImpl.cpp:112:remove_not_supported_codecs_from_array:<kmswebrtcendpoint1> Removing not supported codec 'AMR/8000'
0:00:19.272381498 4373 0x7f8fec002240 WARN kmswebrtcsession kmswebrtcsession.c:818:kms_webrtc_session_set_stun_server_info:<kmswebrtcsession1> STUN server not configured! NAT traversal requires STUN or TURN
0:00:19.272409133 4373 0x7f8fec002240 WARN kmswebrtcsession kmswebrtcsession.c:838:kms_webrtc_session_set_relay_info:<kmswebrtcsession1> TURN relay server not configured! NAT traversal requires STUN or TURN
0:00:19.291337829 4373 0x7f8ff4002260 WARN kmsbasertpsession kmsbasertpsession.c:774:kms_base_rtp_session_start_transport_send:<kmswebrtcsession1> Cannot configure connection for media (id=1)
0:00:19.360803647 4373 0x559003793700 INFO kmsutils kmsutils.c:518:kms_utils_pad_monitor_gaps:<'':sink_video_default> Add probe: DISCONT buffers and GAP events
0:00:19.360956642 4373 0x559003793700 DEBUG agnosticbin kmsagnosticbin.c:775:kms_agnostic_bin2_link_pad:<kmsfilterelement0_kmsagnosticbin2-0> Upstream provided caps: ANY
0:00:19.361124614 4373 0x559003793700 DEBUG agnosticbin kmsagnosticbin.c:784:kms_agnostic_bin2_link_pad:<kmsfilterelement0_kmsagnosticbin2-0> Downstream wanted caps: video/x-h264, profile=(string)constrained-baseline, stream-format=(string)avc, alignment=(string)au; video/x-h264, stream-format=(string)avc, alignment=(string)au; video/x-h264, profile=(string)constrained-baseline, stream-format=(string)byte-stream, alignment=(string){ nal, au }; video/x-h264, stream-format=(string)byte-stream, alignment=(string){ nal, au }
0:00:19.363007613 4373 0x559003793700 DEBUG enctreebin kmsenctreebin.c:141:configure_encoder: Configure encoder: <openh264enc0>
0:00:19.363097062 4373 0x559003793700 DEBUG enctreebin kmsenctreebin.c:463:kms_enc_tree_bin_configure:<kmsenctreebin0> Encoder plugin found: '<openh264enc0>' for caps: video/x-h264, profile=(string)constrained-baseline, stream-format=(string)avc, alignment=(string)au; video/x-h264, stream-format=(string)avc, alignment=(string)au; video/x-h264, profile=(string)constrained-baseline, stream-format=(string)byte-stream, alignment=(string){ nal, au }; video/x-h264, stream-format=(string)byte-stream, alignment=(string){ nal, au }
0:00:19.385432158 4373 0x559003793700 INFO agnosticbin kmsagnosticbin.c:730:kms_agnostic_bin2_find_or_create_bin_for_caps:<kmsfilterelement0_kmsagnosticbin2-0> TRANSCODING ACTIVE for video
0:00:19.385610857 4373 0x559003793700 DEBUG agnosticbin kmsagnosticbin.c:775:kms_agnostic_bin2_link_pad:<kmsfilterelement0_kmsagnosticbin2-0> Upstream provided caps: video/x-h264, stream-format=(string)byte-stream, alignment=(string)au, profile=(string)baseline
0:00:19.385640858 4373 0x559003793700 DEBUG agnosticbin kmsagnosticbin.c:784:kms_agnostic_bin2_link_pad:<kmsfilterelement0_kmsagnosticbin2-0> Downstream wanted caps: video/x-h264, profile=(string)constrained-baseline, stream-format=(string)avc, alignment=(string)au; video/x-h264, stream-format=(string)avc, alignment=(string)au; video/x-h264, profile=(string)constrained-baseline, stream-format=(string)byte-stream, alignment=(string){ nal, au }; video/x-h264, stream-format=(string)byte-stream, alignment=(string){ nal, au }
0:00:37.338988377 4373 0x7f8ffc0091e0 INFO kmsutils kmsutils.c:518:kms_utils_pad_monitor_gaps:<kmswebrtcendpoint0_kmsagnosticbin2-2:sink> Add probe: DISCONT buffers and GAP events
0:00:37.339311273 4373 0x7f8ffc0091e0 DEBUG agnosticbin kmsagnosticbin.c:900:input_bin_src_caps_probe:<kmswebrtcendpoint0_kmsagnosticbin2-2> Set input caps: video/x-h264, stream-format=(string)avc, alignment=(string)au, codec_data=(buffer)0142c020ffe1000f6742c0208c8d407808bf700f08846a01000468ce3c80, level=(string)3.2, profile=(string)constrained-baseline, width=(int)960, height=(int)540, framerate=(fraction)0/1, interlace-mode=(string)progressive, chroma-format=(string)4:2:0, bit-depth-luma=(uint)8, bit-depth-chroma=(uint)8, parsed=(boolean)true
0:00:37.339671778 4373 0x7f8ffc0091e0 DEBUG agnosticbin kmsagnosticbin.c:775:kms_agnostic_bin2_link_pad:<kmswebrtcendpoint0_kmsagnosticbin2-2> Upstream provided caps: ANY
0:00:37.340907007 4373 0x7f8ffc0091e0 DEBUG agnosticbin kmsagnosticbin.c:784:kms_agnostic_bin2_link_pad:<kmswebrtcendpoint0_kmsagnosticbin2-2> Downstream wanted caps: video/x-raw, width=(int)[ 1, 32767 ], height=(int)[ 1, 32767 ], framerate=(fraction)[ 0/1, 2147483647/1 ], format=(string)BGRA
0:00:37.363201982 4373 0x7f8ff4011640 INFO kmsutils kmsutils.c:518:kms_utils_pad_monitor_gaps:<kmsfilterelement0_kmsagnosticbin2-0:sink> Add probe: DISCONT buffers and GAP events
0:00:43.404305773 4373 0x7f8ffc0091e0 INFO kmsutils kmsutils.c:518:kms_utils_pad_monitor_gaps:<kmswebrtcendpoint0_kmsagnosticbin2-2:sink> Add probe: DISCONT buffers and GAP events
0:00:43.428182909 4373 0x7f8ff4011640 INFO kmsutils kmsutils.c:518:kms_utils_pad_monitor_gaps:<kmsfilterelement0_kmsagnosticbin2-0:sink> Add probe: DISCONT buffers and GAP events
0:02:07.535243029 4373 0x7f8fe0002300 WARN rtpjitterbuffer rtpjitterbuffer.c:734:rtp_jitter_buffer_calculate_pts: rtp delta too big, reset skew
0:02:07.717000638 4373 0x7f8fe0002300 WARN srtpdec gstsrtpdec.c:1429:gst_srtp_dec_decode_buffer:<srtpdec0:rtp_sink> Unable to unprotect buffer (unprotect failed code 10)
0:02:07.717024000 4373 0x7f8fe0002300 WARN srtpdec gstsrtpdec.c:1429:gst_srtp_dec_decode_buffer:<srtpdec0:rtp_sink> Unable to unprotect buffer (unprotect failed code 10)
0:02:07.717029613 4373 0x7f8fe0002300 WARN srtpdec gstsrtpdec.c:1429:gst_srtp_dec_decode_buffer:<srtpdec0:rtp_sink> Unable to unprotect buffer (unprotect failed code 10)
0:02:07.717039118 4373 0x7f8fe0002300 WARN srtpdec gstsrtpdec.c:1429:gst_srtp_dec_decode_buffer:<srtpdec0:rtp_sink> Unable to unprotect buffer (unprotect failed code 10)
0:02:07.717048616 4373 0x7f8fe0002300 WARN srtpdec gstsrtpdec.c:1429:gst_srtp_dec_decode_buffer:<srtpdec0:rtp_sink> Unable to unprotect buffer (unprotect failed code 10)
0:02:07.717057988 4373 0x7f8fe0002300 WARN srtpdec gstsrtpdec.c:1429:gst_srtp_dec_decode_buffer:<srtpdec0:rtp_sink> Unable to unprotect buffer (unprotect failed code 10)
0:02:07.717067063 4373 0x7f8fe0002300 WARN srtpdec gstsrtpdec.c:1429:gst_srtp_dec_decode_buffer:<srtpdec0:rtp_sink> Unable to unprotect buffer (unprotect failed code 10)
0:02:07.717071950 4373 0x7f8fe0002300 WARN srtpdec gstsrtpdec.c:1429:gst_srtp_dec_decode_buffer:<srtpdec0:rtp_sink> Unable to unprotect buffer (unprotect failed code 10)
0:02:07.717077131 4373 0x7f8fe0002300 WARN srtpdec gstsrtpdec.c:1429:gst_srtp_dec_decode_buffer:<srtpdec0:rtp_sink> Unable to unprotect buffer (unprotect failed code 10)
0:02:07.717082234 4373 0x7f8fe0002300 WARN srtpdec gstsrtpdec.c:1429:gst_srtp_dec_decode_buffer:<srtpdec0:rtp_sink> Unable to unprotect buffer (unprotect failed code 10)
0:02:07.717088927 4373 0x7f8fe0002300 WARN srtpdec gstsrtpdec.c:1429:gst_srtp_dec_decode_buffer:<srtpdec0:rtp_sink> Unable to unprotect buffer (unprotect failed code 10)
0:02:07.717096692 4373 0x7f8fe0002300 WARN srtpdec gstsrtpdec.c:1429:gst_srtp_dec_decode_buffer:<srtpdec0:rtp_sink> Unable to unprotect buffer (unprotect failed code 10)
0:02:07.717104107 4373 0x7f8fe0002300 WARN srtpdec gstsrtpdec.c:1429:gst_srtp_dec_decode_buffer:<srtpdec0:rtp_sink> Unable to unprotect buffer (unprotect failed code 10)
0:02:07.717110395 4373 0x7f8fe0002300 WARN srtpdec gstsrtpdec.c:1429:gst_srtp_dec_decode_buffer:<srtpdec0:rtp_sink> Unable to unprotect buffer (unprotect failed code 10)
0:02:07.717116823 4373 0x7f8fe0002300 WARN srtpdec gstsrtpdec.c:1429:gst_srtp_dec_decode_buffer:<srtpdec0:rtp_sink> Unable to unprotect buffer (unprotect failed code 10)
0:02:07.717123658 4373 0x7f8fe0002300 WARN srtpdec gstsrtpdec.c:1429:gst_srtp_dec_decode_buffer:<srtpdec0:rtp_sink> Unable to unprotect buffer (unprotect failed code 10)
0:02:07.717130142 4373 0x7f8fe0002300 WARN srtpdec gstsrtpdec.c:1429:gst_srtp_dec_decode_buffer:<srtpdec0:rtp_sink> Unable to unprotect buffer (unprotect failed code 10)
0:02:07.717136716 4373 0x7f8fe0002300 WARN srtpdec gstsrtpdec.c:1429:gst_srtp_dec_decode_buffer:<srtpdec0:rtp_sink> Unable to unprotect buffer (unprotect failed code 10)
0:02:07.717142915 4373 0x7f8fe0002300 WARN srtpdec gstsrtpdec.c:1429:gst_srtp_dec_decode_buffer:<srtpdec0:rtp_sink> Unable to unprotect buffer (unprotect failed code 10)
0:02:07.951083115 4373 0x7f8fe0002300 WARN srtpdec gstsrtpdec.c:1429:gst_srtp_dec_decode_buffer:<srtpdec0:rtp_sink> Unable to unprotect buffer (unprotect failed code 10)
0:02:07.951101357 4373 0x7f8fe0002300 WARN srtpdec gstsrtpdec.c:1429:gst_srtp_dec_decode_buffer:<srtpdec0:rtp_sink> Unable to unprotect buffer (unprotect failed code 10)
0:02:07.951105965 4373 0x7f8fe0002300 WARN srtpdec gstsrtpdec.c:1429:gst_srtp_dec_decode_buffer:<srtpdec0:rtp_sink> Unable to unprotect buffer (unprotect failed code 10)
0:02:08.037431864 4373 0x7f8fe0002300 WARN rtpjitterbuffer rtpjitterbuffer.c:764:rtp_jitter_buffer_calculate_pts: backward timestamps at server, schedule resync
0:02:08.042914746 4373 0x7f8fe0002300 WARN srtpdec gstsrtpdec.c:1429:gst_srtp_dec_decode_buffer:<srtpdec0:rtp_sink> Unable to unprotect buffer (unprotect failed code 10)
0:02:08.042926876 4373 0x7f8fe0002300 WARN srtpdec gstsrtpdec.c:1429:gst_srtp_dec_decode_buffer:<srtpdec0:rtp_sink> Unable to unprotect buffer (unprotect failed code 10)
0:02:08.042932175 4373 0x7f8fe0002300 WARN srtpdec gstsrtpdec.c:1429:gst_srtp_dec_decode_buffer:<srtpdec0:rtp_sink> Unable to unprotect buffer (unprotect failed code 10)
0:02:08.042937390 4373 0x7f8fe0002300 WARN srtpdec gstsrtpdec.c:1429:gst_srtp_dec_decode_buffer:<srtpdec0:rtp_sink> Unable to unprotect buffer (unprotect failed code 10)
0:02:08.042949408 4373 0x7f8fe0002300 WARN srtpdec gstsrtpdec.c:1429:gst_srtp_dec_decode_buffer:<srtpdec0:rtp_sink> Unable to unprotect buffer (unprotect failed code 10)
0:02:08.042954533 4373 0x7f8fe0002300 WARN srtpdec gstsrtpdec.c:1429:gst_srtp_dec_decode_buffer:<srtpdec0:rtp_sink> Unable to unprotect buffer (unprotect failed code 10)
0:02:08.042967005 4373 0x7f8fe0002300 WARN srtpdec gstsrtpdec.c:1429:gst_srtp_dec_decode_buffer:<srtpdec0:rtp_sink> Unable to unprotect buffer (unprotect failed code 10)
0:02:08.042976204 4373 0x7f8fe0002300 WARN srtpdec gstsrtpdec.c:1429:gst_srtp_dec_decode_buffer:<srtpdec0:rtp_sink> Unable to unprotect buffer (unprotect failed code 10)
0:02:08.042994613 4373 0x7f8fe0002300 WARN srtpdec gstsrtpdec.c:1429:gst_srtp_dec_decode_buffer:<srtpdec0:rtp_sink> Unable to unprotect buffer (unprotect failed code 10)
0:02:08.043003827 4373 0x7f8fe0002300 WARN srtpdec gstsrtpdec.c:1429:gst_srtp_dec_decode_buffer:<srtpdec0:rtp_sink> Unable to unprotect buffer (unprotect failed code 10)
0:02:08.043011726 4373 0x7f8fe0002300 WARN srtpdec gstsrtpdec.c:1429:gst_srtp_dec_decode_buffer:<srtpdec0:rtp_sink> Unable to unprotect buffer (unprotect failed code 10)
0:02:08.043019415 4373 0x7f8fe0002300 WARN srtpdec gstsrtpdec.c:1429:gst_srtp_dec_decode_buffer:<srtpdec0:rtp_sink> Unable to unprotect buffer (unprotect failed code 10)
0:02:08.043028626 4373 0x7f8fe0002300 WARN srtpdec gstsrtpdec.c:1429:gst_srtp_dec_decode_buffer:<srtpdec0:rtp_sink> Unable to unprotect buffer (unprotect failed code 10)
0:02:08.043038745 4373 0x7f8fe0002300 WARN srtpdec gstsrtpdec.c:1429:gst_srtp_dec_decode_buffer:<srtpdec0:rtp_sink> Unable to unprotect buffer (unprotect failed code 10)
0:02:08.044368858 4373 0x7f8fe0002300 WARN srtpdec gstsrtpdec.c:1429:gst_srtp_dec_decode_buffer:<srtpdec0:rtp_sink> Unable to unprotect buffer (unprotect failed code 10)
0:02:08.044378280 4373 0x7f8fe0002300 WARN srtpdec gstsrtpdec.c:1429:gst_srtp_dec_decode_buffer:<srtpdec0:rtp_sink> Unable to unprotect buffer (unprotect failed code 10)
0:02:08.044382779 4373 0x7f8fe0002300 WARN srtpdec gstsrtpdec.c:1429:gst_srtp_dec_decode_buffer:<srtpdec0:rtp_sink> Unable to unprotect buffer (unprotect failed code 10)
0:02:08.044395832 4373 0x7f8fe0002300 WARN srtpdec gstsrtpdec.c:1429:gst_srtp_dec_decode_buffer:<srtpdec0:rtp_sink> Unable to unprotect buffer (unprotect failed code 10)
0:02:08.044405703 4373 0x7f8fe0002300 WARN srtpdec gstsrtpdec.c:1429:gst_srtp_dec_decode_buffer:<srtpdec0:rtp_sink> Unable to unprotect buffer (unprotect failed code 10)
0:02:08.044414798 4373 0x7f8fe0002300 WARN srtpdec gstsrtpdec.c:1429:gst_srtp_dec_decode_buffer:<srtpdec0:rtp_sink> Unable to unprotect buffer (unprotect failed code 10)
0:02:08.044424431 4373 0x7f8fe0002300 WARN srtpdec gstsrtpdec.c:1429:gst_srtp_dec_decode_buffer:<srtpdec0:rtp_sink> Unable to unprotect buffer (unprotect failed code 10)
0:02:08.044429044 4373 0x7f8fe0002300 WARN srtpdec gstsrtpdec.c:1429:gst_srtp_dec_decode_buffer:<srtpdec0:rtp_sink> Unable to unprotect buffer (unprotect failed code 10)
0:02:08.044433375 4373 0x7f8fe0002300 WARN srtpdec gstsrtpdec.c:1429:gst_srtp_dec_decode_buffer:<srtpdec0:rtp_sink> Unable to unprotect buffer (unprotect failed code 10)
0:02:08.044440605 4373 0x7f8fe0002300 WARN srtpdec gstsrtpdec.c:1429:gst_srtp_dec_decode_buffer:<srtpdec0:rtp_sink> Unable to unprotect buffer (unprotect failed code 10)
0:02:08.044444915 4373 0x7f8fe0002300 WARN srtpdec gstsrtpdec.c:1429:gst_srtp_dec_decode_buffer:<srtpdec0:rtp_sink> Unable to unprotect buffer (unprotect failed code 10)
0:02:08.044449338 4373 0x7f8fe0002300 WARN srtpdec gstsrtpdec.c:1429:gst_srtp_dec_decode_buffer:<srtpdec0:rtp_sink> Unable to unprotect buffer (unprotect failed code 10)
0:02:08.044453716 4373 0x7f8fe0002300 WARN srtpdec gstsrtpdec.c:1429:gst_srtp_dec_decode_buffer:<srtpdec0:rtp_sink> Unable to unprotect buffer (unprotect failed code 10)
0:02:08.044457937 4373 0x7f8fe0002300 WARN srtpdec gstsrtpdec.c:1429:gst_srtp_dec_decode_buffer:<srtpdec0:rtp_sink> Unable to unprotect buffer (unprotect failed code 10)
0:02:08.044464491 4373 0x7f8fe0002300 WARN srtpdec gstsrtpdec.c:1429:gst_srtp_dec_decode_buffer:<srtpdec0:rtp_sink> Unable to unprotect buffer (unprotect failed code 10)
0:02:08.044884334 4373 0x7f8fe0002300 WARN srtpdec gstsrtpdec.c:1429:gst_srtp_dec_decode_buffer:<srtpdec0:rtp_sink> Unable to unprotect buffer (unprotect failed code 10)
0:02:08.044895890 4373 0x7f8fe0002300 WARN srtpdec gstsrtpdec.c:1429:gst_srtp_dec_decode_buffer:<srtpdec0:rtp_sink> Unable to unprotect buffer (unprotect failed code 10)
0:02:08.044900419 4373 0x7f8fe0002300 WARN srtpdec gstsrtpdec.c:1429:gst_srtp_dec_decode_buffer:<srtpdec0:rtp_sink> Unable to unprotect buffer (unprotect failed code 10)
0:02:08.044905672 4373 0x7f8fe0002300 WARN srtpdec gstsrtpdec.c:1429:gst_srtp_dec_decode_buffer:<srtpdec0:rtp_sink> Unable to unprotect buffer (unprotect failed code 10)
0:02:08.044910270 4373 0x7f8fe0002300 WARN srtpdec gstsrtpdec.c:1429:gst_srtp_dec_decode_buffer:<srtpdec0:rtp_sink> Unable to unprotect buffer (unprotect failed code 10)
0:02:08.044914915 4373 0x7f8fe0002300 WARN srtpdec gstsrtpdec.c:1429:gst_srtp_dec_decode_buffer:<srtpdec0:rtp_sink> Unable to unprotect buffer (unprotect failed code 10)
0:02:08.044921936 4373 0x7f8fe0002300 WARN srtpdec gstsrtpdec.c:1429:gst_srtp_dec_decode_buffer:<srtpdec0:rtp_sink> Unable to unprotect buffer (unprotect failed code 10)
0:02:08.044929332 4373 0x7f8fe0002300 WARN srtpdec gstsrtpdec.c:1429:gst_srtp_dec_decode_buffer:<srtpdec0:rtp_sink> Unable to unprotect buffer (unprotect failed code 10)
0:02:08.044935837 4373 0x7f8fe0002300 WARN srtpdec gstsrtpdec.c:1429:gst_srtp_dec_decode_buffer:<srtpdec0:rtp_sink> Unable to unprotect buffer (unprotect failed code 10)
0:02:08.044942248 4373 0x7f8fe0002300 WARN srtpdec gstsrtpdec.c:1429:gst_srtp_dec_decode_buffer:<srtpdec0:rtp_sink> Unable to unprotect buffer (unprotect failed code 10)
0:02:08.044948738 4373 0x7f8fe0002300 WARN srtpdec gstsrtpdec.c:1429:gst_srtp_dec_decode_buffer:<srtpdec0:rtp_sink> Unable to unprotect buffer (unprotect failed code 10)
0:02:08.044955192 4373 0x7f8fe0002300 WARN srtpdec gstsrtpdec.c:1429:gst_srtp_dec_decode_buffer:<srtpdec0:rtp_sink> Unable to unprotect buffer (unprotect failed code 10)
0:02:08.044961716 4373 0x7f8fe0002300 WARN srtpdec gstsrtpdec.c:1429:gst_srtp_dec_decode_buffer:<srtpdec0:rtp_sink> Unable to unprotect buffer (unprotect failed code 10)
0:02:08.044966110 4373 0x7f8fe0002300 WARN srtpdec gstsrtpdec.c:1429:gst_srtp_dec_decode_buffer:<srtpdec0:rtp_sink> Unable to unprotect buffer (unprotect failed code 10)
0:02:08.045192867 4373 0x7f8fe0002300 WARN srtpdec gstsrtpdec.c:1429:gst_srtp_dec_decode_buffer:<srtpdec0:rtp_sink> Unable to unprotect buffer (unprotect failed code 10)
0:02:08.045200325 4373 0x7f8fe0002300 WARN srtpdec gstsrtpdec.c:1429:gst_srtp_dec_decode_buffer:<srtpdec0:rtp_sink> Unable to unprotect buffer (unprotect failed code 10)
0:02:08.045204969 4373 0x7f8fe0002300 WARN srtpdec gstsrtpdec.c:1429:gst_srtp_dec_decode_buffer:<srtpdec0:rtp_sink> Unable to unprotect buffer (unprotect failed code 10)
0:02:08.045211537 4373 0x7f8fe0002300 WARN srtpdec gstsrtpdec.c:1429:gst_srtp_dec_decode_buffer:<srtpdec0:rtp_sink> Unable to unprotect buffer (unprotect failed code 10)
0:02:08.045218211 4373 0x7f8fe0002300 WARN srtpdec gstsrtpdec.c:1429:gst_srtp_dec_decode_buffer:<srtpdec0:rtp_sink> Unable to unprotect buffer (unprotect failed code 10)
0:02:08.045225380 4373 0x7f8fe0002300 WARN srtpdec gstsrtpdec.c:1429:gst_srtp_dec_decode_buffer:<srtpdec0:rtp_sink> Unable to unprotect buffer (unprotect failed code 10)
0:02:08.045231927 4373 0x7f8fe0002300 WARN srtpdec gstsrtpdec.c:1429:gst_srtp_dec_decode_buffer:<srtpdec0:rtp_sink> Unable to unprotect buffer (unprotect failed code 10)
0:02:08.045240878 4373 0x7f8fe0002300 WARN srtpdec gstsrtpdec.c:1429:gst_srtp_dec_decode_buffer:<srtpdec0:rtp_sink> Unable to unprotect buffer (unprotect failed code 10)
0:02:08.045247323 4373 0x7f8fe0002300 WARN srtpdec gstsrtpdec.c:1429:gst_srtp_dec_decode_buffer:<srtpdec0:rtp_sink> Unable to unprotect buffer (unprotect failed code 10)
0:02:08.045254578 4373 0x7f8fe0002300 WARN srtpdec gstsrtpdec.c:1429:gst_srtp_dec_decode_buffer:<srtpdec0:rtp_sink> Unable to unprotect buffer (unprotect failed code 10)
0:02:08.047668686 4373 0x7f8ffc0091e0 WARN kmsutils kmsutils.c:477:discont_detection_probe:<kmswebrtcendpoint0_kmsagnosticbin2-2:sink> DISCONTINUITY at non-keyframe; will drop until keyframe
0:02:08.049868369 4373 0x7f8fe0002300 WARN srtpdec gstsrtpdec.c:1429:gst_srtp_dec_decode_buffer:<srtpdec0:rtp_sink> Unable to unprotect buffer (unprotect failed code 10)
0:02:08.050081806 4373 0x7f8fe0002300 WARN srtpdec gstsrtpdec.c:1429:gst_srtp_dec_decode_buffer:<srtpdec0:rtp_sink> Unable to unprotect buffer (unprotect failed code 10)
0:02:08.050089649 4373 0x7f8fe0002300 WARN srtpdec gstsrtpdec.c:1429:gst_srtp_dec_decode_buffer:<srtpdec0:rtp_sink> Unable to unprotect buffer (unprotect failed code 10)
0:02:08.050093961 4373 0x7f8fe0002300 WARN srtpdec gstsrtpdec.c:1429:gst_srtp_dec_decode_buffer:<srtpdec0:rtp_sink> Unable to unprotect buffer (unprotect failed code 10)
0:02:08.050353548 4373 0x7f8fe0002300 WARN srtpdec gstsrtpdec.c:1429:gst_srtp_dec_decode_buffer:<srtpdec0:rtp_sink> Unable to unprotect buffer (unprotect failed code 10)
0:02:08.050360913 4373 0x7f8fe0002300 WARN srtpdec gstsrtpdec.c:1429:gst_srtp_dec_decode_buffer:<srtpdec0:rtp_sink> Unable to unprotect buffer (unprotect failed code 10)
0:02:08.050365062 4373 0x7f8fe0002300 WARN srtpdec gstsrtpdec.c:1429:gst_srtp_dec_decode_buffer:<srtpdec0:rtp_sink> Unable to unprotect buffer (unprotect failed code 10)
0:02:08.050634142 4373 0x7f8fe0002300 WARN srtpdec gstsrtpdec.c:1429:gst_srtp_dec_decode_buffer:<srtpdec0:rtp_sink> Unable to unprotect buffer (unprotect failed code 10)
0:02:08.050641400 4373 0x7f8fe0002300 WARN srtpdec gstsrtpdec.c:1429:gst_srtp_dec_decode_buffer:<srtpdec0:rtp_sink> Unable to unprotect buffer (unprotect failed code 10)
0:02:08.050645519 4373 0x7f8fe0002300 WARN srtpdec gstsrtpdec.c:1429:gst_srtp_dec_decode_buffer:<srtpdec0:rtp_sink> Unable to unprotect buffer (unprotect failed code 10)
0:02:08.050923278 4373 0x7f8fe0002300 WARN srtpdec gstsrtpdec.c:1429:gst_srtp_dec_decode_buffer:<srtpdec0:rtp_sink> Unable to unprotect buffer (unprotect failed code 10)
0:02:08.050930580 4373 0x7f8fe0002300 WARN srtpdec gstsrtpdec.c:1429:gst_srtp_dec_decode_buffer:<srtpdec0:rtp_sink> Unable to unprotect buffer (unprotect failed code 10)
0:02:08.050934689 4373 0x7f8fe0002300 WARN srtpdec gstsrtpdec.c:1429:gst_srtp_dec_decode_buffer:<srtpdec0:rtp_sink> Unable to unprotect buffer (unprotect failed code 10)
0:02:08.051205431 4373 0x7f8fe0002300 WARN srtpdec gstsrtpdec.c:1429:gst_srtp_dec_decode_buffer:<srtpdec0:rtp_sink> Unable to unprotect buffer (unprotect failed code 10)
0:02:08.051212711 4373 0x7f8fe0002300 WARN srtpdec gstsrtpdec.c:1429:gst_srtp_dec_decode_buffer:<srtpdec0:rtp_sink> Unable to unprotect buffer (unprotect failed code 10)
0:02:08.051216835 4373 0x7f8fe0002300 WARN srtpdec gstsrtpdec.c:1429:gst_srtp_dec_decode_buffer:<srtpdec0:rtp_sink> Unable to unprotect buffer (unprotect failed code 10)
0:02:10.289899977 4373 0x7f8ffc0091e0 WARN kmsutils kmsutils.c:477:discont_detection_probe:<kmswebrtcendpoint0_kmsagnosticbin2-2:sink> DISCONTINUITY at non-keyframe; will drop until keyframe
Publisher pumps H.264 with 3M (720p, 30fps):
KMS reports transcoding (because of the filter):
0:00:19.385432158 4373 0x559003793700 INFO agnosticbin kmsagnosticbin.c:730:kms_agnostic_bin2_find_or_create_bin_for_caps:<kmsfilterelement0_kmsagnosticbin2-0> TRANSCODING ACTIVE for video
Subscriber receives terrible quality at around 300 (720p, 30fps):
Update not considered yet for the results above.
I've made some improvements to the way plugins are loaded by scripts, and how the docs explain it, to make them clearer. New docs section: Install by copying files.
Basically, regardless of what you have in your system, bin/build-run.sh
should be building (and running) an independent set of binary files. Those files should in principle not be copied elsewhere, but executed as-is from the build directory (build-Debug/
).
In order to add additional plugins to this custom-built Kurento, that's where you'd export the KURENTO_MODULES_PATH and GST_PLUGIN_PATH. So, for example, this could be a typical build-and-run command with a custom plugin:
GST_PLUGIN_PATH="$HOME/my-module/build" \
KURENTO_MODULES_PATH="$HOME/my-module/build" \
bin/build-run.sh
Note, however, if your custom plugins are already installed in the system, the default search paths (/usr/lib/x86_64-linux-gnu/kurento
and /usr/lib/x86_64-linux-gnu/gstreamer-1.0
) are already included so you shouldn't need to export the vars if that's the case.
I force-pushed so please update your branch with this commands (note: these assume there are no local commits that need to be preserved!):
git fetch --all
git switch -C 18-encoder-bitrate origin/18-encoder-bitrate
You need to explain to me, how I would be able to update to a new version.
Before git pull
I checked which kurento-media-server
is doing it:
ubuntu@kms7:~/kurento/server$ ls -lall /usr/bin/kurento-media-server
-rwxr-xr-x 1 root root 2329280 Mar 21 17:14 /usr/bin/kurento-media-server
Note the timestamp: That time I re-created everything from scratch.
Then I git pulled
your latest version (5 minutes ago). Compiled it. I think one relevant file was re-compiled.
I checked the file in /usr/bin. It is the same as before after the build.
My new version is here:
ubuntu@kms7:~/kurento/server$ ls -lall build-RelWithDebInfo/media-server/server/kurento-media-server
-rwxrwxr-x 1 ubuntu ubuntu 59188872 Apr 5 17:37 build-RelWithDebInfo/media-server/server/kurento-media-server
Version is 7.0.1:
buntu@kms7:~/kurento/server$ build-RelWithDebInfo/media-server/server/kurento-media-server --version
0:00:00.007662281 7529 0x55c7a6618a70 INFO KurentoModuleManager ModuleManager.cpp:161:loadModules: Skip non-existent path: /usr/local/lib/kurento/modules
Kurento Media Server version: 7.0.1~19.ga2cd30b9e
You see: 7.0.1 and no filter, core, ... (of course also not my modules)
What to do now? This looks like the same as before, before I abandoned the previous VM. I haven't copied anything now, but I suppose, I'm unable to follow any change you are doing, since it doesn't land, where it should land.
Even with the git commands you posted below: Same old version in /usr/bin
ubuntu@kms7:~/kurento/server$ ls -lall /usr/bin/kurento-media-server -rwxr-xr-x 1 root root 2329280 Mar 21 17:14 /usr/bin/kurento-media-server
Now, regarding the changes of this PR, please run with this GST_DEBUG variable:
export GST_DEBUG="2,Kurento*:4,kms*:4,sdp*:4,webrtc*:4,*rtpendpoint:4,rtp*handler:4,rtpsynchronizer:4,KurentoMediaElementImpl:5,agnosticbin*:6,enctreebin:5,kmselement:5"
The important bits are at the end:
KurentoMediaElementImpl:5,agnosticbin*:6,enctreebin:5,kmselement:5
.
I'd recommend doing it with bin/build-run.sh
because if you run with /usr/bin/kurento-media-server
you will most probably use the binaries from mainline and not the ones built from this branch.
Now, regarding the changes of this PR, please run with this GST_DEBUG variable:
export GST_DEBUG="2,Kurento*:4,kms*:4,sdp*:4,webrtc*:4,*rtpendpoint:4,rtp*handler:4,rtpsynchronizer:4,KurentoMediaElementImpl:5,agnosticbin*:6,enctreebin:5,kmselement:5"
The important bits are at the end:
KurentoMediaElementImpl:5,agnosticbin*:6,enctreebin:5,kmselement:5
.I'd recommend doing it with
bin/build-run.sh
because if you run with/usr/bin/kurento-media-server
you will most probably use the binaries from mainline and not the ones built from this branch.
My mainline is the 18-xxx branch. I made that clear at installation time
But looks like with bin/build-run.sh
I have what I want.
0:00:00.105228420 10084 0x563e6332a390 INFO KurentoModuleManager ModuleManager.cpp:89:loadModule: Load file: /home/ubuntu/kurento/server/build-RelWithDebInfo/module-core/src/server/libkmscoremodule.so, module name: /home/ubuntu/kurento/server/build-RelWithDebInfo/module-core/src/server/libkmscoremodule.so
0:00:00.105270106 10084 0x563e6332a390 INFO KurentoModuleManager ModuleManager.cpp:136:loadModule: Loaded module: core, version: 7.0.1~19.ga2cd30b9e, date: Apr 5 2023 17:36:15
0:00:00.110770468 10084 0x563e6332a390 INFO KurentoModuleManager ModuleManager.cpp:89:loadModule: Load file: /home/ubuntu/kurento/server/build-RelWithDebInfo/module-examples/datachannelexample/src/server/libkmsdatachannelexamplemodule.so, module name: /home/ubuntu/kurento/server/build-RelWithDebInfo/module-examples/datachannelexample/src/server/libkmsdatachannelexamplemodule.so
0:00:00.110799396 10084 0x563e6332a390 INFO KurentoModuleManager ModuleManager.cpp:136:loadModule: Loaded module: datachannelexample, version: 7.0.1~19.ga2cd30b9e, date: Apr 5 2023 17:37:06
0:00:00.111974571 10084 0x563e6332a390 INFO KurentoModuleManager ModuleManager.cpp:89:loadModule: Load file: /home/ubuntu/kurento/server/build-RelWithDebInfo/module-examples/gstreamer-example/src/server/libkmsgstreamerexamplemodule.so, module name: /home/ubuntu/kurento/server/build-RelWithDebInfo/module-examples/gstreamer-example/src/server/libkmsgstreamerexamplemodule.so
0:00:00.112002229 10084 0x563e6332a390 INFO KurentoModuleManager ModuleManager.cpp:136:loadModule: Loaded module: gstreamerexample, version: 7.0.1~19.ga2cd30b9e, date: Apr 5 2023 17:37:05
0:00:00.146856937 10084 0x563e6332a390 INFO KurentoModuleManager ModuleManager.cpp:89:loadModule: Load file: /home/ubuntu/kurento/server/build-RelWithDebInfo/module-examples/chroma/src/server/libkmschromamodule.so, module name: /home/ubuntu/kurento/server/build-RelWithDebInfo/module-examples/chroma/src/server/libkmschromamodule.so
0:00:00.146895861 10084 0x563e6332a390 INFO KurentoModuleManager ModuleManager.cpp:136:loadModule: Loaded module: chroma, version: 7.0.1~19.ga2cd30b9e, date: Apr 5 2023 17:37:06
0:00:00.148127407 10084 0x563e6332a390 INFO KurentoModuleManager ModuleManager.cpp:89:loadModule: Load file: /home/ubuntu/kurento/server/build-RelWithDebInfo/module-examples/opencv-example/src/server/libkmsopencvexamplemodule.so, module name: /home/ubuntu/kurento/server/build-RelWithDebInfo/module-examples/opencv-example/src/server/libkmsopencvexamplemodule.so
0:00:00.148154813 10084 0x563e6332a390 INFO KurentoModuleManager ModuleManager.cpp:136:loadModule: Loaded module: opencvexample, version: 7.0.1~19.ga2cd30b9e, date: Apr 5 2023 17:37:06
0:00:00.157024118 10084 0x563e6332a390 INFO KurentoModuleManager ModuleManager.cpp:89:loadModule: Load file: /home/ubuntu/kurento/server/build-RelWithDebInfo/module-filters/src/server/libkmsfiltersmodule.so, module name: /home/ubuntu/kurento/server/build-RelWithDebInfo/module-filters/src/server/libkmsfiltersmodule.so
0:00:00.157052222 10084 0x563e6332a390 INFO KurentoModuleManager ModuleManager.cpp:136:loadModule: Loaded module: filters, version: 7.0.1~19.ga2cd30b9e, date: Apr 5 2023 17:36:53
0:00:00.167315218 10084 0x563e6332a390 INFO KurentoModuleManager ModuleManager.cpp:89:loadModule: Load file: /home/ubuntu/kurento/server/build-RelWithDebInfo/module-elements/src/server/libkmselementsmodule.so, module name: /home/ubuntu/kurento/server/build-RelWithDebInfo/module-elements/src/server/libkmselementsmodule.so
0:00:00.167347512 10084 0x563e6332a390 INFO KurentoModuleManager ModuleManager.cpp:136:loadModule: Loaded module: elements, version: 7.0.1~19.ga2cd30b9e, date: Apr 5 2023 17:36:42
0:00:00.168281065 10084 0x563e6332a390 INFO KurentoModuleManager ModuleManager.cpp:89:loadModule: Load file: /usr/lib/x86_64-linux-gnu/kurento/modules/libkmswebrtccbrmodule.so, module name: /usr/lib/x86_64-linux-gnu/kurento/modules/libkmswebrtccbrmodule.so
0:00:00.168302995 10084 0x563e6332a390 INFO KurentoModuleManager ModuleManager.cpp:136:loadModule: Loaded module: webrtccbr, version: 0.2.0~9.ge481621, date: Apr 5 2023 17:48:49
0:00:00.169082685 10084 0x563e6332a390 INFO KurentoModuleManager ModuleManager.cpp:89:loadModule: Load file: /usr/lib/x86_64-linux-gnu/kurento/modules/libkmswebrtcarucocodemodule.so, module name: /usr/lib/x86_64-linux-gnu/kurento/modules/libkmswebrtcarucocodemodule.so
0:00:00.169104371 10084 0x563e6332a390 INFO KurentoModuleManager ModuleManager.cpp:136:loadModule: Loaded module: webrtcarucocode, version: 0.2.0~17.g4a42814, date: Apr 5 2023 17:48:27
0:00:00.170862161 10084 0x563e6332a390 INFO KurentoModuleManager ModuleManager.cpp:89:loadModule: Load file: /usr/lib/x86_64-linux-gnu/kurento/modules/libkmswebrtcbarcodemodule.so, module name: /usr/lib/x86_64-linux-gnu/kurento/modules/libkmswebrtcbarcodemodule.so
Let me see with this...
To be clear: all files under /usr
come from the packages installed with apt-get, and those are Kurento 7.0.0 from the main branch.
Here you want to build and run Kurento version 7.0.1-dev from the 18-encoder-bitrate branch. Totally different things, so better not mix them up.
The last commit (as of this writing) of the 18-encoder-bitrate branch is 79311cf, and as such, this is what you should be seeing with --version
:
$ bin/build-run.sh --version
[...]
Kurento Media Server version: 7.0.1~20.g79311cf01
Found modules:
'chroma' version 7.0.1~20.g79311cf01
'core' version 7.0.1~20.g79311cf01
'datachannelexample' version 7.0.1~20.g79311cf01
'elements' version 7.0.1~20.g79311cf01
'filters' version 7.0.1~20.g79311cf01
'gstreamerexample' version 7.0.1~20.g79311cf01
'opencvexample' version 7.0.1~20.g79311cf01
Notice the "79311cf" everywhere, that's the current commit that has been build and injected into all version numbers of the server and its modules.
Got it now:
Kurento Media Server version: 7.0.1~19.ga2cd30b9e
Found modules:
'chroma' version 7.0.1~19.ga2cd30b9e
'core' version 7.0.1~19.ga2cd30b9e
'datachannelexample' version 7.0.1~19.ga2cd30b9e
'elements' version 7.0.1~19.ga2cd30b9e
'filters' version 7.0.1~19.ga2cd30b9e
'gstreamerexample' version 7.0.1~19.ga2cd30b9e
'opencvexample' version 7.0.1~19.ga2cd30b9e
'webrtcarucocode' version 0.2.0~17.g4a42814
'webrtcbarcode' version 0.2.0~8.g2dc7fb7
'webrtccbr' version 0.2.0~9.ge481621
~/kurento/server
Ok but please don't forget to do this also: https://github.com/Kurento/kurento/pull/24#issuecomment-1497927405 Then re-run the build-run script.
Notice that the latest commit of the branch is 79311cf01; that's why you need to fetch + switch again.
I myself wouldn't dare getting into the mess that is copying stuff from build-Debug/
folder to the /usr/
system folder... so I wouldn't recommend doing that, at all! Better to just use that script and run the branch version of Kurento exclusively from the checkout directory, not from /usr... otherwise the confusion will be huge with all these version mismatches.
Sorry to disappoint you:
0:01:35.756742772 11694 0x7fa390002290 INFO KurentoWebRtcEndpointImpl WebRtcEndpointImpl.cpp:572:WebRtcEndpointImpl: No QOS-DSCP value set
0:01:35.756845937 11694 0x7fa390002290 INFO KurentoWebRtcEndpointImpl WebRtcEndpointImpl.cpp:112:remove_not_supported_codecs_from_array:<kmswebrtcendpoint3> Removing not supported codec 'AMR/8000'
0:01:35.760924763 11694 0x7fa394002230 WARN default webrtcbarcodeOpenCVImpl.cpp:56:webrtcbarcodeOpenCVImpl: ZBar version: 0.23.0
0:01:35.761173394 11694 0x7fa2e8001e40 WARN default webrtcbarcodeOpenCVImpl.cpp:250:inferenceThread: Inference thread started
0:01:35.761588823 11694 0x7fa394002230 DEBUG kmselement kmselement.c:733:kms_element_get_output_element:<kmsfilterelement2> Output element requested for track video, stream default
0:01:35.761634745 11694 0x7fa394002230 DEBUG kmselement kmselement.c:743:kms_element_get_output_element:<kmsfilterelement2> New output element for track video, stream video_src_default
0:01:35.761926894 11694 0x7fa394002230 DEBUG kmselement kmselement.c:700:kms_element_set_video_output_properties:<kmsfilterelement2_kmsagnosticbin2-6> Setting property codec-config
0:01:35.761960880 11694 0x7fa394002230 DEBUG kmselement kmselement.c:703:kms_element_set_video_output_properties:<kmsfilterelement2_kmsagnosticbin2-6> Setting property target-encoder-bitrate
0:01:35.761989486 11694 0x7fa394002230 DEBUG agnosticbin kmsagnosticbin.c:1198:kms_agnostic_bin2_set_property:<kmsfilterelement2_kmsagnosticbin2-6> "target-encoder-bitrate" set: 300000
0:01:35.762016077 11694 0x7fa394002230 DEBUG kmselement kmselement.c:706:kms_element_set_video_output_properties:<kmsfilterelement2_kmsagnosticbin2-6> Setting property max-encoder-bitrate
0:01:35.762040808 11694 0x7fa394002230 DEBUG agnosticbin kmsagnosticbin.c:1226:kms_agnostic_bin2_set_property:<kmsfilterelement2_kmsagnosticbin2-6> "max-encoder-bitrate" set: 2147483647
0:01:35.762064726 11694 0x7fa394002230 DEBUG kmselement kmselement.c:709:kms_element_set_video_output_properties:<kmsfilterelement2_kmsagnosticbin2-6> Setting property min-encoder-bitrate
0:01:35.762080274 11694 0x7fa394002230 DEBUG agnosticbin kmsagnosticbin.c:1208:kms_agnostic_bin2_set_property:<kmsfilterelement2_kmsagnosticbin2-6> "min-encoder-bitrate" set: 0
0:01:35.762597381 11694 0x7fa394002230 INFO kmsutils kmsutils.c:522:kms_utils_pad_monitor_gaps:<'':sink_video_default> Add probe: DISCONT buffers and GAP events
0:01:35.762692222 11694 0x7fa394002230 DEBUG kmselement kmselement.c:970:kms_element_set_sink_input_stats:<kmsfilterelement2> Generating average stats for pad <kmsfilterelement2:sink_video_default>
0:01:35.762772671 11694 0x7fa394002230 DEBUG kmselement kmselement.c:733:kms_element_get_output_element:<kmsfilterelement2> Output element requested for track audio, stream default
0:01:35.762811797 11694 0x7fa394002230 DEBUG kmselement kmselement.c:743:kms_element_get_output_element:<kmsfilterelement2> New output element for track audio, stream audio_src_default
0:01:35.763220675 11694 0x7fa394002230 DEBUG kmselement kmselement.c:970:kms_element_set_sink_input_stats:<kmsfilterelement2> Generating average stats for pad <kmsfilterelement2:sink_audio_default>
0:01:35.763265479 11694 0x7fa394002230 DEBUG kmselement kmselement.c:733:kms_element_get_output_element:<kmsfilterelement2> Output element requested for track data, stream default
0:01:35.763291890 11694 0x7fa394002230 DEBUG kmselement kmselement.c:743:kms_element_get_output_element:<kmsfilterelement2> New output element for track data, stream data_src_default
0:01:35.763522472 11694 0x7fa394002230 DEBUG kmselement kmselement.c:956:kms_element_set_sink_input_stats: No stats collected for pad type 0
0:01:35.766332073 11694 0x7fa3a80022d0 DEBUG KurentoMediaElementImpl MediaElementImpl.cpp:1002:connect: Connecting 7f346d96-0ba4-455a-a4fe-588fec0f1963_kurento.MediaPipeline/313907d4-0c38-4476-bc06-2b12f95f36cd_kurento.WebRtcEndpoint -> 7f346d96-0ba4-455a-a4fe-588fec0f1963_kurento.MediaPipeline/ea30151b-836d-414f-8f59-9149116cc4e9_webrtcbarcode.webrtcbarcode params AUDIO default default
0:01:35.766433761 11694 0x7fa3a80022d0 DEBUG kmselement kmselement.c:1496:kms_element_request_new_srcpad:<kmswebrtcendpoint3> New output element for track audio, stream default
0:01:35.766452153 11694 0x7fa3a80022d0 DEBUG kmselement kmselement.c:1546:kms_element_request_new_src_element_default:<kmswebrtcendpoint3> src pads on sometimes (by default)
0:01:35.766493902 11694 0x7fa3a80022d0 DEBUG KurentoMediaElementImpl MediaElementImpl.cpp:1002:connect: Connecting 7f346d96-0ba4-455a-a4fe-588fec0f1963_kurento.MediaPipeline/313907d4-0c38-4476-bc06-2b12f95f36cd_kurento.WebRtcEndpoint -> 7f346d96-0ba4-455a-a4fe-588fec0f1963_kurento.MediaPipeline/ea30151b-836d-414f-8f59-9149116cc4e9_webrtcbarcode.webrtcbarcode params VIDEO default default
0:01:35.766552913 11694 0x7fa3a80022d0 DEBUG kmselement kmselement.c:1496:kms_element_request_new_srcpad:<kmswebrtcendpoint3> New output element for track video, stream default
0:01:35.766574517 11694 0x7fa3a80022d0 DEBUG kmselement kmselement.c:1546:kms_element_request_new_src_element_default:<kmswebrtcendpoint3> src pads on sometimes (by default)
0:01:35.766609458 11694 0x7fa3a80022d0 DEBUG KurentoMediaElementImpl MediaElementImpl.cpp:1002:connect: Connecting 7f346d96-0ba4-455a-a4fe-588fec0f1963_kurento.MediaPipeline/313907d4-0c38-4476-bc06-2b12f95f36cd_kurento.WebRtcEndpoint -> 7f346d96-0ba4-455a-a4fe-588fec0f1963_kurento.MediaPipeline/ea30151b-836d-414f-8f59-9149116cc4e9_webrtcbarcode.webrtcbarcode params DATA default default
0:01:35.766672870 11694 0x7fa3a80022d0 DEBUG kmselement kmselement.c:1496:kms_element_request_new_srcpad:<kmswebrtcendpoint3> New output element for track data, stream default
0:01:35.766694779 11694 0x7fa3a80022d0 DEBUG kmselement kmselement.c:1546:kms_element_request_new_src_element_default:<kmswebrtcendpoint3> src pads on sometimes (by default)
0:01:35.774322585 11694 0x55da7203b790 WARN kmselement kmselement.c:1312:kms_element_set_property:<kmswebrtcendpoint3> "target-encoder-bitrate" (300000) < new min (1500000); increasing it to new min
0:01:35.774348017 11694 0x55da7203b790 DEBUG kmselement kmselement.c:1320:kms_element_set_property:<kmswebrtcendpoint3> "min-encoder-bitrate" set: 1500000
0:01:35.774945731 11694 0x7fa398001410 DEBUG kmselement kmselement.c:1293:kms_element_set_property:<kmswebrtcendpoint3> "target-encoder-bitrate" set: 3000000
0:01:35.775815354 11694 0x7fa398001410 DEBUG kmselement kmselement.c:1347:kms_element_set_property:<kmswebrtcendpoint3> "max-encoder-bitrate" set: 4500000
0:01:35.825093944 11694 0x7fa388001d90 WARN kmswebrtcsession kmswebrtcsession.c:818:kms_webrtc_session_set_stun_server_info:<kmswebrtcsession3> STUN server not configured! NAT traversal requires STUN or TURN
0:01:35.825190530 11694 0x7fa388001d90 WARN kmswebrtcsession kmswebrtcsession.c:838:kms_webrtc_session_set_relay_info:<kmswebrtcsession3> TURN relay server not configured! NAT traversal requires STUN or TURN
0:01:37.494320218 11694 0x7fa3a80022d0 WARN kmsbasertpsession kmsbasertpsession.c:775:kms_base_rtp_session_start_transport_send:<kmswebrtcsession3> Cannot configure connection for media (id=1)
0:01:37.556600379 11694 0x7fa390072d20 INFO kmsutils kmsutils.c:522:kms_utils_pad_monitor_gaps:<'':sink_video_default> Add probe: DISCONT buffers and GAP events
0:01:37.556737015 11694 0x7fa390072d20 DEBUG kmselement kmselement.c:970:kms_element_set_sink_input_stats:<kmswebrtcendpoint3> Generating average stats for pad <kmswebrtcendpoint3:sink_video_default>
0:01:37.646128795 11694 0x7fa390072d20 INFO basertpendpoint kmsbasertpendpoint.c:1956:kms_base_rtp_endpoint_jitterbuffer_set_latency:<rtpjitterbuffer2> Add probe: Set jitterbuffer latency
0:01:37.646195527 11694 0x7fa390072d20 INFO basertpendpoint kmsbasertpendpoint.c:2005:kms_base_rtp_endpoint_jitterbuffer_monitor_rtp_out:<rtpjitterbuffer2> Add probe: Adjust jitterbuffer PTS out
0:01:37.646762951 11694 0x7fa390072d20 INFO basertpendpoint kmsbasertpendpoint.c:2050:kms_base_rtp_endpoint_jitterbuffer_monitor_rtcp_in:<rtpjitterbuffer2> Add probe: Get jitterbuffer RTCP SR timing
0:01:37.647067820 11694 0x7fa304005b60 INFO basertpendpoint kmsbasertpendpoint.c:1941:kms_base_rtp_endpoint_jitterbuffer_set_latency_probe:<rtpjitterbuffer2> Setting latency to 500 ms
0:01:37.647144730 11694 0x7fa304005b60 INFO basertpendpoint kmsbasertpendpoint.c:1944:kms_base_rtp_endpoint_jitterbuffer_set_latency_probe:<rtpjitterbuffer2> Jitterbuffer latency set; remove probe
0:01:37.647341498 11694 0x7fa304005b60 DEBUG kmselement kmselement.c:733:kms_element_get_output_element:<kmswebrtcendpoint3> Output element requested for track video, stream default
0:01:37.647644818 11694 0x7fa304005b60 DEBUG kmselement kmselement.c:700:kms_element_set_video_output_properties:<kmswebrtcendpoint3_kmsagnosticbin2-8> Setting property codec-config
0:01:37.647672050 11694 0x7fa304005b60 DEBUG kmselement kmselement.c:703:kms_element_set_video_output_properties:<kmswebrtcendpoint3_kmsagnosticbin2-8> Setting property target-encoder-bitrate
0:01:37.647694636 11694 0x7fa304005b60 DEBUG agnosticbin kmsagnosticbin.c:1198:kms_agnostic_bin2_set_property:<kmswebrtcendpoint3_kmsagnosticbin2-8> "target-encoder-bitrate" set: 3000000
0:01:37.647717979 11694 0x7fa304005b60 DEBUG kmselement kmselement.c:706:kms_element_set_video_output_properties:<kmswebrtcendpoint3_kmsagnosticbin2-8> Setting property max-encoder-bitrate
0:01:37.647733307 11694 0x7fa304005b60 DEBUG agnosticbin kmsagnosticbin.c:1226:kms_agnostic_bin2_set_property:<kmswebrtcendpoint3_kmsagnosticbin2-8> "max-encoder-bitrate" set: 4500000
0:01:37.647747785 11694 0x7fa304005b60 DEBUG kmselement kmselement.c:709:kms_element_set_video_output_properties:<kmswebrtcendpoint3_kmsagnosticbin2-8> Setting property min-encoder-bitrate
0:01:37.647762298 11694 0x7fa304005b60 DEBUG agnosticbin kmsagnosticbin.c:1208:kms_agnostic_bin2_set_property:<kmswebrtcendpoint3_kmsagnosticbin2-8> "min-encoder-bitrate" set: 1500000
0:01:37.648121350 11694 0x7fa304005b60 DEBUG kmselement kmselement.c:431:kms_element_set_target_on_linked:<kmswebrtcendpoint3:video_src_default_0> Setting target <kmswebrtcendpoint3_kmsagnosticbin2-8:src_0>
0:01:37.648166261 11694 0x7fa304005b60 LOG agnosticbin kmsagnosticbin.c:1061:kms_agnostic_bin2_src_reconfigure_probe:<kmswebrtcendpoint3_kmsagnosticbin2-8:src_0> Received reconfigure event
0:01:37.648209527 11694 0x7fa304005b60 LOG agnosticbin kmsagnosticbin.c:1061:kms_agnostic_bin2_src_reconfigure_probe:<kmswebrtcendpoint3_kmsagnosticbin2-8:src_0> Received reconfigure event
0:01:37.649148350 11694 0x7fa304005b60 INFO kmsutils kmsutils.c:1515:kms_utils_depayloader_monitor_pts_out:<rtph264depay2> Add probe: Adjust depayloader PTS out
0:01:37.649592454 11694 0x7fa304005b60 LOG agnosticbin kmsagnosticbin.c:1001:kms_agnostic_bin2_sink_caps_probe:<kmswebrtcendpoint3_kmsagnosticbin2-8> Processing CAPS event
0:01:37.649626065 11694 0x7fa304005b60 LOG agnosticbin kmsagnosticbin.c:1030:kms_agnostic_bin2_sink_caps_probe:<kmswebrtcendpoint3_kmsagnosticbin2-8> No previous input caps, starting
0:01:37.651074479 11694 0x7fa304005b60 INFO kmsutils kmsutils.c:522:kms_utils_pad_monitor_gaps:<kmswebrtcendpoint3_kmsagnosticbin2-8:sink> Add probe: DISCONT buffers and GAP events
0:01:37.651330389 11694 0x7fa304005b60 DEBUG agnosticbin kmsagnosticbin.c:920:input_bin_src_caps_probe:<kmswebrtcendpoint3_kmsagnosticbin2-8> Set input caps: video/x-h264, stream-format=(string)avc, alignment=(string)au, codec_data=(buffer)0142c01fffe1000f6742c01f8c8d405017fcb00f08846a01000468ce3c80, level=(string)3.1, profile=(string)constrained-baseline, width=(int)640, height=(int)360, framerate=(fraction)0/1, interlace-mode=(string)progressive, chroma-format=(string)4:2:0, bit-depth-luma=(uint)8, bit-depth-chroma=(uint)8, parsed=(boolean)true
0:01:37.651374976 11694 0x7fa304005b60 DEBUG agnosticbin kmsagnosticbin.c:795:kms_agnostic_bin2_link_pad:<kmswebrtcendpoint3_kmsagnosticbin2-8> Upstream provided caps: ANY
0:01:37.651468888 11694 0x7fa304005b60 DEBUG agnosticbin kmsagnosticbin.c:804:kms_agnostic_bin2_link_pad:<kmswebrtcendpoint3_kmsagnosticbin2-8> Downstream wanted caps: video/x-raw, format=(string)BGRA, width=(int)[ 1, 2147483647 ], height=(int)[ 1, 2147483647 ], framerate=(fraction)[ 0/1, 2147483647/1 ]
0:01:37.651501622 11694 0x7fa304005b60 DEBUG agnosticbin kmsagnosticbin.c:722:kms_agnostic_bin2_find_or_create_bin_for_caps:<kmswebrtcendpoint3_kmsagnosticbin2-8> Find TreeBin with wanted caps: video/x-raw, format=(string)BGRA, width=(int)[ 1, 2147483647 ], height=(int)[ 1, 2147483647 ], framerate=(fraction)[ 0/1, 2147483647/1 ]
0:01:37.651549800 11694 0x7fa304005b60 DEBUG agnosticbin kmsagnosticbin.c:501:check_bin:<kmsparsetreebin5> TreeBin <kmsparsetreebin5> caps: video/x-h264, stream-format=(string)avc, alignment=(string)au, codec_data=(buffer)0142c01fffe1000f6742c01f8c8d405017fcb00f08846a01000468ce3c80, level=(string)3.1, profile=(string)constrained-baseline, width=(int)640, height=(int)360, framerate=(fraction)0/1, interlace-mode=(string)progressive, chroma-format=(string)4:2:0, bit-depth-luma=(uint)8, bit-depth-chroma=(uint)8, parsed=(boolean)true
0:01:37.651580753 11694 0x7fa304005b60 DEBUG agnosticbin kmsagnosticbin.c:742:kms_agnostic_bin2_find_or_create_bin_for_caps:<kmswebrtcendpoint3_kmsagnosticbin2-8> TreeBin not found! Transcoding required for video
0:01:37.651611122 11694 0x7fa304005b60 LOG agnosticbin kmsagnosticbin.c:611:kms_agnostic_bin2_get_or_create_dec_bin: Raw caps: video/x-raw
0:01:37.651655677 11694 0x7fa304005b60 DEBUG agnosticbin kmsagnosticbin.c:501:check_bin:<kmsparsetreebin5> TreeBin <kmsparsetreebin5> caps: video/x-h264, stream-format=(string)avc, alignment=(string)au, codec_data=(buffer)0142c01fffe1000f6742c01f8c8d405017fcb00f08846a01000468ce3c80, level=(string)3.1, profile=(string)constrained-baseline, width=(int)640, height=(int)360, framerate=(fraction)0/1, interlace-mode=(string)progressive, chroma-format=(string)4:2:0, bit-depth-luma=(uint)8, bit-depth-chroma=(uint)8, parsed=(boolean)true
0:01:37.652941204 11694 0x7fa304005b60 DEBUG agnosticbin kmsagnosticbin.c:746:kms_agnostic_bin2_find_or_create_bin_for_caps:<kmswebrtcendpoint3_kmsagnosticbin2-8> Created TreeBin: <kmsdectreebin3>
0:01:37.652955041 11694 0x7fa304005b60 DEBUG KurentoMediaElementImpl MediaElementImpl.cpp:596:onMediaTranscodingStateChanged:<kmswebrtcendpoint3> MediaTranscodingStateChanged: TRANSCODING, bin: 'kmswebrtcendpoint3_kmsagnosticbin2-8', type: 'video'
0:01:37.652975151 11694 0x7fa304005b60 INFO agnosticbin kmsagnosticbin.c:754:kms_agnostic_bin2_find_or_create_bin_for_caps:<kmswebrtcendpoint3_kmsagnosticbin2-8> TRANSCODING ACTIVE for video
0:01:37.659574775 11694 0x7fa304005b60 DEBUG KurentoMediaElementImpl MediaElementImpl.cpp:526:mediaFlowOutStateChanged:<kmswebrtcendpoint3> MediaFlowOutStateChanged: FLOWING, pad: 'default', type: 'video'
0:01:37.661090873 11694 0x7fa3780074c0 LOG agnosticbin kmsagnosticbin.c:1001:kms_agnostic_bin2_sink_caps_probe:<kmsfilterelement2_kmsagnosticbin2-6> Processing CAPS event
0:01:37.661108971 11694 0x7fa3780074c0 LOG agnosticbin kmsagnosticbin.c:1030:kms_agnostic_bin2_sink_caps_probe:<kmsfilterelement2_kmsagnosticbin2-6> No previous input caps, starting
0:01:37.662531043 11694 0x7fa3780074c0 LOG agnosticbin kmsagnosticbin.c:1061:kms_agnostic_bin2_src_reconfigure_probe:<kmswebrtcendpoint3_kmsagnosticbin2-8:src_0> Received reconfigure event
0:01:37.662562691 11694 0x7fa3780074c0 INFO kmsutils kmsutils.c:522:kms_utils_pad_monitor_gaps:<kmsfilterelement2_kmsagnosticbin2-6:sink> Add probe: DISCONT buffers and GAP events
0:01:37.662604444 11694 0x7fa3780074c0 DEBUG agnosticbin kmsagnosticbin.c:920:input_bin_src_caps_probe:<kmsfilterelement2_kmsagnosticbin2-6> Set input caps: video/x-raw, width=(int)640, height=(int)360, interlace-mode=(string)progressive, multiview-mode=(string)mono, multiview-flags=(GstVideoMultiviewFlagsSet)0:ffffffff:/right-view-first/left-flipped/left-flopped/right-flipped/right-flopped/half-aspect/mixed-mono, pixel-aspect-ratio=(fraction)1/1, framerate=(fraction)0/1, format=(string)BGRA
0:01:37.663471174 11694 0x7fa3940094c0 DEBUG KurentoMediaElementImpl MediaElementImpl.cpp:561:mediaFlowInStateChanged:<kmsfilterelement2> MediaFlowInStateChanged: FLOWING, pad: 'default', type: 'video'
0:01:37.663916146 11694 0x7fa3780074c0 DEBUG KurentoMediaElementImpl MediaElementImpl.cpp:526:mediaFlowOutStateChanged:<kmsfilterelement2> MediaFlowOutStateChanged: FLOWING, pad: 'default', type: 'video'
0:01:39.819635981 11694 0x7fa3a0002270 INFO KurentoWebRtcEndpointImpl WebRtcEndpointImpl.cpp:572:WebRtcEndpointImpl: No QOS-DSCP value set
0:01:39.819719128 11694 0x7fa3a0002270 INFO KurentoWebRtcEndpointImpl WebRtcEndpointImpl.cpp:112:remove_not_supported_codecs_from_array:<kmswebrtcendpoint4> Removing not supported codec 'AMR/8000'
0:01:39.833466030 11694 0x7fa3a80022d0 DEBUG KurentoMediaElementImpl MediaElementImpl.cpp:1002:connect: Connecting 7f346d96-0ba4-455a-a4fe-588fec0f1963_kurento.MediaPipeline/ea30151b-836d-414f-8f59-9149116cc4e9_webrtcbarcode.webrtcbarcode -> 7f346d96-0ba4-455a-a4fe-588fec0f1963_kurento.MediaPipeline/a09f0a53-de63-455c-82c5-e99438887000_kurento.WebRtcEndpoint params AUDIO default default
0:01:39.833656755 11694 0x7fa3a80022d0 DEBUG KurentoMediaElementImpl MediaElementImpl.cpp:1002:connect: Connecting 7f346d96-0ba4-455a-a4fe-588fec0f1963_kurento.MediaPipeline/ea30151b-836d-414f-8f59-9149116cc4e9_webrtcbarcode.webrtcbarcode -> 7f346d96-0ba4-455a-a4fe-588fec0f1963_kurento.MediaPipeline/a09f0a53-de63-455c-82c5-e99438887000_kurento.WebRtcEndpoint params VIDEO default default
0:01:39.833727625 11694 0x7fa3a80022d0 DEBUG KurentoMediaElementImpl MediaElementImpl.cpp:1002:connect: Connecting 7f346d96-0ba4-455a-a4fe-588fec0f1963_kurento.MediaPipeline/ea30151b-836d-414f-8f59-9149116cc4e9_webrtcbarcode.webrtcbarcode -> 7f346d96-0ba4-455a-a4fe-588fec0f1963_kurento.MediaPipeline/a09f0a53-de63-455c-82c5-e99438887000_kurento.WebRtcEndpoint params DATA default default
0:01:39.889260182 11694 0x7fa388001d90 WARN kmswebrtcsession kmswebrtcsession.c:818:kms_webrtc_session_set_stun_server_info:<kmswebrtcsession4> STUN server not configured! NAT traversal requires STUN or TURN
0:01:39.889387396 11694 0x7fa388001d90 WARN kmswebrtcsession kmswebrtcsession.c:838:kms_webrtc_session_set_relay_info:<kmswebrtcsession4> TURN relay server not configured! NAT traversal requires STUN or TURN
0:01:39.903831531 11694 0x7fa390002290 WARN kmsbasertpsession kmsbasertpsession.c:775:kms_base_rtp_session_start_transport_send:<kmswebrtcsession4> Cannot configure connection for media (id=1)
0:01:39.972832108 11694 0x7fa338008c60 INFO kmsutils kmsutils.c:522:kms_utils_pad_monitor_gaps:<'':sink_video_default> Add probe: DISCONT buffers and GAP events
0:01:39.972898783 11694 0x7fa338008c60 DEBUG kmselement kmselement.c:431:kms_element_set_target_on_linked:<kmsfilterelement2:video_src_default_0> Setting target <kmsfilterelement2_kmsagnosticbin2-6:src_0>
0:01:39.972910753 11694 0x7fa338008c60 LOG agnosticbin kmsagnosticbin.c:1061:kms_agnostic_bin2_src_reconfigure_probe:<kmsfilterelement2_kmsagnosticbin2-6:src_0> Received reconfigure event
0:01:39.972922889 11694 0x7fa338008c60 DEBUG agnosticbin kmsagnosticbin.c:795:kms_agnostic_bin2_link_pad:<kmsfilterelement2_kmsagnosticbin2-6> Upstream provided caps: ANY
0:01:39.972982971 11694 0x7fa338008c60 DEBUG agnosticbin kmsagnosticbin.c:804:kms_agnostic_bin2_link_pad:<kmsfilterelement2_kmsagnosticbin2-6> Downstream wanted caps: video/x-h264, profile=(string)constrained-baseline, stream-format=(string)avc, alignment=(string)au; video/x-h264, stream-format=(string)avc, alignment=(string)au; video/x-h264, profile=(string)constrained-baseline, stream-format=(string)byte-stream, alignment=(string){ nal, au }; video/x-h264, stream-format=(string)byte-stream, alignment=(string){ nal, au }
0:01:39.972997333 11694 0x7fa338008c60 DEBUG agnosticbin kmsagnosticbin.c:722:kms_agnostic_bin2_find_or_create_bin_for_caps:<kmsfilterelement2_kmsagnosticbin2-6> Find TreeBin with wanted caps: video/x-h264, profile=(string)constrained-baseline, stream-format=(string)avc, alignment=(string)au; video/x-h264, stream-format=(string)avc, alignment=(string)au; video/x-h264, profile=(string)constrained-baseline, stream-format=(string)byte-stream, alignment=(string){ nal, au }; video/x-h264, stream-format=(string)byte-stream, alignment=(string){ nal, au }
0:01:39.973015682 11694 0x7fa338008c60 DEBUG agnosticbin kmsagnosticbin.c:501:check_bin:<kmsparsetreebin6> TreeBin <kmsparsetreebin6> caps: video/x-raw, width=(int)640, height=(int)360, interlace-mode=(string)progressive, multiview-mode=(string)mono, multiview-flags=(GstVideoMultiviewFlagsSet)0:ffffffff:/right-view-first/left-flipped/left-flopped/right-flipped/right-flopped/half-aspect/mixed-mono, pixel-aspect-ratio=(fraction)1/1, framerate=(fraction)0/1, format=(string)BGRA
0:01:39.973026489 11694 0x7fa338008c60 DEBUG agnosticbin kmsagnosticbin.c:742:kms_agnostic_bin2_find_or_create_bin_for_caps:<kmsfilterelement2_kmsagnosticbin2-6> TreeBin not found! Transcoding required for video
0:01:39.973475025 11694 0x7fa338008c60 DEBUG enctreebin kmsenctreebin.c:140:configure_encoder: Configure encoder: <openh264enc1>
0:01:39.973495439 11694 0x7fa338008c60 DEBUG enctreebin kmsenctreebin.c:448:kms_enc_tree_bin_configure:<kmsenctreebin1> Encoder plugin found: <openh264enc1> for caps: video/x-h264, profile=(string)constrained-baseline, stream-format=(string)avc, alignment=(string)au; video/x-h264, stream-format=(string)avc, alignment=(string)au; video/x-h264, profile=(string)constrained-baseline, stream-format=(string)byte-stream, alignment=(string){ nal, au }; video/x-h264, stream-format=(string)byte-stream, alignment=(string){ nal, au }
0:01:39.973500208 11694 0x7fa338008c60 DEBUG enctreebin kmsenctreebin.c:273:kms_enc_tree_bin_get_bitrate:<kmsenctreebin1> Bitrate = Current value: 300000
0:01:39.973505914 11694 0x7fa338008c60 DEBUG enctreebin kmsenctreebin.c:324:kms_enc_tree_bin_set_target_bitrate:<openh264enc1> "bitrate" set: 300000
0:01:39.986665444 11694 0x7fa338008c60 LOG agnosticbin kmsagnosticbin.c:1061:kms_agnostic_bin2_src_reconfigure_probe:<kmswebrtcendpoint3_kmsagnosticbin2-8:src_0> Received reconfigure event
0:01:39.988082531 11694 0x7fa338008c60 LOG agnosticbin kmsagnosticbin.c:1061:kms_agnostic_bin2_src_reconfigure_probe:<kmswebrtcendpoint3_kmsagnosticbin2-8:src_0> Received reconfigure event
0:01:39.988113920 11694 0x7fa338008c60 DEBUG agnosticbin kmsagnosticbin.c:746:kms_agnostic_bin2_find_or_create_bin_for_caps:<kmsfilterelement2_kmsagnosticbin2-6> Created TreeBin: <kmsenctreebin1>
0:01:39.988126242 11694 0x7fa338008c60 DEBUG KurentoMediaElementImpl MediaElementImpl.cpp:596:onMediaTranscodingStateChanged:<kmsfilterelement2> MediaTranscodingStateChanged: TRANSCODING, bin: 'kmsfilterelement2_kmsagnosticbin2-6', type: 'video'
0:01:39.988140537 11694 0x7fa338008c60 INFO agnosticbin kmsagnosticbin.c:754:kms_agnostic_bin2_find_or_create_bin_for_caps:<kmsfilterelement2_kmsagnosticbin2-6> TRANSCODING ACTIVE for video
0:01:39.988345920 11694 0x7fa338008c60 LOG agnosticbin kmsagnosticbin.c:1061:kms_agnostic_bin2_src_reconfigure_probe:<kmsfilterelement2_kmsagnosticbin2-6:src_0> Received reconfigure event
0:01:39.988362970 11694 0x7fa338008c60 DEBUG agnosticbin kmsagnosticbin.c:795:kms_agnostic_bin2_link_pad:<kmsfilterelement2_kmsagnosticbin2-6> Upstream provided caps: video/x-h264, stream-format=(string)byte-stream, alignment=(string)au, profile=(string)baseline
0:01:39.988410618 11694 0x7fa338008c60 DEBUG agnosticbin kmsagnosticbin.c:804:kms_agnostic_bin2_link_pad:<kmsfilterelement2_kmsagnosticbin2-6> Downstream wanted caps: video/x-h264, profile=(string)constrained-baseline, stream-format=(string)avc, alignment=(string)au; video/x-h264, stream-format=(string)avc, alignment=(string)au; video/x-h264, profile=(string)constrained-baseline, stream-format=(string)byte-stream, alignment=(string){ nal, au }; video/x-h264, stream-format=(string)byte-stream, alignment=(string){ nal, au }
0:01:39.988422450 11694 0x7fa338008c60 DEBUG agnosticbin kmsagnosticbin.c:722:kms_agnostic_bin2_find_or_create_bin_for_caps:<kmsfilterelement2_kmsagnosticbin2-6> Find TreeBin with wanted caps: video/x-h264, profile=(string)constrained-baseline, stream-format=(string)avc, alignment=(string)au; video/x-h264, stream-format=(string)avc, alignment=(string)au; video/x-h264, profile=(string)constrained-baseline, stream-format=(string)byte-stream, alignment=(string){ nal, au }; video/x-h264, stream-format=(string)byte-stream, alignment=(string){ nal, au }
0:01:39.988436754 11694 0x7fa338008c60 DEBUG agnosticbin kmsagnosticbin.c:501:check_bin:<kmsparsetreebin6> TreeBin <kmsparsetreebin6> caps: video/x-raw, width=(int)640, height=(int)360, interlace-mode=(string)progressive, multiview-mode=(string)mono, multiview-flags=(GstVideoMultiviewFlagsSet)0:ffffffff:/right-view-first/left-flipped/left-flopped/right-flipped/right-flopped/half-aspect/mixed-mono, pixel-aspect-ratio=(fraction)1/1, framerate=(fraction)0/1, format=(string)BGRA
0:01:39.988472340 11694 0x7fa338008c60 DEBUG agnosticbin kmsagnosticbin.c:501:check_bin:<kmsenctreebin1> TreeBin <kmsenctreebin1> caps: video/x-h264, stream-format=(string)byte-stream, alignment=(string)au, profile=(string)baseline
0:01:39.988482768 11694 0x7fa338008c60 DEBUG agnosticbin kmsagnosticbin.c:757:kms_agnostic_bin2_find_or_create_bin_for_caps:<kmsfilterelement2_kmsagnosticbin2-6> TreeBin found! Using <kmsenctreebin1> for video
0:01:39.988757696 11694 0x7fa338008c60 DEBUG kmselement kmselement.c:970:kms_element_set_sink_input_stats:<kmswebrtcendpoint4> Generating average stats for pad <kmswebrtcendpoint4:sink_video_default>
0:01:40.021565672 11694 0x7fa2e8007240 DEBUG KurentoMediaElementImpl MediaElementImpl.cpp:561:mediaFlowInStateChanged:<kmswebrtcendpoint4> MediaFlowInStateChanged: FLOWING, pad: 'default', type: 'video'
0:01:55.723889386 11694 0x7fa304005b60 LOG agnosticbin kmsagnosticbin.c:1001:kms_agnostic_bin2_sink_caps_probe:<kmswebrtcendpoint3_kmsagnosticbin2-8> Processing CAPS event
0:01:55.724006411 11694 0x7fa304005b60 LOG agnosticbin kmsagnosticbin.c:1009:kms_agnostic_bin2_sink_caps_probe:<kmswebrtcendpoint3_kmsagnosticbin2-8> Current input caps: video/x-h264, stream-format=(string)avc, alignment=(string)au, codec_data=(buffer)0142c01fffe1000f6742c01f8c8d405017fcb00f08846a01000468ce3c80, level=(string)3.1, profile=(string)constrained-baseline
0:01:55.724073685 11694 0x7fa304005b60 LOG agnosticbin kmsagnosticbin.c:1021:kms_agnostic_bin2_sink_caps_probe:<kmswebrtcendpoint3_kmsagnosticbin2-8> Set new input caps: video/x-h264, stream-format=(string)avc, alignment=(string)au, codec_data=(buffer)0142c020ffe1000f6742c0208c8d407808bf700f08846a01000468ce3c80, level=(string)3.2, profile=(string)constrained-baseline
0:01:55.728248131 11694 0x7fa304005b60 INFO kmsutils kmsutils.c:522:kms_utils_pad_monitor_gaps:<kmswebrtcendpoint3_kmsagnosticbin2-8:sink> Add probe: DISCONT buffers and GAP events
0:01:55.728652871 11694 0x7fa304005b60 DEBUG agnosticbin kmsagnosticbin.c:920:input_bin_src_caps_probe:<kmswebrtcendpoint3_kmsagnosticbin2-8> Set input caps: video/x-h264, stream-format=(string)avc, alignment=(string)au, codec_data=(buffer)0142c020ffe1000f6742c0208c8d407808bf700f08846a01000468ce3c80, level=(string)3.2, profile=(string)constrained-baseline, width=(int)960, height=(int)540, framerate=(fraction)0/1, interlace-mode=(string)progressive, chroma-format=(string)4:2:0, bit-depth-luma=(uint)8, bit-depth-chroma=(uint)8, parsed=(boolean)true
0:01:55.729028383 11694 0x7fa304005b60 DEBUG agnosticbin kmsagnosticbin.c:795:kms_agnostic_bin2_link_pad:<kmswebrtcendpoint3_kmsagnosticbin2-8> Upstream provided caps: ANY
0:01:55.730528887 11694 0x7fa304005b60 DEBUG agnosticbin kmsagnosticbin.c:804:kms_agnostic_bin2_link_pad:<kmswebrtcendpoint3_kmsagnosticbin2-8> Downstream wanted caps: video/x-raw, width=(int)[ 1, 32767 ], height=(int)[ 1, 32767 ], framerate=(fraction)[ 0/1, 2147483647/1 ], format=(string)BGRA
0:01:55.730578451 11694 0x7fa304005b60 DEBUG agnosticbin kmsagnosticbin.c:722:kms_agnostic_bin2_find_or_create_bin_for_caps:<kmswebrtcendpoint3_kmsagnosticbin2-8> Find TreeBin with wanted caps: video/x-raw, width=(int)[ 1, 32767 ], height=(int)[ 1, 32767 ], framerate=(fraction)[ 0/1, 2147483647/1 ], format=(string)BGRA
0:01:55.730669252 11694 0x7fa304005b60 DEBUG agnosticbin kmsagnosticbin.c:501:check_bin:<kmsparsetreebin7> TreeBin <kmsparsetreebin7> caps: video/x-h264, stream-format=(string)avc, alignment=(string)au, codec_data=(buffer)0142c020ffe1000f6742c0208c8d407808bf700f08846a01000468ce3c80, level=(string)3.2, profile=(string)constrained-baseline, width=(int)960, height=(int)540, framerate=(fraction)0/1, interlace-mode=(string)progressive, chroma-format=(string)4:2:0, bit-depth-luma=(uint)8, bit-depth-chroma=(uint)8, parsed=(boolean)true
0:01:55.730700525 11694 0x7fa304005b60 DEBUG agnosticbin kmsagnosticbin.c:742:kms_agnostic_bin2_find_or_create_bin_for_caps:<kmswebrtcendpoint3_kmsagnosticbin2-8> TreeBin not found! Transcoding required for video
0:01:55.730726690 11694 0x7fa304005b60 LOG agnosticbin kmsagnosticbin.c:611:kms_agnostic_bin2_get_or_create_dec_bin: Raw caps: video/x-raw
0:01:55.730798433 11694 0x7fa304005b60 DEBUG agnosticbin kmsagnosticbin.c:501:check_bin:<kmsparsetreebin7> TreeBin <kmsparsetreebin7> caps: video/x-h264, stream-format=(string)avc, alignment=(string)au, codec_data=(buffer)0142c020ffe1000f6742c0208c8d407808bf700f08846a01000468ce3c80, level=(string)3.2, profile=(string)constrained-baseline, width=(int)960, height=(int)540, framerate=(fraction)0/1, interlace-mode=(string)progressive, chroma-format=(string)4:2:0, bit-depth-luma=(uint)8, bit-depth-chroma=(uint)8, parsed=(boolean)true
0:01:55.733332447 11694 0x7fa304005b60 DEBUG agnosticbin kmsagnosticbin.c:746:kms_agnostic_bin2_find_or_create_bin_for_caps:<kmswebrtcendpoint3_kmsagnosticbin2-8> Created TreeBin: <kmsdectreebin4>
0:01:55.751702381 11694 0x7fa3780074c0 LOG agnosticbin kmsagnosticbin.c:1001:kms_agnostic_bin2_sink_caps_probe:<kmsfilterelement2_kmsagnosticbin2-6> Processing CAPS event
0:01:55.751733522 11694 0x7fa3780074c0 LOG agnosticbin kmsagnosticbin.c:1009:kms_agnostic_bin2_sink_caps_probe:<kmsfilterelement2_kmsagnosticbin2-6> Current input caps: video/x-raw, width=(int)640, height=(int)360, interlace-mode=(string)progressive, multiview-mode=(string)mono, multiview-flags=(GstVideoMultiviewFlagsSet)0:ffffffff:/right-view-first/left-flipped/left-flopped/right-flipped/right-flopped/half-aspect/mixed-mono, pixel-aspect-ratio=(fraction)1/1, framerate=(fraction)0/1, format=(string)BGRA
0:01:55.751740293 11694 0x7fa3780074c0 LOG agnosticbin kmsagnosticbin.c:1025:kms_agnostic_bin2_sink_caps_probe:<kmsfilterelement2_kmsagnosticbin2-6> No need to set new input caps
0:01:55.751745178 11694 0x7fa3780074c0 INFO kmsutils kmsutils.c:522:kms_utils_pad_monitor_gaps:<kmsfilterelement2_kmsagnosticbin2-6:sink> Add probe: DISCONT buffers and GAP events
0:02:05.829144533 11694 0x7fa304005b60 LOG agnosticbin kmsagnosticbin.c:1001:kms_agnostic_bin2_sink_caps_probe:<kmswebrtcendpoint3_kmsagnosticbin2-8> Processing CAPS event
0:02:05.829238459 11694 0x7fa304005b60 LOG agnosticbin kmsagnosticbin.c:1009:kms_agnostic_bin2_sink_caps_probe:<kmswebrtcendpoint3_kmsagnosticbin2-8> Current input caps: video/x-h264, stream-format=(string)avc, alignment=(string)au, codec_data=(buffer)0142c020ffe1000f6742c0208c8d407808bf700f08846a01000468ce3c80, level=(string)3.2, profile=(string)constrained-baseline
0:02:05.829259403 11694 0x7fa304005b60 LOG agnosticbin kmsagnosticbin.c:1025:kms_agnostic_bin2_sink_caps_probe:<kmswebrtcendpoint3_kmsagnosticbin2-8> No need to set new input caps
0:02:05.829279077 11694 0x7fa304005b60 INFO kmsutils kmsutils.c:522:kms_utils_pad_monitor_gaps:<kmswebrtcendpoint3_kmsagnosticbin2-8:sink> Add probe: DISCONT buffers and GAP events
0:02:05.855186329 11694 0x7fa3780074c0 LOG agnosticbin kmsagnosticbin.c:1001:kms_agnostic_bin2_sink_caps_probe:<kmsfilterelement2_kmsagnosticbin2-6> Processing CAPS event
0:02:05.855225095 11694 0x7fa3780074c0 LOG agnosticbin kmsagnosticbin.c:1009:kms_agnostic_bin2_sink_caps_probe:<kmsfilterelement2_kmsagnosticbin2-6> Current input caps: video/x-raw, width=(int)960, height=(int)540, interlace-mode=(string)progressive, multiview-mode=(string)mono, multiview-flags=(GstVideoMultiviewFlagsSet)0:ffffffff:/right-view-first/left-flipped/left-flopped/right-flipped/right-flopped/half-aspect/mixed-mono, pixel-aspect-ratio=(fraction)1/1, framerate=(fraction)0/1, format=(string)BGRA
0:02:05.855235197 11694 0x7fa3780074c0 LOG agnosticbin kmsagnosticbin.c:1025:kms_agnostic_bin2_sink_caps_probe:<kmsfilterelement2_kmsagnosticbin2-6> No need to set new input caps
0:02:05.855243369 11694 0x7fa3780074c0 INFO kmsutils kmsutils.c:522:kms_utils_pad_monitor_gaps:<kmsfilterelement2_kmsagnosticbin2-6:sink> Add probe: DISCONT buffers and GAP events
Terrible subscriber video.
Publisher (as always) full speed ahead. Subscriber crawling at around 300 kBps.
Subscriber:
Ok but please don't forget to do this also: #24 (comment) Then re-run the build-run script.
Notice that the latest commit of the branch is 79311cf; that's why you need to fetch + switch again.
I myself wouldn't dare getting into the mess that is copying stuff from
build-Debug/
folder to the/usr/
system folder... so I wouldn't recommend doing that, at all! Better to just use that script and run the branch version of Kurento exclusively from the checkout directory, not from /usr... otherwise the confusion will be huge with all these version mismatches.
Yes I did
EDIT: No, seems I don't have the last commit... What a sh...
But now... A clean
command would be helpful..
Kurento Media Server version: 7.0.1~20.g79311cf01
Found modules:
'chroma' version 7.0.1~20.g79311cf01
'core' version 7.0.1~20.g79311cf01
'datachannelexample' version 7.0.1~20.g79311cf01
'elements' version 7.0.1~20.g79311cf01
'filters' version 7.0.1~20.g79311cf01
'gstreamerexample' version 7.0.1~20.g79311cf01
'opencvexample' version 7.0.1~20.g79311cf01
'webrtcarucocode' version 0.2.0~17.g4a42814
'webrtcbarcode' version 0.2.0~8.g2dc7fb7
'webrtccbr' version 0.2.0~9.ge481621
~/kurento/server
Repeating the test now
Best delete the whole directory and clone + git checkout again to the branch, that'd be easiest to fix the issue with getting to the latest commit on the branch.
To clean a previous build, just delete the build-Debug/
directory. Next time the script is run, it will not find it and will compile a new build from scratch. And again, I wouldn't recommend at all to manually copy the main executable and all .so
files to /usr/
, that's a recipe for making some subtle mistake sooner or later
Clearly NOT working
0:00:00.086404435 22607 0x55a35ecea960 INFO KurentoServerMethods ServerMethods.cpp:88:ServerMethods: Using above 80% of system limits will throw NOT_ENOUGH_RESOURCES exception
0:00:00.086413847 22607 0x55a35ecea960 INFO KurentoServerMethods ServerMethods.cpp:107:ServerMethods: System limits: 42898 threads, 1048576 files
0:00:00.086466304 22607 0x55a35ecea960 INFO KurentoWorkerPool WorkerPool.cpp:67:WorkerPool: Worker thread pool size: 6
0:00:00.086832836 22607 0x55a35ecea960 INFO KurentoServerMethods ServerMethods.cpp:143:ServerMethods: RPC Request Cache is ENABLED
0:00:00.086905383 22607 0x55a35ecea960 INFO KurentoWebSocketTransport WebSocketTransport.cpp:203:initWebSocket: WebSocket server (ws://) listening on address '::', port 8888
0:00:00.086913886 22607 0x55a35ecea960 INFO KurentoWebSocketTransport WebSocketTransport.cpp:89:WebSocketTransport: Secure WebSocket server (wss://) not enabled
0:00:00.087135226 22607 0x55a35ecea960 INFO KurentoMediaServer main.cpp:259:main: Kurento Media Server started
0:00:30.823645429 22607 0x7f6744002230 INFO KurentoWebRtcEndpointImpl WebRtcEndpointImpl.cpp:160:generateDefaultCertificates: Unable to load the RSA certificate from file. Using the default certificate.
0:00:30.848886071 22607 0x7f6744002230 INFO KurentoWebRtcEndpointImpl WebRtcEndpointImpl.cpp:169:generateDefaultCertificates: Unable to load the ECDSA certificate from file. Using the default certificate.
0:00:30.849053772 22607 0x7f6744002230 INFO KurentoWebRtcEndpointImpl WebRtcEndpointImpl.cpp:572:WebRtcEndpointImpl: No QOS-DSCP value set
0:00:30.849085797 22607 0x7f6744002230 INFO KurentoWebRtcEndpointImpl WebRtcEndpointImpl.cpp:112:remove_not_supported_codecs_from_array:<kmswebrtcendpoint0> Removing not supported codec 'AMR/8000'
0:00:30.850811368 22607 0x7f6738001d90 WARN default webrtcbarcodeOpenCVImpl.cpp:56:webrtcbarcodeOpenCVImpl: ZBar version: 0.23.0
0:00:30.850947884 22607 0x7f673804cd60 WARN default webrtcbarcodeOpenCVImpl.cpp:250:inferenceThread: Inference thread started
0:00:30.851632488 22607 0x7f6738001d90 DEBUG kmselement kmselement.c:733:kms_element_get_output_element:<kmsfilterelement0> Output element requested for track video, stream default
0:00:30.851646864 22607 0x7f6738001d90 DEBUG kmselement kmselement.c:743:kms_element_get_output_element:<kmsfilterelement0> New output element for track video, stream video_src_default
0:00:30.852238086 22607 0x7f6738001d90 DEBUG kmselement kmselement.c:700:kms_element_set_video_output_properties:<kmsfilterelement0_kmsagnosticbin2-0> Setting property codec-config
0:00:30.852252915 22607 0x7f6738001d90 DEBUG kmselement kmselement.c:703:kms_element_set_video_output_properties:<kmsfilterelement0_kmsagnosticbin2-0> Setting property target-encoder-bitrate
0:00:30.852257559 22607 0x7f6738001d90 DEBUG agnosticbin kmsagnosticbin.c:1198:kms_agnostic_bin2_set_property:<kmsfilterelement0_kmsagnosticbin2-0> "target-encoder-bitrate" set: 300000
0:00:30.852261769 22607 0x7f6738001d90 DEBUG kmselement kmselement.c:706:kms_element_set_video_output_properties:<kmsfilterelement0_kmsagnosticbin2-0> Setting property max-encoder-bitrate
0:00:30.852265898 22607 0x7f6738001d90 DEBUG agnosticbin kmsagnosticbin.c:1226:kms_agnostic_bin2_set_property:<kmsfilterelement0_kmsagnosticbin2-0> "max-encoder-bitrate" set: 2147483647
0:00:30.852271154 22607 0x7f6738001d90 DEBUG kmselement kmselement.c:709:kms_element_set_video_output_properties:<kmsfilterelement0_kmsagnosticbin2-0> Setting property min-encoder-bitrate
0:00:30.852274681 22607 0x7f6738001d90 DEBUG agnosticbin kmsagnosticbin.c:1208:kms_agnostic_bin2_set_property:<kmsfilterelement0_kmsagnosticbin2-0> "min-encoder-bitrate" set: 0
0:00:30.852502765 22607 0x7f6738001d90 INFO kmsutils kmsutils.c:522:kms_utils_pad_monitor_gaps:<'':sink_video_default> Add probe: DISCONT buffers and GAP events
0:00:30.852521865 22607 0x7f6738001d90 DEBUG kmselement kmselement.c:970:kms_element_set_sink_input_stats:<kmsfilterelement0> Generating average stats for pad <kmsfilterelement0:sink_video_default>
0:00:30.852536900 22607 0x7f6738001d90 DEBUG kmselement kmselement.c:733:kms_element_get_output_element:<kmsfilterelement0> Output element requested for track audio, stream default
0:00:30.852545335 22607 0x7f6738001d90 DEBUG kmselement kmselement.c:743:kms_element_get_output_element:<kmsfilterelement0> New output element for track audio, stream audio_src_default
0:00:30.852668655 22607 0x7f6738001d90 DEBUG kmselement kmselement.c:970:kms_element_set_sink_input_stats:<kmsfilterelement0> Generating average stats for pad <kmsfilterelement0:sink_audio_default>
0:00:30.852681840 22607 0x7f6738001d90 DEBUG kmselement kmselement.c:733:kms_element_get_output_element:<kmsfilterelement0> Output element requested for track data, stream default
0:00:30.852687633 22607 0x7f6738001d90 DEBUG kmselement kmselement.c:743:kms_element_get_output_element:<kmsfilterelement0> New output element for track data, stream data_src_default
0:00:30.852751147 22607 0x7f6738001d90 DEBUG kmselement kmselement.c:956:kms_element_set_sink_input_stats: No stats collected for pad type 0
0:00:30.853922558 22607 0x7f6760002330 DEBUG KurentoMediaElementImpl MediaElementImpl.cpp:1002:connect: Connecting 031894ee-731f-4b45-a63c-5088e4ad11b4_kurento.MediaPipeline/3807037e-3f16-4afa-9b93-a9a22bcbeca2_kurento.WebRtcEndpoint -> 031894ee-731f-4b45-a63c-5088e4ad11b4_kurento.MediaPipeline/179f9bf6-4234-4505-b2c4-4a46a41e75a3_webrtcbarcode.webrtcbarcode params AUDIO default default
0:00:30.853962329 22607 0x7f6760002330 DEBUG kmselement kmselement.c:1496:kms_element_request_new_srcpad:<kmswebrtcendpoint0> New output element for track audio, stream default
0:00:30.853968694 22607 0x7f6760002330 DEBUG kmselement kmselement.c:1546:kms_element_request_new_src_element_default:<kmswebrtcendpoint0> src pads on sometimes (by default)
0:00:30.853981444 22607 0x7f6760002330 DEBUG KurentoMediaElementImpl MediaElementImpl.cpp:1002:connect: Connecting 031894ee-731f-4b45-a63c-5088e4ad11b4_kurento.MediaPipeline/3807037e-3f16-4afa-9b93-a9a22bcbeca2_kurento.WebRtcEndpoint -> 031894ee-731f-4b45-a63c-5088e4ad11b4_kurento.MediaPipeline/179f9bf6-4234-4505-b2c4-4a46a41e75a3_webrtcbarcode.webrtcbarcode params VIDEO default default
0:00:30.853990474 22607 0x7f6760002330 DEBUG kmselement kmselement.c:1496:kms_element_request_new_srcpad:<kmswebrtcendpoint0> New output element for track video, stream default
0:00:30.853994052 22607 0x7f6760002330 DEBUG kmselement kmselement.c:1546:kms_element_request_new_src_element_default:<kmswebrtcendpoint0> src pads on sometimes (by default)
0:00:30.854001188 22607 0x7f6760002330 DEBUG KurentoMediaElementImpl MediaElementImpl.cpp:1002:connect: Connecting 031894ee-731f-4b45-a63c-5088e4ad11b4_kurento.MediaPipeline/3807037e-3f16-4afa-9b93-a9a22bcbeca2_kurento.WebRtcEndpoint -> 031894ee-731f-4b45-a63c-5088e4ad11b4_kurento.MediaPipeline/179f9bf6-4234-4505-b2c4-4a46a41e75a3_webrtcbarcode.webrtcbarcode params DATA default default
0:00:30.854008062 22607 0x7f6760002330 DEBUG kmselement kmselement.c:1496:kms_element_request_new_srcpad:<kmswebrtcendpoint0> New output element for track data, stream default
0:00:30.854011420 22607 0x7f6760002330 DEBUG kmselement kmselement.c:1546:kms_element_request_new_src_element_default:<kmswebrtcendpoint0> src pads on sometimes (by default)
0:00:30.902969832 22607 0x7f6760002330 WARN kmselement kmselement.c:1312:kms_element_set_property:<kmswebrtcendpoint0> "target-encoder-bitrate" (300000) < new min (1500000); increasing it to new min
0:00:30.903040637 22607 0x7f6760002330 DEBUG kmselement kmselement.c:1320:kms_element_set_property:<kmswebrtcendpoint0> "min-encoder-bitrate" set: 1500000
0:00:30.905556529 22607 0x7f6748001410 DEBUG kmselement kmselement.c:1293:kms_element_set_property:<kmswebrtcendpoint0> "target-encoder-bitrate" set: 3000000
0:00:30.908176718 22607 0x55a35ecea990 DEBUG kmselement kmselement.c:1347:kms_element_set_property:<kmswebrtcendpoint0> "max-encoder-bitrate" set: 4500000
0:00:30.995219834 22607 0x7f6758002270 WARN kmswebrtcsession kmswebrtcsession.c:818:kms_webrtc_session_set_stun_server_info:<kmswebrtcsession0> STUN server not configured! NAT traversal requires STUN or TURN
0:00:30.995246521 22607 0x7f6758002270 WARN kmswebrtcsession kmswebrtcsession.c:838:kms_webrtc_session_set_relay_info:<kmswebrtcsession0> TURN relay server not configured! NAT traversal requires STUN or TURN
0:00:30.998246372 22607 0x7f6738013860 INFO KurentoWorkerPool WorkerPool.cpp:67:WorkerPool: Worker thread pool size: 6
0:00:32.687342191 22607 0x55a35ecea990 WARN kmsbasertpsession kmsbasertpsession.c:775:kms_base_rtp_session_start_transport_send:<kmswebrtcsession0> Cannot configure connection for media (id=1)
0:00:32.725650817 22607 0x7f675400ad20 INFO kmsutils kmsutils.c:522:kms_utils_pad_monitor_gaps:<'':sink_video_default> Add probe: DISCONT buffers and GAP events
0:00:32.725702071 22607 0x7f675400ad20 DEBUG kmselement kmselement.c:970:kms_element_set_sink_input_stats:<kmswebrtcendpoint0> Generating average stats for pad <kmswebrtcendpoint0:sink_video_default>
0:00:32.838226832 22607 0x7f675400ad20 INFO basertpendpoint kmsbasertpendpoint.c:1956:kms_base_rtp_endpoint_jitterbuffer_set_latency:<rtpjitterbuffer0> Add probe: Set jitterbuffer latency
0:00:32.838261377 22607 0x7f675400ad20 INFO basertpendpoint kmsbasertpendpoint.c:2005:kms_base_rtp_endpoint_jitterbuffer_monitor_rtp_out:<rtpjitterbuffer0> Add probe: Adjust jitterbuffer PTS out
0:00:32.838409873 22607 0x7f675400ad20 INFO basertpendpoint kmsbasertpendpoint.c:2050:kms_base_rtp_endpoint_jitterbuffer_monitor_rtcp_in:<rtpjitterbuffer0> Add probe: Get jitterbuffer RTCP SR timing
0:00:32.838550290 22607 0x7f66f8005d20 INFO basertpendpoint kmsbasertpendpoint.c:1941:kms_base_rtp_endpoint_jitterbuffer_set_latency_probe:<rtpjitterbuffer0> Setting latency to 500 ms
0:00:32.838574028 22607 0x7f66f8005d20 INFO basertpendpoint kmsbasertpendpoint.c:1944:kms_base_rtp_endpoint_jitterbuffer_set_latency_probe:<rtpjitterbuffer0> Jitterbuffer latency set; remove probe
0:00:32.838639452 22607 0x7f66f8005d20 DEBUG kmselement kmselement.c:733:kms_element_get_output_element:<kmswebrtcendpoint0> Output element requested for track video, stream default
0:00:32.838735429 22607 0x7f66f8005d20 DEBUG kmselement kmselement.c:700:kms_element_set_video_output_properties:<kmswebrtcendpoint0_kmsagnosticbin2-2> Setting property codec-config
0:00:32.838748884 22607 0x7f66f8005d20 DEBUG kmselement kmselement.c:703:kms_element_set_video_output_properties:<kmswebrtcendpoint0_kmsagnosticbin2-2> Setting property target-encoder-bitrate
0:00:32.838759562 22607 0x7f66f8005d20 DEBUG agnosticbin kmsagnosticbin.c:1198:kms_agnostic_bin2_set_property:<kmswebrtcendpoint0_kmsagnosticbin2-2> "target-encoder-bitrate" set: 3000000
0:00:32.838768860 22607 0x7f66f8005d20 DEBUG kmselement kmselement.c:706:kms_element_set_video_output_properties:<kmswebrtcendpoint0_kmsagnosticbin2-2> Setting property max-encoder-bitrate
0:00:32.838777598 22607 0x7f66f8005d20 DEBUG agnosticbin kmsagnosticbin.c:1226:kms_agnostic_bin2_set_property:<kmswebrtcendpoint0_kmsagnosticbin2-2> "max-encoder-bitrate" set: 4500000
0:00:32.838786487 22607 0x7f66f8005d20 DEBUG kmselement kmselement.c:709:kms_element_set_video_output_properties:<kmswebrtcendpoint0_kmsagnosticbin2-2> Setting property min-encoder-bitrate
0:00:32.838794667 22607 0x7f66f8005d20 DEBUG agnosticbin kmsagnosticbin.c:1208:kms_agnostic_bin2_set_property:<kmswebrtcendpoint0_kmsagnosticbin2-2> "min-encoder-bitrate" set: 1500000
0:00:32.838901580 22607 0x7f66f8005d20 DEBUG kmselement kmselement.c:431:kms_element_set_target_on_linked:<kmswebrtcendpoint0:video_src_default_0> Setting target <kmswebrtcendpoint0_kmsagnosticbin2-2:src_0>
0:00:32.838912802 22607 0x7f66f8005d20 LOG agnosticbin kmsagnosticbin.c:1061:kms_agnostic_bin2_src_reconfigure_probe:<kmswebrtcendpoint0_kmsagnosticbin2-2:src_0> Received reconfigure event
0:00:32.838927442 22607 0x7f66f8005d20 LOG agnosticbin kmsagnosticbin.c:1061:kms_agnostic_bin2_src_reconfigure_probe:<kmswebrtcendpoint0_kmsagnosticbin2-2:src_0> Received reconfigure event
0:00:32.839443437 22607 0x7f66f8005d20 INFO kmsutils kmsutils.c:1515:kms_utils_depayloader_monitor_pts_out:<rtph264depay0> Add probe: Adjust depayloader PTS out
0:00:32.839622718 22607 0x7f66f8005d20 LOG agnosticbin kmsagnosticbin.c:1001:kms_agnostic_bin2_sink_caps_probe:<kmswebrtcendpoint0_kmsagnosticbin2-2> Processing CAPS event
0:00:32.839633986 22607 0x7f66f8005d20 LOG agnosticbin kmsagnosticbin.c:1030:kms_agnostic_bin2_sink_caps_probe:<kmswebrtcendpoint0_kmsagnosticbin2-2> No previous input caps, starting
0:00:32.840889987 22607 0x7f66f8005d20 INFO kmsutils kmsutils.c:522:kms_utils_pad_monitor_gaps:<kmswebrtcendpoint0_kmsagnosticbin2-2:sink> Add probe: DISCONT buffers and GAP events
0:00:32.840971208 22607 0x7f66f8005d20 DEBUG agnosticbin kmsagnosticbin.c:920:input_bin_src_caps_probe:<kmswebrtcendpoint0_kmsagnosticbin2-2> Set input caps: video/x-h264, stream-format=(string)avc, alignment=(string)au, codec_data=(buffer)0142c01fffe1000f6742c01f8c8d405017fcb00f08846a01000468ce3c80, level=(string)3.1, profile=(string)constrained-baseline, width=(int)640, height=(int)360, framerate=(fraction)0/1, interlace-mode=(string)progressive, chroma-format=(string)4:2:0, bit-depth-luma=(uint)8, bit-depth-chroma=(uint)8, parsed=(boolean)true
0:00:32.840985047 22607 0x7f66f8005d20 DEBUG agnosticbin kmsagnosticbin.c:795:kms_agnostic_bin2_link_pad:<kmswebrtcendpoint0_kmsagnosticbin2-2> Upstream provided caps: ANY
0:00:32.841014301 22607 0x7f66f8005d20 DEBUG agnosticbin kmsagnosticbin.c:804:kms_agnostic_bin2_link_pad:<kmswebrtcendpoint0_kmsagnosticbin2-2> Downstream wanted caps: video/x-raw, format=(string)BGRA, width=(int)[ 1, 2147483647 ], height=(int)[ 1, 2147483647 ], framerate=(fraction)[ 0/1, 2147483647/1 ]
0:00:32.841040851 22607 0x7f66f8005d20 DEBUG agnosticbin kmsagnosticbin.c:722:kms_agnostic_bin2_find_or_create_bin_for_caps:<kmswebrtcendpoint0_kmsagnosticbin2-2> Find TreeBin with wanted caps: video/x-raw, format=(string)BGRA, width=(int)[ 1, 2147483647 ], height=(int)[ 1, 2147483647 ], framerate=(fraction)[ 0/1, 2147483647/1 ]
0:00:32.841066600 22607 0x7f66f8005d20 DEBUG agnosticbin kmsagnosticbin.c:501:check_bin:<kmsparsetreebin0> TreeBin <kmsparsetreebin0> caps: video/x-h264, stream-format=(string)avc, alignment=(string)au, codec_data=(buffer)0142c01fffe1000f6742c01f8c8d405017fcb00f08846a01000468ce3c80, level=(string)3.1, profile=(string)constrained-baseline, width=(int)640, height=(int)360, framerate=(fraction)0/1, interlace-mode=(string)progressive, chroma-format=(string)4:2:0, bit-depth-luma=(uint)8, bit-depth-chroma=(uint)8, parsed=(boolean)true
0:00:32.841076803 22607 0x7f66f8005d20 DEBUG agnosticbin kmsagnosticbin.c:742:kms_agnostic_bin2_find_or_create_bin_for_caps:<kmswebrtcendpoint0_kmsagnosticbin2-2> TreeBin not found! Transcoding required for video
0:00:32.841088212 22607 0x7f66f8005d20 LOG agnosticbin kmsagnosticbin.c:611:kms_agnostic_bin2_get_or_create_dec_bin: Raw caps: video/x-raw
0:00:32.841103646 22607 0x7f66f8005d20 DEBUG agnosticbin kmsagnosticbin.c:501:check_bin:<kmsparsetreebin0> TreeBin <kmsparsetreebin0> caps: video/x-h264, stream-format=(string)avc, alignment=(string)au, codec_data=(buffer)0142c01fffe1000f6742c01f8c8d405017fcb00f08846a01000468ce3c80, level=(string)3.1, profile=(string)constrained-baseline, width=(int)640, height=(int)360, framerate=(fraction)0/1, interlace-mode=(string)progressive, chroma-format=(string)4:2:0, bit-depth-luma=(uint)8, bit-depth-chroma=(uint)8, parsed=(boolean)true
0:00:32.868939707 22607 0x7f66f8005d20 DEBUG agnosticbin kmsagnosticbin.c:746:kms_agnostic_bin2_find_or_create_bin_for_caps:<kmswebrtcendpoint0_kmsagnosticbin2-2> Created TreeBin: <kmsdectreebin0>
0:00:32.868961567 22607 0x7f66f8005d20 DEBUG KurentoMediaElementImpl MediaElementImpl.cpp:596:onMediaTranscodingStateChanged:<kmswebrtcendpoint0> MediaTranscodingStateChanged: TRANSCODING, bin: 'kmswebrtcendpoint0_kmsagnosticbin2-2', type: 'video'
0:00:32.869002524 22607 0x7f66f8005d20 INFO agnosticbin kmsagnosticbin.c:754:kms_agnostic_bin2_find_or_create_bin_for_caps:<kmswebrtcendpoint0_kmsagnosticbin2-2> TRANSCODING ACTIVE for video
0:00:32.877208822 22607 0x7f66f8005d20 DEBUG KurentoMediaElementImpl MediaElementImpl.cpp:526:mediaFlowOutStateChanged:<kmswebrtcendpoint0> MediaFlowOutStateChanged: FLOWING, pad: 'default', type: 'video'
0:00:32.878796601 22607 0x7f673c010e40 LOG agnosticbin kmsagnosticbin.c:1001:kms_agnostic_bin2_sink_caps_probe:<kmsfilterelement0_kmsagnosticbin2-0> Processing CAPS event
0:00:32.878812426 22607 0x7f673c010e40 LOG agnosticbin kmsagnosticbin.c:1030:kms_agnostic_bin2_sink_caps_probe:<kmsfilterelement0_kmsagnosticbin2-0> No previous input caps, starting
0:00:32.880467387 22607 0x7f673c010e40 LOG agnosticbin kmsagnosticbin.c:1061:kms_agnostic_bin2_src_reconfigure_probe:<kmswebrtcendpoint0_kmsagnosticbin2-2:src_0> Received reconfigure event
0:00:32.880501808 22607 0x7f673c010e40 INFO kmsutils kmsutils.c:522:kms_utils_pad_monitor_gaps:<kmsfilterelement0_kmsagnosticbin2-0:sink> Add probe: DISCONT buffers and GAP events
0:00:32.880545474 22607 0x7f673c010e40 DEBUG agnosticbin kmsagnosticbin.c:920:input_bin_src_caps_probe:<kmsfilterelement0_kmsagnosticbin2-0> Set input caps: video/x-raw, width=(int)640, height=(int)360, interlace-mode=(string)progressive, multiview-mode=(string)mono, multiview-flags=(GstVideoMultiviewFlagsSet)0:ffffffff:/right-view-first/left-flipped/left-flopped/right-flipped/right-flopped/half-aspect/mixed-mono, pixel-aspect-ratio=(fraction)1/1, framerate=(fraction)0/1, format=(string)BGRA
0:00:32.882164115 22607 0x7f66ec009800 DEBUG KurentoMediaElementImpl MediaElementImpl.cpp:561:mediaFlowInStateChanged:<kmsfilterelement0> MediaFlowInStateChanged: FLOWING, pad: 'default', type: 'video'
0:00:32.882644566 22607 0x7f673c010e40 DEBUG KurentoMediaElementImpl MediaElementImpl.cpp:526:mediaFlowOutStateChanged:<kmsfilterelement0> MediaFlowOutStateChanged: FLOWING, pad: 'default', type: 'video'
0:00:35.269234554 22607 0x7f6744002230 INFO KurentoWebRtcEndpointImpl WebRtcEndpointImpl.cpp:572:WebRtcEndpointImpl: No QOS-DSCP value set
0:00:35.269333429 22607 0x7f6744002230 INFO KurentoWebRtcEndpointImpl WebRtcEndpointImpl.cpp:112:remove_not_supported_codecs_from_array:<kmswebrtcendpoint1> Removing not supported codec 'AMR/8000'
0:00:35.289118791 22607 0x7f6748002350 DEBUG KurentoMediaElementImpl MediaElementImpl.cpp:1002:connect: Connecting 031894ee-731f-4b45-a63c-5088e4ad11b4_kurento.MediaPipeline/179f9bf6-4234-4505-b2c4-4a46a41e75a3_webrtcbarcode.webrtcbarcode -> 031894ee-731f-4b45-a63c-5088e4ad11b4_kurento.MediaPipeline/012aa49a-ac71-4e1b-af56-a6f4688fbb4b_kurento.WebRtcEndpoint params AUDIO default default
0:00:35.289245607 22607 0x7f6748002350 DEBUG KurentoMediaElementImpl MediaElementImpl.cpp:1002:connect: Connecting 031894ee-731f-4b45-a63c-5088e4ad11b4_kurento.MediaPipeline/179f9bf6-4234-4505-b2c4-4a46a41e75a3_webrtcbarcode.webrtcbarcode -> 031894ee-731f-4b45-a63c-5088e4ad11b4_kurento.MediaPipeline/012aa49a-ac71-4e1b-af56-a6f4688fbb4b_kurento.WebRtcEndpoint params VIDEO default default
0:00:35.289283131 22607 0x7f6748002350 DEBUG KurentoMediaElementImpl MediaElementImpl.cpp:1002:connect: Connecting 031894ee-731f-4b45-a63c-5088e4ad11b4_kurento.MediaPipeline/179f9bf6-4234-4505-b2c4-4a46a41e75a3_webrtcbarcode.webrtcbarcode -> 031894ee-731f-4b45-a63c-5088e4ad11b4_kurento.MediaPipeline/012aa49a-ac71-4e1b-af56-a6f4688fbb4b_kurento.WebRtcEndpoint params DATA default default
0:00:35.293848947 22607 0x7f674c0022f0 WARN kmswebrtcsession kmswebrtcsession.c:818:kms_webrtc_session_set_stun_server_info:<kmswebrtcsession1> STUN server not configured! NAT traversal requires STUN or TURN
0:00:35.293865068 22607 0x7f674c0022f0 WARN kmswebrtcsession kmswebrtcsession.c:838:kms_webrtc_session_set_relay_info:<kmswebrtcsession1> TURN relay server not configured! NAT traversal requires STUN or TURN
0:00:35.314131829 22607 0x7f6738001d90 WARN kmsbasertpsession kmsbasertpsession.c:775:kms_base_rtp_session_start_transport_send:<kmswebrtcsession1> Cannot configure connection for media (id=1)
0:00:35.370059737 22607 0x7f673c010d80 INFO kmsutils kmsutils.c:522:kms_utils_pad_monitor_gaps:<'':sink_video_default> Add probe: DISCONT buffers and GAP events
0:00:35.370116117 22607 0x7f673c010d80 DEBUG kmselement kmselement.c:431:kms_element_set_target_on_linked:<kmsfilterelement0:video_src_default_0> Setting target <kmsfilterelement0_kmsagnosticbin2-0:src_0>
0:00:35.370149180 22607 0x7f673c010d80 LOG agnosticbin kmsagnosticbin.c:1061:kms_agnostic_bin2_src_reconfigure_probe:<kmsfilterelement0_kmsagnosticbin2-0:src_0> Received reconfigure event
0:00:35.370157998 22607 0x7f673c010d80 DEBUG agnosticbin kmsagnosticbin.c:795:kms_agnostic_bin2_link_pad:<kmsfilterelement0_kmsagnosticbin2-0> Upstream provided caps: ANY
0:00:35.370219423 22607 0x7f673c010d80 DEBUG agnosticbin kmsagnosticbin.c:804:kms_agnostic_bin2_link_pad:<kmsfilterelement0_kmsagnosticbin2-0> Downstream wanted caps: video/x-h264, profile=(string)constrained-baseline, stream-format=(string)avc, alignment=(string)au; video/x-h264, stream-format=(string)avc, alignment=(string)au; video/x-h264, profile=(string)constrained-baseline, stream-format=(string)byte-stream, alignment=(string){ nal, au }; video/x-h264, stream-format=(string)byte-stream, alignment=(string){ nal, au }
0:00:35.370231693 22607 0x7f673c010d80 DEBUG agnosticbin kmsagnosticbin.c:722:kms_agnostic_bin2_find_or_create_bin_for_caps:<kmsfilterelement0_kmsagnosticbin2-0> Find TreeBin with wanted caps: video/x-h264, profile=(string)constrained-baseline, stream-format=(string)avc, alignment=(string)au; video/x-h264, stream-format=(string)avc, alignment=(string)au; video/x-h264, profile=(string)constrained-baseline, stream-format=(string)byte-stream, alignment=(string){ nal, au }; video/x-h264, stream-format=(string)byte-stream, alignment=(string){ nal, au }
0:00:35.370263070 22607 0x7f673c010d80 DEBUG agnosticbin kmsagnosticbin.c:501:check_bin:<kmsparsetreebin1> TreeBin <kmsparsetreebin1> caps: video/x-raw, width=(int)640, height=(int)360, interlace-mode=(string)progressive, multiview-mode=(string)mono, multiview-flags=(GstVideoMultiviewFlagsSet)0:ffffffff:/right-view-first/left-flipped/left-flopped/right-flipped/right-flopped/half-aspect/mixed-mono, pixel-aspect-ratio=(fraction)1/1, framerate=(fraction)0/1, format=(string)BGRA
0:00:35.370272594 22607 0x7f673c010d80 DEBUG agnosticbin kmsagnosticbin.c:742:kms_agnostic_bin2_find_or_create_bin_for_caps:<kmsfilterelement0_kmsagnosticbin2-0> TreeBin not found! Transcoding required for video
0:00:35.371136762 22607 0x7f673c010d80 DEBUG enctreebin kmsenctreebin.c:140:configure_encoder: Configure encoder: <openh264enc0>
0:00:35.371175124 22607 0x7f673c010d80 DEBUG enctreebin kmsenctreebin.c:448:kms_enc_tree_bin_configure:<kmsenctreebin0> Encoder plugin found: <openh264enc0> for caps: video/x-h264, profile=(string)constrained-baseline, stream-format=(string)avc, alignment=(string)au; video/x-h264, stream-format=(string)avc, alignment=(string)au; video/x-h264, profile=(string)constrained-baseline, stream-format=(string)byte-stream, alignment=(string){ nal, au }; video/x-h264, stream-format=(string)byte-stream, alignment=(string){ nal, au }
0:00:35.371184903 22607 0x7f673c010d80 DEBUG enctreebin kmsenctreebin.c:273:kms_enc_tree_bin_get_bitrate:<kmsenctreebin0> Bitrate = Current value: 300000
0:00:35.371190023 22607 0x7f673c010d80 DEBUG enctreebin kmsenctreebin.c:324:kms_enc_tree_bin_set_target_bitrate:<openh264enc0> "bitrate" set: 300000
0:00:35.384903417 22607 0x7f673c010d80 LOG agnosticbin kmsagnosticbin.c:1061:kms_agnostic_bin2_src_reconfigure_probe:<kmswebrtcendpoint0_kmsagnosticbin2-2:src_0> Received reconfigure event
0:00:35.386215169 22607 0x7f673c010d80 LOG agnosticbin kmsagnosticbin.c:1061:kms_agnostic_bin2_src_reconfigure_probe:<kmswebrtcendpoint0_kmsagnosticbin2-2:src_0> Received reconfigure event
0:00:35.386238949 22607 0x7f673c010d80 DEBUG agnosticbin kmsagnosticbin.c:746:kms_agnostic_bin2_find_or_create_bin_for_caps:<kmsfilterelement0_kmsagnosticbin2-0> Created TreeBin: <kmsenctreebin0>
0:00:35.386250976 22607 0x7f673c010d80 DEBUG KurentoMediaElementImpl MediaElementImpl.cpp:596:onMediaTranscodingStateChanged:<kmsfilterelement0> MediaTranscodingStateChanged: TRANSCODING, bin: 'kmsfilterelement0_kmsagnosticbin2-0', type: 'video'
0:00:35.386263524 22607 0x7f673c010d80 INFO agnosticbin kmsagnosticbin.c:754:kms_agnostic_bin2_find_or_create_bin_for_caps:<kmsfilterelement0_kmsagnosticbin2-0> TRANSCODING ACTIVE for video
0:00:35.386447192 22607 0x7f673c010d80 LOG agnosticbin kmsagnosticbin.c:1061:kms_agnostic_bin2_src_reconfigure_probe:<kmsfilterelement0_kmsagnosticbin2-0:src_0> Received reconfigure event
0:00:35.386462824 22607 0x7f673c010d80 DEBUG agnosticbin kmsagnosticbin.c:795:kms_agnostic_bin2_link_pad:<kmsfilterelement0_kmsagnosticbin2-0> Upstream provided caps: video/x-h264, stream-format=(string)byte-stream, alignment=(string)au, profile=(string)baseline
0:00:35.386490171 22607 0x7f673c010d80 DEBUG agnosticbin kmsagnosticbin.c:804:kms_agnostic_bin2_link_pad:<kmsfilterelement0_kmsagnosticbin2-0> Downstream wanted caps: video/x-h264, profile=(string)constrained-baseline, stream-format=(string)avc, alignment=(string)au; video/x-h264, stream-format=(string)avc, alignment=(string)au; video/x-h264, profile=(string)constrained-baseline, stream-format=(string)byte-stream, alignment=(string){ nal, au }; video/x-h264, stream-format=(string)byte-stream, alignment=(string){ nal, au }
0:00:35.386501211 22607 0x7f673c010d80 DEBUG agnosticbin kmsagnosticbin.c:722:kms_agnostic_bin2_find_or_create_bin_for_caps:<kmsfilterelement0_kmsagnosticbin2-0> Find TreeBin with wanted caps: video/x-h264, profile=(string)constrained-baseline, stream-format=(string)avc, alignment=(string)au; video/x-h264, stream-format=(string)avc, alignment=(string)au; video/x-h264, profile=(string)constrained-baseline, stream-format=(string)byte-stream, alignment=(string){ nal, au }; video/x-h264, stream-format=(string)byte-stream, alignment=(string){ nal, au }
0:00:35.386519111 22607 0x7f673c010d80 DEBUG agnosticbin kmsagnosticbin.c:501:check_bin:<kmsparsetreebin1> TreeBin <kmsparsetreebin1> caps: video/x-raw, width=(int)640, height=(int)360, interlace-mode=(string)progressive, multiview-mode=(string)mono, multiview-flags=(GstVideoMultiviewFlagsSet)0:ffffffff:/right-view-first/left-flipped/left-flopped/right-flipped/right-flopped/half-aspect/mixed-mono, pixel-aspect-ratio=(fraction)1/1, framerate=(fraction)0/1, format=(string)BGRA
0:00:35.386556176 22607 0x7f673c010d80 DEBUG agnosticbin kmsagnosticbin.c:501:check_bin:<kmsenctreebin0> TreeBin <kmsenctreebin0> caps: video/x-h264, stream-format=(string)byte-stream, alignment=(string)au, profile=(string)baseline
0:00:35.386566264 22607 0x7f673c010d80 DEBUG agnosticbin kmsagnosticbin.c:757:kms_agnostic_bin2_find_or_create_bin_for_caps:<kmsfilterelement0_kmsagnosticbin2-0> TreeBin found! Using <kmsenctreebin0> for video
0:00:35.386730934 22607 0x7f673c010d80 DEBUG kmselement kmselement.c:970:kms_element_set_sink_input_stats:<kmswebrtcendpoint1> Generating average stats for pad <kmswebrtcendpoint1:sink_video_default>
0:00:35.416224632 22607 0x7f674000e520 DEBUG KurentoMediaElementImpl MediaElementImpl.cpp:561:mediaFlowInStateChanged:<kmswebrtcendpoint1> MediaFlowInStateChanged: FLOWING, pad: 'default', type: 'video'
0:00:46.888056039 22607 0x7f66f8005d20 LOG agnosticbin kmsagnosticbin.c:1001:kms_agnostic_bin2_sink_caps_probe:<kmswebrtcendpoint0_kmsagnosticbin2-2> Processing CAPS event
0:00:46.888507176 22607 0x7f66f8005d20 LOG agnosticbin kmsagnosticbin.c:1009:kms_agnostic_bin2_sink_caps_probe:<kmswebrtcendpoint0_kmsagnosticbin2-2> Current input caps: video/x-h264, stream-format=(string)avc, alignment=(string)au, codec_data=(buffer)0142c01fffe1000f6742c01f8c8d405017fcb00f08846a01000468ce3c80, level=(string)3.1, profile=(string)constrained-baseline
0:00:46.888679573 22607 0x7f66f8005d20 LOG agnosticbin kmsagnosticbin.c:1021:kms_agnostic_bin2_sink_caps_probe:<kmswebrtcendpoint0_kmsagnosticbin2-2> Set new input caps: video/x-h264, stream-format=(string)avc, alignment=(string)au, codec_data=(buffer)0142c020ffe1000f6742c0208c8d407808bf700f08846a01000468ce3c80, level=(string)3.2, profile=(string)constrained-baseline
0:00:46.892398103 22607 0x7f66f8005d20 INFO kmsutils kmsutils.c:522:kms_utils_pad_monitor_gaps:<kmswebrtcendpoint0_kmsagnosticbin2-2:sink> Add probe: DISCONT buffers and GAP events
0:00:46.892522757 22607 0x7f66f8005d20 DEBUG agnosticbin kmsagnosticbin.c:920:input_bin_src_caps_probe:<kmswebrtcendpoint0_kmsagnosticbin2-2> Set input caps: video/x-h264, stream-format=(string)avc, alignment=(string)au, codec_data=(buffer)0142c020ffe1000f6742c0208c8d407808bf700f08846a01000468ce3c80, level=(string)3.2, profile=(string)constrained-baseline, width=(int)960, height=(int)540, framerate=(fraction)0/1, interlace-mode=(string)progressive, chroma-format=(string)4:2:0, bit-depth-luma=(uint)8, bit-depth-chroma=(uint)8, parsed=(boolean)true
0:00:46.892738186 22607 0x7f66f8005d20 DEBUG agnosticbin kmsagnosticbin.c:795:kms_agnostic_bin2_link_pad:<kmswebrtcendpoint0_kmsagnosticbin2-2> Upstream provided caps: ANY
0:00:46.893144895 22607 0x7f66f8005d20 DEBUG agnosticbin kmsagnosticbin.c:804:kms_agnostic_bin2_link_pad:<kmswebrtcendpoint0_kmsagnosticbin2-2> Downstream wanted caps: video/x-raw, width=(int)[ 1, 32767 ], height=(int)[ 1, 32767 ], framerate=(fraction)[ 0/1, 2147483647/1 ], format=(string)BGRA
0:00:46.893186182 22607 0x7f66f8005d20 DEBUG agnosticbin kmsagnosticbin.c:722:kms_agnostic_bin2_find_or_create_bin_for_caps:<kmswebrtcendpoint0_kmsagnosticbin2-2> Find TreeBin with wanted caps: video/x-raw, width=(int)[ 1, 32767 ], height=(int)[ 1, 32767 ], framerate=(fraction)[ 0/1, 2147483647/1 ], format=(string)BGRA
0:00:46.893228104 22607 0x7f66f8005d20 DEBUG agnosticbin kmsagnosticbin.c:501:check_bin:<kmsparsetreebin2> TreeBin <kmsparsetreebin2> caps: video/x-h264, stream-format=(string)avc, alignment=(string)au, codec_data=(buffer)0142c020ffe1000f6742c0208c8d407808bf700f08846a01000468ce3c80, level=(string)3.2, profile=(string)constrained-baseline, width=(int)960, height=(int)540, framerate=(fraction)0/1, interlace-mode=(string)progressive, chroma-format=(string)4:2:0, bit-depth-luma=(uint)8, bit-depth-chroma=(uint)8, parsed=(boolean)true
0:00:46.893253994 22607 0x7f66f8005d20 DEBUG agnosticbin kmsagnosticbin.c:742:kms_agnostic_bin2_find_or_create_bin_for_caps:<kmswebrtcendpoint0_kmsagnosticbin2-2> TreeBin not found! Transcoding required for video
0:00:46.893289301 22607 0x7f66f8005d20 LOG agnosticbin kmsagnosticbin.c:611:kms_agnostic_bin2_get_or_create_dec_bin: Raw caps: video/x-raw
0:00:46.893321401 22607 0x7f66f8005d20 DEBUG agnosticbin kmsagnosticbin.c:501:check_bin:<kmsparsetreebin2> TreeBin <kmsparsetreebin2> caps: video/x-h264, stream-format=(string)avc, alignment=(string)au, codec_data=(buffer)0142c020ffe1000f6742c0208c8d407808bf700f08846a01000468ce3c80, level=(string)3.2, profile=(string)constrained-baseline, width=(int)960, height=(int)540, framerate=(fraction)0/1, interlace-mode=(string)progressive, chroma-format=(string)4:2:0, bit-depth-luma=(uint)8, bit-depth-chroma=(uint)8, parsed=(boolean)true
0:00:46.893756653 22607 0x7f66f8005d20 DEBUG agnosticbin kmsagnosticbin.c:746:kms_agnostic_bin2_find_or_create_bin_for_caps:<kmswebrtcendpoint0_kmsagnosticbin2-2> Created TreeBin: <kmsdectreebin1>
0:00:46.904677570 22607 0x7f673c010e40 LOG agnosticbin kmsagnosticbin.c:1001:kms_agnostic_bin2_sink_caps_probe:<kmsfilterelement0_kmsagnosticbin2-0> Processing CAPS event
0:00:46.904704173 22607 0x7f673c010e40 LOG agnosticbin kmsagnosticbin.c:1009:kms_agnostic_bin2_sink_caps_probe:<kmsfilterelement0_kmsagnosticbin2-0> Current input caps: video/x-raw, width=(int)640, height=(int)360, interlace-mode=(string)progressive, multiview-mode=(string)mono, multiview-flags=(GstVideoMultiviewFlagsSet)0:ffffffff:/right-view-first/left-flipped/left-flopped/right-flipped/right-flopped/half-aspect/mixed-mono, pixel-aspect-ratio=(fraction)1/1, framerate=(fraction)0/1, format=(string)BGRA
0:00:46.904711431 22607 0x7f673c010e40 LOG agnosticbin kmsagnosticbin.c:1025:kms_agnostic_bin2_sink_caps_probe:<kmsfilterelement0_kmsagnosticbin2-0> No need to set new input caps
0:00:46.904715833 22607 0x7f673c010e40 INFO kmsutils kmsutils.c:522:kms_utils_pad_monitor_gaps:<kmsfilterelement0_kmsagnosticbin2-0:sink> Add probe: DISCONT buffers and GAP events
0:00:56.988498257 22607 0x7f66f8005d20 LOG agnosticbin kmsagnosticbin.c:1001:kms_agnostic_bin2_sink_caps_probe:<kmswebrtcendpoint0_kmsagnosticbin2-2> Processing CAPS event
0:00:56.988591719 22607 0x7f66f8005d20 LOG agnosticbin kmsagnosticbin.c:1009:kms_agnostic_bin2_sink_caps_probe:<kmswebrtcendpoint0_kmsagnosticbin2-2> Current input caps: video/x-h264, stream-format=(string)avc, alignment=(string)au, codec_data=(buffer)0142c020ffe1000f6742c0208c8d407808bf700f08846a01000468ce3c80, level=(string)3.2, profile=(string)constrained-baseline
0:00:56.988621380 22607 0x7f66f8005d20 LOG agnosticbin kmsagnosticbin.c:1025:kms_agnostic_bin2_sink_caps_probe:<kmswebrtcendpoint0_kmsagnosticbin2-2> No need to set new input caps
0:00:56.988641442 22607 0x7f66f8005d20 INFO kmsutils kmsutils.c:522:kms_utils_pad_monitor_gaps:<kmswebrtcendpoint0_kmsagnosticbin2-2:sink> Add probe: DISCONT buffers and GAP events
0:00:57.013121156 22607 0x7f673c010e40 LOG agnosticbin kmsagnosticbin.c:1001:kms_agnostic_bin2_sink_caps_probe:<kmsfilterelement0_kmsagnosticbin2-0> Processing CAPS event
0:00:57.013151820 22607 0x7f673c010e40 LOG agnosticbin kmsagnosticbin.c:1009:kms_agnostic_bin2_sink_caps_probe:<kmsfilterelement0_kmsagnosticbin2-0> Current input caps: video/x-raw, width=(int)960, height=(int)540, interlace-mode=(string)progressive, multiview-mode=(string)mono, multiview-flags=(GstVideoMultiviewFlagsSet)0:ffffffff:/right-view-first/left-flipped/left-flopped/right-flipped/right-flopped/half-aspect/mixed-mono, pixel-aspect-ratio=(fraction)1/1, framerate=(fraction)0/1, format=(string)BGRA
0:00:57.013158683 22607 0x7f673c010e40 LOG agnosticbin kmsagnosticbin.c:1025:kms_agnostic_bin2_sink_caps_probe:<kmsfilterelement0_kmsagnosticbin2-0> No need to set new input caps
0:00:57.013163869 22607 0x7f673c010e40 INFO kmsutils kmsutils.c:522:kms_utils_pad_monitor_gaps:<kmsfilterelement0_kmsagnosticbin2-0:sink> Add probe: DISCONT buffers and GAP events
Publisher:
Subscriber:
Let me know if you want to see the VP8 situation.
Best delete the whole directory and clone + git checkout again to the branch, that'd be easiest to fix the issue with getting to the latest commit on the branch.
To clean a previous build, just delete the
build-Debug/
directory. Next time the script is run, it will not find it and will compile a new build from scratch. And again, I wouldn't recommend at all to manually copy the main executable and all.so
files to/usr/
, that's a recipe for making some subtle mistake sooner or later
I was fine removing the build dirs.
This is the key line:
DEBUG enctreebin kmsenctreebin.c:324:kms_enc_tree_bin_set_target_bitrate:<openh264enc0> "bitrate" set: 300000
It clearly says that openh264enc0 is being set to 300000 (bps), even though you had set a target bitrate of 3 Mbps. So yes, something is wrong there. At least we have everything set up now to check! Weirdly, I didn't have any problems when I tested it but now I'll try with your command sequence to verify your use case.
Quick test with VP8: Works
Publisher
Subscriber:
This is the key line:
DEBUG enctreebin kmsenctreebin.c:324:kms_enc_tree_bin_set_target_bitrate:<openh264enc0> "bitrate" set: 300000
It clearly says that openh264enc0 is being set to 300000 (bps), even though you had set a target bitrate of 3 Mbps. So yes, something is wrong there. At least we have everything set up now to check! Weirdly, I didn't have any problems when I tested it but now I'll try with your command sequence to verify your use case.
Cool. Then we should have that by tomorrow :)
Subscriber:
Difference like day and night with that output bitrate :)
Can you share a drawing of the Pipeline you are using, and indicate where you're setting the encoding bitrate? From the logs, I'm getting the feeling that the EncoderBitrate is simply not set in the element where the encoding is taking place.
For example in this pipeline:
(Chrome browser) ---> WebRtcEndpoint1 ---|--> RecorderEndpoint ---> recording.mp4
|--> WebRtcEndpoint2 ---> (Chrome browser)
The transcoding would happen in WebRtcEndpoint1. No use of setting values in any of the other 2 elements, although most applications would probably just opt out of the problem and set then in all elements.
I have the feeling that in your case the transcoding of H.264 is happening in the element that the logs mention as kmsfilterelement0
. Which I assume is the filter that you're using for the test? And that this element is just using the default values that are configured in the .conf files, because nobody has set any other value for the encoding bitrate to them.
This, of course, contradicts the results you obtained with VP8 :)
The bitrate is set in the publisher WebRtcEndpoint. I also had the same setup in the subscriber WebRtcEndpoint first, but I could not find the appropriate traces in the KMS log, so I removed it from there.
And it wouldn't explain why it works with VP8.
But let me quickly test by also trying to pimp the subscriber WebRtcEndpoint (from the feeling I would say it rather belongs there, than in the publisher's)
Setting the bitrate in the subscriber's WebRtcEndpoint too gives a lot of traces like this:
0:01:09.587044625 27134 0x7fba74048920 DEBUG enctreebin kmsenctreebin.c:267:kms_enc_tree_bin_get_bitrate:<kmsenctreebin0> Bitrate = WebRTC REMB: 2595712
0:01:09.587094929 27134 0x7fba74048920 DEBUG enctreebin kmsenctreebin.c:324:kms_enc_tree_bin_set_target_bitrate:<vp8enc0> "target-bitrate" set: 2595712
0:01:09.823551405 27134 0x7fba74048920 DEBUG enctreebin kmsenctreebin.c:267:kms_enc_tree_bin_get_bitrate:<kmsenctreebin0> Bitrate = WebRTC REMB: 2622400
0:01:09.823598260 27134 0x7fba74048920 DEBUG enctreebin kmsenctreebin.c:324:kms_enc_tree_bin_set_target_bitrate:<vp8enc0> "target-bitrate" set: 2622400
0:01:10.024742794 27134 0x7fba74048920 DEBUG enctreebin kmsenctreebin.c:267:kms_enc_tree_bin_get_bitrate:<kmsenctreebin0> Bitrate = WebRTC REMB: 2663264
0:01:10.024801266 27134 0x7fba74048920 DEBUG enctreebin kmsenctreebin.c:324:kms_enc_tree_bin_set_target_bitrate:<vp8enc0> "target-bitrate" set: 2663264
0:01:10.253053735 27134 0x7fba74048920 DEBUG enctreebin kmsenctreebin.c:267:kms_enc_tree_bin_get_bitrate:<kmsenctreebin0> Bitrate = WebRTC REMB: 2704240
0:01:10.253100982 27134 0x7fba74048920 DEBUG enctreebin kmsenctreebin.c:324:kms_enc_tree_bin_set_target_bitrate:<vp8enc0> "target-bitrate" set: 2704240
0:01:10.498414226 27134 0x7fba74048920 DEBUG enctreebin kmsenctreebin.c:267:kms_enc_tree_bin_get_bitrate:<kmsenctreebin0> Bitrate = WebRTC REMB: 2746176
0:01:10.498453760 27134 0x7fba74048920 DEBUG enctreebin kmsenctreebin.c:324:kms_enc_tree_bin_set_target_bitrate:<vp8enc0> "target-bitrate" set: 2746176
0:01:10.956481433 27134 0x7fba74048920 DEBUG enctreebin kmsenctreebin.c:267:kms_enc_tree_bin_get_bitrate:<kmsenctreebin0> Bitrate = WebRTC REMB: 2796480
0:01:10.956541897 27134 0x7fba74048920 DEBUG enctreebin kmsenctreebin.c:324:kms_enc_tree_bin_set_target_bitrate:<vp8enc0> "target-bitrate" set: 2796480
0:01:11.161423941 27134 0x7fba74048920 DEBUG enctreebin kmsenctreebin.c:267:kms_enc_tree_bin_get_bitrate:<kmsenctreebin0> Bitrate = WebRTC REMB: 2840896
0:01:11.161470053 27134 0x7fba74048920 DEBUG enctreebin kmsenctreebin.c:324:kms_enc_tree_bin_set_target_bitrate:<vp8enc0> "target-bitrate" set: 2840896
0:01:11.394018564 27134 0x7fba74048920 DEBUG enctreebin kmsenctreebin.c:267:kms_enc_tree_bin_get_bitrate:<kmsenctreebin0> Bitrate = WebRTC REMB: 2892272
0:01:11.394060638 27134 0x7fba74048920 DEBUG enctreebin kmsenctreebin.c:324:kms_enc_tree_bin_set_target_bitrate:<vp8enc0> "target-bitrate" set: 2892272
0:01:11.595441009 27134 0x7fba74048920 DEBUG enctreebin kmsenctreebin.c:267:kms_enc_tree_bin_get_bitrate:<kmsenctreebin0> Bitrate = WebRTC REMB: 2937360
0:01:11.595488332 27134 0x7fba74048920 DEBUG enctreebin kmsenctreebin.c:324:kms_enc_tree_bin_set_target_bitrate:<vp8enc0> "target-bitrate" set: 2937360
0:01:11.816213180 27134 0x7fba74048920 DEBUG enctreebin kmsenctreebin.c:267:kms_enc_tree_bin_get_bitrate:<kmsenctreebin0> Bitrate = WebRTC REMB: 2987808
0:01:11.816260281 27134 0x7fba74048920 DEBUG enctreebin kmsenctreebin.c:324:kms_enc_tree_bin_set_target_bitrate:<vp8enc0> "target-bitrate" set: 2987808
0:01:12.062215560 27134 0x7fba74048920 DEBUG enctreebin kmsenctreebin.c:267:kms_enc_tree_bin_get_bitrate:<kmsenctreebin0> Bitrate = WebRTC REMB: 3000000
0:01:12.062255736 27134 0x7fba74048920 DEBUG enctreebin kmsenctreebin.c:324:kms_enc_tree_bin_set_target_bitrate:<vp8enc0> "target-bitrate" set: 3000000
But it finally ramps up to 3M.
With H.264, when I set it in the publisher and subscriber WebRtcEndpoint, same "Doesn't work". And same trace again:
0:03:45.350342937 27134 0x7fba4c007b60 DEBUG enctreebin kmsenctreebin.c:324:kms_enc_tree_bin_set_target_bitrate:<openh264enc0> "bitrate" set: 300000
If you are in doubt, that I set it in the wrong WebRtcEndpoint, then I'm now setting it in all WebRtcEndpoints I'm managing. I think the VP8 "works" comes from REMB (?, not sure).
So given your picture above: Setting it in WebRtcEndpoint1 and WebRtcEndpoint2. There is no RecorderEndpoint, but a filter after WebRtcEndpoint1 and before WebRtcEndpoint2
I think the VP8 "OK" comes from REMB, which constantly increases the bitrate:
0:00:29.954442523 29383 0x7f4c9800e980 DEBUG enctreebin kmsenctreebin.c:267:kms_enc_tree_bin_get_bitrate:<kmsenctreebin0> Bitrate = WebRTC REMB: 581288
0:00:29.954553490 29383 0x7f4c9800e980 DEBUG enctreebin kmsenctreebin.c:324:kms_enc_tree_bin_set_target_bitrate:<vp8enc0> "target-bitrate" set: 581288
0:00:30.154692295 29383 0x7f4c9800e980 DEBUG enctreebin kmsenctreebin.c:267:kms_enc_tree_bin_get_bitrate:<kmsenctreebin0> Bitrate = WebRTC REMB: 590308
0:00:30.154770552 29383 0x7f4c9800e980 DEBUG enctreebin kmsenctreebin.c:324:kms_enc_tree_bin_set_target_bitrate:<vp8enc0> "target-bitrate" set: 590308
0:00:30.389872960 29383 0x7f4c9800e980 DEBUG enctreebin kmsenctreebin.c:267:kms_enc_tree_bin_get_bitrate:<kmsenctreebin0> Bitrate = WebRTC REMB: 595624
0:00:30.389966561 29383 0x7f4c9800e980 DEBUG enctreebin kmsenctreebin.c:324:kms_enc_tree_bin_set_target_bitrate:<vp8enc0> "target-bitrate" set: 595624
0:00:30.619372216 29383 0x7f4c9800e980 DEBUG enctreebin kmsenctreebin.c:267:kms_enc_tree_bin_get_bitrate:<kmsenctreebin0> Bitrate = WebRTC REMB: 606248
0:00:30.619445486 29383 0x7f4c9800e980 DEBUG enctreebin kmsenctreebin.c:324:kms_enc_tree_bin_set_target_bitrate:<vp8enc0> "target-bitrate" set: 606248
0:00:31.091154145 29383 0x7f4c9800e980 DEBUG enctreebin kmsenctreebin.c:267:kms_enc_tree_bin_get_bitrate:<kmsenctreebin0> Bitrate = WebRTC REMB: 617340
0:00:31.091276357 29383 0x7f4c9800e980 DEBUG enctreebin kmsenctreebin.c:324:kms_enc_tree_bin_set_target_bitrate:<vp8enc0> "target-bitrate" set: 617340
0:00:31.319638330 29383 0x7f4c9800e980 DEBUG enctreebin kmsenctreebin.c:267:kms_enc_tree_bin_get_bitrate:<kmsenctreebin0> Bitrate = WebRTC REMB: 628316
0:00:31.319704167 29383 0x7f4c9800e980 DEBUG enctreebin kmsenctreebin.c:324:kms_enc_tree_bin_set_target_bitrate:<vp8enc0> "target-bitrate" set: 628316
0:00:31.554745925 29383 0x7f4c9800e980 DEBUG enctreebin kmsenctreebin.c:267:kms_enc_tree_bin_get_bitrate:<kmsenctreebin0> Bitrate = WebRTC REMB: 639784
0:00:31.554815983 29383 0x7f4c9800e980 DEBUG enctreebin kmsenctreebin.c:324:kms_enc_tree_bin_set_target_bitrate:<vp8enc0> "target-bitrate" set: 639784
0:00:31.758139270 29383 0x7f4c9800e980 DEBUG enctreebin kmsenctreebin.c:267:kms_enc_tree_bin_get_bitrate:<kmsenctreebin0> Bitrate = WebRTC REMB: 649820
0:00:31.758234117 29383 0x7f4c9800e980 DEBUG enctreebin kmsenctreebin.c:324:kms_enc_tree_bin_set_target_bitrate:<vp8enc0> "target-bitrate" set: 649820
0:00:31.987890468 29383 0x7f4c9800e980 DEBUG enctreebin kmsenctreebin.c:267:kms_enc_tree_bin_get_bitrate:<kmsenctreebin0> Bitrate = WebRTC REMB: 661440
But the very first setting is the same as for H.264:
0:00:14.088042805 29383 0x7f4c9800e980 DEBUG enctreebin kmsenctreebin.c:273:kms_enc_tree_bin_get_bitrate:<kmsenctreebin0> Bitrate = Current value: 300000
0:00:14.088050769 29383 0x7f4c9800e980 DEBUG enctreebin kmsenctreebin.c:324:kms_enc_tree_bin_set_target_bitrate:<vp8enc0> "target-bitrate" set: 300000
It was just coincidence caused by REMB
Shit. I see my fault: I have to set the bitrate to the filter element....
Yes, setting the bitrate to the filter does it.
But this raises now a general question: If there is no filter involved, WebRtcEndpoint1 is directly connected to WebRtcEndpoint2: Which one would need to be set? I suppose WebRtcEndpoint2?
And was everything you did regarding this issue for bin now? I hesitate to checkout master for comparison...
Sorry for that.
For any given element there are 3 sources that can choose what bitrate is actually used for encoding. In order of precedence:
The REMB is network congestion adaptation from WebRTC, and it is selected regarless of what was the target encoder bitrate. If a subscriber browser requests 1,5Mbps, that's what gets sent. There are other Kurento API methods that can be used to manipulate this, but it's better if they are left by default and Chrome (or whatever WebRTC subscriber receives the video) uses REMB to indicate the ideal bitrate.
Lacking that, the EncoderBitrate is used. 300 kbps by default, or whatever is set by the application.
The potential problem is that this only applies to each element separately, and it might not be obvious where the values should be set to have effect. I thought about creating a new parameter that affects the whole Pipeline, but in the end it is just too difficult to do it correctly because there are so many combinations of elements that could potentially be done, that it makes sense to configure these values separately.
For apps that don't need to create too crazy of a pipeline, they typically implement a factory method to create elements and apply common properties to all of them, and setting encoder bitrate in there would be a good example.
In the case of
WebRtcEndpoint1 ---> WebRtcEndpoint2
the transcoding should happen in 1, because if it happened in 2 and then later you connected a third one, the transcoding would need to happen there also, thus it would be a waste. Instead, have it at 1 so any downstream element can benefit from it.
In the case of W1 ---> Filter ---> W2
there are 2 transcodings happening; from W1 to Filter, there is transcoding in W1 that decodes the video from encoded to RAW. And from Filter to W2, there is transcoding happening at Filter because W2 is requesting an encoded format (such as H.264) but Filter only has raw video so it must encode it before passing it down to W2.
OK, right now I'm setting it in W1 and W2 and in a potential filter. That should do it, right?
I'm now (seemingly) back on the 7.0.0 original version. And to my shame I have to admit, that it already seemed to work with this version... :/
But it is all still weird: No getting these traces in one and the same session:
0:00:30.144242120 57074 0x7f7dd407b580 INFO agnosticbin kmsagnosticbin.c:730:kms_agnostic_bin2_find_or_create_bin_for_caps:<kmsfilterelement0_kmsagnosticbin2-0> TRANSCODING ACTIVE for video
followed by
0:00:30.144552257 57074 0x7f7dd407b580 LOG agnosticbin kmsagnosticbin.c:747:kms_agnostic_bin2_find_or_create_bin_for_caps:<kmsfilterelement0_kmsagnosticbin2-0> Suppressed - TRANSCODING INACTIVE for video
I think I have enough for today. Sorry, sorry for all the hassle for nothing
No worries, it's been a long day! Note please that it's a local bank holiday so I won't be back around here until next Monday.
Thanks for all. Enjoy
And Happy Easter (if you celebrate that).
Debug messages explaining what is going on with the different values were very confusing, so now they were rewritten to make them clearer.
The Transcoding event was not correctly emitted under some conditions like first connecting a compatible sink, then adding an incompatible one which needed transcoding; the latter would not cause a "transcoding active" event.
Handling of target/min/max bitrate for the encoder was very confusing, because it only took place at the beginning when loading those values from the Kurento .conf files. From that point, client calls to set new values would only have an effect if the agnosticbin / enctreebin was already active, i.e. this would not work:
All this should now be fixed. Debug logs are there to make it very clear where and when the new values are applied, so that should also help.
As an example, a test recording done with the HelloWorld-Recording Java tutorial, where:
The resulting bitrate graph looks like this:
Fixes https://github.com/Kurento/kurento/issues/18 Resolves https://github.com/orgs/Kurento/discussions/17