chatop2020 / StreamNode-GB28181

本项目是基于ZLMediaKit的流媒体控制管理接口平台,支持RTSP,GB28181的设备拉流与推流控制,GB28181支持PTZ控制。
152 stars 62 forks source link

可能有点莫名其妙的需求 #17

Closed funthing closed 3 years ago

funthing commented 3 years ago

需求:将MediaServer直接作为项目的一部分,发布时直接赋值到输出目录

实现步骤:

1、将MediaServer文件夹放到StreamMediaServerKeeper项目文件夹中,然后修改StreamMediaServerKeeper.csproj,新增代码:

    <ItemGroup>
      <None Include="MediaServer\**" 
        CopyToOutputDirectory="PreserveNewest"
         />
    </ItemGroup>

作用:生成或发布时,如果MediaServer文件夹中的内容有修改,则复制到输出目录。

2、修改StreamMediaServerKeeper项目中的Config.conf,将MediaServerBinPath更改为包含\~符号的相对目录,\~代表StreamMediaServerKeeper可执行程序的目录。

3、修改StreamMediaServerKeeper\Common.cs,将MediaServerBinPath 赋值语句修改为MediaServerBinPath = tmpArr[1].Trim().TrimEnd(';').Replace("~", AppDomain.CurrentDomain.BaseDirectory); 即如果检测到配置文件目录中包含\~符号,则视为可执行程序所在目录。

这样后续发布到新的服务器可以直接将StreamMediaServerKeeper生成的文件夹复制过去,不需要重新配置MediaServer目录。

funthing commented 3 years ago

有需要的可以参考下,

chatop2020 commented 3 years ago

晚些空的时候,我会重新整理一下说明,打算建设一下wiki栏目