---
name: "dtk_load_video_tcp"
section: "3"
platform: "linux"
package: "libdrawtk-dev"
version: "2.0-2.1"
release: "Debian 8 (Jessie)"
platforms: ["linux"]
url: "https://new.carta.tech/dtk_load_video_tcp"
---

# dtk\_load\_video\_tcp(3)

Load an video stream via TCP connection as a texture

## NAME

dtk\_load\_video\_tcp - Load an video stream via TCP connection as a texture

## SYNOPSIS

**#include \<dtk\_video.h\>**

**dtk\_htex dtk\_load\_video\_tcp(int** *flags***, const char \****host***, int** *port***);**\

## DESCRIPTION

This function loads as a dynamic texture the video stream broadcasted over the network via TCP by the server *host* on the port *port*. The texture will then been tracked by an internal texture manager so that the next call using the same *host* and *port* arguments will return the same texture handle, thus sparing the resources of the system. If not specified by *flags* the video will not be played immediately and [**dtk\_video\_exec**(3)](/dtk_video_exec/3.md) should be called to do start playing.

The argument *flags* is used to modify the creation. It should contains a bitwise OR combination of the following flags:

-

  **DTK\_AUTOSTART** : Indicates that the video should start immediately after creation.

-

  **DTK\_NOBLOCKING** : Indicates that the creation function should not block waiting that the video pipeline is fully running.

A dynamic texture can be used the same way as a static texture (for example image file). The only difference is that the content of the texture changes automatically with the stream of video. This means that every time a shape using this texture is drawn, the latest frame available from the video stream will be mapped on the shape.

There is no need for a valid window to create successfully a texture, i.e. creation of textures are completely decoupled from the creation of others resources and can even be created in one thread to be used in another one.

Once a the texture is stopped being used, it should be destroyed by [**dtk\_destroy\_texture**(3)](/dtk_destroy_texture/3.md).

## RETURN VALUE

In case of success, the function returns the handle to the created texture. In case of failure, *NULL* is returned.

## THREAD SAFETY

**dtk\_load\_video\_tcp**() is thread-safe.

## SEE ALSO

[**dtk\_destroy\_texture**(3)](/dtk_destroy_texture/3.md), [**dtk\_video\_exec**(3)](/dtk_video_exec/3.md), [**dtk\_video\_getstate**(3)](/dtk_video_getstate/3.md)
