Products

Below you can find implementation of our Adaptation & Buffer Management Algorithm (ABMA), which is integrated with VLC media player with DASH plug-in [1].

ABMA estimates the probability of rebuffering for the available video representations and selects the highest quality video representation which satisfies the assumed threshold. Moreover, it adjusts the buffer size to compensate for the download rate oscillations. The input data for ABMA are the segment download time characteristics measured during playout.

The source files of ABMA (i.e. AdaptationManager.h and .cc files) you can find inside /vlc-abma/modules/stream_filter/dash/http directory. Please note, that the current implementation requires that you provide available media representations manually, by assigning list of representations (in ascending order) to the variable representations[] in HTTPConnectionManager.cc file (vlc-abma/modules/stream_filter/dash/http directory). Similarly, value of segment duration (const SEGMENTDURATION variable) must be set manually into HTTPConnectionManager.cc file.

Values of measurements for given segment, i.e. Segment Download Time SDT (in microseconds), number of downloaded bytes for given segment, value of Round Trip Time (in microseconds), download rate for given segment (in bytes per seconds) and time which elapsed from the beginning of media session (in microseconds); for example:

This extension of the VLC is open source available and licensed under LGPL:

“This library is free software; you can redistribute it and/or modify it under the terms of the GNU Lesser General Public License as published by the Free Software Foundation; either version 2.1 of the License, or (at your option) any later version. This library is distributed in the hope that it will be useful, but WITHOUT ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU Lesser General Public License for more details. You should have received a copy of the GNU Lesser General Public License along with this library; if not, write to the Free Software Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA“

Contact

Piotr Krawiec: This email address is being protected from spambots. You need JavaScript enabled to view it.