在编写时将 .mov 流式传输到浏览器
streaming a .mov to the browser as it's being written
我正在使用 headless and selenium-webdriver gems 制作视频:
# require gems
require 'headless'
require 'selenium-webdriver'
# start headless
headless = Headless.new
headless.start
headless.video.start_capture
# use selenium
driver = Selenium::WebDriver.for(:firefox)
driver.navigate.to("http://google.com")
puts driver.title
# exit headless and save video
headless.video.stop_and_save("test.mov")
headless.destroy
这会生成一个 test.mov
视频。
在此示例中,我有一个最终确定的 .mov
文件,如果我愿意,我可以将其推送到浏览器。
但我希望有一种方法可以在创建时进行流式传输。
如果有帮助,headless
接受 ffmpeg
的配置参数。
mov无法直播。它需要将帧索引 (moov) 写入文件。直到每一帧都处理完才能建立索引。 mov 可以在完全写入后进行伪流式传输。对于流媒体格式,您必须使用分段的 mp4(如破折号)或 webrtc 等协议。
我正在使用 headless and selenium-webdriver gems 制作视频:
# require gems
require 'headless'
require 'selenium-webdriver'
# start headless
headless = Headless.new
headless.start
headless.video.start_capture
# use selenium
driver = Selenium::WebDriver.for(:firefox)
driver.navigate.to("http://google.com")
puts driver.title
# exit headless and save video
headless.video.stop_and_save("test.mov")
headless.destroy
这会生成一个 test.mov
视频。
在此示例中,我有一个最终确定的 .mov
文件,如果我愿意,我可以将其推送到浏览器。
但我希望有一种方法可以在创建时进行流式传输。
如果有帮助,headless
接受 ffmpeg
的配置参数。
mov无法直播。它需要将帧索引 (moov) 写入文件。直到每一帧都处理完才能建立索引。 mov 可以在完全写入后进行伪流式传输。对于流媒体格式,您必须使用分段的 mp4(如破折号)或 webrtc 等协议。