#!/bin/bash #配置H.264功能 kvmd-ffmpeg-h-264(){ echo "正在配置H.264功能..." cd $CURRENTWD apt install -y ffmpeg #写入ffmpeg转码推流文件和janus streaming配置文件 cp -r /etc/kvmd/janus /etc/kvmd/janus2 rm /etc/kvmd/janus2/janus.plugin.ustreamer.jcfg cat > /etc/kvmd/janus2/janus.plugin.streaming.jcfg << EOF kvmd-ffmpeg: { type = "rtp" id = 1 description = "H.264 live stream coming from ustreamer" audio = false video = true videoport = 5004 videopt = 96 videocodec = "h264" videofmtp = "profile-level-id=42e01f;packetization-mode=1" videortpmap = "H264/90000" } EOF cat > /lib/systemd/system/kvmd-ffmpeg.service << EOF [Unit] Description=PiKVM - Transcode (Static Config) After=network.target network-online.target nss-lookup.target kvmd.service [Service] User=kvmd Group=kvmd Type=simple Restart=on-failure RestartSec=3 AmbientCapabilities=CAP_NET_RAW LimitNOFILE=65536 UMask=0117 ExecStart=/usr/share/kvmd/stream_when_ustream_exists.sh TimeoutStopSec=10 KillMode=mixed [Install] WantedBy=multi-user.target EOF #修改原有kvmd代码和配置文件 sed -i '17s/.*/ExecStart=\/usr\/bin\/janus --disable-colors --configs-folder=\/etc\/kvmd\/janus2/' /lib/systemd/system/kvmd-janus-static.service sed -i 's/janus.plugin.ustreamer/janus.plugin.streaming/' /usr/share/kvmd/web/share/js/kvm/stream_janus.js sed -i '293c \/\/' /usr/share/kvmd/web/share/js/kvm/stream_janus.js sed -i 's/request\": \"watch\", \"p/request\": \"watch\", \"id\" : 1, \"p/' /usr/share/kvmd/web/share/js/kvm/stream_janus.js #补全网页JS文件并添加相应脚本 mkdir /usr/share/janus/javascript/ && cp -f ./web/adapter.js /usr/share/janus/javascript/ && cp -f ./web/janus.js /usr/share/janus/javascript/ cp -f ./patch/stream.sh /usr/share/kvmd/ && cp -f ./patch/stream_when_ustream_exists.sh /usr/share/kvmd/ && chmod +x /usr/share/kvmd/stream.sh /usr/share/kvmd/stream_when_ustream_exists.sh #启动服务 systemctl enable kvmd-ffmpeg && systemctl enable kvmd-janus-static systemctl start kvmd-ffmpeg && systemctl start kvmd-janus-static } kvmd-ffmpeg-h-264