Bash 使用mkfifo和传输流,这可能吗?
我想执行一个bash脚本,该脚本将执行以下操作: 应用程序“ffmpeg”生成实时传输流(.ts)文件。我需要在这个实时的streaam上工作(执行解复用等) 现在我知道这必须通过FIFO来完成;但这是我的任务 我需要重定向ffmpeg的输出以写入fifo,然后另一个应用程序将处理该fifo内容。这种情况持续实时发生,直到我按下Ctrl+C 这可能吗? 我要在两个终点站做这个吗 我基本上是在为上述操作(以及更多操作)编写bash脚本,那么我是否必须调用两个终端,或者可能是fork 请告知 提前谢谢 FFmpeg确实支持管道。 您所要做的一切都是按如下方式进行的:Bash 使用mkfifo和传输流,这可能吗?,bash,ffmpeg,stream,named-pipes,transport,Bash,Ffmpeg,Stream,Named Pipes,Transport,我想执行一个bash脚本,该脚本将执行以下操作: 应用程序“ffmpeg”生成实时传输流(.ts)文件。我需要在这个实时的streaam上工作(执行解复用等) 现在我知道这必须通过FIFO来完成;但这是我的任务 我需要重定向ffmpeg的输出以写入fifo,然后另一个应用程序将处理该fifo内容。这种情况持续实时发生,直到我按下Ctrl+C 这可能吗? 我要在两个终点站做这个吗 我基本上是在为上述操作(以及更多操作)编写bash脚本,那么我是否必须调用两个终端,或者可能是fork 请告知 提前谢
mkfifo first.ts
ffmpeg -i sample.ts -c copy -muxrate 5000000 pipe:1 > first.ts
tscbrmuxer b:3008 NIT.ts b:5000000 first.ts > second.ts
kill tscbrmuxer
或如果您没有在后台运行最后一个工具,只需使用[ctrl+c]将其杀死即可
我希望这会对您有所帮助。什么不只是使用管道?ffmpeg不支持管道;至少没有命名管道。另外,我必须同时将三个ffmpeg实例运行到三个不同的管道,然后将这三个管道作为第四个ffmpeg实例的输入,该实例将它们组合在一起。ffmpeg绝对支持管道。