PSA: Ubuntu 18.04 (Bionic) nightly packages are available, Trusty is deprecated

578 views
Skip to first unread message

Juan Navarro

unread,
Feb 19, 2019, 12:08:10 PM2/19/19
to kurento
In the last weeks I've been working to port all Kurento packages to Ubuntu 18.04 (Bionic), and since a couple of days all CI builds seem stable and preliminary End2End tests are passing!

All tasks were tracked with the Github's Projects feature, here: https://github.com/orgs/Kurento/projects/1

It was a good opportunity to use the Github feature and experiment how useful it might prove to be for the Community. We might use it again in the future, to let users know about progress on the topics they are interested in.

Regarding the new Ubuntu version, nightly packages are already available in a bionic repository for apt-get. Just follow the Nightly installation instructions, as always:

(docs are being published right now so it may take some minutes to appear)


Note these packages are just the result of first porting efforts. There are still some missing stuff to do, before considering it a 100% port:
  • None of the "extra" modules have been ported yet; i.e. the example plugins that are provided for demonstration purposes, such as kms-chroma, kms-crowddetector, kms-platedetector, kms-pointerdetector.

  • OpenCV plugins in Kurento still use the old C API. This still worked out fine in Ubuntu 16.04, but it doesn't any more in 18.04 for plugins that use external training resouces, such as the HAAR filters.

    Plugins that need to load external OpenCV training data files won't work. For now, the only plugin affected by this limitation in KMS seems to be facedetector because it won't be able to load the newer training data sets provided by OpenCV 3.2.0 on Ubuntu 18.04. Consequently, other plugins that depend on this one, such as the faceoverlay filter and its FaceOverlayFilter API, won't work either.

    I've not studied much about the issue here but I'm afraid the only way to solve this problem would be to re-write this plugin from scratch, using OpenCV's newer C++ API, which has support for the newer training data files provided in recent versions of OpenCV.

    This issue probably affects other of the additional modules mentioned earlier. Those haven't even started to be ported.


Lastly, a deprecation notice for Ubuntu 14.04 (Trusty): Official support for Ubuntu Trusty is practically here (ends on April 2019, source: https://wiki.ubuntu.com/Releases)

It has become increasingly difficult for us to keep supporting Kurento on multiple Ubuntu versions at the same time, so we'll continue to strictly adhere to official LTS versions of Ubuntu. This means that starting now, all development focus will be for Ubuntu Xenial and Bionic. Trusty will stop receiving updates in its repositories and no new release versions of Kurento will be published for this version of Ubuntu.


Happy coding!

Vincent

unread,
Feb 22, 2019, 11:14:15 AM2/22/19
to kurento
If I'm using "kms-omni-build" can I 

Can I use the "kms-omni-build" method within Ubuntu 18.04 and just change "xenial" to "bionic" in the "ubuntu.openvidu.io" repository definition ?

Vincent

Juan Navarro

unread,
Feb 22, 2019, 1:07:42 PM2/22/19
to kurento
Yes, you can follow build instructions as usual from the Developer Guide:

Vincent

unread,
Feb 22, 2019, 1:31:32 PM2/22/19
to kurento
I'm trying it now !

Vincent

unread,
Feb 22, 2019, 2:58:39 PM2/22/19
to kurento
I didn't investigate further, but it doesn't seem to compile :

[ 96%] Building CXX object kurento-media-server/server/transport/websocket/CMakeFiles/websocketTransport.dir/WebSocketTransport.cpp.o

In file included from /kms-omni-build/kurento-media-server/server/transport/websocket/websocketpp/config/asio.hpp:33:0,

                 from /kms-omni-build/kurento-media-server/server/transport/websocket/WebSocketTransport.hpp:28,

                 from /kms-omni-build/kurento-media-server/server/transport/websocket/WebSocketTransport.cpp:20:

/kms-omni-build/kurento-media-server/server/transport/websocket/websocketpp/transport/asio/security/tls.hpp: In member function 'std::error_code websocketpp::transport::asio::tls_socket::connection::translate_ec(ErrorCodeType)':

/kms-omni-build/kurento-media-server/server/transport/websocket/websocketpp/transport/asio/security/tls.hpp:386:43: error: 'SSL_R_SHORT_READ' was not declared in this scope

       if (ERR_GET_REASON (ec.value() ) == SSL_R_SHORT_READ) {

                                           ^~~~~~~~~~~~~~~~

/kms-omni-build/kurento-media-server/server/transport/websocket/websocketpp/transport/asio/security/tls.hpp:386:43: note: suggested alternative: 'SSL_F_SSL_READ'

       if (ERR_GET_REASON (ec.value() ) == SSL_R_SHORT_READ) {

                                           ^~~~~~~~~~~~~~~~

                                           SSL_F_SSL_READ

/kms-omni-build/kurento-media-server/server/transport/websocket/websocketpp/transport/asio/security/tls.hpp: In member function 'std::error_code websocketpp::transport::asio::tls_socket::connection::translate_ec(ErrorCodeType) [with ErrorCodeType = boost::system::error_code]':

/kms-omni-build/kurento-media-server/server/transport/websocket/websocketpp/transport/asio/security/tls.hpp:398:3: warning: control reaches end of non-void function [-Wreturn-type]

   }

   ^

kurento-media-server/server/transport/websocket/CMakeFiles/websocketTransport.dir/build.make:62: recipe for target 'kurento-media-server/server/transport/websocket/CMakeFiles/websocketTransport.dir/WebSocketTransport.cpp.o' failed

make[2]: *** [kurento-media-server/server/transport/websocket/CMakeFiles/websocketTransport.dir/WebSocketTransport.cpp.o] Error 1

make[1]: *** [kurento-media-server/server/transport/websocket/CMakeFiles/websocketTransport.dir/all] Error 2

CMakeFiles/Makefile2:5860: recipe for target 'kurento-media-server/server/transport/websocket/CMakeFiles/websocketTransport.dir/all' failed

make: *** [all] Error 2

Makefile:140: recipe for target 'all' failed

The command '/bin/sh -c make' returned a non-zero code: 2

Vincent

unread,
Feb 22, 2019, 3:05:12 PM2/22/19
to kurento
I was on the master branch. Will now switch to the 6.9.0 release to see if it compiles.

Vincent

unread,
Feb 22, 2019, 3:44:36 PM2/22/19
to kurento
As per your OP, it chokes on OpenCV. How do I disable OpenCV-dependent modules from the omni build ? Thanks.

-- Resolving opencv version ^2.0.0 with 3.2.0
CMake Error at kms-cmake-utils/CMake/VersionHelpers.cmake:301 (message):
  Version does not match <3.0.0 with 3.2.0
Call Stack (most recent call first):
  kms-cmake-utils/CMake/VersionHelpers.cmake:258 (check_version)
  kms-cmake-utils/CMake/VersionHelpers.cmake:299 (check_version_internal)
  kms-cmake-utils/CMake/GenericFind.cmake:140 (check_version)
  kms-filters/CMakeLists.txt:57 (generic_find)


-- Configuring incomplete, errors occurred!
See also "/kms-omni-build/build-Release/CMakeFiles/CMakeOutput.log".
The command '/bin/sh -c cmake -DCMAKE_BUILD_TYPE=$BUILD_TYPE ..' returned a non-zero code: 1

Juan Navarro

unread,
Feb 23, 2019, 4:48:13 PM2/23/19
to kurento
It was a problem of OpenSSL 1.0 vs. 1.1 dependency versions.

Build instructions updated for Ubuntu Bionic on the Developer Guide.

The old text indicated to install 'libssl-dev', but that package installs OpenSSL 1.1 under Ubuntu 18.04, which is incompatible with KMS.

Version 1.0 is required.


A better install method is to use 'mk-build-deps' and leave DPKG to resolve all dependencies as needed under each version of Ubuntu.


Please if you still find problems building the code, open a new thread


Regards

solom...@gmail.com

unread,
Feb 28, 2019, 7:21:08 AM2/28/19
to kurento
Hello Juan,

Installation via apt doesn't work for me :(

Original docs states:
deb [arch=amd64] http://ubuntu.openvidu.io/dev $DISTRO kms6
In this case I'm getting following error:

Err:6 http://ubuntu.openvidu.io/6.9.0 bionic InRelease                                                                             
  403  Forbidden [IP: 52.218.84.210 80]

E: Failed to fetch http://ubuntu.openvidu.io/6.9.0/dists/bionic/InRelease  403  Forbidden [IP: 52.218.84.210 80]
E: The repository 'http://ubuntu.openvidu.io/6.9.0 bionic InRelease' is not signed.
N: Updating from such a repository can't be done securely, and is therefore disabled by default.
N: See apt-secure(8) manpage for repository creation and user configuration details.

In case changed as follows:
deb [arch=amd64 trusted=yes] http://ubuntu.openvidu.io/dev $DISTRO kms6
The error is

Err:11 http://ubuntu.openvidu.io/6.9.0 bionic/kms6 amd64 Packages
  403  Forbidden [IP: 52.218.97.115 80]
E: Failed to fetch http://ubuntu.openvidu.io/6.9.0/dists/bionic/kms6/binary-amd64/Packages  403  Forbidden [IP: 52.218.97.115 80]
E: Some index files failed to download. They have been ignored, or old ones used instead.


<Error>
<Code>AccessDenied</Code>
<Message>Access Denied</Message>
<RequestId>D6FE01474F0C277A</RequestId>

If accessed in the browser ....

Juan Navarro

unread,
Feb 28, 2019, 8:06:19 AM2/28/19
to kur...@googlegroups.com
The documentation states it clearly:
# KMS for Ubuntu 14.04 (Trusty)
DISTRO="trusty"
# KMS for Ubuntu 16.04 (Xenial)
DISTRO="xenial"

This PSA is named "(Bionic) nightly packages are available"... Bionic packages are in development and haven't seen a release yet.
--
You received this message because you are subscribed to a topic in the Google Groups "kurento" group.
To unsubscribe from this topic, visit https://groups.google.com/d/topic/kurento/UxUAYroHCDg/unsubscribe.
To unsubscribe from this group and all its topics, send an email to kurento+u...@googlegroups.com.
To post to this group, send email to kur...@googlegroups.com.
Visit this group at https://groups.google.com/group/kurento.
To view this discussion on the web visit https://groups.google.com/d/msgid/kurento/ba30a821-fd5e-4e6e-bbc8-c1c47d19dd6f%40googlegroups.com.
For more options, visit https://groups.google.com/d/optout.

solom...@gmail.com

unread,
Feb 28, 2019, 8:44:39 AM2/28/19
to kurento
I have used this installation guide https://doc-kurento.readthedocs.io/en/latest/user/installation.html

Haven't noticed it is 'latest' and not 'stable'

Will try to build from sources ...

Juan Navarro

unread,
Feb 28, 2019, 8:56:15 AM2/28/19
to kur...@googlegroups.com
Yes, building from sources will work, follow https://doc-kurento.readthedocs.io/en/latest/dev/dev_guide.html#building-from-sources

Note you can save the trouble by installing nightly packages, as linked in the announcement:
https://doc-kurento.readthedocs.io/en/latest/user/installation_dev.html#kurento-media-server

solom...@gmail.com

unread,
Mar 1, 2019, 4:22:43 AM3/1/19
to kurento
Thanks a million!

Was able to install nightly packages to Ubuntu 18.10 without much hacking :)
Everything seems to work so far :)

Francois Baret

unread,
Mar 6, 2019, 6:25:20 AM3/6/19
to kurento
I installed the Nightly kms on my Ubuntu 18.04. Now I would like to use the one2many tutorial but I think I cannot start the kms with the same docker image:
docker run -d --name kms -p 8888:8888 kurento/kurento-media-server:xenial-latest
Do you have another docker image for Bionic? Or can you guide how to run the nightly kms otherwise?
Thanks!

solom...@gmail.com

unread,
Mar 6, 2019, 9:03:51 PM3/6/19
to kurento
Why do you need docker if native Nightly kms is already installed?

[IF] native KMS works on port 8888 already, maybe this is port conflict?
i.e. you need to use -p 8888:8889 and not -p 8888:8888 ?

Juan Navarro

unread,
Mar 7, 2019, 3:56:12 AM3/7/19
to kur...@googlegroups.com
Also, to use nightly builds with Docker use this image: kurento/kurento-media-server-dev
https://hub.docker.com/r/kurento/kurento-media-server-dev/tags

Starting from KMS 6.9.1 we'll have moving tags with major, minor and patch versions, so you can choose to use
kurento/kurento-media-server-dev:latest  # Get always the latest thing, even if it breaks backwards compatibility
kurento/kurento-media-server-dev:6  # Get all updates on the 6.x version (non-breaking changes)
kurento/kurento-media-server-dev:6.9  # Get all patches from the 6.9 release (none in this case, next release will be 6.10 directly)
kurento/kurento-media-server-dev:6.9.1  # Get all nightly builds from this development version
kurento/kurento-media-server-dev:6.9.1-<Timestamp>  # Actual nightly builds

Similarly with normal future release images, but not yet.

If you want to have the latest nightly version at all times, I recommend you use either kurento/kurento-media-server-dev:6 or kurento/kurento-media-server-dev:latest

But if you use kurento/kurento-media-server-dev:latest, beware the (distant) day we publish version 7.0.0, you update without paying attention, and everything in your application breaks :-)
--
You received this message because you are subscribed to a topic in the Google Groups "kurento" group.
To unsubscribe from this topic, visit https://groups.google.com/d/topic/kurento/UxUAYroHCDg/unsubscribe.
To unsubscribe from this group and all its topics, send an email to kurento+u...@googlegroups.com.
To post to this group, send email to kur...@googlegroups.com.
Visit this group at https://groups.google.com/group/kurento.

Ayaan

unread,
Mar 8, 2019, 11:30:30 AM3/8/19
to kurento
Awesome. Any estimated official release date for 6.9.1?

Xiaolin Zhang

unread,
Apr 7, 2019, 11:41:21 PM4/7/19
to kurento
I am trying to fix this on Ubuntu 18.04.2,it seems the OpenSSL is upgrade to 1.1. So, I made the following patch:

https://github.com/Kurento/kurento-media-server/pull/11

Can anyone review these two PR? Thanks?

Priyanka Gopalghare

unread,
Jun 12, 2019, 9:31:42 AM6/12/19
to kurento
I have installed Kurento media server on Ubuntu 18.04 (Bionic) and coturn server as well. I am trying to run simple "Hello World Example" or  "one2one-Call" examples from Kurento tutorials on that server. 
But, I am not able to view the Remote stream, there is no error in the console of both of the user.

We are migrating to the Ubuntu 18.04 as Ubuntu 14 Trusty is deprecated and Audio video sync problem was there, you have mentioned about the fix of that problem in the following discussion : https://groups.google.com/forum/#!topic/kurento/cKzgDVrAch4/discussion 

Please, help to resolve the issue. 
To unsubscribe from this group and all its topics, send an email to kur...@googlegroups.com.
Reply all
Reply to author
Forward
0 new messages