Ts3 video 0.4

Discussion in 'Plugins' started by cananon1, Sep 7, 2015.

  1. cananon1

    cananon1 Active Member

    Version 4 of the team speak video is now out

    Test server

    Video Only
    Enter under Server Address

    http://ts3video.insanefactory.com/img/windows-logo-88x88.png Windows
    Prerequisites: Visual C++ Redistributable Packages (32-bit / 64-bit)

    Version 0.4
    Client Plugin 32 & 64 bit Mirror 1
    Server 32 bit Mirror 1
    Server 64 bit Mirror 1
    http://ts3video.insanefactory.com/img/linux-logo-32x37.png Linux
    The Linux packages are completely isolated and don’t require any other dependencies (build on Ubuntu 14.04 LTS).

    Version 0.4
    Server 32 bit Mirror 1
    Server 64 bit Mirror 1
    You can get previous releases from the archive.

    Mac OSX
    none yet someone will have to make a mac version via reading source files and make it work ;)


    The server package is usually a ZIP/TAR archive, which can be extracted everywhere.

    Windows (ZIP archive)

    Download and extract to e.g.: C:\ts3video

    Linux (TAR archive)

    mkdir /opt/ts3video
    cd /opt/ts3video
    tar -xf ts3video-server.tar

    The server can be configured in multiple ways. Currently it’s possible to use command line parameters or a simple configuration file.

    Command line parameters

    Description Example value
    --config Absolute path to configuration file. /opt/ts3video/default.ini
    --service This parameter is required when started as a Windows Service.
    TODO: Document all possible parameters.

    Config file (Recommended)
    Saving the configuration in a file might be the better way to backup the configuration. See the comments inside the config file for further details.

    Beta note: It’s not possible to run more than one virtual video server. Support for multiple virtual servers will be implemented in the next releases.

    # Default values for each server configuration.
    # Special IP address values:
    # Any IPv4 =
    # Any IPv6 = ::
    # Any IPv4&6 = any

    # The IP address on which to listen for new connections.
    # @version 0.1

    # The port for new connections and media data (TCP & UDP).
    # @version 0.1

    # The IP address on which to listen for new web-socket (status) connections.
    # It's recommended to allow only local access. You may allow restricted access via ProxyPass (Apache).
    # @version 0.1

    # The port for new web-socket (status) connections.
    # @version 0.1

    # Maximum number of parallel client connections (slots).
    # @version 0.1

    # Maximum READ transfer rate the server is allowed to use (bytes/second).
    # @version 0.1

    # Maximum WRITE transfer rate the server is allowed to use (bytes/second).
    # @version 0.1

    # Comma separated list of valid channel-IDs, which are allowed to be used.
    # This property maintains a list of raw channel IDs - not TS3 channel IDs.
    # Leave empty to allow all.
    # @todo Add "macro" to create raw-ids from TS3-Channel-ID.
    # @version 0.1

    # Password to server.
    # Leave empty to allow access to everyone.
    # @version 0.1

    # Virtual server's administrator password.
    # @version 0.3

    # Bridge to TeamSpeak via it's Query-Console.
    # The bridge requires a user with the following permissions:
    # - b_serverquery_login
    # - b_virtualserver_select
    # - b_virtualserver_client_list
    # - i_channel_subscribe_power
    # - i_channel_needed_subscribe_power
    # @version 0.4
    # Enables the bridge to TeamSpeak.
    # @version 0.4

    # Address of the TeamSpeak server.
    # It usually runs on the same host (
    # @version 0.4

    # The port of the TeamSpeak server query-console.
    # @version 0.4

    # Login information for the query-console.
    # @version 0.4

    # The connection will change the visible nickname of the query-console user.
    # NOTE: Do not use yet! Leave it empty for now! Or at least not more than 10 characters!
    # @version 0.4

    # Port of the virtual server used for authorization.
    # @version 0.4

    # Comma separated list of server group IDs (sgid),
    # which are allowed to use the video server.
    # Leave empty to allow all groups.
    # @version 0.4

    The own configuration file can be passed with the --config parameter.

    ./start.sh --config "/opt/ts3video/myconfig.ini"

    Start the server
    It’s not recommended to use this way in production. Production systems should always use the Windows-Service/Linux-Daemon way.


    "C:\ts3video\videoserver.exe" --config "C:\ts3video\default.ini"

    Linux: On linux you need to use the start.sh script, which prepares the system environment.

    /opt/ts3video/start.sh start --config "/opt/ts3video/default.ini"

    Run as Windows Service
    Installing the server process as a service can be done with the built-in Windows tool sc.

    All upcoming commands need to run as a privileged Administrator!

    Install as service
    sc create "TS3VIDEO" binPath= "C:\ts3video\videoserver.exe --service --config \"C:\ts3video\myconfig.ini\"" start= auto

    Even though it might look weird, the space after binPath=, start= and other parameters you might append is important!

    Uninstall service
    sc delete "TS3VIDEO"

    Problem: The service doesn’t start or exits immediately. - Make sure that the user who runs the service has permissions to run the process.

    Run as Linux Daemon (Debian - SysV)
    The server comes with a start-initd.sh script which makes it possible to control the server process in background.

    Note: You have to be logged in as root.

    1. Create system user and set permissions
    useradd --home-dir /opt/ts3video --system --shell /bin/sh --user-group ts3video
    chown -R ts3video:ts3video /opt/ts3video

    2. Prepare the start-up script
    Open the file start-initd.sh for editing and update the variables on top to fit your system.


    3. Install the script as start-up script
    You can either copy or link the script into /etc/init.d/ before updating your run levels with it.

    cp /opt/ts3video/start-initd.sh /etc/init.d/ts3video
    update-rc.d ts3video defaults

    4. Test it
    That’s it! You can now test it with the following commands.

    /etc/init.d/ts3video start
    /etc/init.d/ts3video stop

    You should also reboot and test whether the VideoServer has been started automatically.

    The running process name may be different than expected. You shouldn’t see a videoserver process. The running process name will be ld-2.19.so.

    Why is that? The server is shipped with its own set of common libraries and a dynamic library loader because of portability issues. This might change in future releases. On some systems it’s possible to run the videoserver binary directly (e.g. Ubuntu 14.04).
    Last edited: Sep 7, 2015
    Amin3Nator likes this.
  2. Derp

    Derp TS3 Dev-Team WebApp Dev-Team Contributor

    Is XP Supported?

    If not, then, that's too bad.
  3. cananon1

    cananon1 Active Member

    i dont know i dont have XP test it to see if it is .. if you have xp
  4. Derp

    Derp TS3 Dev-Team WebApp Dev-Team Contributor

    Tested on Windows XP

    The plugin is NOT Compatible with Windows XP
  5. Ridicc

    Ridicc Moderator

    Luckily I don't use Windows XP :D
  6. cananon1

    cananon1 Active Member

    well XP is not so :s

    Same when Vista came out i went to it then 7,8/8.1/10
  7. cananon1

    cananon1 Active Member

    Part 2 if a admin/mod can merge with my first post that will be awesome

    Available since: 0.2

    The server comes with a web-app to monitor basic status information about the running server. It is located in the server-status directory of the downloaded server package.

    This documentation asumes that your server is installed in the /opt/ts3video directory. Windows can use the same instructions in a slightly modified way.

    Configure the status web-app
    The web-app uses a WebSocket connection to retrieve real-time information from the VideoServer. Basic options can be changed in the web-app’s config.json file. Here is a list of the available options and what they include:

    server.statussocket.address > The host address to which the web-app’s WebSocket will connect. > Set to null to let the application use the host from the address bar > in your browser (recommended).

    server.statussocket.port > The port to which the web-app’s WebSocket will connect.

    server.statussocket.path > The web-app’s WebSocket will use this path in it’s HTTP request. > It can be used to proxy-forward the WebSocket with your web-server > (e.g.: Apache’s ProxyPass, ProxyPassReverse).

    ui.updateinterval > The polling interval which is used to update visible information.

    Setup the quick and dirty way
    Copy or link the server-status folder into the public reachable web-server’s www folder.

    cp -rf /opt/ts3video/server-status /var/www/videoserver-status

    Before the web-app can fetch any data from the VideoServer you need to update the VideoServer’s configuration file /opt/ts3data/default.ini and set the following values:


    The VideoServer will now accept WebSocket connections from anywhere. In case that you only want to access the web-app from localhost, you can keep the VideoServer’s default configuration values (wsstatus-address=

    Finally you need to restart the VideoServer

    /etc/init.d/ts3video stop
    /etc/init.d/ts3video start

    and open the web-app in your browser, e.g.: http://localhost/videoserver-status

    Some firewalls and proxy servers may block connections to port 13375, they usually only allow port 80 and 443.
    Setup Apache2 VirtualHost and password protection
    Requirements: Apache >=2.4.5 with mod_proxy and mod_proxy_wstunnel enabled.

    I encountered a few problems using ProxyPass with WebSockets. It either took very long to establish the WebSocket connection or didn't work at all. You might fall back to the Quick & Dirty way with localhost acccess only, if you encounter any problems.
    First you need to create a new VirtualHost configuration.

    cd /etc/apache2/sites-available
    vi videoserver-status

    Your configuration should look like this:

    <VirtualHost *:80>
    ServerName videoserver-status.yourhost.com
    DocumentRoot /opt/ts3video/server-status

    # Password protection (optional)
    <Location />
    AuthType Basic
    AuthName "Video Server Status"
    AuthUserFile /opt/users.passwd
    require valid-user

    # Forward incoming WebSocket connections to the running VideoServer on port 13375.
    # Note: ProxyPass for WebSockets is available since Apache 2.4.5
    # You need to have the Apache modules proxy_http and proxy_wstunnel enabled.
    <Location /ws>
    ProxyPass ws://
    ProxyPassReverse ws://


    Users can be managed with Apache’s htpasswd tool.

    Now you need to update the web-app’s configuration file to match your VirtualHost: \ /opt/ts3video/server-status/config.json

    "server.statussocket.address": null,
    "server.statussocket.port": 80,
    "server.statussocket.path": "/ws",
    "ui.updateinterval": 5000

    After a restart of the Apache web-server you can access the web-app: http://videoserver-status.yourhost.com
    Bluscream likes this.
  8. Derp

    Derp TS3 Dev-Team WebApp Dev-Team Contributor


    We all know Windows XP is outdated (and not supported), but according to THESE stats, people still use it.

    I personally HATE the fact that project developers don't think about Users running on XP, Yeah, I could just switch to Windows 7, but WHY would I do that?, Windows XP has everything I need.
  9. cananon1

    cananon1 Active Member

    take a look at the source and compile it your self

  10. Derp

    Derp TS3 Dev-Team WebApp Dev-Team Contributor

    I've already thought about that, The problem is that I have a lot of things to do these days and that prevents me from working on it (It will probably need some little editing in order to work on xp)
  11. cananon1

    cananon1 Active Member

    well if it get it working let me know i will post a link to it :)
  12. chris100184

    chris100184 New Member

    for some reason i can't get this plugin to work o_O
  13. scann

    scann New Member

    have any one in screen for me ? who the addon instaled it
  14. You could put pictures? I do not understand that it serves: /
  15. KUL


    i get this error
    [2017-07-18 20:44:17][error][pid=8487][tid=8487] Can not bind to TCP port (port=13370)
  16. Kleberstoff

    Kleberstoff Knowledge Seeker Member of the Month VIP

    COULD NOT BIND TCP PORT, means that the Server can't be started because the port 13370 is in use.
    There are 2 ways of fixing this issue,

    first way:
    change the port of the tsvideo server, see the docs for that.
    tip: its simply changing the port in the config

    second way:
    change the port of whatever is using port 13370.
    KUL likes this.

Share This Page