@leaveye
2021-11-15T09:08:25.000000Z
字数 3206
阅读 299
约定
规则
视频
点播
服务
下面以实例说明:
2021年8月31日 23:54:48 建立会议
会议编号 91929394
在 23:56:30 时,开始存储参会终端 04030201
的 H.264 视频
- 名称为
HelloWorld
。长度限制 128 ASCII 字符。UTF-8 编码。- 指令需求终端的媒体输入,即转发/合成输出。
- H.264 视频后缀使用
.264
分片时长 2 分钟
具体时长 参考时长。以 IDR 分割规避重编码。
一共存了 5 个片段
片段名 %H%M%S
.../ # 存储子系统根目录,作为静态参数不用传递。
04030201/ # 终端节点编号
HelloWorld/ # 文件名称
20210831235448-91929394/ # 建会日期 %Y%m%d%H%M%S-会议编号
000142.264 # %H%M%S + ".264"
000348.264 # 在前一文件的 126 秒后建立
000550.264 # 在前一文件的 122 秒后建立
000753.264 # ...
000853.264 # 特别地,小时数不必小于 24
信令代理(MC) ==> 转发服务(MSS)
04030201/HelloWorld/20210831235448-91929394/%s
264
#2021/8/31 23:54:48
120
秒控制中心(UAC) ==> 信令代理(MC)
04030201
264
(其它禁用)120
秒开始时间在文件名中体现。是以路径中建会日期为基准的相对时间。
虽然格式使用
%H%M%S
表示,但小时数不限制在 24 以内。
截止时间在文件属性中体现。以文件最后一次写入/更改时间为准。
从实际数据来看,
stat()
系统调用取的时间里:
-access time
*nix 系统中它只表达 inode 的更改时间。不适用。
-modify time
不太可靠,虽然对于测试程序实例可以使用,但存在不匹配的情况。
-change time
以测试样本来看,相对比较合用。附部分测试样本数据
dev@Kylin:~/mss/build$ stat dump?.*
File: 'dump0.264'
Size: 1400439 Blocks: 2736 IO Block: 4096 regular file
Device: 802h/2050d Inode: 5249884 Links: 1
Access: (0664/-rw-rw-r--) Uid: ( 1001/ dev) Gid: ( 1001/ dev)
Access: 2021-10-27 17:29:46.873686221 +0800
Modify: 2021-10-27 19:34:53.408759255 +0800
Change: 2021-10-27 19:34:53.408759255 +0800
Birth: -
File: 'dump0.yuv'
Size: 49766400 Blocks: 97200 IO Block: 4096 regular file
Device: 802h/2050d Inode: 5249882 Links: 1
Access: (0664/-rw-rw-r--) Uid: ( 1001/ dev) Gid: ( 1001/ dev)
Access: 2021-10-27 17:29:46.873686221 +0800
Modify: 2021-10-27 19:34:53.372758703 +0800
Change: 2021-10-27 19:34:53.372758703 +0800
Birth: -
File: 'dump1.264'
Size: 1615613 Blocks: 3160 IO Block: 4096 regular file
Device: 802h/2050d Inode: 5249886 Links: 1
Access: (0664/-rw-rw-r--) Uid: ( 1001/ dev) Gid: ( 1001/ dev)
Access: 2021-10-27 17:29:46.873686221 +0800
Modify: 2021-10-27 19:34:53.192755946 +0800
Change: 2021-10-27 19:34:53.192755946 +0800
Birth: -
File: 'dump1.yuv'
Size: 49766400 Blocks: 97200 IO Block: 4096 regular file
Device: 802h/2050d Inode: 5249885 Links: 1
Access: (0664/-rw-rw-r--) Uid: ( 1001/ dev) Gid: ( 1001/ dev)
Access: 2021-10-27 17:29:46.873686221 +0800
Modify: 2021-10-27 19:34:53.124754904 +0800
Change: 2021-10-27 19:34:53.124754904 +0800
Birth: -
File: 'dump2.264'
Size: 1579345 Blocks: 3088 IO Block: 4096 regular file
Device: 802h/2050d Inode: 5249889 Links: 1
Access: (0664/-rw-rw-r--) Uid: ( 1001/ dev) Gid: ( 1001/ dev)
Access: 2021-10-27 17:31:59.347862798 +0800
Modify: 2021-10-27 19:34:54.356773779 +0800
Change: 2021-10-27 19:34:54.356773779 +0800
Birth: -
File: 'dump2.yuv'
Size: 49766400 Blocks: 97200 IO Block: 4096 regular file
Device: 802h/2050d Inode: 5249883 Links: 1
Access: (0664/-rw-rw-r--) Uid: ( 1001/ dev) Gid: ( 1001/ dev)
Access: 2021-10-27 17:31:59.591866799 +0800
Modify: 2021-10-27 19:34:54.304772983 +0800
Change: 2021-10-27 19:34:54.304772983 +0800
Birth: -
File: 'dump3.264'
Size: 0 Blocks: 0 IO Block: 4096 regular empty file
Device: 802h/2050d Inode: 5249888 Links: 1
Access: (0664/-rw-rw-r--) Uid: ( 1001/ dev) Gid: ( 1001/ dev)
Access: 2021-10-27 17:29:46.877686287 +0800
Modify: 2021-10-27 19:34:49.472698960 +0800
Change: 2021-10-27 19:34:49.472698960 +0800
Birth: -
File: 'dump3.yuv'
Size: 0 Blocks: 0 IO Block: 4096 regular empty file
Device: 802h/2050d Inode: 5249887 Links: 1
Access: (0664/-rw-rw-r--) Uid: ( 1001/ dev) Gid: ( 1001/ dev)
Access: 2021-10-27 17:29:46.877686287 +0800
Modify: 2021-10-27 19:34:49.472698960 +0800
Change: 2021-10-27 19:34:49.472698960 +0800
Birth: -