流媒体技术世界——分享技术,增值服务
关于Wowza Streaming Engine在音视频编码上的一些现存问题
这篇文章介绍了一些关于Wowza Streaming Engine在音视频编码上的一些现存问题,它可能会对你的部署和管理带来一些影响。 如果可能,请按照本文的描述来解决它,另外,我们这篇文档会保持更新,所以在后续的各个项目中遇到问题时请来检查一下这个文档。

注意:对于第三方系统导致的问题,从根本上需要需要它自己去解决,Wowza Streaming Engine只能尽量兼容这些问题,并会以最快的速度配合这些厂家来解决问题。

提要


Wowza Streaming Engine上编码相关问题
从Matrox Monarch HD 编码器出来的Metadata信息无法被Akamai stream target处理
Wowza的Transcoder在采用默认的软件编码时对GOP大小有限制(Wowza Streaming Engine 4.4.1及以上版本)
在Linux服务器上对H.265/HEVC软解码时,可能遇到潜在的SEGV 崩溃问题
Wowza Streaming Engine对部分合作伙伴的编码器生成了一个错误的编码参数XML文件(无法正确解析)
从JVC camcorder出来的RTSP流,可能无法工作
NVIDIA NVENC 硬件加速编码无法在Wowza Streaming Engine 4.2.0上运行
NVIDIA 硬件加速解码无法在Windows 10和Java 8上的Wowza Streaming Engine运行

从Matrox Monarch HD 编码器出来的Metadata信息无法被Akamai stream target处理

从Matrox Monarch HD 编码器出来的视频流中的metadata数据,在Wowza Streaming Engine 接受环节没问题,但是经Wowza用RTMP推送给Akamai的CDN 上载点(endpoint)后,Akamai无法处理这个Metadata.

解决办法


在Stream Target的配置中添加如下自定义参数,让Wowza在推送前删除掉Metadata数据

  1. 在Wowza Streaming Engine Manager的管理界面,选择对应的直播应用(使用Matrox Monarch 编码器,并要将流用RTMP推送到Akamai的应用).

  2. 单击Stream Targets菜单.

  3. 选择要推送给Akamai的stream target.

  4. 点击Customtab页,点击Edit,然后点击Add Custom Property.

  5. Add Custom Property对话框,设置:

    • Name – removeMetadataObjects
    • Type – Boolean
    • Value – true

  6. 点击Add,再点击Save.

Wowza的Transcoder在采用默认的软件编码时对GOP大小有限制(Wowza Streaming Engine 4.4.1及以上版本)

在Wowza Transcoder中,在编码参数中,你可以设置关键帧间隔是否保持和视频源一致。 在Wowza Streaming Engine Manager管理界面中,你可以在编码参数中,设置Key Frame IntervalSame as source (如果是只转码率,关键帧间隔必须保持和视频源一致). 在转码模板文件,你需要在<Video>/<KeyFrameInterval> 中设置<FollowSource>true.
<KeyFrameInterval>
    <FollowSource>true</FollowSource>
    <Interval>0</Interval>
</KeyFrameInterval>
在Wowza Streaming Engine 4.4.1 及以上版本,如果你将关键帧间隔设置为保持和源视频一致,并且选择了Default Encoding Implementation来采用Wowza内建的MainConcept软件编码,此时,如果源视频的GOP大于300,那么Wowza 的Transcoder 会给转码的视频增加额外的关键帧(也就是说降低了GOP大小),这时关键帧间隔就不会保持和原视频一致了. 对于H.264和H.265/HEVC的视频,只要GOP超过300,Wowza就会这么处理

解决办法


预计在下一个版本中,会解决这个问题。

在Linux服务器上对H.265/HEVC软解码时,可能遇到潜在的SEGV 崩溃问题

在Linux系统上,Wowza Transcoder对H.265/HEVC的视频进行软解码时,可能会导致SEGV崩溃. 这个问题是由于Transcoder启动时加载共享库的顺序导致的.

解决办法


You can address the issue by forcing the Java signal handler to be loaded on Java startup. 要这么做,请用文本编辑器打开/usr/local/WowzaStreamingEngine/bin/setenv.sh文件,在设置_EXECJAVA变量的位置,增加一行将LD_PRELOAD 环境变量设置为指向$JAVA_HOME/lib/amd64/libjsig.so文件的完整路径,例如:
if [ -d /usr/local/WowzaStreamingEngine/java ]; then
    WMSJAVA_HOME=/usr/local/WowzaStreamingEngine/java
    _EXECJAVA=$WMSJAVA_HOME/bin/java
    export LD_PRELOAD=$WMSJAVA_HOME/lib/amd64/libjsig.so
else
    _EXECJAVA=java
fi

Wowza Streaming Engine对部分合作伙伴的编码器生成了一个错误的编码参数XML文件(无法正确解析)

Wowza Streaming Engine 会为合作伙伴的编码器产品生成一个编码参数配置XML文件,有时这个XML文件会缺失部分内容(<encoder_profile>). 这导致下面这些编码器产品无法正确解析这个XML文件:

  • Epiphan Pearl
  • Hauppauge StreamEez-Pro
  • Matrox Monarch HD
  • NewTek TriCaster
  • Telestream Wirecast

解决


在最新的Wowza Streaming Engine 软件上已经解决了这个问题。升级或下载最新版本即可。

从JVC camcorder出来的RTSP流,可能无法工作

JVC camcorder 会输出RTSP/RTP模式的RTSP流,Wowza Streaming Engine 可能无法接收或传输的质量很低。

解决办法


这是JVC camcorder 固件的问题。我们推荐你配置camcorder以及在Wowza Streaming Engine Manager 管理界面上的JVC source 界面,使用 MPEG-TS/UDP 连接方式。

NVIDIA NVENC 硬件加速编码无法在Wowza Streaming Engine 4.2.0上运行

在Wowza Streaming Engine 4.2.0 软件无法识别NVIDIA 硬件,因此Wowza Transcoder无法使用NVIDIA NVENC 硬件加速编码功能。

解决办法


Wowza Wowza Streaming Engine 4.5.0已经解决这个问题了,升级或重装最新版本即可.

NVIDIA 硬件加速解码无法在Windows 10和Java 8上的Wowza Streaming Engine运行


在Windows 10上的Java 8环境下,NVIDIA 硬件加速解码会失败。这个失败发生在当你使用CUDA 或 NVCUVID 加速解码时(NVENC 加速看起来是可以正常运行的)。

解决办法


在Windows 10上使用 Java 7 来避免这个问题。



匿名用户
评论

我们的地址


北京市朝阳区管庄西里建基商务楼423室


邮编:100024

关于我们


北京联方信科信息技术有限责任公司


官网:www.ttstream.com

联系我们


王经理:phone


柳经理:phone

京ICP备14033868号-2