使用 youtube-dl 和 ffmpeg 将 youtube 直播流编码为 UDP 输出

Encode youtube live stream to UDP out using youtube-dl and ffmpeg

我正在尝试通过以下命令使用 youtube-dl 和 ffmpeg 将 youtube 直播流 编码到 UDP 目标

youtube-dl -f best --buffer-size 2M -o - "https://www.youtube.com/watch?v=tkUvWJiTf9A" | ffmpeg -re -f mp4 -i pipe:0 -codec copy -f mpegts udp://192.168.1.107:1234?pkt_size=1316

但它不起作用,它只是下载该直播流的 ts 片段。
当我尝试使用 youtube 视频时,它可以正常使用以下命令

youtube-dl -f best --buffer-size 2M -o - "https://www.youtube.com/watch?v=snDI6AaL04g" | ffmpeg -re -f mp4 -i pipe:0 -codec copy -f mpegts udp://192.168.1.107:1234?pkt_size=1316

感谢任何帮助或建议。

我已经使用带有 ffmpeg 的 Streamlink 使用以下命令解决了这个问题。共享以便任何需要的人都可以参考。

streamlink --hls-segment-threads 10 --ringbuffer-size 10M https://www.youtube.com/watch?v=NMre6IAAAiU 140p,worst --stdout | ffmpeg -i pipe:0 -codec copy -bsf:v h264_mp4toannexb -f mpegts udp://192.168.2.7:1234?pkt_size=1316