我正在寻找一种方法,可以将5秒的视频片段从摄像机发送到用户站。我有一个工作设置,将带有ffmpeg的mp4文件发送到nginx(与rtmp-DASH模块一起编译),并使用MPEG-DASH参考Java脚本在客户端用户站上检索了它。我可以反复播放约2.5分钟,然后消失,必须将其重新加载到服务器上。
我怀疑'dash_playlist_length'指令与此有关,但似乎没有任何作用。该文档说:
DateTimeFormatter formatter = new DateTimeFormatterBuilder()
.appendValue(ChronoField.YEAR_OF_ERA, 4, 19, SignStyle.EXCEEDS_PAD)
.appendLiteral("-")
.appendText(ChronoField.MONTH_OF_YEAR, TextStyle.SHORT)
.appendLiteral("-")
.appendValue(ChronoField.DAY_OF_MONTH, 2)
.appendLiteral(" ")
.appendValue(ChronoField.CLOCK_HOUR_OF_AMPM, 2)
.appendLiteral(":")
.appendValue(ChronoField.MINUTE_OF_HOUR, 2)
.appendLiteral(":")
.appendValue(ChronoField.SECOND_OF_MINUTE, 2)
.appendLiteral(" ")
.appendText(ChronoField.AMPM_OF_DAY, TextStyle.SHORT)
.toFormatter();
LocalDateTime localDateTime = LocalDateTime.now();
System.out.println(formatter.format(localDateTime));
但是我空手而归,试图找到MPEG-DASH播放列表的长度。搜索引擎没有发现任何有用的东西。这里有人知道吗?
答案 0 :(得分:0)
它定义了实时流的实时/ DVR窗口应该持续多长时间,或者用DASH术语称为timeShiftBufferDepth
。
因此,如果您将其设置为例如60秒,然后流持续2个小时或更长的时间,那么DASH清单中仍将仅提供流的最后(即最近)60秒。因此,基本上,它限制了观看时允许客户端从流的实时边缘返回的距离。