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

产品简介

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

IP Video Transcoding Live! (简称 IPVTL)是一款专业的多路实时流媒体转码和发布软件,针对当前最常见的互联网视频应用, 如卫星数字电视、视频会议在线直播(Webcasting)和视频监控在线发布等。

在线直播系统对媒体流传输的及时性和流畅性有较高要求,IPVTL 提供高密度转码的同时把画质损失和延迟降到最低。 在单台配置 Intel Xeon 多路处理器和 NVIDIA Quadro / Tesla / GRID 视频加速卡的服务器上,IPVTL 可以同时转码高达 64 路高清视频节目。 完美支持目前常用的媒体编码格式,如 G.7xx、MP2/3、AMR、AAC、AC3、H.263(+)、 H.264(AVC)、H.265(HEVC)、MPEG-1、MPEG-2MPEG-4, 还包括 HTML5 视频编码标准 VP8 VP9 等。

IPVTL 支持几乎所有常见的多媒体类型文件、视频采集卡和流媒体传输协议,包括 HTTP、MMS、RTSP、RTMP (flash video)、RTP and MPEG-TS (DVB-S)等, 并完全兼容以下流媒体服务器: Windows Media Service, RealNetworks® Helix Server, Adobe® Media Server, Wowza Media Server, Nginx,还包括卫星数字电视设备如 Dreambox®等。

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

IPVTL 支持文件点播,可以直接从本地机器的 DVD 或任何格式的媒体文件转码并发布媒体流, 甚至还可以自定义播放列表(目前仅 Windows 版本支持该功能)。

IPVTL 支持现在互联网上最热门的 Flash 流媒体传输协议 RTMP, 能够将视频以推送方式发布到 Adobe Media Server、 Wowza Media Server 或 Red5 Media Server。 此外 IPVTL 支持 MPEG-TS 恒定码率(CBR)输出模式,兼容大多数 IPTV 机顶盒等设备。

IPVTL 提供简单易用的 GUI 配置工具让你对视频/音频的编码细节进行控制, 包括分辨率、质量、帧率和码率等,用户可以根据具体需要快速的实现流媒体定制。 IPVTL 还支持专业的视频后期功能,包括叠加图片logo/水印、字幕等等。

对于 Native RTP 格式流媒体,用户可以通过导入或导出 SDP 文件 (RFC 2327) 对输入和输出属性进行指定,SDP 文件可以用于向 Helix Server 等流媒体服务器发布时使用。

产 品 特 性
  • 支持 HTTP/RTSP/MMS/RTMP 视频链接输入
  • 支持本地多媒体文件/文件夹输入
  • 支持 BlackMagic DeckLink 和其它 DirectShow 视频捕获设备输入
  • 直播流 时移(Time Shifting)
  • Adobe HTTP Dynamic Streaming (多码率 RTMP 输出)
  • Apple HLS Adaptive Bitrate Streaming new
  • 视频去隔行(Deinterlace)/ 剪裁 / 补白 / 锐化 / 虚化 / 叠加等后期处理
  • Intel Quick Sync Video 加速 H.264 & HEVC 编码 new
  • NVIDIA NVENC 加速 H.264 & HEVC 编码 new
  • 24/7 无人值守 (串流故障自恢复)

规格参数

输入格式 输出格式 编解码
  • G.7xx
  • MP2/MP3
  • MP4A/AAC
  • AMR
  • AC3
  • Real Audio
  • Windows Media Audio
  • H.263
  • H.263+/++ (aka H.263-1998/2000)
  • H.264/AVC (Baseline/Main/High/High 10/High 4:2:2/High 4:4:4)
  • H.265/HEVC
  • JPEG/MJPEG
  • MPEG-1 Video
  • MPEG-2 Video
  • MPEG-4/Visual
  • Real Video
  • Windows Media Video
  • On2 VP6
  • Webm VP8
  • Webm VP9
  • dvb/dvd 字幕
  • srt/subrip 字幕
  • webvtt 字幕
  • movtext 字幕
GPU 加速技术 视频分辨率 系统需求

价格策略

与其它实时串流方案相比,我们提供极具竞争力的产品报价,最低至 120 美元起。此外, 只要您购买了我们的软件即获得永久授权,意味着您不必再每年支付费用就可以让软件保持运行。 以下是与 Wowza Transcoder Addon 软件的报价对比示例,敬请参考:

节目流 Wowza Transcoder Addon 价格 IP Video Transcoding Live 价格
1 $240 / 年 $120
4 $960 / 年 $240
16 $2,256 / 年 $480
64 $11,232 / 年 $960

对于批量授权购买我们更有优惠折扣,请邮件至 sales#ipvideotrans.com 详询。

下 载

IP Video Transcoding Live! v5
16 路评估版
30 天免费试用
IPVTL windows trial download
Windows 安装包
适用于32或64位
Windows XP/Vista/7/8/10,
Windows Server 2003/2008/2012
IPVTL linux trial download
Linux x86 Bzip2 压缩包
适用于32位 CentOS, Debian, Ubuntu
Linux x64 Bzip2 压缩包
适用于64位 CentOS, Debian, Ubuntu

版本更新

v5.7.2.8
  - CPU affinity management for multiple processor system 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 generation Skylake Core processors)

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, Tesla, and GRID GPUs on NVIDIA website
  - Smarter detection of dead streaming

v5.4.2.6
  - H.265/HEVC encoding supported
  - 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

使用手册

To setup a transcoding channel in IPVTL, only a few steps as following are needed.

1. Select Your Media Source

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.

2. Setup Output Stream

GUI
Transcoding Panel

First, select target stream format you demand appropriately, among RTMP, MPEG-TS over UDP, MPEG-TS over HTTP, m3u8 Playlist (HLS) and Native RTP. Then enter target address and modify encoding details if necessary. You can change video resolution, frame rate, quality level, encoding bit rate 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.

3. 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. If there is any problem unfortunately, please go to Troubleshooting section below, or send feedback to support#ipvideotrans.com with your transcoding settings and channel log file attached.

You may validate the output stream by using some network traffic monitors such as Wireshark (wiresharkhttp://www.wireshark.org). More specifically, you can play the stream using network media players like VLC (vlchttp://www.videolan.org/vlc). For native RTP streams, please feed the player with the SDP file exported from IPVTL. For MPEG-TS/PS streams, just open the network address that transcoding targets. Due to network cache values set in VLC player, there could be playback latency while watching.

高阶设置

配置文件

除了 GUI 界面,您也可以通过手动编辑配置文件来对 IPVTL 各转码通道进行设置。配置文件名为 <ipvtl.conf>,Linux 系统下,该文件位于 IPVTL 程序文件解压的相同目录;Windows 系统下,该文件位于 %APPDATA%\IPVideoTrans\ipvtl 文件夹。Linux 系统下由于 IPVTL 没有 GUI 界面,只能通过这一方式来进行转码设置。

提示:配置文件 ipvtl.conf 可在 Windows 和 Linux 平台共享。Linux 用户可以先使用 Windows 版本完成转码设置,再把 ipvtl.conf 拷贝到 Linux 系统来工作。

注意:配置文件修改后,必须重启 IPVTL 以生效

配置文件示例:

# IP Video Transcoding Live Configuration File

HTTPPort 8888                  # local service port for MPEG-TS over HTTP output
Log 0                          # log level, to write log change it to 32, 0 to disable
AutoStart 0                    # automatically start with Windows
AutoRestart 1                  # automatically restart transcoding on failure

<Channel1>                     # channel begin
 Enable 1                      # enable this channel
 <Input>                       # input settings begin
  Format file                  # source stream format
                               # options: file/rtp/mpeg-ts/device
  File "e:\video\sample.mp4"   # source media file path or url
  SourceParam ""               # extra source param
  VideoEnable 1                # receive video stream
  VideoCodec H264              # source video encoding (RTP input only)
                               # options: H263/H263+/H264/H265/MP1V/MP2V/MP4V
  VideoIP 0.0.0.0              # network address on video receiving (RTP input only)
                               # use 0.0.0.0 (for local network interface) or multicast addresses
  VideoPort 10000              # network port on video receiving (RTP input only)
  VideoFmtp ""                 # extra format parameters of video stream
                               # from SDP (RTP input only)
  AudioEnable 1                # receive audio stream
  AudioCodec PCMU              # source audio encoding (RTP input only)
                               # options: PCMU/PCMA/MP2A/MP3/AAC/AC3
  AudioSampleRate 0            # audio sampling rate (RTP input only)
  AudioChannel 0               # audio channels (RTP input only)
  AudioIP 0.0.0.0              # network address on audio receiving (RTP input only)
                               # use 0.0.0.0 (for local network interface) or multicast addresses
  AudioPort 10002              # network port on audio receiving (RTP input only)
  AudioFmtp ""                 # extra format parameters of audio stream
                               # from SDP (RTP input only)
  </Input>                     # input settings end
  <Output>                     # outputs begin
   NumOutputs 1                # number of outputs (for rtmp & hls multi-bitrate stream)
   <Output1>                   # output settings begin
   Format file                 # target stream format
                               # options: file/rtp/mpeg-ts/http
   VideoEnable 1               # enable video output
   VideoCodec H264             # target video encoding
                               # options: H263/H263+/H264/H265/MP1V/MP2V/MP4V/FLV/QSV264/QSV265/NV264/NV265, or
                               # Copy for no video transcoding
   VideoWidth 0                # video frame width (0 for original)
   VideoHeight 0               # video frame height (0 for original)
   VideoFrameRate 0            # video frame rate in FPS (0 for original)
   VideoKeyFrameInterval 0     # video key frame interval
   VideoQuality 0              # video quality level (0 for default)
   VideoBitRate 0              # video encoding bit rate in Kbps (0 for default)
   VideoIP 192.168.0.1         # network address on sending video stream (RTP output only)
   VideoPort 20000             # network port on sending video stream (RTP output only)
   VideoGlobalHeader InBand    # global header of video stream (RTP output only)
                               # values: InBand/OutOfBand
   AudioEnable 1               # enable audio transcoding
   AudioCodec AAC              # target audio output
                               # values: PCMU/PCMA/MP2A/MP3/AAC/AC3, or Copy for no audio transcoding
   AudioSampleRate 0           # audio sampling rate (0 for original)
   AudioChannel 2              # audio channels (0 for original)
   AudioIP 192.168.0.1         # network address on sending audio stream (RTP output only)
   AudioPort 20002             # network port on sending audio stream (RTP output only)
   AudioGlobalHeader InBand    # global header of audio stream (RTP output only)
   MuxBitRate 0                # muxing bit rate in Kbps for mpeg-ts format
   RTMPFlashVer                # flash version string (rtmp output only)
   RTMPSwfUrl                  # flash swf url (rtmp output only)
   RTMPPubUser                 # publish username (rtmp output only)
   RTMPPubPass                 # publish password (rtmp output only)
   File "rtmp://1.2.3.4/live/123"# output address (rtmp url or udp address)
  </Output1>                   # output settings end
  MapParam ""                  # source stream selection (mpeg-ts input only)
  FormatParam ""               # advanced format param
  Filters 0                    # video post-proc settings
  TimeShift 0                  # time-shifting delay in seconds
  TimeShiftCacheFolder ""      # time-shifting cache folder
  TargetParam ""               # extra target param
  Memo ""                      # channel memo (for Windows version only)
 </Output>                     # outputs end
</Channel1>                    # channel end

常见问题

What hardware spec do I need for 16/32/64 channel transcoding?

Intel Xeon Processor Model Software H.264 Transcoding Capability
(in Channels)
SD (720x576) HD720p HD1080p
Xeon e3-1231 uni-processor 8 6 4
Xeon e5-2620 dual-processor 16 12 8
Xeon e5-4607 quad-processor 32 24 16
Xeon e7-4850 quad-processor 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. Memory and disk size do not matter very much. Normally for high density transcoding we recommend Intel Xeon and NVIDIA tesla/grid processors, as they have better parallel computing performance.

If you have a serious demand in video quality, for example for digital TV broadcasting, software transcoding is strongly recommended against using GPU acceleration. As a reference, please see H.264 transcoding benchmarks of different Intel Xeon processor models in the right table.


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

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


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<ENTER>" 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 first enable Debug Log in IPVTL Global Settings (for Windows), or change "log 0" to "log 32" in ipvtl.conf (for Linux) 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 the log file back to us (support[at]ipvideotrans.com) to analyze.


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

Sorry there is no gui in Linux version. Forgive us. That makes it a bit complicated to make channel configuration.

First you need to extract the tarball under linux, to /opt/ipvtl for example. In the directory that IPVTL was extracted, open and edit config file <ipvtl.conf> as per config directions in this user manual. To make things easier you may do the configuration in Windows version and copy the config file to Linux box. After that, start running IPVTL by entering command like "./ipvtl_16ch" under console.

On Linux, runtime channel managing is also not available, unlike on Windows.


How to run IPVTL in the background on Linux?

IPVTL does not support running as daemon on Linux. You may find it stops running if it is started by remote ssh user when the ssh session is shut down. To fix that you may try Linux command "nohup".


Can I run IPVTL license on multiple computers?

IPVTL software license is bound to per server instance. If you want to run it on more than 1 server instances, you need to purchase 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 bit rate is not set too low. If you don't understand about bit rate, just leave it default.


How do I use Intel Quick Sync Video acceleration in IPVTL?

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 one. Outdated video driver could cause transcoding failure. If driver is installed all right, in IPVTL you can set video encoding to Intel QuickSync H.264 or Intel QuickSync 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. Make sure Intel media sdk libraries (libmfx*.so) can be found and loaded in system library path. If not, add Intel media sdk library path (e.g. /opt/intel/mediasdk/lib64) to environment variable LD_LIBRARY_PATH. If everything is ok, in IPVTL config you can set output VideoCodec to QSV264 (H.264 encoding) or QSV265 (HEVC encoding) to enable QSV accelerated transcoding.


How do I use NVIDIA NVENC acceleration in IPVTL?

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 Windows version, set video encoding to NVIDIA NVENC H.264 or NVIDIA NVENC HEVC to enable QSV accelerated transcoding. In Linux version config file, set output VideoCodec to NV264 for h.264 encoding, or NV265 for HEVC encoding.

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


How can I stream with subtitle in IPVTL?

IPVTL supports

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, 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 system. How to specify the right one for streaming?

You can specify network interface for udp input or output stream. To do that, please 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.


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 4-5 seconds key frame interval for better video quality. To shorten the prebuffer time you may try setting Key Frame Distance to a smaller value according to frame rate. Please see in Advanced Settings above.


Video encoding bit rate 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 bit rate. To control video encoding bit rate effectively, revert Quality Level to Original first. Then tune Bandwidth value to make video bit rate at your level. Remember: Low encoding bit rate 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-2016 IPVideoTrans.com All rights reserved.