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

Introduction

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

IP Video Transcoding Live! (Abbreviation IPVTL) is a professional multi-channel live transcoding software designed for live media streaming over the internet, like 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 Intel Xeon processors with NVIDIA Quadro / Tesla video card acceleration, IPVTL is able to transcode up to 64 channels HDTV for internet audience on 1 single server. It has full support of common media encodings today, 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 including the HTML5 video - VP8 VP9.

IPVTL accepts all kinds of media materials as transcoding input, including pre-recorded media files, TV tuner cards and network streams such as HTTP, MMS, RTSP, RTMP (flash video), RTP and MPEG-TS (DVB-S). It works well with most common media streaming servers/CDNs including Youtube, Facebook media, Windows Media Service, RealNetworks® Helix Server, Adobe® Media Server, Wowza Streaming Engine, Nginx and other popular DVB-S devices in the market like Dreambox®.

Youtube Facebook Windows Media Server Adobe Flash Media Server Apple Quick Time RealNetworks Real Server DVB

IPVTL provides on-demand media file streaming as well. It can stream from any pre-recorded movie clips on your local disk, with transcoding on the fly. Any media file type with any codec is supported. What's more, you can schedule stream play list via streaming from folder (available on Windows currently).

For output, IPVTL supports the most popular streaming protocols today - Apple HLS and Flash RTMP pushing to 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 most IPTV STB and other devices.

IPVTL gives you full control of video and audio encoding profiles customized to your system requirements. Video resolution, quality, frame rate and bit rate, you can reshape your video stream fast and simple. IPVTL also provides professional video post process functions 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 HTTP/RTSP/MMS/RTMP URLs
  • 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
  • AAC-LC / HE-AAC
  • 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
  • JPEG/MJPEG
  • 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

Pricing

We offer very competitive price against other live transcoding solutions, starting from $120. Once you buy our software, you get lifetime license and don't have to pay annually to keep it working. As an example please 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

Also we offer discount to volume channel/license purchase and distributors. For more pricing details about IPVTL, please don't hesitate to ask us at sales#ipvideotrans.com.

Download

IP Video Transcoding Live! v5
16 Channel Evaluation
30 Day Free Trial
IP Video Transcoding Live!
Channel Manager
IPVTL windows trial download
Windows Executable Installer
For Windows XP/Vista/7/8/10,
Windows Server 2003/2008/2012
32-bit and 64-bit
IPVTL linux trial download
Linux x64 LZMA Tarball
For CentOS, Debian, Ubuntu 64 bit
Linux x86 Bzip2 Tarball
For CentOS, Debian, Ubuntu 32 bit
IPVTL Channnel Manager download
Windows Zip Package
For Linux users buiding
configuration on Windows

Version Updates

v5.10.3.3
  - 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

v5.9.3.0
  - 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

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

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

v5.6.2.8
  - 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

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

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

v5.5.2.6
  - 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

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

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

v5.2.2.2
  - 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)

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

v5.0.1.2
  - 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

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

v4.8.11.2
  - RTSP over TCP support

v4.8.11.1
  - DirectShow capture source support
  - CBR mode for MPEG-TS output

v4.7.8.11
  - RTMP SWF verification support

v4.5.10.0
  - 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
 ipvtl/
 ipvtl/libva.so.1
 ipvtl/libva-drm.so.1
 ipvtl/ipvtl.so
 ipvtl/ipvts.so
 ipvtl/ipvtl_16ch_trial
 # ./ipvtl_16ch_trial

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

 IPVTL started successfully!
 Web management now accessible at http://127.0.0.1:8888...
 #

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_.

Before version 5.8.3.1, 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> on IPVTL running, 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 http://127.0.0.1:8888/. 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 5.10.3.3, 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 channel configurations to 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, just 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

Troubleshooting

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

Intel Processor Model Software H.264 Transcoding Capability
(Channels)
SD (720x576) HD720p HD1080p
Xeon e3-1230v3 uni processor 8 6 4
Xeon e5-2620v3 dual processors 16 12 8
Xeon e5-4607 quad processors 32 24 16
Xeon e7-4850 quad processors 64 48 32

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 and NVIDIA Quadro/GRID/Tesla processors installed, as they have better parallel computing performance. As a reference, please see H.264 transcoding benchmarks of different Intel Xeon processor models in the right table.

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

HEVC/H.265 transcoding requires very, very much more calculation than H.264/AVC does. On most CPUs, the process 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.


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 does NOT 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.


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

That usually indicates improper settings in the transcoding channel. Please first validate transcoding source using tools like vlc player. If you are transcoding from RTP or MPEG-TS, make sure that the local port specified in IPVTL 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.) 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 5.8.3.1, 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 5.10.3.0, 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 5.9.3.0. 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. 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?

First of all make sure your processor is capable of Intel QSV here. To enable Intel QSV acceleration in Windows version IPVTL, you need to install the latest Intel HD Graphics driver. Always make sure the driver has been updated to latest. Outdated video driver could cause unexpected transcoding error. If driver is installed all right, in IPVTL you can set channel video encoding to Intel QuickSync H.264/HEVC to enable QSV accelerated transcoding.

To enable Intel QSV in Linux version IPVTL is a bit more complicated. First you need to install Intel Media Server Studio on your system. The package contains linux kernel module with Intel HD video driver required. Detailed install instructions can be found in Intel Media Server Studio Getting Started Guide. Before running IPVTL, verify iHD drivers and modules installation using vainfo as per the guide. If everything is ok, set channel video encoding to Intel QuickSync H.264/HEVC to enable QSV accelerated transcoding.


How can I use NVIDIA NVENC acceleration?

First of all make sure your video card is 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.

Note: NVIDIA GeForce GPU has a limit of 2 encode sessions per system. It is a limit by NVIDIA. Quadro, Tesla and GRID don't have such limit.


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 more than 1 network interfaces on my computer. How to specify the right one for streaming?

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://224.0.0.1:1234?localaddr=192.168.0.1 means to use network interface with IP 192.168.0.1 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 in virtual machines?

IPVTL evaluation does not run in VMware. Licensed version does, 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-2017 IPVideoTrans.com All rights reserved.