16.11 http
HTTP(超文本传输协议)。
该协议接受以下选项:
seekable
控制连接的可寻找性。如果设置为1,则资源应该是可搜索的,如果设置为0,则认为不可搜索,如果设置为-1,如果它是可搜索的,它将尝试自动检测。默认值为-1。
chunked_post
如果设置为1,则对帖子使用chunked Transfer-Encoding,默认值为1。
content_type
为POST消息或侦听模式设置特定内容类型。
HTTP_PROXY
设置HTTP代理以通过例如管道传输http://example.com:1234
headers
设置自定义HTTP标头,可以覆盖内置的默认标头。该值必须是编码标头的字符串。
multiple_requests
如果设置为1,则使用持久连接,默认值为0。
post_data
设置自定义HTTP发布数据。
referer
设置Referer标头。在HTTP请求中包含Referer:URL标头。
user_agent
覆盖User-Agent标头。如果未指定,协议将使用描述libavformat构建的字符串。 (Lavf / <version>”`)
user-agent
这是一个已弃用的选项,您可以使用user_agent代替它。
timeout
设置基础低级操作使用的套接字I/O操作的超时(以微秒为单位)。默认情况下,它设置为-1,这意味着未指定超时。
reconnect_at_eof
如果设置,则将eof视为错误并导致重新连接,这对于实时/无限流非常有用。
reconnect_streamed
如果设置,则甚至流式/非可搜索流将在错误时重新连接。
reconnect_delay_max
设置放弃重新连接的最大延迟(以秒为单位)
MIME_TYPE
导出MIME类型。
http_version
导出HTTP响应版本号。通常为1.0或1.1。
icy
如果设置为1,则从服务器请求ICY(SHOUTcast)元数据。如果服务器支持此功能,则应用程序必须通过读取icy_metadata_headers和icy_metadata_packet选项来检索元数据。默认值为1。
icy_metadata_headers
如果服务器支持ICY元数据,则它包含ICY特定的HTTP回复标头,由换行符分隔。
icy_metadata_packet
如果服务器支持ICY元数据,并且icy设置为1,则它包含服务器发送的最后一个非空元数据包。应该对对流中间元数据更新感兴趣的应用程序定期轮询它。
cookies
设置将在以后的请求中发送的cookie。每个cookie的格式与Set-Cookie HTTP响应字段的值相同。多个cookie可以由换行符分隔。
offset
设置初始字节偏移量。
end_offset
尝试将请求限制为此偏移量之前的字节。
method
当用作客户端选项时,它为请求设置HTTP方法。
当用作服务器选项时,它设置将从客户端预期的HTTP方法。如果预期和接收的HTTP方法不匹配,则客户端将收到错误请求响应。取消设置时,不会立即检查HTTP方法。这将在未来被自动检测取代。
listen
如果设置为1则启用实验性HTTP服务器。这可用于在用作输出选项时发送数据,或在用作输入选项时使用HTTP POST从客户端读取数据。如果设置为2,则启用实验性多客户端HTTP服务器。这在ffmpeg.c中尚未实现,因此不能用作命令行选项。
# Server side (sending):
ffmpeg -i somefile.ogg -c copy -listen 1 -f ogg http://server:port
# Client side (receiving):
ffmpeg -i http://server:port -c copy somefile.ogg
# Client can also be done with wget:
wget http://server:port -O somefile.ogg
# Server side (receiving):
ffmpeg -listen 1 -i http://server:port -c copy somefile.ogg
# Client side (sending):
ffmpeg -i somefile.ogg -chunked_post 0 -c copy -f ogg http://server:port
# Client can also be done with wget:
wget --post-file=somefile.ogg http://server:port
本文深入解析HTTP协议的关键选项,如控制连接可寻找性、使用chunkedTransfer-Encoding及自定义HTTP标头等。同时,详细介绍了如何利用ffmpeg工具进行HTTP流的发送与接收,包括实验性HTTP服务器的配置与使用。
2116

被折叠的 条评论
为什么被折叠?



