79 lines
3.0 KiB
TypeScript
Raw Normal View History

2024-03-12 15:32:48 +08:00
import configAddress from '../../../common/utils/FileConfig'
2024-01-05 11:11:15 +08:00
import mediaLibrary from '@ohos.multimedia.mediaLibrary'
import onvifclient from '@ohos.onvifclient';
import fs from '@ohos.file.fs'
import util from '@ohos.util';
import FileUtil from '../../../common/utils/File'
2024-03-12 15:32:48 +08:00
import {takePhoto} from '../../../common/service/videoService'
2024-01-05 11:11:15 +08:00
interface Params{
userName:string
pwd:string
ip:string
port:string
rlls:string
}
2024-01-31 14:42:14 +08:00
export default class FilePhoto{
2024-01-05 11:11:15 +08:00
private params:Params
private context:any
private fileUtil:FileUtil
public mediaTest
constructor(context) {
2024-02-21 14:53:53 +08:00
(async ()=>{
const fileUtil = new FileUtil(context)
2024-03-12 15:32:48 +08:00
console.log('mmmmmmmtttConfig0',)
const strConfig = await fileUtil.readFile(configAddress.comoonfileWriteAddress+'/config/config3.txt');
console.log('mmmmmmmtttConfig',strConfig)
2024-02-21 14:53:53 +08:00
const config = JSON.parse(strConfig)
const {userName,ip,pwd,port,rlls} = config
this.params = {userName,pwd,ip,port,rlls}
this.context = context
this.fileUtil = fileUtil
})()
2024-01-05 11:11:15 +08:00
}
public async getPhoto(){
2024-03-12 15:32:48 +08:00
console.log('getphoto002,')
2024-01-31 14:42:14 +08:00
2024-03-12 15:32:48 +08:00
const {params,context,fileUtil} = this;
console.log('mmmmmmmttt001',JSON.stringify(params))
const result =await takePhoto(params,context,1,'jt/')
console.log('resulteresulteresulte',result)
return result
// const mediaTest = mediaLibrary.getMediaLibrary(context);
// let mediaType = mediaLibrary.MediaType.IMAGE;
// let DIR_DOCUMENTS = mediaLibrary.DirectoryType.DIR_IMAGE;
// const path = await mediaTest.getPublicDirectory(DIR_DOCUMENTS);
//
// return new Promise(async (resolve)=>{
// mediaTest.createAsset(mediaType, 'judge_face.jpg', path,(error,asset)=>{
// asset.open('rw', (error, fd) => {
// if (fd > 0) {
// const file_path = "/mnt/hmdfs/100/account/device_view/local/files/Pictures/judge_face.jpg"
// const result3 = onvifclient.getVideoSnapshot(`rtsp://${userName}:${pwd}@${ip}:${port}/h264/ch${rlls}/main/av_stream`,file_path,fd);
// fs.closeSync(fd);
// asset.close(fd);
// fs.lstat(file_path).then((stat) => {
// console.info("get link status succeed, the size of file is" + stat.size);
// let file = fs.openSync(file_path, fs.OpenMode.READ_WRITE);
// const size=Number(stat.size)+100
// let buf = new ArrayBuffer(size);
// let num = fs.readSync(file.fd, buf);
// const that = new util.Base64();
// const array = new Uint8Array(buf);
// const result = that.encodeToStringSync(array);//base64圖片
// fileUtil.deleteF(file_path,3)
// resolve(result)
// }).catch((err) => {
// console.info("get link status failed with error message: " + err.message + ", error code: " + err.code);
// });
// } else {
// console.error('baoyihu getVideoSnapshot File Open failed with error: ' + error);
// }
// });
// });
// })
2024-01-05 11:11:15 +08:00
}
}