【发布时间】:2017-11-27 12:15:01
【问题描述】:
我需要同时流式传输/广播(通过 rtmp)并从我的 USB 网络摄像头保存视频(带音频)。网络摄像头是罗技 c920,具有硬件 h.264 编码器。
我不想重新编码媒体,所以我使用-c:v copy 选项。
整个脚本如下所示:
#! /bin/bash
SOURCEV="/dev/video0"
SOURCEA="hw:1"
FILE_TO_SAVE="Archive/file_to_save.mp4"
YOUTUBE_URL="rtmp://x.rtmp.youtube.com/live2"
KEY="my-secret-key"
avconv -f alsa -ac 2 -r 44100 -i $SOURCEA \
-s 1920x1080 -r 24 -c:v h264 -i "$SOURCEV" \
-ar "44100" -r:v 24 -c:a aac -c:v copy -s 1920x1080 -f mp4 "$FILE_TO_SAVE" \
-g $FPS*4 -ar "44100" -b:a "128k" -ac 2 -r 24 -c:a aac -c:v copy -s 1920x1080 -f flv "$YOUTUBE_URL/$KEY"
这种方法“有效” - 这意味着它可以流式传输内容并将其保存到磁盘,但这种方法的问题是文件视频依赖于流。例如,如果 Internet 连接太慢,则保存的文件的 FPS 会很低。如果 Internet 连接中断,则视频文件的“录制”将停止。
谁能帮我让这两个流独立?
所有事情都发生在 raspberrypi 3 上,因此计算能力非常有限。
【问题讨论】:
标签: output libav simultaneous avconv