使用 vlc 串流 DV 摄像机

来自 Alpine Linux
此材料正在制作中...

在此通知移除之前,请勿遵循此处的说明。
(最后编辑者:Sertonix,于 2023 年 11 月 17 日。)

在本教程中,我们将要串流来自通过 ie1394 (火线) 连接的 DV 摄像机的视频。
vlc 用于串流内容。
我们将使用 h264 和 AAC 来转码流(应该很容易更改为适合您需求的任何格式)

设置 Alpine

初始设置

按照Installing_Alpine 设置 Alpine Linux。

安装程序

apk add vlc-daemon vlc-dev

注意: 如果您打算将桌面环境与 vlc 一起使用,您将需要安装 vlc-qt 以使其工作。
vlc-devvlc 软件包不包含 vlc 的图形部分(菜单等)
Todo: 我还没有弄清楚为什么需要 vlc-dev。手动添加所有 vlc-dev 依赖项不起作用。
“require vlc-dev”的问题已在 #1051 中报告,可能很快就会解决(或者真的需要 'vlc-dev' 作为依赖项)


使用 ACF 控制 vlc

提示: 通过 ACF 控制 vlc-daemon 的一种简单方法。考虑遵循这些简单的步骤。
但由于它是可选的,您可以跳过此 ACF 部分。

设置/安装 acf(除非尚未完成)

setup-acf

为 vlc 安装 acf 软件包

apk add acf-vlc-daemon

在本教程中,我们不会描述如何使用 ACF 来控制 vlc-daemon(基本上是因为它太简单了,不需要任何描述)
如果您安装了 ACF,只需浏览 https://ip.of.your.box,您将从本教程中了解该怎么做。

配置 vlc

配置通过修改 '/etc/conf.d/vlc' 完成。
这是使 vlc 串流 DV 摄像机的实际配置。

###############
BITRATE=500
XRES=720
YRES=576

###############
# Chose one of the following 'preset' values depending on how fast your CPU is:
#   ultrafast,superfast,veryfast,faster,fast,medium,slow,slower,veryslow,placebo
TVIDEO="venc=x264{preset=ultrafast,vbv-maxrate=${BITRATE},vbv-bufsize=256,keyint=250,min-keyint=25},vcodec=h264,vb=${BITRATE},scale=1,width=${XRES},height=${YRES}"
TAUDIO="acodec=mp4a,ab=96,channels=2,samplerate=44100"
TMISC="deinterlace,audio-sync"

###############
TRANSPORT="std{access=http,mux=ts,dst=:8080}"

VLC_OPTS="--daemon -I dummy dv:///dev/fw0 --rawdv-hurry-up --sout-keep --sout-transcode-audio-sync \
--file-logging --logfile /var/log/vlc/vlc.log \
--sout #transcode{$TVIDEO,$TAUDIO,$TMISC}:$TRANSPORT"

启动它

准备硬件

这是本教程中最难的部分... 将 DV 摄像机连接到您的 ie1394/火线端口。
好吧... 这并不太难! :-)

手动启动

从终端启动 vlc-daemon

rc-service vlc start

或使用 ACF 并单击 [启动]。

使其在下次重启时启动

您可能希望使其在下次重启时自动启动

rc-update add vlc-daemon default

调试

如果出现问题,请考虑查看日志文件。

less -I /var/log/vlc/vlc.log

如果您没有找到任何有用的信息,您可以将 '-v' 或 '-vv' 添加到 /etc/conf.d/vlc 并重启 vlc 来增加详细程度(您需要重启 vlc-daemon 才能在日志中看到更多信息)