Release v8: Quality, negotiation and dependencies

We are back with the release announcements :slight_smile:

This release is focused on three main areas:

  1. Video quality:
    1. better distribution of available bandwidth in singlePC.
    2. better handling of PLIs.
    3. fixes to BWE algorithms and RTP/RTCP.
  2. Negotiation:
    1. Sending offers from erizo for subscriptions.
    2. Streamlined negotiation with queues in both client and server side.
    3. Better stream management.
  3. Dependencies cleanup and update:
    1. We’re now using Node v12 and C++ 14,
    2. New versions of Conan, mocha, eslint, Winston…
    3. We no longer require libnice and glib

And, as always, many fixes and compatibility updates.

Detailed PR List:

b121802 Improve the way we look for Erizo Client Connections internally (#1544)
a1bc273 Skip ice candidate if peer and stream objects are NULL (#1534)
3f4faad Add sdp version control to start sending bytes when negotiation has finished (#1518)
2a842f7 Send SDP Offers from Erizo by default (#1543)
7a1e2f4 Skip extension renegotiations (#1542)
70c761a Fix negotiation when removing streams (#1541)
dff3da1 Queue negotiation messages in ErizoJS (#1527)
85607ae Add an option to specify OpenSSL dir in nICER (#1538)
264fcc3 Add null check for transport. (#1536)
fb367b8 Fix MongoDB installation in mac (#1535)
7949e8f Update mocha and winston (#1529)
08dde5d Fix audio/video only streams with Firefox (#1514)
3eaa691 Update conan version to 1.21 (#1531)
afb7c76 Fix issues with video mute in trackMuteHandler (#1525)
7f72f03 Add package-lock and fix indentation issues (#1524)
7d553dc Better handling of SSL errors (#1523)
8824401 Fix PT negotiation with format parameters (#1517)
83a7796 Add option to send offer from erizo in subscriptions (#1516)
bb69da4 Fix paths in docs and update info about docker (#1515)
b8698d7 Add networkInterface as an option to docker run (#1513)
e424da9 Fix cloning of SimulcastInfos (#1510)
51d6426 Update docs to latest mkdocs version (#1511)
32a1658 Fix RR handling for SenderBWE (#1507)
188d23d Fix/periodic plis keyframe check (#1509)
fcdfdaa UseNicer is no longer needed (#1508)
ecf9a0d Update C++ to version 14 (#1506)
4128c9c Remove libnice and glib (#1505)
d546d84 Bump eslint from 3.19.0 to 4.19.1 (#1504)
27749a4 Update to Node v12 (#1500)
cb2d43c Install JS deps via new package.json files (#1499)
5fffe48 Remove Resizer and use CSS object-fit instead (#1498)
df60a82 Update RTCP SR timestamps in Simulcast (#1489)
feebd7c Fix intervals in periodic Plis (#1497)
d878442 Add periodic Pli handler (#1493)
818282d Fix mongojs version used in nuve (#1496)
527823d Calculate target bitrate from max constrained layer (#1490)
7693e93 Do not count padding bitrate as video bitrate stat (#1488)
d094beb Avoid audio drifting by updating audio SRs (#1487)
cc1f77d Fix the way we detect abs send time to update it (#1486)
d3ba48b Fix Stats retrieved from Ackuaria when connection is closed (#1485)
d359b28 Fix Audio SDES packets that were corrupted in OTM (#1483)
0a172a6 Add commit and public ip info to prometheus metrics (#1482)
59c19c9 Implement Pli Priority Handler (#1480)
458edbc Add new Padding Manager in WebRtcConnection (#1476)
15c6180 Fix arguments for removeSubscriber in removeSubscriptions (#1479)
2d69aba Add WebRtcConnection stats to json (#1474)
4024010 Also search REMBs and RRs after SRs (#1473)
d9dc184 Move SenderBandwidthEstimationHandler to WebRtcConnection (#1472)
8612391 Add remb value to subscriber stats (#1470)
6136772 Client API documentation for explaining MediaDevices.getDisplayMedia() (#1471)
8349b09 Enabling GetDisplayMedia for screensharing (#1468)
e8fabdb Fix the way we get subscribers for ErizoJS metrics (#1469)
2edef3b Fix log to use the new variable and fix stats (#1467)
1a4e0a4 Ensure we use Setup actpass role when setting remote offers in Erizo Client (#1464)
0694784 Add more metrics to ROV (#1465)
a54eb4a Refactor Stream Management in ErizoController (#1463)
edac94f Reduce MediaStream stats frequency (#1461)
2560dad Fix conan library by using latest version (#1462)
b568e51 Add a new mechanism to enable fallback mode on high audio losses (#1450)
df8bf3c Fix basic example port (#1460)
7fd6e07 Put padding removal after bandwidth estimation in pipeline (#1458)
0ffda9b Add a basic pipeline to webrtcconnection (#1456)
69f1a97 Fix ExternalInput for RTSP sources (#1453)
b789309 Use nICEr as the default ICE connection (#1455)
1b0154c Add Nuve and Basic Example ports to licode config (#1454)
818f372 Use nICEr as the default ICE connection

I’m trying to install V8 on Ubuntu 16.04

After running

./scripts/installUbuntuDeps.sh

I’m getting this

configure: error: in `/root/licode-8/build/libdeps/libsrtp-2.1.0':
configure: error: Invalid OpenSSL location: /root/licode-8/./scripts/../build/libdeps/build/
See `config.log' for more details

What should I do?

Solved that error https://github.com/lynckia/licode/issues/1562
But after getting it up, it just doesn’t work as expected.