我已经知道ffmpeg能够从unix socket接收输入:
ffmpeg -i unix://path-to-socket ...
字符串
问题是,一旦在我的服务器代码中将套接字类型改为SOCK_DGRAM
而不是SOCK_STREAM
,ffmpeg就无法接收数据,并打印错误:
unix://path-to-socket: Protocol wrong type for socket
型
查看ffmpeg网站上的套接字文档,可以应用以下选项:
*timeout:超时,毫秒
*listen:以监听模式创建Unix套接字。
这与声明套接字类型无关。
将unix套接字配置为SOCK_DGRAM
是否可能?
1条答案
按热度按时间axr492tv1#
文档不完整。在
ffmpeg/libavformat/unix.c
中,字符串
它处理
stream=1
、datagram=1
、seqpacket=1
或type=#
,其中#
是所需套接字类型的整数值(SOCK_STREAM=1
、SOCK_DGRAM=2
、SOCK_SEQPACKET=5
)。