环境

系统版本:DSM 7.0.1-42218

Video Station: 3.0.1-2067

操作流程

安装ffmpeg(社区版)

在Package Center(套件中心)中,添加安装源。内容如下

Name(名称):synocommunity

Location(位置): http://packages.synocommunity.com
在套件中心搜索ffmpeg,此时应该可以看到社区源内的ffmpeg。点击安装即可。

''如果网速质量差,需多次重试或通过github.com开源社区下载安装套件''

解除限制

  1. 在Control Panel(控制面板)中打开22端口以便于连接进行SSH。(需要配置Terminal & SNMP和 Security -> Firewall)
  2. 使用SSH登录群晖服务器
  3. 执行如下shell命令
    # 处理Video Station
    cd /var/packages/VideoStation/target/bin
    
    # 备份原始文件
    sudo mv ffmpeg ffmpeg.orig
    sudo mv ffprobe ffprobe.orig
    sudo mv vainfo vainfo.orig
    
    # 应用开源社区提供的ffmpeg
    sudo cp -a /var/packages/ffmpeg/target/bin/ffmpeg /var/packages/VideoStation/target/bin/
    sudo cp -a /var/packages/ffmpeg/target/bin/ffprobe /var/packages/VideoStation/target/bin/
    sudo cp -a /var/packages/ffmpeg/target/bin/vainfo /var/packages/VideoStation/target/bin/
    
    # 更新权限
    sudo chown root:VideoStation /var/packages/VideoStation/target/bin/ffmpeg
    sudo chmod 750 /var/packages/VideoStation/target/bin/ffmpeg
    sudo chmod u+s /var/packages/VideoStation/target/bin/ffmpeg
    sudo chown VideoStation:VideoStation /var/packages/VideoStation/target/bin/ffprobe
    sudo chown VideoStation:VideoStation /var/packages/VideoStation/target/bin/vainfo
    
    # 备份原始文件
    sudo cp -an /var/packages/VideoStation/target/lib/libsynovte.so /var/packages/VideoStation/target/lib/libsynovte.so.orig
    
    # 解除eac3、dst、truehd的版权限制
    sudo sed -i -e 's/eac3/3cae/' -e 's/dts/std/' -e 's/truehd/dheurt/' /var/packages/VideoStation/target/lib/libsynovte.so
    
    # 解除非Video Station下播放的限制
    # 全局应用开源社区提供的ffmpeg
    sudo mv -n /var/packages/CodecPack/target/bin/ffmpeg41 /var/packages/CodecPack/target/bin/ffmpeg41.orig
    sudo cp -an /var/packages/VideoStation/target/bin/ffmpeg /var/packages/CodecPack/target/bin/ffmpeg41
    sudo chown root:root /var/packages/CodecPack/target/bin/ffmpeg41
    sudo chmod 755 /var/packages/CodecPack/target/bin/ffmpeg41
  4. 重启video station应用
  5. done

其他

Video Station的实现

ffmpeg调用部分: [图片:无|有框] 通过以上数据,可以分析出群晖是通过ffmpeg指定视频输出质量、音频通道、字幕通道等等。播放是依赖于hls。