4.4. 流输出

4.4.1. 流输出的描述

VLC 的流输出允许 VLC 用作流媒体服务器而不是客户端!它具有非常强大的功能

要了解 VLC 流输出的全部可能性,请参阅流媒体功能页面

4.4.2. 架构和语法

流输出具有强大的架构,它使用模块。每个模块都有功能,您可以链接模块以增强可能性。

以下是当前可用模块的列表

这些模块中的每一个都可以接受选项。以下是您必须使用的语法

% vlc input_stream --sout '#module1{option1=...,option2=...}:#module2{option1=...,option2=...}:...'

例如,要转码并发送流,请使用

% vlc input_stream --sout '#transcode{options}:#standard{options}'

4.4.3. 模块描述

4.4.3.1. standard(别名 std)

发送流。

选项

  • access:如何发送:fileudprtphttp

  • mux:将使用哪个复用器(即哪种格式)。它可以是 avi(对于 AVI 格式)、ogg(对于 OGG 格式)、ps(对于 MPEG2-PS 格式)、ts(对于 MPEG2-TS 格式)之一。

  • url:如果您使用 file 访问,它将是存储流的位置;如果您使用其他访问方式,它将是您想要流式传输的单播或多播 IP 地址。

  • sap:如果您使用 udprtp 访问,请使用此选项以使用 SAP/SDP 公布您的流。此选项包含您要宣布程序的名称。

  • slp:与 sap 类似,但使用 SLP 协议。您的系统上需要安装 libslp。

  • sap_ipv:如果您使用 sap 选项,请使用此选项指定您是否要以 IPv4 或 IPv6 发送 SAP 公告。此选项的值为 46。如果您使用 sap,请使用此选项来指定您是否希望以 IPv4(默认)或 IPv6 发送 SAP 公告。要使用的值是 46

Note

如果您正在以多播方式进行流式传输,您可能需要使用全局选项 --ttl 12 将 TTL 设置为大于 1 的值。

4.4.3.2. display(显示)

显示流。

选项

  • noaudio:忽略音频。

  • novideo:忽略视频。

4.4.3.3. duplicate(复制)

将流复制到新的流输出链。

选项

  • dst:一个新的流输出模块链,如前所述。

4.4.3.4. transcode(转码)

更改流的编解码器和/或比特率。

选项

  • acodec:新的音频编解码器。它可以是 mpga(MPEG 音频层 2)、a52ac3(AC3 音频)或 vorb(Vorbis)之一

  • ab:音频比特率,单位为 Kbps。

  • vcodec:新的视频编解码器。它可以是 mp4v (MPEG4)、mpgv (MPEG1)、DIV1DIV2DIV3 (DivX 1,2,3)、H263 (H263)、I263 (H263I)、WMV1WMV2 (Windows Media Video 1 或 2)、MJPG (MJPEG)、MJPB (MJPEGB) 之一。

  • width:视频宽度。

  • height:视频高度。

  • vb:视频比特率,单位为 kbps。

  • vt:视频比特率容差,单位为 bps。

  • deinterlace:对流进行去隔行处理。

  • croptop:从视频顶部移除的像素数。

  • cropbottom:从视频底部移除的像素数。

  • cropleft:从视频左侧移除的像素数。

  • cropright:从视频右侧移除的像素数。

  • hq:高质量转码(占用更多 CPU)。

  • qmin:最小视频量化器比例 (VBR)

  • qmax:最大视频量化器比例 (VBR)。

4.4.3.5. es(基本码流)

创建单独的基本码流。

选项

  • access_audio:如何发送音轨:fileudprtphttp

  • access_video:如何发送视频轨道:fileudprtphttp

  • access:如果您希望音频和视频轨道使用相同的访问方式,请使用此选项代替上述两个选项。

  • mux_audio:将用于音轨的复用器(即哪种格式)。它可以是 avi(对于 AVI 格式)、ogg(对于 OGG 格式)、ps(对于 MPEG2-PS 格式)、ts(对于 MPEG2-TS 格式)之一。

  • mux_video:将用于视频轨道的复用器(即哪种格式)。它可以是 avi(对于 AVI 格式)、ogg(对于 OGG 格式)、ps(对于 MPEG2-PS 格式)、ts(对于 MPEG2-TS 格式)之一。

  • mux:如果您希望音频和视频轨道使用相同的复用器,请使用此选项代替上述两个选项。

  • url_audio:如果您使用 file 访问,它将是存储音轨的位置;如果您使用其他访问方式,它将是您想要流式传输的单播或多播 IP 地址。

  • url_video:如果您使用 file 访问,它将是存储视频轨道的位置;如果您使用其他访问方式,它将是您想要流式传输的单播或多播 IP 地址。

  • url:如果您希望音频和视频轨道使用相同的 url,请使用此选项代替上述两个选项。

Note

url 选项中,如果您使用 file 访问,则可以在文件名中使用以下宏

  • %n = 流编号;

  • %c = FOURCC;

  • %m = 复用器;

  • %a = 访问。

4.4.3.6. Miscellaneous(杂项)

以下是一些其他全局选项

  • --no-sout-audio 禁用音频流输出。

  • --no-sout-video 禁用视频流输出。

流输出还提供简化的语法,您只能使用 standard 模块的主要选项

% vlc input_stream --sout access/mux:url

其中 accessmuxurl 与 standard 模块的选项中的定义相同。

4.4.4. 示例

要完全理解 VLC 流输出的复杂语法,请查看 VideoLAN HOWTO 的用例。