Commit c8fb7e56a5e73026933b68b0303a218dc3ecafac
Merge branch 'fix/video-stream-url' into 'main_dev'
Fix/video stream url See merge request yunteng/thingskit-front!1330
Showing
2 changed files
with
22 additions
and
2 deletions
| ... | ... | @@ -24,6 +24,9 @@ import { isRtspProtocol } from '/@/components/Video/src/utils'; |
| 24 | 24 | import { useFingerprint } from '/@/utils/useFingerprint'; |
| 25 | 25 | import { getVideoControlStart } from '/@/api/device/videoChannel'; |
| 26 | 26 | import { StreamType as PlayerStreamType } from '/@/components/Video/src/types'; |
| 27 | +import { useGlobSetting } from '/@/hooks/setting'; | |
| 28 | +import { BooleanStringEnum } from '/@/enums/toolEnum'; | |
| 29 | +import { isBoolean } from '/@/utils/is'; | |
| 27 | 30 | |
| 28 | 31 | interface FileItem { |
| 29 | 32 | uid: string; |
| ... | ... | @@ -642,7 +645,13 @@ export async function getPlayUrl( |
| 642 | 645 | } else if (accessMode === AccessMode.GBT28181) { |
| 643 | 646 | const { deviceId, channelNo } = params?.params || {}; |
| 644 | 647 | const result = await getVideoControlStart({ channelId: channelNo!, deviceId: deviceId! }); |
| 645 | - return { url: result.data.flv, type: 'flv' }; | |
| 648 | + const { securityPolicy } = useGlobSetting(); | |
| 649 | + return { | |
| 650 | + url: (isBoolean(securityPolicy) ? securityPolicy : securityPolicy === BooleanStringEnum.TRUE) | |
| 651 | + ? result.data.https_flv | |
| 652 | + : result.data.flv, | |
| 653 | + type: 'flv', | |
| 654 | + }; | |
| 646 | 655 | } else { |
| 647 | 656 | const { id, playProtocol } = params; |
| 648 | 657 | const result = await getStreamingPlayUrl(id); | ... | ... |
| ... | ... | @@ -58,6 +58,9 @@ |
| 58 | 58 | import { stopOnDemandVideoApiGet, syncVideoApiGet } from '/@/api/camera/cameraManager'; |
| 59 | 59 | import { Authority } from '/@/components/Authority'; |
| 60 | 60 | import { VideoChannelItemType } from '/@/api/device/model/videoChannelModel'; |
| 61 | + import { useGlobSetting } from '/@/hooks/setting'; | |
| 62 | + import { BooleanStringEnum } from '/@/enums/toolEnum'; | |
| 63 | + import { isBoolean } from '/@/utils/is'; | |
| 61 | 64 | |
| 62 | 65 | const props = defineProps<{ deviceDetail: DeviceRecord }>(); |
| 63 | 66 | |
| ... | ... | @@ -109,7 +112,15 @@ |
| 109 | 112 | getPlayUrl: async () => { |
| 110 | 113 | const { deviceId, channelId } = record; |
| 111 | 114 | const result = await getVideoControlStart({ deviceId, channelId }); |
| 112 | - return { type: 'flv', url: result.data.flv }; | |
| 115 | + const { securityPolicy } = useGlobSetting(); | |
| 116 | + return { | |
| 117 | + type: 'flv', | |
| 118 | + url: ( | |
| 119 | + isBoolean(securityPolicy) ? securityPolicy : securityPolicy === BooleanStringEnum.TRUE | |
| 120 | + ) | |
| 121 | + ? result.data.https_flv | |
| 122 | + : result.data.flv, | |
| 123 | + }; | |
| 113 | 124 | }, |
| 114 | 125 | } as VideoCancelModalParamsType, |
| 115 | 126 | }); | ... | ... |