|
@@ -438,54 +438,62 @@ class CameraServices
|
|
|
'url' => env('VIDEO_SYSTEM_URL') . CameraEnum::M3U8_FILE_PATH . $path . '/' . date('Ymd', time()) . '/' . CameraEnum::M3U8_FILE_NAME . '?' . time(),
|
|
|
];
|
|
|
|
|
|
- //sleep10秒生成文件
|
|
|
- $i = 1;
|
|
|
- while ($i <= 10) {
|
|
|
- //判断m3u8文件是否存在
|
|
|
- $file_exists = file_exists(public_path() . '/' . CameraEnum::M3U8_FILE_PATH . $path . '/' . date('Ymd', time()) . '/' . CameraEnum::M3U8_FILE_NAME);
|
|
|
- //判断ts文件是否存在
|
|
|
- $ts_exists = glob(public_path() . '/' . CameraEnum::M3U8_FILE_PATH . $path . '/' . date('Ymd', time()) . '/' . CameraEnum::TS_FILE_SUFFIX);
|
|
|
- //查询是否存在封面图
|
|
|
- $cover_picture = CameraList::where('id', $camera_id)->value('cover_picture');
|
|
|
-
|
|
|
- if ($file_exists && $ts_exists) {
|
|
|
- //查询是否存在封面图
|
|
|
- if (!$cover_picture) {
|
|
|
- //获取第一帧作为封面图
|
|
|
- $file_name = time() . CameraEnum::COVER_PICTURE_NAME;
|
|
|
- $cover_exec = 'ffmpeg -i ' . public_path() . '/' . CameraEnum::M3U8_FILE_PATH . $path . '/' . date('Ymd', time()) . '/' . CameraEnum::M3U8_FILE_NAME . ' -vf "select=between(mod(n\, 25)\, 0\, 0), setpts=N/24/TB" ' . public_path() . '/' . CameraEnum::M3U8_FILE_PATH . $path . '/' . date('Ymd', time()) . '/' . $file_name;
|
|
|
- exec($cover_exec);
|
|
|
-
|
|
|
- //判断图片是否存在
|
|
|
- $picture_exists = file_exists(public_path() . '/' . CameraEnum::M3U8_FILE_PATH . $path . '/' . date('Ymd', time()) . '/' . $file_name);
|
|
|
-
|
|
|
- if ($picture_exists) {
|
|
|
- //上传图片到oss并更新数据库
|
|
|
- $picture_path = self::uploadOssFile($file_name, public_path() . '/' . CameraEnum::M3U8_FILE_PATH . $path . '/' . date('Ymd', time()) . '/');
|
|
|
- CameraList::where('id', $camera_id)->update(['cover_picture' => $picture_path]);
|
|
|
- }
|
|
|
- }
|
|
|
+// //sleep10秒生成文件
|
|
|
+// $i = 1;
|
|
|
+// while ($i <= 10) {
|
|
|
+// //判断m3u8文件是否存在
|
|
|
+// $file_exists = file_exists(public_path() . '/' . CameraEnum::M3U8_FILE_PATH . $path . '/' . date('Ymd', time()) . '/' . CameraEnum::M3U8_FILE_NAME);
|
|
|
+// //判断ts文件是否存在
|
|
|
+// $ts_exists = glob(public_path() . '/' . CameraEnum::M3U8_FILE_PATH . $path . '/' . date('Ymd', time()) . '/' . CameraEnum::TS_FILE_SUFFIX);
|
|
|
+// //查询是否存在封面图
|
|
|
+// $cover_picture = CameraList::where('id', $camera_id)->value('cover_picture');
|
|
|
+//
|
|
|
+// if ($file_exists && $ts_exists) {
|
|
|
+// //查询是否存在封面图
|
|
|
+// if (!$cover_picture) {
|
|
|
+// //获取第一帧作为封面图
|
|
|
+// $file_name = time() . CameraEnum::COVER_PICTURE_NAME;
|
|
|
+// $cover_exec = 'ffmpeg -i ' . public_path() . '/' . CameraEnum::M3U8_FILE_PATH . $path . '/' . date('Ymd', time()) . '/' . CameraEnum::M3U8_FILE_NAME . ' -vf "select=between(mod(n\, 25)\, 0\, 0), setpts=N/24/TB" ' . public_path() . '/' . CameraEnum::M3U8_FILE_PATH . $path . '/' . date('Ymd', time()) . '/' . $file_name;
|
|
|
+// exec($cover_exec);
|
|
|
+//
|
|
|
+// //判断图片是否存在
|
|
|
+// $picture_exists = file_exists(public_path() . '/' . CameraEnum::M3U8_FILE_PATH . $path . '/' . date('Ymd', time()) . '/' . $file_name);
|
|
|
+//
|
|
|
+// if ($picture_exists) {
|
|
|
+// //上传图片到oss并更新数据库
|
|
|
+// $picture_path = self::uploadOssFile($file_name, public_path() . '/' . CameraEnum::M3U8_FILE_PATH . $path . '/' . date('Ymd', time()) . '/');
|
|
|
+// CameraList::where('id', $camera_id)->update(['cover_picture' => $picture_path]);
|
|
|
+// }
|
|
|
+// }
|
|
|
+//
|
|
|
+// //更新拉流id
|
|
|
+// CameraList::where('id', $camera_id)->update(
|
|
|
+// [
|
|
|
+// 'revert_id' => trim($curl_res, '"'),
|
|
|
+// 'updated_at' => date('Y-m-d H:i:s'),
|
|
|
+// ]
|
|
|
+// );
|
|
|
+// return $result;
|
|
|
+// } else {
|
|
|
+// sleep(1);
|
|
|
+// }
|
|
|
+//
|
|
|
+// $i++;
|
|
|
+// }
|
|
|
+//
|
|
|
+// //标记摄像头为异常状态
|
|
|
+// CameraList::where('id', $camera_id)->update(['camera_status' => CameraEnum::CAMERA_STATUS_ERROR]);
|
|
|
+//
|
|
|
+// $result['status'] = false;
|
|
|
+// $result['msg'] = ApiEnum::EASY_DAWIN_REQUEST_FAIL;
|
|
|
|
|
|
- //更新拉流id
|
|
|
- CameraList::where('id', $camera_id)->update(
|
|
|
- [
|
|
|
- 'revert_id' => trim($curl_res, '"'),
|
|
|
- 'updated_at' => date('Y-m-d H:i:s'),
|
|
|
- ]
|
|
|
- );
|
|
|
- return $result;
|
|
|
- } else {
|
|
|
- sleep(1);
|
|
|
- }
|
|
|
+ //查询是否存在封面图
|
|
|
+ $cover_picture = CameraList::where('id', $camera_id)->value('cover_picture');
|
|
|
|
|
|
- $i++;
|
|
|
+ if (!$cover_picture) {
|
|
|
+ register_shutdown_function(array(new HaiKangController(), "getFirstPicture"),$path,$query->camera_url);
|
|
|
}
|
|
|
|
|
|
- //标记摄像头为异常状态
|
|
|
- CameraList::where('id', $camera_id)->update(['camera_status' => CameraEnum::CAMERA_STATUS_ERROR]);
|
|
|
-
|
|
|
- $result['status'] = false;
|
|
|
- $result['msg'] = ApiEnum::EASY_DAWIN_REQUEST_FAIL;
|
|
|
return $result;
|
|
|
}
|
|
|
|