English | 简体中文
IP Video Streaming Transcoding Conference Surveillance Solution At Low Cost


IP Video Transcoding Streaming Infrastructure
IPVTL Streaming Infrastructure
IPVTL Users around Globe
IPVTL Users around the Globe

IP Video Transcoding Live! Screen Shot
Screen Shot
(Click to view full size)

IP Video Transcoding Live! (IPVTL) - multiple channel live transcoding software, is designed for live media streaming over the internet, cable and satellite TV digital video broadcasting, video surveillance and event webcasting.

IPVTL provides high density transcoding capability with lowest latency. Running on high performanced generic Intel / AMD64 archtecture and NVIDIA Quadro / Tesla graphics processors, IPVTL can transcode up to 64 channels 1080p H.264 video on 1 dedicated server.

IPVTL has full support of media encoding formats, from ancient to modern types, such as G.7xx, MP2/3, AMR, AAC, AC3, H.263(+), H.264/AVC, H.265/HEVC, MPEG-1, MPEG-2 and MPEG-4, also HTML5 video formats VP8/VP9 included.

IPVTL accepts all kinds of media streaming formats, from video clips and TV capture/tuner cards, to internet streaming like HTTP, MMS, RTSP, RTMP, RTP, NDI, SRT and MPEG-TS (DVB-S). It works perfectly with most popular live streaming CDN service providers listed below Wowza Streaming Engine, Nginx-rtmp, as well as common DVB-S devices with SDI like Dreambox® and BlackMagic Decklink cards.

Youtube Facebook Windows Media Server Adobe Media Server
YoutubeFacebook mediaWindows Media ServerAdobe Media Server
Wowza Streaming Engine Apple Quick Time RealNetworks Server DVB
Wowza Streaming EngineApple Quick TimeRealNetworks ServerDVB-S

IPVTL provides on-demand file streaming as well. It can stream from pre-recorded video clips of any formats on your local disk, with transcoding on the fly. Scheduled folder play list is also possible (available on Windows currently).

On output side, IPVTL supports the most popular streaming protocols today - Apple HLS and Flash RTMP pushing to CDNs of Nginx-rtmp, Adobe Media Server, Wowza Streaming Engine or Red5 Media Server. MPEG-TS output in constant bitrate (CBR) is available for best compatibility with IPTV STB and other playback hardware.

IPVTL gives you full control of video and audio encoding profiles customized as per your system requirements. Video size, quality, frame rate and bit rate, you can reshape your stream fast and simple. IPVTL also provides professional video post-processes such as logo/delogo, watermarking and subtitle overlay.

For native RTP streams, the input and output media attributes can be easily imported or exported through SDP files (RFC 2327), which can then be fed to other collaborating applications in the whole scenario.

Main Features
  • Input from Local Media Files & Folders
  • Input from BlackMagic DeckLink and other DirectShow Compatible Capture Cards
  • Live TV Streaming with Time Shifting
  • Adobe HTTP Dynamic Streaming (Multi-bitrate RTMP Stream Delivery)
  • Apple HLS Adaptive Bitrate Streaming new
  • Video Deinterlace / Crop / Pad / Sharpen / Blur / Overlay / Delogo
  • Intel Quick Sync Video Accelerated H.264 & HEVC Encoding new
  • NVIDIA NVENC Accelerated H.264 & HEVC Encoding new
  • 24/7 Unattended Streaming with Auto Failure Recovery

Product Specification

Input Formats Supported Output Formats Supported Codecs Supported
  • AC3 / E-AC3
  • MP2 / MP3
  • PCM / G.7xx
  • AMR
  • Real Audio
  • Windows Media Audio
  • H.265 / HEVC (Main/Main 10/Main SP)
  • H.264 / AVC (Baseline/Main/High/High 10/High 4:2:2/High 4:4:4)
  • MPEG-4/Visual
  • H.263+/++ (aka H.263-1998/2000)
  • H.263
  • MPEG-1 Video
  • MPEG-2 Video
  • Real Video
  • Flash Video
  • Windows Media Video
  • On2 VP6
  • Webm VP8
  • Webm VP9
  • dvb/dvd subtitle
  • srt/subrip subtitle
  • webvtt subtitle
  • movtext subtitle
Hardware Acceleration Output Video Resolution System Requirements


We offer very competitive price against other live transcoding solutions, starting from $120 only. Once purchased, you receive lifetime working license, with 1 year free software updates and support from us. If further software updates and support is expected, subscription renewal is required annually. As an example see Pricing Comparison with Wowza Transcoder Addon below:

Number of Channels Wowza Transcoder Addon Pricing IP Video Transcoding Live Pricing
1 $240 / Year $120
4 $960 / Year $240
16 $2,256 / Year $480
64 $11,232 / Year $960

We offer bulk discount to volume channel/license purchase and distributors. SDK license is also avaiable. For more pricing details about IPVTL, please don't hesitate to query sales#ipvideotrans.com.


IP Video Transcoding Live! 16 Channel Evaluation
30 Day Free Trial Download
Channel Manager Tool

Old stable.
Supports RTSP/HTTP output,
with Time shifting feature
IPVTL windows trial download
Installer for Windows

For Windows 7/8/10,
Windows Server 2008 R2/2012/2016
32/64 bit
IPVTL linux trial download
Linux x64 LZMA Tarball

For CentOS, Debian, Ubuntu
64 bit only
(Kernel 2.6.x or above)
IPVTL Channnel Manager download
Windows Zip Package

For Linux users setting up
configuration on Windows

No RTSP output.
HTTP output limited to 1 client only.
No time shifting.
See version updates below.
Installer for Windows

For Windows 7/8/10,
Windows Server 2008 R2/2012/2016
64 bit only
(Visual C++ 2013 Redistributable Packages Required)
Linux x64 LZMA Tarball

For CentOS, Debian, Ubuntu
64 bit only
(Kernel 3.10.x or above)
Windows Zip Package

For Linux users setting up
configuration on Windows

Version Updates

  - NVDEC accelerated HEVC decoding
  - Switch to 64bit core on Windows
  - User access control in Windows UI
  - NVIDIA scale_npp acceleration
  - Add Secure Reliable Transport (SRT) support
  - Newtek device selection UI
  - Folder streaming on Linux & new recursive mode
  - Remove RTSP output support
  - HTTP output limited to 1 client only
  - Remove Time Shifting function

  - Video scan type option (interlaced encoding)
  - Alsa input on Linux
  - DASH format input support
  - Folder streaming bug fix
  - Audio 7.1 channel output
  - Overlay with video url
  - Newtek NDI input & output
  - More MPEG-TS options (video/audio pid, pcr pid, pmt pid)

  - Fix multiple processor affinity issue on Windows
  - MJPEG output format support
  - MPEG-TS options (program ID, name, provider)
  - Log file auto clean
  - DeckLink device format selection
  - Text overlay
  - V4L2 input support on Linux
  - NVDEC/CUVID acceleration in h.264 decoding

  - HE-AAC encoding & E-AC3 (AC3+) encoding supported
  - Intel Quick Sync accelerated HEVC encoding bug fix
  - NVIDIA CUDA/CUVID/NVDEC accelerated H.264/HEVC decoding UHD/4K video
  - Easier RTMP pushing to Youtube and other flash sites
  - More advanced settings (RTMP/HLS/Timeshifting) available in web config interface
  - License activation thru web interface on Linux
  - Enhanced web interface security (login password & IP whitelist)
  - Blackmagic DeckLink capture / playback card enumerator on Windows
  - Multi-bitrate profiles for UDP output
  - Fix PCR accuracy issue in UDP MPEG TS output
  - UDP MPEG TS CBR output optimzation
  - CPU affinity management (processor load balance) on Linux
  - Video key frame interval now calculated in seconds

  - MPEG DASH output format support
  - Web interface to edit channel settings
  - Fix Intel Quick Sync Video acceleration issue on Linux
  - Daemon (background) running mode under Linux

  - RTSP output format support
  - Web interface for live channel status management

  - CPU affinity management (processor load balance) on Windows
  - Enhanced streaming failure recovery

  - Optimized software H.264 encoding performance on multiprocessor system
  - Presets for NVIDIA NVENC accelerated encodings
  - Intel QSV acceleration bugfix on Linux
  - Blackmagic Decklink video card input & output support on Linux

  - Intel Quick Sync Video accelerated HEVC encoding supported (requires Intel 6th/7th generation Skylake / Kaby Lake Core processor)

  - Intel Quick Sync Video accelerated H.264 encoding supported. See list of supported Intel processors with HD Graphics on Intel website

  - NVIDIA NVENC (GPU accelerated) H.264/HEVC encoding supported. See list of supported NVIDIA Quadro, GRID, and Tesla GPUs on NVIDIA website
  - Smarter detection of dead streaming

  - H.265/HEVC encoding support
  - DXVA2 accelerated decoding

  - MPEG-DASH segmenting muxer
  - Potential memory leak fix in folder streaming

  - HTTPS input support
  - MPEG-TS over RTP input support
  - HLS multi-bitrate streaming
  - Optimized time shifted streaming with break no more
  - Animated logo overlay support (through GIF)

  - m3u8 playlist (HTTP Live Streaming) output support
  - RTMP multi-bitrate streaming
  - Improved streaming performance

  - MPEG-TS over HTTP output support
  - H.264 encoder upgrade, new profiles introduced
  - New UI for Source Stream Selection (with MPEG-TS program selection)
  - RTMP tunnelling support
  - Source & Target custom parameters
  - Memo for each channel

  - MPEG-TS DVB subtitle stream pass thru
  - Live stream time shifting on Linux

  - RTSP over TCP support

  - DirectShow capture source support
  - CBR mode for MPEG-TS output

  - RTMP SWF verification support

  - Live stream time shifting on Windows
  - New UI for advanced format settings

Getting Started

1. Installation

For Windows users, just download and run executable installer to install IPVTL to your computer. Start IPVTL from Windows Program Menu or desktop as you like. Simple and easy.

 # cd /home
 # tar xvf ipvtl_trial-x64.tar.xz
 # cd ipvtl
 # sudo ./ipvtl_16ch_trial

 *      IP Video Transcoding Live!      *
 *         Copyright  2009-2019         *
 *           IPVideoTrans.com           *
 *           Version           *
 *        16 Channel Evaluation         *
 *          Days to Expire: 30          *
 * To purchase licenses, please contact *
 *        sales@ipvideotrans.com        *

 IPVTL started successfully!
 Web management now accessible at

For Linux users, it's a bit more complicated. First, download and extract Installation tarball to local directory, /home or /opt for example. Remember to extract it WITHOUT changing file permissions inside, or IPVTL could fail to run. Then, in Linux console go to IPVTL folder, start IPVTL by entering command like ./ipvtl_16ch_trial or ./ipvtl_4ch. To quit IPVTL, simply pgrep ipvtl_ and kill IPVTL main process, or just pkill ipvtl_.

Prior to version, IPVTL users on Linux have to edit config file manually to set up transcoding, which is a big pain to start. Latest IPVTL has web interface built inside, making it possible to set up and manage channels at runtime in a web browser. The web interface is able to be accessed at http://<host_IP>:<http_port>, where host_IP is the network address of computer running IPVTL, and http_port is the HTTP service port which can be configured in Global Settings, for example Both Windows and Linux users may find it helpful, either setting up transcoding channels or manipulating channel status, locally or remotely.

Licensed users on Linux will be directed to license activation page on the first time accessing web interface. On that page you can import license key provided by us and activate IPVTL.

Starting from, IPVTL enhances web interface security with built-in login authentication and IP address whitelist. It is STRONGLY RECOMMENDED to set up web login password in Global Settings IMMEDIATELY after installation. Otherwise there is a risk of exposing all channels configuration on the internet.

IPVTL web interface provides basic channel configuration. Though some advanced settings are missing, compared to IPVTL Windows GUI. For example Multi-bitrate profiles and video image overlay. Therefore IPVTL Channel Manager brings another approach, helping Linux users build configuration on Windows. IPVTL Channel Manager provides exactly the same functionality as IPVTL Windows GUI, except running or stopping channels. You can build up to 64 channels with it. When you are done with setup, export configuration file ipvtl.conf to Linux box to make it work. To import IPVTL configuration on Linux, first quit IPVTL (pkill ipvtl_), and copy ipvtl.conf to /etc/ipvtl/ and overwrite the old one.

To set up transcoding channel in IPVTL, only 2 more steps below are required:

2. Select Source Media

media source
Select Media Source

Be sure to make clear your media source type before starting. Click New Channel button to create a new transcoding channel with default settings. In the channel list panel, select appropriate streaming protocol and enter the URL of the media source.

3. Setup Output Stream

IPVTL Settings Panel
Transcoding Panel

First, select target stream format you demand appropriately, among RTMP, MPEG-TS over UDP/RTP/HTTP, m3u8 Playlist (HLS), MPEG DASH, Decklink playback card and Native RTP. Then enter target address and modify encoding details if necessary. You can change video resolution, frame rate, quality level, encoding bitrate and audio sample rate, etc.

Once you've finished with the settings, click Apply button to validate and save your configuration. You can always change transcoding settings by clicking Edit button at a later time. But remember setting changes won't make effect to a live channel, until the channel is restarted.

4. Start Streaming!

After a new transcoding channel is set up, you may enter some memo about the channel in the list to keep it simple to identify. The red light in the last column (stop) indicates the channel is not started yet. Click Start button to start transcoding. If everything is OK, the status light will switch to green (start), which means the channel is running good now. You can then validate the output stream in your end device or VLC player (vlchttp://www.videolan.org/vlc) , a very handy tool.

If there is any problem however, please try Troubleshooting below, or send feedback to support#ipvideotrans.com with your channel settings and channel log file to get a diagnosis. To get channel log file, enable Debug Log in Global Settings before starting the channel. IPVTL config file and log files are located in:

Advanced Settings


What hardware spec do I need for 16/32/64 channel SD/HD/4K transcoding? Shall I choose CPU or GPU transcoding?

IPVTL utilizes both CPU and GPU encoding technique. The transcoding capacity is basically decided by both the CPU/GPU performance and the video encoding profile you demand. For high density transcoding, we recommend private server with Intel Xeon processsor or NVIDIA Quadro/GRID/Tesla graphics card installed, as they have better parallel computing performance. Use calculator in table below to get rough idea of choosing hardware.

H.264 Transcoding Hardware Spec Recommendation
Output Video Profile# of Channels Minimum CPU/GPU Requirement
ServerXeon e5-2620v3 Dual

Note: # of channels above are calculated by pure video transcoding. If there is video transizing / overlay involved for example, more cpu / gpu resources could be required.

Requirements in system / GPU memory can be calculated by 100MB per channel.

HEVC/H.265 transcoding requires very much more calculation than H.264/AVC does. On most CPUs, hevc transcoding could be dead slow. In this case, NVIDIA Quadro/Tesla card with Maxwell/Pascal GPUs, or Intel 6th/7th generation Core processor (Skylake & Kaby Lake) with Quick Sync Video acceleration is recommended. For HEVC enabled NVIDIA video card specs, visit NVIDIA Video Encode and Decode GPU Support Matrix.

Can IPVTL broadcast to end user directly? How can I broadcast my video to internet audience?

IPVTL is designed for live media transcoding only. Although IPVTL can output mpeg ts over http format, it is NOT supposed to provide media stream distribution for volume audience over the internet. You will need 3rd party media streaming server to do that, like Nginx, Wowza media server and Adobe media server, etc.

See How to setup IPVTL with Nginx above.

Can I do screencast using IPVTL?

You can screencast using IPVTL on Windows. To do that, select "file" as channel source format and enter "desktop" as source name. Then go to advanced format settings -> Custom Param, and enter "-f gdigrab -framerate 5" in Source Param box.

Transcoding stops immediately on starting (Status light quickly switches from green to red). Why's that?

Several possible reasons:

  1. Input stream stability. Validate source stream using tools like vlc player. If you are transcoding from UDP/RTP stream, make sure the local udp port is not occupied by other processes in the system. (On Windows, open a console window and type "netstat -anop udp/tcp" to see all UDP/TCP ports opened on the host.)
  2. Hardware performance. As video transcoding is very CPU-intensive process, it is always recommended to monitor CPU/GPU usage and make sure system working healthy while running IPVTL. Stop some channels if CPU load is too high.
  3. Network bandwidth to destination address. If bandwidth is not sufficient, try setting bitrate limit in transcoding settings. If the output format is rtmp, make sure the rtmp server is running properly and the rtmp url is valid.

If there are still problems, please send us feedback via email to support[at]ipvideotrans.com. In your feedback, please let us know your detailed transcoding settings and attach channel log files if possible. To get channel log files, please enable Debug Log in IPVTL Global Settings before starting the channel.

Transcoding starts OK. But I can't see video output in VLC.

Check transcoding source validy and ensure IPVTL is receiving input stream with tools mentioned above. Make sure VLC is running exactly on IPVTL's output address and is receiving stream out from IPVTL. Open message log in VLC (Tools->Messages) and set log level to max to see full logs. If you are transcoding video stream into H.263, remember VLC DOES NOT support H.263 RTP stream playing (only H.263+).

If still no video output, please enable Debug Log in IPVTL global settings and send channel log file back to us (support[at]ipvideotrans.com) to diagnose.

Where can I find IPVTL log files?

IPVTL log files are named in ipvt_###.log and are located in:

Why is there no GUI in Linux version? How do I set it up on Linux?

Starting from version, IPVTL has built-in web interface for Linux users to set up and manage channels at runtime. Please refer to Setup Section to find details.

How to secure IPVTL web interface and HTTP streams without firewall?

Starting from version, web login is required to access IPVTL web interface. Login password is empty by default and can be configured in Global Settings. Make sure to set up password IMMEDIATELY after installation, and keep it safe! Otherwise all channel configuration details could be exposed on the internet.

Also IPVTL has now built-in IP address ACL (access control list) to secure http streams from unexpected streamers. You can edit ipvtl.acl and blacklist or whitelist client IP addresses there. See more in setup instructions.

How to run IPVTL in the background as daemon on Linux and how to kill it?

IPVTL runs as daemon on Linux from version It is possible to start IPVTL in remote ssh login without nohup now. To stop IPVTL running, simply pgrep ipvtl_ and kill IPVTL main process, or just pkill ipvtl_. Remember to JUST kill, NOT kill -9 (SIGKILL) as it is not a safe way.

How to start IPVTL automatically on system boot?

On Windows, simply open Global Settings and enable Auto Start on System Boot option. Be noted IPVTL does NOT run as Windows service. It still requires user to login Windows before running.

On Linux, you may accomplish it using cron or rc.local scripts. For cron, enter $ sudo crontab -e under console and add line @reboot <IPVTL_with_full_path>. For rc.local, just edit /etc/rc.local and add IPVTL command with full path.

Can I run IPVTL single license on multiple computers?

No. IPVTL software license is bound to per server instance. If you want to run it on more than 1 server instances, please consider purchasing multiple licenses.

Video quality is poor. How to improve?

First please make sure the source video quality is fine using tools like vlc player. Remember there is always quality loss during transcoding. You CAN NEVER get better output quality than the source.

If you want to tune video quality for H.264 / HEVC encoding, please try different Encoding Preset in advanced video settings (see in setup instructions). Setting video Quality in the main gui is NOT recommended and it should be kept as default.

For other video encodings than H.264 and HEVC, setting video Quality and video Bitrate can both impact the output quality. Make sure the video bitrate is not set too low. If you don't understand about bitrate, just leave it default.

How can I use Intel Quick Sync Video acceleration?

Intel QSV Setting

First of all make sure your processor is capable of Intel QSV here. Utilizing Intel QSV acceleration on Windows is recommended, as setup procedures are much easier than on Linux. On Windows, you just need to install Intel HD Graphics driver and make sure the driver has been updated to latest version. Outdated video driver could cause unexpected transcoding problems. If the driver is installed correctly, you can set channel's Video Encoding to Intel QuickSync H.264/HEVC to enable QSV accelerated transcoding.

To enable Intel QSV on Linux is a bit more complicated. You need to install Intel Media Server Studio (MSS) as an essential prerequisite, which includes Intel HD video kernel driver in it. Check processor support matrix below and choose proper Linux OS and MSS version suits your system. Find detailed install instructions in Intel Media Server Studio Getting Started Guide.

Processor Arch.MSS VersionLinux
3rd Gen
(Ivy Bridge)
2015Ubuntu 12.04
SLES 11.3
4th Gen
2015/2016CentOS 7.1
5th Gen
2015/2016/2017CentOs 7.2
6th Gen
2017CentOS 7.2
7th/8th Gen
(KabyLake & CoffeeLake)
2017CentOS 7.2

Note: Currently, only 7th, 8th and 9th generation Intel Core processors are supported by IPVTL offiicial release on Linux. If you want to run it on older Intel processors, please inquire for us.

Before running IPVTL, verify Intel Media Server Studio and iHD drivers installation using vainfo as per Intel's guide doc. If everything is ok, you can set channel video encoding to Intel QuickSync H.264/HEVC to enable QSV accelerated transcoding then.

How to enable NVIDIA NVENC/NVDEC/CUVID full acceleration?

NVENC Setting

First of all make sure you have at least 1 NVIDIA video card capable of NVENC here. Then you need to install the latest NVIDIA video driver to enable NVENC acceleration. In IPVTL channel config, set video encoding to NVIDIA NVENC H.264 or NVIDIA NVENC HEVC to enable NVENC accelerated transcoding.

But be noted you only enable half GPU performance so far. CPU is still working on Video decoding and resizing at this moment. To enable full GPU performance, select NVDEC decoding H.264 or HEVC (as per your source signal) in advanced vide settings -> Misc tab. This will leave video decoding, resizing and deinterlacing (if required) to GPU with zero data copy. No CPU resources will be involved!

That's it. If you have multiple NVIDIA cards installed, remember to specify which card to be assigned in Misc settings as well.

Note: NVIDIA GeForce GPU and Quadro under K2000/M2000/P2000 GPU has a limit of 2 encode sessions per system. It is a limit by NVIDIA driver. Other Quadro models, Tesla or GRID don't have such limit.

From version, NVIDIA NVDEC/CUVID for h.264/hevc decoding is also supported, which would release more CPU time from video decoding. Go to advanced video settings -> Misc. tab to enable it.

NVDEC Setting

How can I stream with subtitle?

IPVTL supports 2 kinds of subtitle:

1) dvb subtitle pass through in MPEG TS over UDP format
2) srt/webvtt subtitle pass through in HLS segments

To pass through dvb subtitle during transcoding, you need to use Source Stream Selection settings (see above). Make sure to select the proper video/audio streams with subtitle stream you want to output.

I have 2 or more network interfaces on my computer. How to specify the right one for multicasting?

You can specify network interface to bind for receiving or sending udp stream. To do that, append option "localaddr=<IP_ADDR>" to the stream url. For example, udp:// means to use network interface with IP for udp multicast.

I see a lot of PCR accuacy / interval errors outputting MPEG TS over UDP. How to fix it?

You need to enable CBR encoding mode. See how to enable CBR encoding above.

There is a long time prebuffer on video play begins. How to improve?

It could be due to long key frame interval in output video. By default IPVTL generates video at 5 seconds key frame interval for better video quality. To shorten the prebuffer time you may try setting Key Frame Interval to a smaller value. See how in Advanced Settings above.

Can I run IPVTL on virtual machines?

IPVTL evaluation does not run in VMware. Please try it on real machines instead. IPVTL licensed version does run on VMs, however.

Video encoding bitrate too high. Can it be lower?

First, if the result Frame Size and Frame Rate does not matter much, you can lower them to save bandwidth dramatically. For example, switch frame size from CIF to QCIF, or reduce frame rate from 30 to 15 fps.

Second, the Quality Level and Bandwidth settings both impact output video encoding bitrate. To control video encoding bitrate effectively, revert Quality Level to Original first. Then tune Bandwidth value to make video bitrate at your level. Remember: Low encoding bitrate always leads to low video quality.

If you've got a critical bandwidth limit, you can also try increasing video Key Frame Interval (to 120 or larger, through configuration file mentioned above) and switching Global Header from InBand to OutOfBand.

Why is HEVC encoding so slow?

Yes it is because HEVC has very much more complexity in encoding algorithm than H.264. There is always trade-off between performance and speed. You may try HEVC on a much faster processor, or switch to GPU accelerated HEVC encoding instead.

What about H.264 transcoding delay in IPVTL and how to decrease it?

IPVTL default H.264 encoding settings will indroduce about 50ms delay. If you have a strict demand of transcoding delay, please try advanced option "-tune zerolatency" in Custom Target Param.

© 2009-2019 IPVideoTrans.com All rights reserved.