如何将时间序列数据转换为实时流式视频

时间:2017-04-07 14:27:07

标签: graph video-streaming

有一个事件正在进行..持续2个小时,每秒都会创建新的系列数据。如何获取此数据(x = [],y = []),转换为图形然后将其转换为视频直播流然后查看? 这甚至可能吗?

1 个答案:

答案 0 :(得分:0)

我从未这样做,但似乎有可能。

首先,使用http://www.gnuplot.info创建包含图表的PNG。

  

Gnuplot是一个可移植的命令行驱动的图形工具,适用于Linux,OS / 2,MS Windows,OSX,VMS和许多其他平台。 [...]它最初是为了让科学家和学生能够以交互方式可视化数学函数和数据而创建的,但它已经发展到支持许多非交互式用途,例如Web脚本。

您可以创建一个脚本,定期使用新数据更新PNG。

还有一个node.js模块与gnuplot连接。 https://www.npmjs.com/package/plotframes

然后,您可以使用FFmpeg一次又一次地创建循环图像的HLS流。

ffmpeg -loop 1 -r 30000/1001 -i graph_960x540.png -an -s 960x540 -r 30000/1001 -c:v libx264 -crf 10 -maxrate 900k -b:v 900k -profile:v baseline -bufsize 1800k -pix_fmt yuv420p -hls_time 2 -hls_list_size 0 -hls_segment_filename 'png2hls/file%03d.ts' png2hls/index.m3u8

但是,是否需要显示图表的视频流?为什么不在生成新图表时显示图像并使用JavaScript更新图像?

干杯。