| | |
| | | <generated.asciidoc.directory>${project.build.directory}/asciidoc</generated.asciidoc.directory> |
| | | <asciidoctor.html.output.directory>${project.build.directory}/asciidoc/html</asciidoctor.html.output.directory> |
| | | <asciidoctor.pdf.output.directory>${project.build.directory}/asciidoc/pdf</asciidoctor.pdf.output.directory> |
| | | <gson.version>2.8.6</gson.version> |
| | | </properties> |
| | | |
| | | <dependencies> |
| | |
| | | <groupId>com.alibaba</groupId> |
| | | <artifactId>fastjson</artifactId> |
| | | <version>1.2.73</version> |
| | | </dependency> |
| | | <!-- google json库 --> |
| | | <dependency> |
| | | <groupId>com.google.code.gson</groupId> |
| | | <artifactId>gson</artifactId> |
| | | </dependency> |
| | | |
| | | <!--Guava是一种基于开源的Java库--> |
| | |
| | | public static void main(String[] args) {
|
| | | SpringApplication.run(VManageBootstrap.class, args);
|
| | | }
|
| | |
|
| | | }
|
| | |
| | | @Autowired |
| | | private ZLMRESTfulUtils zlmresTfulUtils; |
| | | |
| | | @Value("${media.closeWaitRTPInfo}") |
| | | private boolean closeWaitRTPInfo; |
| | | |
| | | @GetMapping("/play/{deviceId}/{channelId}") |
| | | public ResponseEntity<String> play(@PathVariable String deviceId, @PathVariable String channelId, |
| | | Integer getEncoding) { |
| | | |
| | | if (getEncoding == null) getEncoding = 0; |
| | | getEncoding = closeWaitRTPInfo ? 0: getEncoding; |
| | | Device device = storager.queryVideoDevice(deviceId); |
| | | StreamInfo streamInfo = storager.queryPlayByDevice(deviceId, channelId); |
| | | |
| | |
| | | port: 80 |
| | | secret: 035c73f7-bb6b-4889-a715-d9eb2d1925cc |
| | | streamNoneReaderDelayMS: 1800000 # 无人观看多久自动关闭流 |
| | | closeWaitRTPInfo: false # 强制关闭等待收到流编码信息后在返回, 设为true可以快速打开播放窗口, 设为false保证返回后流就可以播放 |
| | | rtp: # 启用udp多端口模式 |
| | | enable: true |
| | | udpPortRange: 30000,30500 # 端口范围 |