流媒体技术世界——分享技术,增值服务
Flussonic Media Server实时转码功能简介
Flussonic Media Server提供了这样一种能力,它可以将一个注入的媒体流进行实时地解码然后再编码,以适应它针对的目标播放终端,并输出多种不同码率的并且关键帧对齐的媒体流,以实现多码率自适应。

一、安装flussonic-ffmpeg


Flussonic Media Server 利用ffmpeg来进行转码,因此需要安装flussonic-ffmpeg。
apt-get -y install flussonic-ffmpeg
	

二、配置转码


在直播流的配置中,使用transcoder指令来启用转码:
stream ort {
  url  udp://239.0.0.1:5000;
  transcoder vb=2048k preset=fast ab=128k;
}
	

转码出多个码率:
stream ort {
  url udp://239.0.0.1:5000;
  transcoder vb=2048k preset=fast vb=700k size=720x576 preset=fast vb=300k size=320x240 preset=fast ab=128;
}
	

下面是各个参数的说明:


1、关于视频(video)部分的编码参数

  • vb - 视频的码率。这个数值以k结尾i。每一个vb参数都会创建一个新的视频流。例如: vb=2048k。
  • preset - 这就是ffmpeg编码中的preset。例如: preset=fast。合法的配置包括: ultrafast, superfast, veryfast, faster, fast, medium, slow, slower, veryslow, placebo。默认值是medium。

  • size - 视频的大小。例如: size=720x400。
  • fps - 帧率。例如: fps=25。
  • deinterlace - 启用反交错(deinterlacing)。例如: deinterlace=1。
  • refs - 参考帧的数量。例如: refs=6.
  • bframes - B帧的数量,例如: bframes=0
  • logo - 添加logo。
  • crop - 视频裁剪。只有在使用硬件编码时才生效: hw=nvenc. 使用示例: crop = x: y: width: height, 其中x: y 是相对于左上角的坐标, width 和 height 是转码后的流的尺寸。

  • vcodec - 视频编码格式(codec)。可以被设置为hevc 或 mp2v 或h264。默认是h264。在hw=qsv时,设置为hevc是不生效的。使用硬件编码时,设置为mp2v是不生效的。

  • hw - 启用硬件编码。
  • 任何ffmpeg针对视频编码的所有参数都是有效的。例如在ffmpeg中的 -profile:v high -level 4.1,在Flussonic的配置中是这样的: profile=high level=4.1.

2、关于音频(audio)部分的编码参数

  • ab - 音频码率。只能设置一个,即使有多个音频轨道,必须以k结尾。例如: ab=128k。
  • ar - 采样率。例如: ar=44100。
  • acodec - 音频编码。有效的指包括AAC, ac3, mp2a. 默认所有的音频轨道都采用AAC编码。

注意: 实时转码支持的输入流协议包括RTMP, RTSP, MPEG-TS (HTTP 和 UDP)

对HLS输入流的转码是部分支持,有些流可能会转码失败,因此每一个都需要经过详细测试。


在转码时,在视频上添加logo? 请看下面的例子:

stream ort {
  url  udp://239.0.0.1:5000;
  transcoder vb=2048k preset=fast logo=/path/to/file.png@10:10 ab=128k;
}	
	

10:10 是相对于视频左上角的坐标。如果要把logo放在其它位置,可以采用一些更复杂的公式,下面是将logo放在居中的位置的例子:

stream ort {
  url  udp://239.0.0.1:5000;
  transcoder vb=2048k preset=fast logo=/path/to/file.png@(main_w-overlay_w-10)/2:(main_h-overlay_h-10)/2 ab=128k;
}
	

下面是把logo放在视频左下角的例子:

stream ort {
  url  udp://239.0.0.1:5000;
  transcoder vb=2048k preset=fast logo=/path/to/file.png@10:(main_h-overlay_h-10) ab=128k;
}	
	

匿名用户
评论

我们的地址


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


邮编:100024

关于我们


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


官网:www.ttstream.com

联系我们


王经理:phone


柳经理:phone

京ICP备14033868号-2