Ffmpeg 捕获原始视频字节流以进行实时转码

Ffmpeg 捕获原始视频字节流以进行实时转码,ffmpeg,video-streaming,gstreamer,squid,Ffmpeg,Video Streaming,Gstreamer,Squid,我希望实现以下目标: 设置一个代理服务器来处理来自远程视频服务器(如YouTube、Vimeo等)的客户端的视频请求(目前,所有来自Android视频客户端的视频请求)。我无法访问所请求的视频文件,因此需要一个代理服务器。我已经决定吃鱿鱼了。此代理应在将视频信号/流中继回请求客户端之前,处理从远程服务器传递的视频信号/流 为了实现上述目标,我会 1.需要找出所请求的视频资源的精确位置(URL),快速下载,并根据需要进行修改,然后在转码过程中(同时,有一定的延迟)以HTTP流式传输方式将其返回到客

我希望实现以下目标:

设置一个代理服务器来处理来自远程视频服务器(如YouTube、Vimeo等)的客户端的视频请求(目前,所有来自Android视频客户端的视频请求)。我无法访问所请求的视频文件,因此需要一个代理服务器。我已经决定吃鱿鱼了。此代理应在将视频信号/流中继回请求客户端之前,处理从远程服务器传递的视频信号/流

为了实现上述目标,我会

1.需要找出所请求的视频资源的精确位置(URL),快速下载,并根据需要进行修改,然后在转码过程中(同时,有一定的延迟)以HTTP流式传输方式将其返回到客户端 2.访问原始字节流,通过管道将其传输到转码器(我想是ffmpeg),然后继续传输到客户端(也有一些预期的延迟)。 选项#2似乎很棘手,但它为我希望执行的代码转换提供了更大的灵活性。我必须实际处理原始数据/数据包,但我不知道ffmpeg是否接受这样的输入

简言之,我正在寻找一种解决方案,以实现实时转码的视频,我没有直接访问我的代理。对我可以使用的工具或方法有什么建议吗?我也读过关于Gstreamer(但不知道它是否适用于我的情况)和MPlayer/MEncoder

最后,还有一个相当具体的问题:有没有任何工具可以在给定YouTube视频URL的情况下下载字节流进行进一步处理?也就是说,类似于Chrome YouTube下载程序,但可以与服务器端脚本集成


谢谢你的指点/建议

你应该问单个编码问题。你问的更像是一个一般性的“a如何编写我的应用程序”。不过有几点意见:

  • squid是http代理,视频使用通常通过rtsp等传输
  • 是的,有一些工具可以从youtube url获取rtsp url,但在这样做之前,请确保了解视频服务的使用条款
  • gstreamer有一个gst rtsp服务器模块,其中包含一个rtsp服务器,该服务器也可以用作给定rtsp流的代理