ffmpeg 对多个输出使用相同的复杂过滤器

标签 ffmpeg youtube

您好,我正在尝试使用 ffmpeg 将内容直播到 youtube 以及输出 mp4。问题是我有一个复杂的过滤器,不知道如何将它应用于两个输出。

这是代码

ffmpeg -re -i "https://mnmedias.api.telequebec.tv/m3u8/29880.m3u8" -i ./public/images/ACE.png -i ./public/images/logo2.jpg -filter_complex "[1]scale=40:40[ovrl1], [v0][ovrl1] overlay=580:10:enable='between(t,1,5)'[v1];[2]scale=40:40[ovrl2], [v1][ovrl2] overlay=580:10:enable='between(t,5,15)'[v2];[v2] drawtext=fontfile=fontfile=/System/Library/Fonts/Keyboard.ttf: \text='VideoGami':fontcolor=white: fontsize=24: x=(w-text_w)/2: y=(h-text_h)/1.05: enable='between(t,1,10)'" -acodec aac -vcodec libx264 -f flv "rtmp://a.rtmp.youtube.com/live2/moo" -acodec aac -vcodec libx264 trial.mp4

最佳答案

使用 tee muxer .未经测试的例子:

ffmpeg -re -i "https://mnmedias.api.telequebec.tv/m3u8/29880.m3u8" -i ./public/images/ACE.png -i ./public/images/logo2.jpg -filter_complex "[1]scale=40:40[ovrl1], [0:v:6][ovrl1] overlay=580:10:enable='between(t,1,5)'[v1];[2]scale=40:40[ovrl2], [v1][ovrl2] overlay=580:10:enable='between(t,5,15)',drawtext=fontfile=fontfile=/System/Library/Fonts/Keyboard.ttf: \text='VideoGami':fontcolor=white: fontsize=24: x=(w-text_w)/2: y=(h-text_h)/1.05: enable='between(t,1,10)'[v]" -map "[v]" -map 0:a:6 -c:v libx264 -c:a aac -f tee "[f=flv]rtmp://a.rtmp.youtube.com/live2/moo|trial.mp4"

关于ffmpeg 对多个输出使用相同的复杂过滤器,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/48195868/

相关文章:

ffmpeg - 通过 ffmpeg 更快地将视频转换为 webm

audio - 无法让 JACK 音频/网络插孔通过 LAN 工作

ffmpeg - 将 rtmp 流切换为单个编码输出?

macos - FFmpeg 错误 "No such filter: ' libvmaf' Mac

javascript - 将YouTube视频嵌入到iframe中

javascript - 如何使用javascript/node.js从流行语中获取Youtube视频URL

actionscript-3 - 从 ActionScript 3.0 中的 YouTube API 获取播放视频的 "Time Elapsed"

node.js - 仅在 readFile() Node js Electron 之后杀死子进程

javascript - 保留纵横比的响应式 iframe

php - 从 youtube video 获取视频源