Skip to content
体验新版
项目
组织
正在加载...
登录
切换导航
打开侧边栏
OpenHarmony
Xts Acts
提交
d1e0e582
X
Xts Acts
项目概览
OpenHarmony
/
Xts Acts
1 年多 前同步成功
通知
9
Star
22
Fork
0
代码
文件
提交
分支
Tags
贡献者
分支图
Diff
Issue
0
列表
看板
标记
里程碑
合并请求
0
Wiki
0
Wiki
分析
仓库
DevOps
项目成员
Pages
X
Xts Acts
项目概览
项目概览
详情
发布
仓库
仓库
文件
提交
分支
标签
贡献者
分支图
比较
Issue
0
Issue
0
列表
看板
标记
里程碑
合并请求
0
合并请求
0
Pages
分析
分析
仓库分析
DevOps
Wiki
0
Wiki
成员
成员
收起侧边栏
关闭侧边栏
动态
分支图
创建新Issue
提交
Issue看板
提交
d1e0e582
编写于
6月 30, 2023
作者:
D
dongwei
浏览文件
操作
浏览文件
下载
电子邮件补丁
差异文件
avRecorder 视频录制用例上库
Signed-off-by:
N
dongwei
<
dongwei@kaihong.com
>
上级
e71a0278
变更
5
隐藏空白更改
内联
并排
Showing
5 changed file
with
2596 addition
and
5 deletion
+2596
-5
multimedia/media/media_js_standard/AvVideoRecorderTestBase.js
...imedia/media/media_js_standard/AvVideoRecorderTestBase.js
+1080
-1
multimedia/media/media_js_standard/avRecorder/src/main/js/test/AvVideoRecorderFuncTestOne.test.js
...order/src/main/js/test/AvVideoRecorderFuncTestOne.test.js
+145
-2
multimedia/media/media_js_standard/avRecorder/src/main/js/test/AvVideoRecorderFuncTestThree.test.js
...der/src/main/js/test/AvVideoRecorderFuncTestThree.test.js
+417
-0
multimedia/media/media_js_standard/avRecorder/src/main/js/test/AvVideoRecorderFuncTestTwo.test.js
...order/src/main/js/test/AvVideoRecorderFuncTestTwo.test.js
+947
-0
multimedia/media/media_js_standard/avRecorder/src/main/js/test/List.test.js
...edia_js_standard/avRecorder/src/main/js/test/List.test.js
+7
-2
未找到文件。
multimedia/media/media_js_standard/AvVideoRecorderTestBase.js
浏览文件 @
d1e0e582
...
@@ -159,4 +159,1083 @@ export async function initCamera() {
...
@@ -159,4 +159,1083 @@ export async function initCamera() {
await
captureSession
.
start
().
then
(()
=>
{
await
captureSession
.
start
().
then
(()
=>
{
console
.
log
(
'
Promise returned to indicate the session start success.
'
);
console
.
log
(
'
Promise returned to indicate the session start success.
'
);
})
})
}
}
\ No newline at end of file
export
async
function
startCameraOutput
()
{
console
.
info
(
'
startCameraOutput start
'
)
await
videoOutput
.
start
(
async
(
err
)
=>
{
if
(
err
)
{
console
.
error
(
`Failed to start the video output
${
err
.
message
}
`
);
return
;
}
console
.
log
(
'
Callback invoked to indicate the video output start success.
'
);
});
}
export
async
function
stopCameraOutput
()
{
await
videoOutput
.
stop
((
err
)
=>
{
if
(
err
)
{
console
.
error
(
`Failed to stop the video output
${
err
.
message
}
`
);
return
;
}
console
.
log
(
'
Callback invoked to indicate the video output stop success.
'
);
});
}
// 释放相机实例
export
async
function
releaseCamera
()
{
try
{
await
captureSession
.
stop
()
console
.
info
(
'
releaseCamera 001
'
);
console
.
info
(
'
captureSession.stop success
'
);
await
cameraInput
.
close
()
console
.
info
(
'
releaseCamera 002
'
);
console
.
info
(
'
cameraInput.close success
'
);
await
previewOutput
.
release
()
console
.
info
(
'
releaseCamera 003
'
);
console
.
info
(
'
previewOutput.release success
'
);
await
videoOutput
.
release
()
console
.
info
(
'
releaseCamera 004
'
);
console
.
info
(
'
videoOutput.release success
'
);
await
captureSession
.
release
()
console
.
info
(
'
releaseCamera 005
'
);
console
.
info
(
'
captureSession.release success
'
);
captureSession
=
null
console
.
info
(
'
releaseCamera success
'
);
}
catch
(
err
){
console
.
info
(
'
releaseCamera failed and catch error is
'
+
err
.
message
);
}
}
// release camera and avRecorder
export
async
function
releaseRecorderCallBack
(
avRecorder
,
done
)
{
await
AVRecorderTestBase
.
releaseCallback
(
avRecorder
)
await
releaseCamera
()
done
();
}
export
async
function
releaseRecorderPromise
(
avRecorder
,
done
)
{
await
AVRecorderTestBase
.
releasePromise
(
avRecorder
)
await
releaseCamera
()
done
();
}
export
async
function
releaseRecorderPromiseNotDone
(
avRecorder
)
{
await
AVRecorderTestBase
.
releasePromise
(
avRecorder
)
await
releaseCamera
()
}
export
async
function
getInputSurfacePromise
(
avRecorder
)
{
if
(
typeof
(
avRecorder
)
==
'
undefined
'
)
{
return
;
}
// console.info('getInputSurfacePromise avRecorder.state is: ' + avRecorder.state)
await
avRecorder
.
getInputSurface
().
then
((
surfaceId
)
=>
{
console
.
info
(
'
getInputSurface success
'
);
videoSurfaceId
=
surfaceId
;
}).
catch
((
err
)
=>
{
console
.
info
(
'
getInputSurface failed and catch error is
'
+
err
.
message
);
});
}
export
async
function
getInputSurfaceCallback
(
avRecorder
)
{
if
(
typeof
(
avRecorder
)
==
'
undefined
'
)
{
return
;
}
await
avRecorder
.
getInputSurface
((
err
,
surfaceId
)
=>
{
if
(
err
==
null
)
{
console
.
info
(
'
getInputSurface success
'
);
videoSurfaceId
=
surfaceId
;
}
else
{
console
.
info
(
'
getInputSurface failed and error is
'
+
err
.
message
);
}
});
}
export
function
setAvRecorderCallback
(
avRecorder
,
done
)
{
// 状态机变化回调函数
avRecorder
.
on
(
'
stateChange
'
,
(
state
,
reason
)
=>
{
console
.
info
(
TAG
+
'
current state is:
'
+
state
);
})
// 错误上报回调函数
avRecorder
.
on
(
'
error
'
,
async
(
err
)
=>
{
try
{
console
.
error
(
TAG
+
'
error ocConstantSourceNode, error message is
'
+
err
);
await
releaseRecorderPromise
(
avRecorder
,
done
);
}
catch
(
error
)
{
// 处理错误
console
.
error
(
TAG
+
'
when error on execute releaseRecorderPromise error message is
'
+
error
);
}
});
}
// 开始录制对应的流程
export
async
function
startRecordingProcessCallback
(
avRecorder
,
recorderTime
)
{
await
startCameraOutput
()
await
AVRecorderTestBase
.
startCallback
(
avRecorder
,
recorderTime
);
}
export
async
function
startRecordingProcessPromise
(
avRecorder
,
recorderTime
)
{
await
startCameraOutput
()
await
AVRecorderTestBase
.
startPromise
(
avRecorder
,
recorderTime
);
}
// 暂停录制对应的流程
export
async
function
pauseRecordingProcessCallback
(
avRecorder
)
{
if
(
avRecorder
.
state
===
'
started
'
)
{
// 仅在started状态下调用pause为合理状态切换
await
AVRecorderTestBase
.
pauseCallback
(
avRecorder
);
await
stopCameraOutput
();
// 停止相机出流
}
}
export
async
function
pauseRecordingProcessPromise
(
avRecorder
)
{
if
(
avRecorder
.
state
===
'
started
'
)
{
// 仅在started状态下调用pause为合理状态切换
await
AVRecorderTestBase
.
pausePromise
(
avRecorder
);
await
stopCameraOutput
();
// 停止相机出流
}
}
// 恢复录制对应的流程
export
async
function
resumeRecordingProcessCallback
(
avRecorder
)
{
if
(
avRecorder
.
state
===
'
paused
'
)
{
// 仅在started状态下调用pause为合理状态切换
await
startCameraOutput
()
await
AVRecorderTestBase
.
resumeCallback
(
avRecorder
);
}
}
export
async
function
resumeRecordingProcessPromise
(
avRecorder
)
{
if
(
avRecorder
.
state
===
'
paused
'
)
{
// 仅在started状态下调用pause为合理状态切换
await
startCameraOutput
()
await
AVRecorderTestBase
.
resumePromise
(
avRecorder
);
}
}
// 停止录制对应的流程
export
async
function
stopRecordingProcessCallback
(
avRecorder
)
{
await
AVRecorderTestBase
.
stopCallback
(
avRecorder
);
await
stopCameraOutput
()
}
export
async
function
stopRecordingProcessPromise
(
avRecorder
)
{
await
AVRecorderTestBase
.
stopPromise
(
avRecorder
);
await
stopCameraOutput
();
}
// 重新录制对应的流程
export
async
function
resetRecordingProcessPromise
(
avRecorder
)
{
await
AVRecorderTestBase
.
resetPromise
(
avRecorder
);
await
stopCameraOutput
();
}
// 重新录制对应的流程
export
async
function
resetRecordingProcessCallback
(
avRecorder
)
{
await
AVRecorderTestBase
.
resetCallback
(
avRecorder
);
await
stopCameraOutput
();
}
export
function
sleep
(
ms
)
{
return
new
Promise
(
resolve
=>
setTimeout
(
resolve
,
ms
));
}
export
async
function
idleCallback
(
avRecorder
)
{
console
.
info
(
'
case idleCallback called
'
);
media
.
createAVRecorder
((
error
,
recorder
)
=>
{
if
(
recorder
!=
null
)
{
avRecorder
=
recorder
;
console
.
info
(
'
createAVRecorder idleCallback success
'
);
return
avRecorder
;
}
else
{
console
.
info
(
`createAVRecorder idleCallback fail, error:
${
error
}
`
);
}
});
}
export
async
function
prepareErrPromise
(
avRecorder
,
avConfig
)
{
let
result
=
true
;
if
(
typeof
(
avRecorder
)
==
'
undefined
'
)
{
return
;
}
await
avRecorder
.
prepare
(
avConfig
).
then
(()
=>
{
console
.
info
(
'
prepare success
'
);
}).
catch
((
err
)
=>
{
result
=
false
;
expect
(
result
).
assertEqual
(
false
);
console
.
info
(
'
prepare failed and catch error is
'
+
err
.
message
);
sleep
(
1000
);
});
}
export
async
function
avRecorderWithPromise
(
avConfig
,
avRecorder
,
recorderTime
,
done
)
{
avRecorder
=
await
AVRecorderTestBase
.
idle
(
avRecorder
);
console
.
info
(
'
case avConfig.url is
'
+
avConfig
.
url
);
setAvRecorderCallback
(
avRecorder
,
done
)
await
AVRecorderTestBase
.
preparePromise
(
avRecorder
,
avConfig
);
await
getInputSurfacePromise
(
avRecorder
)
await
initCamera
()
await
startRecordingProcessPromise
(
avRecorder
,
recorderTime
)
await
sleep
(
3000
)
await
pauseRecordingProcessPromise
(
avRecorder
)
await
resumeRecordingProcessPromise
(
avRecorder
);
await
stopRecordingProcessPromise
(
avRecorder
)
await
releaseRecorderPromise
(
avRecorder
,
done
)
}
export
async
function
avRecorderResumePromise1
(
avConfig
,
avRecorder
,
recorderTime
,
done
)
{
let
resumeValue
=
true
avRecorder
=
await
AVRecorderTestBase
.
idle
(
avRecorder
);
console
.
info
(
'
case avConfig.url is
'
+
avConfig
.
url
);
setAvRecorderCallback
(
avRecorder
,
done
)
await
AVRecorderTestBase
.
preparePromise
(
avRecorder
,
avConfig
);
await
getInputSurfacePromise
(
avRecorder
)
await
initCamera
()
await
startCameraOutput
()
await
avRecorder
.
resume
().
then
(()
=>
{
console
.
info
(
'
resume AVRecorder success
'
);
}).
catch
((
err
)
=>
{
resumeValue
=
false
console
.
info
(
'
avRecorderResumePromise1 resumeValue is
'
+
resumeValue
);
console
.
info
(
'
resume avRecorderResumePromise1 failed and error is
'
+
err
.
message
);
expect
(
resumeValue
).
assertEqual
(
false
);
releaseRecorderPromise
(
avRecorder
,
done
)
});
}
export
async
function
avRecorderResumePromise2
(
avConfig
,
avRecorder
,
recorderTime
,
done
)
{
let
resumeValue
=
true
avRecorder
=
await
AVRecorderTestBase
.
idle
(
avRecorder
);
console
.
info
(
'
case avConfig.url is
'
+
avConfig
.
url
);
setAvRecorderCallback
(
avRecorder
,
done
)
await
AVRecorderTestBase
.
preparePromise
(
avRecorder
,
avConfig
);
await
getInputSurfacePromise
(
avRecorder
)
await
initCamera
()
await
startCameraOutput
()
await
avRecorder
.
resume
().
then
(()
=>
{
console
.
info
(
'
resume AVRecorder success
'
);
}).
catch
((
err
)
=>
{
resumeValue
=
false
console
.
info
(
'
avRecorderResumePromise2 resumeValue is
'
+
resumeValue
);
console
.
info
(
'
resume avRecorderResumePromise2 failed and error is
'
+
err
.
message
);
expect
(
resumeValue
).
assertEqual
(
false
);
releaseRecorderPromise
(
avRecorder
,
done
)
});
}
export
async
function
avRecorderResumePromise3
(
avConfig
,
avRecorder
,
recorderTime
,
done
)
{
let
resumeValue
=
true
avRecorder
=
await
AVRecorderTestBase
.
idle
(
avRecorder
);
console
.
info
(
'
case avConfig.url is
'
+
avConfig
.
url
);
setAvRecorderCallback
(
avRecorder
,
done
)
await
AVRecorderTestBase
.
preparePromise
(
avRecorder
,
avConfig
);
await
getInputSurfacePromise
(
avRecorder
)
await
initCamera
()
await
startRecordingProcessPromise
(
avRecorder
,
recorderTime
)
await
avRecorder
.
resume
().
then
(()
=>
{
console
.
info
(
'
resume AVRecorder success
'
);
console
.
info
(
'
avRecorderResumePromise3 resumeValue is
'
+
resumeValue
);
expect
(
resumeValue
).
assertEqual
(
true
);
}).
catch
((
err
)
=>
{
console
.
info
(
'
resume AVRecorder failed and catch error is
'
+
err
.
message
);
});
await
releaseRecorderPromise
(
avRecorder
,
done
)
}
export
async
function
avRecorderResumePromise4
(
avConfig
,
avRecorder
,
recorderTime
,
done
)
{
let
resumeValue
=
true
avRecorder
=
await
AVRecorderTestBase
.
idle
(
avRecorder
);
console
.
info
(
'
case avConfig.url is
'
+
avConfig
.
url
);
setAvRecorderCallback
(
avRecorder
,
done
)
await
AVRecorderTestBase
.
preparePromise
(
avRecorder
,
avConfig
);
await
getInputSurfacePromise
(
avRecorder
)
await
initCamera
()
await
startRecordingProcessPromise
(
avRecorder
,
recorderTime
)
await
pauseRecordingProcessPromise
(
avRecorder
)
await
avRecorder
.
resume
().
then
(()
=>
{
console
.
info
(
'
resume AVRecorder success
'
);
console
.
info
(
'
avRecorderResumePromise4 resumeValue is
'
+
resumeValue
);
expect
(
resumeValue
).
assertEqual
(
true
);
startCameraOutput
()
}).
catch
((
err
)
=>
{
console
.
info
(
'
resume AVRecorder failed and catch error is
'
+
err
.
message
);
});
await
releaseRecorderPromise
(
avRecorder
,
done
)
}
export
async
function
avRecorderResumePromise5
(
avConfig
,
avRecorder
,
recorderTime
,
done
)
{
let
resumeValue
=
true
avRecorder
=
await
AVRecorderTestBase
.
idle
(
avRecorder
);
console
.
info
(
'
case avConfig.url is
'
+
avConfig
.
url
);
setAvRecorderCallback
(
avRecorder
,
done
)
await
AVRecorderTestBase
.
preparePromise
(
avRecorder
,
avConfig
);
await
getInputSurfacePromise
(
avRecorder
)
await
initCamera
()
await
startRecordingProcessPromise
(
avRecorder
,
recorderTime
)
await
stopRecordingProcessPromise
(
avRecorder
)
await
avRecorder
.
resume
().
then
(()
=>
{
console
.
info
(
'
resume AVRecorder success
'
);
}).
catch
((
err
)
=>
{
resumeValue
=
false
console
.
info
(
'
resume avRecorderResumePromise5 failed and error is
'
+
err
.
message
);
console
.
error
(
TAG
+
'
error avRecorderResumePromise5, error message is
'
+
err
.
message
);
console
.
info
(
'
avRecorderResumePromise5 resumeValue is
'
+
resumeValue
);
expect
(
resumeValue
).
assertEqual
(
false
);
});
await
releaseRecorderPromise
(
avRecorder
,
done
)
}
export
async
function
avRecorderResumePromise6
(
avConfig
,
avRecorder
,
recorderTime
,
done
)
{
let
resumeValue
=
true
avRecorder
=
await
AVRecorderTestBase
.
idle
(
avRecorder
);
console
.
info
(
'
case avConfig.url is
'
+
avConfig
.
url
);
setAvRecorderCallback
(
avRecorder
,
done
)
await
AVRecorderTestBase
.
preparePromise
(
avRecorder
,
avConfig
);
await
getInputSurfacePromise
(
avRecorder
)
await
initCamera
()
await
startRecordingProcessPromise
(
avRecorder
,
recorderTime
)
await
AVRecorderTestBase
.
resetPromise
(
avRecorder
)
;
await
avRecorder
.
resume
().
then
(()
=>
{
console
.
info
(
'
resume AVRecorder success
'
);
console
.
info
(
'
avRecorderResumePromise6 resumeValue is
'
+
resumeValue
);
}).
catch
((
err
)
=>
{
resumeValue
=
false
console
.
info
(
'
resume avRecorderResumePromise6 failed and error is
'
+
err
.
message
);
console
.
error
(
TAG
+
'
error avRecorderResumePromise6, error message is
'
+
err
.
message
);
expect
(
resumeValue
).
assertEqual
(
false
);
});
await
releaseRecorderPromise
(
avRecorder
,
done
)
}
export
async
function
avRecorderResumePromise7
(
avConfig
,
avRecorder
,
recorderTime
,
done
)
{
let
resumeValue
=
true
avRecorder
=
await
AVRecorderTestBase
.
idle
(
avRecorder
);
console
.
info
(
'
case avConfig.url is
'
+
avConfig
.
url
);
setAvRecorderCallback
(
avRecorder
,
done
)
await
AVRecorderTestBase
.
preparePromise
(
avRecorder
,
avConfig
);
await
getInputSurfacePromise
(
avRecorder
)
await
initCamera
()
await
avRecorder
.
resume
().
then
(()
=>
{
console
.
info
(
'
resume AVRecorder success
'
);
console
.
info
(
'
avRecorderResumePromise7 resumeValue is
'
+
resumeValue
);
}).
catch
((
err
)
=>
{
resumeValue
=
false
console
.
info
(
'
resume avRecorderResumePromise7 failed and error is
'
+
err
.
message
);
console
.
error
(
TAG
+
'
error avRecorderResumePromise7, error message is
'
+
err
.
message
);
expect
(
resumeValue
).
assertEqual
(
false
);
});
await
releaseRecorderPromise
(
avRecorder
,
done
)
}
export
async
function
avRecorderResumePromise8
(
avConfig
,
avRecorder
,
recorderTime
,
done
)
{
avRecorder
=
await
AVRecorderTestBase
.
idle
(
avRecorder
);
console
.
info
(
'
case avConfig.url is
'
+
avConfig
.
url
);
setAvRecorderCallback
(
avRecorder
,
done
)
await
AVRecorderTestBase
.
preparePromise
(
avRecorder
,
avConfig
);
await
getInputSurfacePromise
(
avRecorder
)
await
initCamera
()
await
startRecordingProcessPromise
(
avRecorder
,
recorderTime
)
await
pauseRecordingProcessPromise
(
avRecorder
)
await
resumeRecordingProcessCallback
(
avRecorder
)
await
resumeRecordingProcessCallback
(
avRecorder
)
await
resumeRecordingProcessCallback
(
avRecorder
)
await
releaseRecorderPromise
(
avRecorder
,
done
)
}
export
async
function
avRecorderStopPromise1
(
avConfig
,
avRecorder
,
recorderTime
,
done
)
{
avRecorder
=
await
AVRecorderTestBase
.
idle
(
avRecorder
);
console
.
info
(
'
case avConfig.url is
'
+
avConfig
.
url
);
setAvRecorderCallback
(
avRecorder
,
done
)
await
avRecorder
.
stop
().
then
(()
=>
{
console
.
info
(
'
stop avRecorderStopPromise1 success
'
);
}).
catch
((
err
)
=>
{
console
.
info
(
'
stop avRecorderStopPromise1 error
'
);
console
.
info
(
'
stop avRecorderStopPromise1 failed and catch error is
'
+
err
.
message
);
});
await
AVRecorderTestBase
.
releaseDone
(
avRecorder
,
done
)
}
export
async
function
avRecorderStopPromise2
(
avConfig
,
avRecorder
,
recorderTime
,
done
)
{
avRecorder
=
await
AVRecorderTestBase
.
idle
(
avRecorder
);
console
.
info
(
'
case avConfig.url is
'
+
avConfig
.
url
);
setAvRecorderCallback
(
avRecorder
,
done
)
await
AVRecorderTestBase
.
preparePromise
(
avRecorder
,
avConfig
);
await
avRecorder
.
stop
().
then
(()
=>
{
console
.
info
(
'
stop avRecorderStopPromise2 success
'
);
}).
catch
((
err
)
=>
{
console
.
info
(
'
stop avRecorderStopPromise2 failed and catch error is
'
+
err
.
message
);
});
await
AVRecorderTestBase
.
releaseDone
(
avRecorder
,
done
)
}
export
async
function
avRecorderStopPromise7
(
avConfig
,
avRecorder
,
recorderTime
,
done
)
{
avRecorder
=
await
AVRecorderTestBase
.
idle
(
avRecorder
);
console
.
info
(
'
case avConfig.url is
'
+
avConfig
.
url
);
setAvRecorderCallback
(
avRecorder
,
done
)
await
AVRecorderTestBase
.
preparePromise
(
avRecorder
,
avConfig
);
await
getInputSurfacePromise
(
avRecorder
)
await
avRecorder
.
stop
().
then
(()
=>
{
expect
(
avRecorder
.
state
).
assertEqual
(
AV_RECORDER_STATE
.
STOPPED
);
console
.
info
(
'
stop avRecorderStopPromise7 success
'
);
}).
catch
((
err
)
=>
{
console
.
info
(
'
stop avRecorderStopPromise7 failed and catch error is
'
+
err
.
message
);
});
await
AVRecorderTestBase
.
releaseDone
(
avRecorder
,
done
)
}
export
async
function
avRecorderResetPromise7
(
avConfig
,
avRecorder
,
recorderTime
,
done
)
{
avRecorder
=
await
AVRecorderTestBase
.
idle
(
avRecorder
);
console
.
info
(
'
case avConfig.url is
'
+
avConfig
.
url
);
setAvRecorderCallback
(
avRecorder
,
done
)
await
AVRecorderTestBase
.
preparePromise
(
avRecorder
,
avConfig
);
await
getInputSurfacePromise
(
avRecorder
)
await
avRecorder
.
reset
().
then
(()
=>
{
console
.
info
(
'
reset avRecorderResetPromise7 success
'
);
expect
(
avRecorder
.
state
).
assertEqual
(
AV_RECORDER_STATE
.
IDLE
);
}).
catch
((
err
)
=>
{
console
.
info
(
'
reset AVRecorder failed and catch error is
'
+
err
.
message
);
});
await
AVRecorderTestBase
.
releaseDone
(
avRecorder
,
done
)
}
// Promise prepare
export
async
function
create2PreparePromise
(
avConfig
,
avRecorder
,
done
)
{
avRecorder
=
await
AVRecorderTestBase
.
idle
(
avRecorder
);
console
.
info
(
'
case create2PreparePromise avConfig.url is
'
+
avConfig
.
url
);
setAvRecorderCallback
(
avRecorder
,
done
);
await
AVRecorderTestBase
.
preparePromise
(
avRecorder
,
avConfig
);
await
AVRecorderTestBase
.
releasePromise
(
avRecorder
);
done
();
}
export
async
function
start2PreparePromise
(
avConfig
,
avRecorder
,
recorderTime
,
done
)
{
avRecorder
=
await
AVRecorderTestBase
.
idle
(
avRecorder
);
console
.
info
(
'
case start2PreparePromise avConfig.url is
'
+
avConfig
.
url
);
setAvRecorderCallback
(
avRecorder
,
done
)
await
AVRecorderTestBase
.
preparePromise
(
avRecorder
,
avConfig
);
await
getInputSurfacePromise
(
avRecorder
);
await
initCamera
();
await
startRecordingProcessPromise
(
avRecorder
,
recorderTime
);
await
prepareErrPromise
(
avRecorder
,
avConfig
);
await
stopCameraOutput
();
await
releaseRecorderPromise
(
avRecorder
,
done
);
}
export
async
function
pause2PreparePromise
(
avConfig
,
avRecorder
,
recorderTime
,
done
)
{
avRecorder
=
await
AVRecorderTestBase
.
idle
(
avRecorder
);
console
.
info
(
'
case pause2PreparePromise avConfig.url is
'
+
avConfig
.
url
);
setAvRecorderCallback
(
avRecorder
,
done
)
await
AVRecorderTestBase
.
preparePromise
(
avRecorder
,
avConfig
);
await
getInputSurfacePromise
(
avRecorder
);
await
initCamera
();
await
startRecordingProcessPromise
(
avRecorder
,
recorderTime
);
await
AVRecorderTestBase
.
pausePromise
(
avRecorder
);
await
prepareErrPromise
(
avRecorder
,
avConfig
);
await
stopCameraOutput
();
await
releaseRecorderPromise
(
avRecorder
,
done
);
}
export
async
function
resume2PreparePromise
(
avConfig
,
avRecorder
,
recorderTime
,
done
)
{
avRecorder
=
await
AVRecorderTestBase
.
idle
(
avRecorder
);
console
.
info
(
'
case resume2PreparePromise avConfig.url is
'
+
avConfig
.
url
);
setAvRecorderCallback
(
avRecorder
,
done
)
await
AVRecorderTestBase
.
preparePromise
(
avRecorder
,
avConfig
);
await
getInputSurfacePromise
(
avRecorder
);
await
initCamera
();
await
startRecordingProcessPromise
(
avRecorder
,
recorderTime
);
await
AVRecorderTestBase
.
pausePromise
(
avRecorder
);
await
AVRecorderTestBase
.
resumePromise
(
avRecorder
);
await
prepareErrPromise
(
avRecorder
,
avConfig
);
await
stopCameraOutput
();
await
releaseRecorderPromise
(
avRecorder
,
done
);
}
export
async
function
stop2PreparePromise
(
avConfig
,
avRecorder
,
recorderTime
,
done
)
{
avRecorder
=
await
AVRecorderTestBase
.
idle
(
avRecorder
);
console
.
info
(
'
case stop2PreparePromise avConfig.url is
'
+
avConfig
.
url
);
setAvRecorderCallback
(
avRecorder
,
done
)
await
AVRecorderTestBase
.
preparePromise
(
avRecorder
,
avConfig
);
await
getInputSurfacePromise
(
avRecorder
);
await
initCamera
();
await
startRecordingProcessPromise
(
avRecorder
,
recorderTime
);
await
AVRecorderTestBase
.
stopPromise
(
avRecorder
);
await
prepareErrPromise
(
avRecorder
,
avConfig
);
await
stopCameraOutput
();
await
releaseRecorderPromise
(
avRecorder
,
done
);
}
export
async
function
reset2PreparePromise
(
avConfig
,
avRecorder
,
recorderTime
,
done
)
{
avRecorder
=
await
AVRecorderTestBase
.
idle
(
avRecorder
);
console
.
info
(
'
case reset2PreparePromise avConfig.url is
'
+
avConfig
.
url
);
setAvRecorderCallback
(
avRecorder
,
done
);
await
AVRecorderTestBase
.
preparePromise
(
avRecorder
,
avConfig
);
await
getInputSurfacePromise
(
avRecorder
);
await
initCamera
();
await
startRecordingProcessPromise
(
avRecorder
,
recorderTime
);
await
AVRecorderTestBase
.
resetPromise
(
avRecorder
);
await
AVRecorderTestBase
.
preparePromise
(
avRecorder
,
avConfig
);
await
stopCameraOutput
();
await
releaseRecorderPromise
(
avRecorder
,
done
);
}
export
async
function
getInputSurface2PreparePromise
(
avConfig
,
avRecorder
,
done
)
{
avRecorder
=
await
AVRecorderTestBase
.
idle
(
avRecorder
);
console
.
info
(
'
case getInputSurface2PreparePromise avConfig.url is
'
+
avConfig
.
url
);
setAvRecorderCallback
(
avRecorder
,
done
);
await
AVRecorderTestBase
.
preparePromise
(
avRecorder
,
avConfig
);
await
getInputSurfacePromise
(
avRecorder
);
await
initCamera
();
await
prepareErrPromise
(
avRecorder
,
avConfig
);
await
releaseRecorderCallBack
(
avRecorder
,
done
);
}
export
async
function
prepare3TimesPromise
(
avConfig
,
avRecorder
,
loopTimes
,
done
)
{
avRecorder
=
await
AVRecorderTestBase
.
idle
(
avRecorder
);
console
.
info
(
'
case prepare3TimesCallback avConfig.url is
'
+
avConfig
.
url
);
setAvRecorderCallback
(
avRecorder
,
done
);
while
(
loopTimes
>
0
)
{
await
AVRecorderTestBase
.
preparePromise
(
avRecorder
,
avConfig
);
await
AVRecorderTestBase
.
resetPromise
(
avRecorder
);
loopTimes
--
;
}
await
AVRecorderTestBase
.
releasePromise
(
avRecorder
);
done
();
}
export
async
function
avConfigChangedPromise
(
avConfig
,
avRecorder
,
done
)
{
avRecorder
=
await
AVRecorderTestBase
.
idle
(
avRecorder
);
console
.
info
(
'
case avConfigChangedPromise avConfig.url is
'
+
avConfig
.
url
);
setAvRecorderCallback
(
avRecorder
,
done
);
await
prepareErrPromise
(
avRecorder
,
avConfig
)
await
AVRecorderTestBase
.
releasePromise
(
avRecorder
);
done
();
}
export
async
function
avRecorderWithPromise2
(
avConfig
,
avRecorder
,
recorderTime
,
done
)
{
avRecorder
=
await
AVRecorderTestBase
.
idle
(
avRecorder
);
console
.
info
(
'
case avConfig.url is
'
+
avConfig
.
url
);
console
.
info
(
'
case avConfig.orientationHint is
'
+
avConfig
.
orientationHint
);
console
.
info
(
'
case avConfig.profile.audioBitrate is
'
+
avConfig
.
profile
.
audioBitrate
)
console
.
info
(
'
case avConfig.profile.audioSampleRate is
'
+
avConfig
.
profile
.
audioSampleRate
)
console
.
info
(
'
case avConfig.profile.videoBitrate is
'
+
avConfig
.
profile
.
videoBitrate
)
console
.
info
(
'
case avConfig.profile.videoFrameRate is
'
+
avConfig
.
profile
.
videoFrameRate
);
setAvRecorderCallback
(
avRecorder
,
done
)
await
AVRecorderTestBase
.
preparePromise
(
avRecorder
,
avConfig
)
await
getInputSurfacePromise
(
avRecorder
)
await
initCamera
()
await
startRecordingProcessPromise
(
avRecorder
,
recorderTime
)
await
pauseRecordingProcessPromise
(
avRecorder
)
await
resumeRecordingProcessPromise
(
avRecorder
);
await
stopRecordingProcessPromise
(
avRecorder
)
await
releaseRecorderCallBack
(
avRecorder
,
done
)
}
export
async
function
getInputSurfaceErrPromise
(
avRecorder
)
{
let
result
=
true
;
if
(
typeof
(
avRecorder
)
==
'
undefined
'
)
{
return
;
}
await
avRecorder
.
getInputSurface
().
then
((
surfaceId
)
=>
{
console
.
info
(
'
getInputSurface success
'
);
videoSurfaceId
=
surfaceId
;
}).
catch
((
err
)
=>
{
result
=
false
;
expect
(
result
).
assertEqual
(
false
);
console
.
info
(
'
getInputSurface failed and catch error is
'
+
err
.
message
);
sleep
(
1000
);
});
}
export
async
function
create2GetInputSurfacePromise
(
avConfig
,
avRecorder
,
done
)
{
avRecorder
=
await
AVRecorderTestBase
.
idle
(
avRecorder
);
console
.
info
(
'
case create2GetInputSurfacePromise avConfig.url is
'
+
avConfig
.
url
);
setAvRecorderCallback
(
avRecorder
,
done
);
await
getInputSurfaceErrPromise
(
avRecorder
);
await
AVRecorderTestBase
.
releasePromise
(
avRecorder
);
done
();
}
export
async
function
create2GetInputSurfacePromise2
(
avConfig
,
avRecorder
,
done
)
{
avRecorder
=
await
AVRecorderTestBase
.
idle
(
avRecorder
);
console
.
info
(
'
case create2GetInputSurfacePromise2 avConfig.url is
'
+
avConfig
.
url
);
setAvRecorderCallback
(
avRecorder
,
done
);
await
AVRecorderTestBase
.
preparePromise
(
avRecorder
,
avConfig
);
await
getInputSurfacePromise
(
avRecorder
);
await
initCamera
();
await
releaseRecorderPromise
(
avRecorder
,
done
);
}
export
async
function
create2GetInputSurfacePromise3
(
avConfig
,
avRecorder
,
recorderTime
,
done
)
{
avRecorder
=
await
AVRecorderTestBase
.
idle
(
avRecorder
);
console
.
info
(
'
case create2GetInputSurfacePromise2 avConfig.url is
'
+
avConfig
.
url
);
setAvRecorderCallback
(
avRecorder
,
done
);
await
AVRecorderTestBase
.
preparePromise
(
avRecorder
,
avConfig
);
await
getInputSurfacePromise
(
avRecorder
);
await
initCamera
();
await
startRecordingProcessPromise
(
avRecorder
,
recorderTime
);
await
getInputSurfaceErrPromise
(
avRecorder
);
await
releaseRecorderPromise
(
avRecorder
,
done
);
}
export
async
function
create2GetInputSurfacePromise4
(
avConfig
,
avRecorder
,
recorderTime
,
done
)
{
avRecorder
=
await
AVRecorderTestBase
.
idle
(
avRecorder
);
console
.
info
(
'
case create2GetInputSurfacePromise2 avConfig.url is
'
+
avConfig
.
url
);
setAvRecorderCallback
(
avRecorder
,
done
);
await
AVRecorderTestBase
.
preparePromise
(
avRecorder
,
avConfig
);
await
getInputSurfacePromise
(
avRecorder
);
await
initCamera
();
await
startRecordingProcessPromise
(
avRecorder
,
recorderTime
);
await
AVRecorderTestBase
.
pausePromise
(
avRecorder
);
await
getInputSurfaceErrPromise
(
avRecorder
);
await
stopCameraOutput
();
await
releaseRecorderPromise
(
avRecorder
,
done
);
}
export
async
function
create2GetInputSurfacePromise5
(
avConfig
,
avRecorder
,
recorderTime
,
done
)
{
avRecorder
=
await
AVRecorderTestBase
.
idle
(
avRecorder
);
console
.
info
(
'
case create2GetInputSurfacePromise2 avConfig.url is
'
+
avConfig
.
url
);
setAvRecorderCallback
(
avRecorder
,
done
);
await
AVRecorderTestBase
.
preparePromise
(
avRecorder
,
avConfig
);
await
getInputSurfacePromise
(
avRecorder
);
await
initCamera
();
await
startRecordingProcessPromise
(
avRecorder
,
recorderTime
);
await
AVRecorderTestBase
.
pausePromise
(
avRecorder
);
await
AVRecorderTestBase
.
resumePromise
(
avRecorder
);
await
stopCameraOutput
();
await
getInputSurfaceErrPromise
(
avRecorder
);
await
releaseRecorderPromise
(
avRecorder
,
done
);
}
export
async
function
create2GetInputSurfacePromise6
(
avConfig
,
avRecorder
,
recorderTime
,
done
)
{
avRecorder
=
await
AVRecorderTestBase
.
idle
(
avRecorder
);
console
.
info
(
'
case create2GetInputSurfacePromise2 avConfig.url is
'
+
avConfig
.
url
);
setAvRecorderCallback
(
avRecorder
,
done
);
await
AVRecorderTestBase
.
preparePromise
(
avRecorder
,
avConfig
);
await
getInputSurfacePromise
(
avRecorder
);
await
initCamera
();
await
startRecordingProcessPromise
(
avRecorder
,
recorderTime
);
await
AVRecorderTestBase
.
stopPromise
(
avRecorder
);
await
getInputSurfaceErrPromise
(
avRecorder
);
await
stopCameraOutput
();
await
releaseRecorderPromise
(
avRecorder
,
done
);
}
export
async
function
create2GetInputSurfacePromise7
(
avConfig
,
avRecorder
,
recorderTime
,
done
)
{
avRecorder
=
await
AVRecorderTestBase
.
idle
(
avRecorder
);
console
.
info
(
'
case create2GetInputSurfacePromise2 avConfig.url is
'
+
avConfig
.
url
);
setAvRecorderCallback
(
avRecorder
,
done
);
await
AVRecorderTestBase
.
preparePromise
(
avRecorder
,
avConfig
);
await
getInputSurfacePromise
(
avRecorder
);
await
initCamera
();
await
startRecordingProcessPromise
(
avRecorder
,
recorderTime
);
await
AVRecorderTestBase
.
resetPromise
(
avRecorder
);
await
getInputSurfaceErrPromise
(
avRecorder
);
await
stopCameraOutput
();
await
releaseRecorderPromise
(
avRecorder
,
done
);
}
export
async
function
getInputSurface3TimesPromise
(
avConfig
,
avRecorder
,
loopTimes
,
done
)
{
avRecorder
=
await
AVRecorderTestBase
.
idle
(
avRecorder
);
console
.
info
(
'
case create2GetInputSurfacePromise2 avConfig.url is
'
+
avConfig
.
url
);
setAvRecorderCallback
(
avRecorder
,
done
);
await
AVRecorderTestBase
.
preparePromise
(
avRecorder
,
avConfig
);
while
(
loopTimes
>
0
)
{
await
getInputSurfacePromise
(
avRecorder
);
loopTimes
--
;
}
await
initCamera
();
await
releaseRecorderPromise
(
avRecorder
,
done
);
}
// Promise start
export
async
function
startErrPromise
(
avRecorder
,
recorderTime
)
{
let
result
=
true
;
if
(
typeof
(
avRecorder
)
==
'
undefined
'
)
{
return
;
}
await
avRecorder
.
start
().
then
(()
=>
{
console
.
info
(
'
start success
'
);
if
(
recorderTime
!=
undefined
)
{
sleep
(
recorderTime
);
}
}).
catch
((
err
)
=>
{
result
=
false
;
expect
(
result
).
assertEqual
(
false
);
console
.
info
(
'
start failed and catch error is
'
+
err
.
message
);
sleep
(
1000
);
});
}
export
async
function
create2StartPromise
(
avConfig
,
avRecorder
,
recorderTime
,
done
)
{
avRecorder
=
await
AVRecorderTestBase
.
idle
(
avRecorder
);
console
.
info
(
'
case create2StartPromise avConfig.url is
'
+
avConfig
.
url
);
setAvRecorderCallback
(
avRecorder
,
done
);
await
startErrPromise
(
avRecorder
,
recorderTime
);
await
AVRecorderTestBase
.
releasePromise
(
avRecorder
);
done
();
}
export
async
function
prepare2StartPromise
(
avConfig
,
avRecorder
,
recorderTime
,
done
)
{
avRecorder
=
await
AVRecorderTestBase
.
idle
(
avRecorder
);
console
.
info
(
'
case prepare2StartPromise avConfig.url is
'
+
avConfig
.
url
);
setAvRecorderCallback
(
avRecorder
,
done
);
await
AVRecorderTestBase
.
preparePromise
(
avRecorder
,
avConfig
);
await
startErrPromise
(
avRecorder
,
recorderTime
);
await
AVRecorderTestBase
.
releasePromise
(
avRecorder
);
done
();
}
export
async
function
pause2StartPromise
(
avConfig
,
avRecorder
,
recorderTime
,
done
)
{
avRecorder
=
await
AVRecorderTestBase
.
idle
(
avRecorder
);
console
.
info
(
'
case pause2StartPromise avConfig.url is
'
+
avConfig
.
url
);
setAvRecorderCallback
(
avRecorder
,
done
);
await
AVRecorderTestBase
.
preparePromise
(
avRecorder
,
avConfig
);
await
getInputSurfacePromise
(
avRecorder
);
await
initCamera
();
await
startRecordingProcessPromise
(
avRecorder
,
recorderTime
);
await
AVRecorderTestBase
.
pausePromise
(
avRecorder
);
await
startErrPromise
(
avRecorder
,
recorderTime
);
await
stopCameraOutput
();
await
releaseRecorderPromise
(
avRecorder
,
done
);
}
export
async
function
resume2StartPromise
(
avConfig
,
avRecorder
,
recorderTime
,
done
)
{
avRecorder
=
await
AVRecorderTestBase
.
idle
(
avRecorder
);
console
.
info
(
'
case resume2StartPromise avConfig.url is
'
+
avConfig
.
url
);
setAvRecorderCallback
(
avRecorder
,
done
);
await
AVRecorderTestBase
.
preparePromise
(
avRecorder
,
avConfig
);
await
getInputSurfacePromise
(
avRecorder
);
await
initCamera
();
await
startRecordingProcessPromise
(
avRecorder
,
recorderTime
);
await
AVRecorderTestBase
.
pausePromise
(
avRecorder
);
await
AVRecorderTestBase
.
resumePromise
(
avRecorder
);
await
startErrPromise
(
avRecorder
,
recorderTime
);
await
stopCameraOutput
();
await
releaseRecorderPromise
(
avRecorder
,
done
);
}
export
async
function
stop2StartPromise
(
avConfig
,
avRecorder
,
recorderTime
,
done
)
{
avRecorder
=
await
AVRecorderTestBase
.
idle
(
avRecorder
);
console
.
info
(
'
case stop2StartPromise avConfig.url is
'
+
avConfig
.
url
);
setAvRecorderCallback
(
avRecorder
,
done
);
await
AVRecorderTestBase
.
preparePromise
(
avRecorder
,
avConfig
);
await
getInputSurfacePromise
(
avRecorder
);
await
initCamera
();
await
startRecordingProcessPromise
(
avRecorder
,
recorderTime
);
await
AVRecorderTestBase
.
stopPromise
(
avRecorder
);
await
startErrPromise
(
avRecorder
,
recorderTime
);
await
stopCameraOutput
();
await
releaseRecorderPromise
(
avRecorder
,
done
);
}
export
async
function
reset2StartPromise
(
avConfig
,
avRecorder
,
recorderTime
,
done
)
{
avRecorder
=
await
AVRecorderTestBase
.
idle
(
avRecorder
);
console
.
info
(
'
case reset2StartPromise avConfig.url is
'
+
avConfig
.
url
);
setAvRecorderCallback
(
avRecorder
,
done
);
await
AVRecorderTestBase
.
preparePromise
(
avRecorder
,
avConfig
);
await
getInputSurfacePromise
(
avRecorder
);
await
initCamera
();
await
startRecordingProcessPromise
(
avRecorder
,
recorderTime
);
await
AVRecorderTestBase
.
resetPromise
(
avRecorder
);
await
startErrPromise
(
avRecorder
,
recorderTime
);
await
stopCameraOutput
();
await
releaseRecorderPromise
(
avRecorder
,
done
);
}
export
async
function
getInputSurface2StartPromise
(
avConfig
,
avRecorder
,
recorderTime
,
done
)
{
avRecorder
=
await
AVRecorderTestBase
.
idle
(
avRecorder
);
console
.
info
(
'
case getInputSurface2StartPromise avConfig.url is
'
+
avConfig
.
url
);
setAvRecorderCallback
(
avRecorder
,
done
);
await
AVRecorderTestBase
.
preparePromise
(
avRecorder
,
avConfig
);
await
getInputSurfacePromise
(
avRecorder
);
await
initCamera
();
await
startRecordingProcessPromise
(
avRecorder
,
recorderTime
);
await
releaseRecorderPromise
(
avRecorder
,
done
);
}
export
async
function
start3TimesPromise
(
avConfig
,
avRecorder
,
recorderTime
,
loopTimes
,
done
)
{
avRecorder
=
await
AVRecorderTestBase
.
idle
(
avRecorder
);
console
.
info
(
'
case start3TimesPromise avConfig.url is
'
+
avConfig
.
url
);
setAvRecorderCallback
(
avRecorder
,
done
);
await
AVRecorderTestBase
.
preparePromise
(
avRecorder
,
avConfig
);
await
getInputSurfacePromise
(
avRecorder
);
await
initCamera
();
while
(
loopTimes
>
0
)
{
await
startRecordingProcessPromise
(
avRecorder
,
recorderTime
);
await
AVRecorderTestBase
.
resetPromise
(
avRecorder
);
await
AVRecorderTestBase
.
preparePromise
(
avRecorder
,
avConfig
);
loopTimes
--
;
}
await
releaseRecorderPromise
(
avRecorder
,
done
);
}
// Promise pause
export
async
function
pauseErrPromise
(
avRecorder
)
{
let
result
=
true
;
if
(
typeof
(
avRecorder
)
==
'
undefined
'
)
{
return
;
}
await
avRecorder
.
pause
().
then
(()
=>
{
expect
(
avRecorder
.
state
).
assertEqual
(
AV_RECORDER_STATE
.
PAUSED
);
console
.
info
(
'
pause success
'
);
}).
catch
((
err
)
=>
{
result
=
false
;
expect
(
result
).
assertEqual
(
false
);
console
.
info
(
'
pause failed and catch error is
'
+
err
.
message
);
sleep
(
1000
);
});
}
export
async
function
create2PausePromise
(
avConfig
,
avRecorder
,
done
)
{
avRecorder
=
await
AVRecorderTestBase
.
idle
(
avRecorder
);
console
.
info
(
'
case create2PausePromise avConfig.url is
'
+
avConfig
.
url
);
setAvRecorderCallback
(
avRecorder
,
done
);
await
pauseErrPromise
(
avRecorder
);
await
AVRecorderTestBase
.
releasePromise
(
avRecorder
);
done
();
}
export
async
function
prepare2PausePromise
(
avConfig
,
avRecorder
,
done
)
{
avRecorder
=
await
AVRecorderTestBase
.
idle
(
avRecorder
);
console
.
info
(
'
case prepare2PausePromise avConfig.url is
'
+
avConfig
.
url
);
setAvRecorderCallback
(
avRecorder
,
done
);
await
AVRecorderTestBase
.
preparePromise
(
avRecorder
,
avConfig
);
await
pauseErrPromise
(
avRecorder
);
await
AVRecorderTestBase
.
releasePromise
(
avRecorder
);
done
();
}
export
async
function
start2PausePromise
(
avConfig
,
avRecorder
,
recorderTime
,
done
)
{
avRecorder
=
await
AVRecorderTestBase
.
idle
(
avRecorder
);
console
.
info
(
'
case start2PausePromise avConfig.url is
'
+
avConfig
.
url
);
setAvRecorderCallback
(
avRecorder
,
done
);
await
AVRecorderTestBase
.
preparePromise
(
avRecorder
,
avConfig
);
await
getInputSurfacePromise
(
avRecorder
);
await
initCamera
();
await
startRecordingProcessPromise
(
avRecorder
,
recorderTime
);
await
pauseRecordingProcessPromise
(
avRecorder
);
await
releaseRecorderPromise
(
avRecorder
,
done
);
}
export
async
function
resume2PausePromise
(
avConfig
,
avRecorder
,
recorderTime
,
done
)
{
avRecorder
=
await
AVRecorderTestBase
.
idle
(
avRecorder
);
console
.
info
(
'
case resume2PausePromise avConfig.url is
'
+
avConfig
.
url
);
setAvRecorderCallback
(
avRecorder
,
done
);
await
AVRecorderTestBase
.
preparePromise
(
avRecorder
,
avConfig
);
await
getInputSurfacePromise
(
avRecorder
);
await
initCamera
();
await
startRecordingProcessPromise
(
avRecorder
,
recorderTime
);
await
pauseRecordingProcessPromise
(
avRecorder
);
await
resumeRecordingProcessPromise
(
avRecorder
);
// await AVRecorderTestBase.pausePromise(avRecorder);
// await AVRecorderTestBase.resumePromise(avRecorder);
await
pauseRecordingProcessPromise
(
avRecorder
);
await
releaseRecorderPromise
(
avRecorder
,
done
);
}
export
async
function
stop2PausePromise
(
avConfig
,
avRecorder
,
recorderTime
,
done
)
{
avRecorder
=
await
AVRecorderTestBase
.
idle
(
avRecorder
);
console
.
info
(
'
case stop2PausePromise avConfig.url is
'
+
avConfig
.
url
);
setAvRecorderCallback
(
avRecorder
,
done
);
await
AVRecorderTestBase
.
preparePromise
(
avRecorder
,
avConfig
);
await
getInputSurfacePromise
(
avRecorder
);
await
initCamera
();
await
startRecordingProcessPromise
(
avRecorder
,
recorderTime
);
await
AVRecorderTestBase
.
stopPromise
(
avRecorder
);
await
pauseErrPromise
(
avRecorder
);
await
stopCameraOutput
();
await
releaseRecorderPromise
(
avRecorder
,
done
);
}
export
async
function
reset2PausePromise
(
avConfig
,
avRecorder
,
recorderTime
,
done
)
{
avRecorder
=
await
AVRecorderTestBase
.
idle
(
avRecorder
);
console
.
info
(
'
case reset2PausePromise avConfig.url is
'
+
avConfig
.
url
);
setAvRecorderCallback
(
avRecorder
,
done
);
await
AVRecorderTestBase
.
preparePromise
(
avRecorder
,
avConfig
);
await
getInputSurfacePromise
(
avRecorder
);
await
initCamera
();
await
startRecordingProcessPromise
(
avRecorder
,
recorderTime
);
await
AVRecorderTestBase
.
resetPromise
(
avRecorder
);
await
pauseErrPromise
(
avRecorder
);
await
stopCameraOutput
();
await
releaseRecorderPromise
(
avRecorder
,
done
);
}
export
async
function
getInputSurface2PausePromise
(
avConfig
,
avRecorder
,
done
)
{
avRecorder
=
await
AVRecorderTestBase
.
idle
(
avRecorder
);
console
.
info
(
'
case getInputSurface2PausePromise avConfig.url is
'
+
avConfig
.
url
);
setAvRecorderCallback
(
avRecorder
,
done
);
await
AVRecorderTestBase
.
preparePromise
(
avRecorder
,
avConfig
);
await
getInputSurfacePromise
(
avRecorder
);
await
initCamera
();
await
pauseErrPromise
(
avRecorder
);
await
releaseRecorderPromise
(
avRecorder
,
done
);
}
export
async
function
pause3TimesPromise
(
avConfig
,
avRecorder
,
recorderTime
,
loopTimes
,
done
)
{
avRecorder
=
await
AVRecorderTestBase
.
idle
(
avRecorder
);
console
.
info
(
'
case pause3TimesPromise avConfig.url is
'
+
avConfig
.
url
);
setAvRecorderCallback
(
avRecorder
,
done
);
await
AVRecorderTestBase
.
preparePromise
(
avRecorder
,
avConfig
);
await
getInputSurfacePromise
(
avRecorder
);
await
initCamera
();
await
startRecordingProcessPromise
(
avRecorder
,
recorderTime
);
while
(
loopTimes
>
0
)
{
await
pauseRecordingProcessPromise
(
avRecorder
);
await
resumeRecordingProcessPromise
(
avRecorder
);
loopTimes
--
;
}
await
releaseRecorderPromise
(
avRecorder
,
done
);
}
// Promise
export
async
function
recordStart2ReleaseWithPromise
(
avConfig
,
avRecorder
,
recorderTime
,
done
)
{
avRecorder
=
await
AVRecorderTestBase
.
idle
(
avRecorder
);
console
.
info
(
'
case recordStart2ReleaseWithPromise avConfig.url is
'
+
avConfig
.
url
);
setAvRecorderCallback
(
avRecorder
,
done
);
await
AVRecorderTestBase
.
preparePromise
(
avRecorder
,
avConfig
);
await
getInputSurfacePromise
(
avRecorder
);
await
initCamera
();
await
startRecordingProcessPromise
(
avRecorder
,
recorderTime
);
await
releaseRecorderPromise
(
avRecorder
,
done
);
}
export
async
function
recordStart2PauseWithPromise
(
avConfig
,
avRecorder
,
recorderTime
,
done
)
{
avRecorder
=
await
AVRecorderTestBase
.
idle
(
avRecorder
);
console
.
info
(
'
case recordStart2PauseWithPromise avConfig.url is
'
+
avConfig
.
url
);
setAvRecorderCallback
(
avRecorder
,
done
);
await
AVRecorderTestBase
.
preparePromise
(
avRecorder
,
avConfig
);
await
getInputSurfacePromise
(
avRecorder
);
await
initCamera
();
await
startRecordingProcessPromise
(
avRecorder
,
recorderTime
);
await
pauseRecordingProcessPromise
(
avRecorder
);
await
releaseRecorderPromise
(
avRecorder
,
done
);
}
export
async
function
recordStart2ResumeWithPromise
(
avConfig
,
avRecorder
,
recorderTime
,
done
)
{
avRecorder
=
await
AVRecorderTestBase
.
idle
(
avRecorder
);
console
.
info
(
'
case recordStart2ResumeWithPromise avConfig.url is
'
+
avConfig
.
url
);
setAvRecorderCallback
(
avRecorder
,
done
);
await
AVRecorderTestBase
.
preparePromise
(
avRecorder
,
avConfig
);
await
getInputSurfacePromise
(
avRecorder
);
await
initCamera
();
await
startRecordingProcessPromise
(
avRecorder
,
recorderTime
);
await
AVRecorderTestBase
.
pausePromise
(
avRecorder
);
await
AVRecorderTestBase
.
resumePromise
(
avRecorder
);
await
stopCameraOutput
();
await
releaseRecorderPromise
(
avRecorder
,
done
);
}
export
async
function
recordStart2StopWithPromise
(
avConfig
,
avRecorder
,
recorderTime
,
done
)
{
avRecorder
=
await
AVRecorderTestBase
.
idle
(
avRecorder
);
console
.
info
(
'
case recordStart2StopWithPromise avConfig.url is
'
+
avConfig
.
url
);
setAvRecorderCallback
(
avRecorder
,
done
);
await
AVRecorderTestBase
.
preparePromise
(
avRecorder
,
avConfig
);
await
getInputSurfacePromise
(
avRecorder
);
await
initCamera
();
await
startRecordingProcessPromise
(
avRecorder
,
recorderTime
);
await
stopRecordingProcessPromise
(
avRecorder
);
await
releaseRecorderPromise
(
avRecorder
,
done
);
}
export
async
function
recordStart2ResetWithPromise
(
avConfig
,
avRecorder
,
recorderTime
,
done
)
{
avRecorder
=
await
AVRecorderTestBase
.
idle
(
avRecorder
);
console
.
info
(
'
case recordStart2ResetWithPromise avConfig.url is
'
+
avConfig
.
url
);
setAvRecorderCallback
(
avRecorder
,
done
);
await
AVRecorderTestBase
.
preparePromise
(
avRecorder
,
avConfig
);
await
getInputSurfacePromise
(
avRecorder
);
await
initCamera
();
await
startRecordingProcessPromise
(
avRecorder
,
recorderTime
);
await
resetRecordingProcessPromise
(
avRecorder
);
await
releaseRecorderPromise
(
avRecorder
,
done
);
}
export
async
function
recordStart2Pause2StopWithPromise
(
avConfig
,
avRecorder
,
recorderTime
,
done
)
{
avRecorder
=
await
AVRecorderTestBase
.
idle
(
avRecorder
);
console
.
info
(
'
case recordStart2Pause2StopWithPromise avConfig.url is
'
+
avConfig
.
url
);
setAvRecorderCallback
(
avRecorder
,
done
);
await
AVRecorderTestBase
.
preparePromise
(
avRecorder
,
avConfig
);
await
getInputSurfacePromise
(
avRecorder
);
await
initCamera
();
await
startRecordingProcessPromise
(
avRecorder
,
recorderTime
);
await
AVRecorderTestBase
.
pausePromise
(
avRecorder
);
await
stopRecordingProcessPromise
(
avRecorder
);
await
releaseRecorderPromise
(
avRecorder
,
done
);
}
export
async
function
recordStart2Pause2ResetWithPromise
(
avConfig
,
avRecorder
,
recorderTime
,
done
)
{
avRecorder
=
await
AVRecorderTestBase
.
idle
(
avRecorder
);
console
.
info
(
'
case recordStart2Pause2ResetWithPromise avConfig.url is
'
+
avConfig
.
url
);
setAvRecorderCallback
(
avRecorder
,
done
);
await
AVRecorderTestBase
.
preparePromise
(
avRecorder
,
avConfig
);
await
getInputSurfacePromise
(
avRecorder
);
await
initCamera
();
await
startRecordingProcessPromise
(
avRecorder
,
recorderTime
);
await
AVRecorderTestBase
.
pausePromise
(
avRecorder
);
await
resetRecordingProcessPromise
(
avRecorder
);
await
releaseRecorderPromise
(
avRecorder
,
done
);
}
export
async
function
recordStart2Resume2WithPromise
(
avConfig
,
avRecorder
,
recorderTime
,
done
)
{
avRecorder
=
await
AVRecorderTestBase
.
idle
(
avRecorder
);
console
.
info
(
'
case recordStart2Resume2WithPromise avConfig.url is
'
+
avConfig
.
url
);
setAvRecorderCallback
(
avRecorder
,
done
);
await
AVRecorderTestBase
.
preparePromise
(
avRecorder
,
avConfig
);
await
getInputSurfacePromise
(
avRecorder
);
await
initCamera
();
await
startRecordingProcessPromise
(
avRecorder
,
recorderTime
);
await
AVRecorderTestBase
.
pausePromise
(
avRecorder
);
await
AVRecorderTestBase
.
resumePromise
(
avRecorder
);
await
stopRecordingProcessPromise
(
avRecorder
);
await
releaseRecorderPromise
(
avRecorder
,
done
);
}
export
async
function
recordStart2reset2WithPromise
(
avConfig
,
avRecorder
,
recorderTime
,
done
)
{
avRecorder
=
await
AVRecorderTestBase
.
idle
(
avRecorder
);
console
.
info
(
'
case recordStart2reset2WithPromise avConfig.url is
'
+
avConfig
.
url
);
setAvRecorderCallback
(
avRecorder
,
done
);
await
AVRecorderTestBase
.
preparePromise
(
avRecorder
,
avConfig
);
await
getInputSurfacePromise
(
avRecorder
);
await
initCamera
();
await
startRecordingProcessPromise
(
avRecorder
,
recorderTime
);
await
AVRecorderTestBase
.
pausePromise
(
avRecorder
);
await
AVRecorderTestBase
.
resumePromise
(
avRecorder
);
await
resetRecordingProcessPromise
(
avRecorder
);
await
releaseRecorderPromise
(
avRecorder
,
done
);
}
multimedia/media/media_js_standard/avRecorder/src/main/js/test/AvVideoRecorderFuncTestOne.test.js
浏览文件 @
d1e0e582
...
@@ -118,6 +118,151 @@ export default function avVideoRecorderTestOne() {
...
@@ -118,6 +118,151 @@ export default function avVideoRecorderTestOne() {
console
.
info
(
TAG
+
'
SUB_MULTIMEDIA_AVRECORDER_VIDEO_FUNCTION_PROMISE_MPEG4_0100 end
'
)
console
.
info
(
TAG
+
'
SUB_MULTIMEDIA_AVRECORDER_VIDEO_FUNCTION_PROMISE_MPEG4_0100 end
'
)
})
})
/* *
* @tc.number : SUB_MULTIMEDIA_AVRECORDER_VIDEO_RESUME_PROMISE_0100
* @tc.name : 001.test start-resume
* @tc.desc : Recorder video start-resume
* @tc.size : MediumTest
* @tc.type : Function test
* @tc.level : Level2
*/
it
(
'
SUB_MULTIMEDIA_AVRECORDER_VIDEO_RESUME_PROMISE_0100
'
,
0
,
async
function
(
done
)
{
console
.
info
(
TAG
+
'
SUB_MULTIMEDIA_AVRECORDER_VIDEO_RESUME_PROMISE_0100 start
'
)
let
fileName
=
avVideoRecorderTestBase
.
resourceName
()
fdObject
=
await
mediaTestBase
.
getAvRecorderFd
(
fileName
,
"
video
"
);
fdPath
=
"
fd://
"
+
fdObject
.
fdNumber
;
avConfig
.
url
=
fdPath
;
avVideoRecorderTestBase
.
avRecorderResumePromise1
(
avConfig
,
avRecorder
,
recorderTime
,
done
);
console
.
info
(
TAG
+
'
SUB_MULTIMEDIA_AVRECORDER_VIDEO_RESUME_PROMISE_0100 end
'
)
})
/* *
* @tc.number : SUB_MULTIMEDIA_AVRECORDER_VIDEO_RESUME_PROMISE_0200
* @tc.name : 001.test start-resume
* @tc.desc : Recorder video start-resume
* @tc.size : MediumTest
* @tc.type : Function test
* @tc.level : Level2
*/
it
(
'
SUB_MULTIMEDIA_AVRECORDER_VIDEO_RESUME_PROMISE_0200
'
,
0
,
async
function
(
done
)
{
console
.
info
(
TAG
+
'
SUB_MULTIMEDIA_AVRECORDER_VIDEO_RESUME_PROMISE_0200 start
'
)
let
fileName
=
avVideoRecorderTestBase
.
resourceName
()
fdObject
=
await
mediaTestBase
.
getAvRecorderFd
(
fileName
,
"
video
"
);
fdPath
=
"
fd://
"
+
fdObject
.
fdNumber
;
avConfig
.
url
=
fdPath
;
avVideoRecorderTestBase
.
avRecorderResumePromise2
(
avConfig
,
avRecorder
,
recorderTime
,
done
);
console
.
info
(
TAG
+
'
SUB_MULTIMEDIA_AVRECORDER_VIDEO_RESUME_PROMISE_0200 end
'
)
})
/* *
* @tc.number : SUB_MULTIMEDIA_AVRECORDER_VIDEO_RESUME_PROMISE_0300
* @tc.name : 001.test start-resume
* @tc.desc : Recorder video start-resume
* @tc.size : MediumTest
* @tc.type : Function test
* @tc.level : Level2
*/
it
(
'
SUB_MULTIMEDIA_AVRECORDER_VIDEO_RESUME_PROMISE_0300
'
,
0
,
async
function
(
done
)
{
console
.
info
(
TAG
+
'
SUB_MULTIMEDIA_AVRECORDER_VIDEO_RESUME_PROMISE_0300 start
'
)
let
fileName
=
avVideoRecorderTestBase
.
resourceName
()
fdObject
=
await
mediaTestBase
.
getAvRecorderFd
(
fileName
,
"
video
"
);
fdPath
=
"
fd://
"
+
fdObject
.
fdNumber
;
avConfig
.
url
=
fdPath
;
avVideoRecorderTestBase
.
avRecorderResumePromise3
(
avConfig
,
avRecorder
,
recorderTime
,
done
);
console
.
info
(
TAG
+
'
SUB_MULTIMEDIA_AVRECORDER_VIDEO_RESUME_PROMISE_0300 end
'
)
})
/* *
* @tc.number : SUB_MULTIMEDIA_AVRECORDER_VIDEO_RESUME_PROMISE_0400
* @tc.name : 001.test start-resume
* @tc.desc : Recorder video start-resume
* @tc.size : MediumTest
* @tc.type : Function test
* @tc.level : Level2
*/
it
(
'
SUB_MULTIMEDIA_AVRECORDER_VIDEO_RESUME_PROMISE_0400
'
,
0
,
async
function
(
done
)
{
console
.
info
(
TAG
+
'
SUB_MULTIMEDIA_AVRECORDER_VIDEO_RESUME_PROMISE_0400 start
'
)
let
fileName
=
avVideoRecorderTestBase
.
resourceName
()
fdObject
=
await
mediaTestBase
.
getAvRecorderFd
(
fileName
,
"
video
"
);
fdPath
=
"
fd://
"
+
fdObject
.
fdNumber
;
avConfig
.
url
=
fdPath
;
avVideoRecorderTestBase
.
avRecorderResumePromise4
(
avConfig
,
avRecorder
,
recorderTime
,
done
);
console
.
info
(
TAG
+
'
SUB_MULTIMEDIA_AVRECORDER_VIDEO_RESUME_PROMISE_0400 end
'
)
})
/* *
* @tc.number : SUB_MULTIMEDIA_AVRECORDER_VIDEO_RESUME_PROMISE_0500
* @tc.name : 001.test start-resume
* @tc.desc : Recorder video start-resume
* @tc.size : MediumTest
* @tc.type : Function test
* @tc.level : Level2
*/
it
(
'
SUB_MULTIMEDIA_AVRECORDER_VIDEO_RESUME_PROMISE_0500
'
,
0
,
async
function
(
done
)
{
console
.
info
(
TAG
+
'
SUB_MULTIMEDIA_AVRECORDER_VIDEO_RESUME_PROMISE_0500 start
'
)
let
fileName
=
avVideoRecorderTestBase
.
resourceName
()
fdObject
=
await
mediaTestBase
.
getAvRecorderFd
(
fileName
,
"
video
"
);
fdPath
=
"
fd://
"
+
fdObject
.
fdNumber
;
avConfig
.
url
=
fdPath
;
avVideoRecorderTestBase
.
avRecorderResumePromise5
(
avConfig
,
avRecorder
,
recorderTime
,
done
);
console
.
info
(
TAG
+
'
SUB_MULTIMEDIA_AVRECORDER_VIDEO_RESUME_PROMISE_0500 end
'
)
})
/* *
* @tc.number : SUB_MULTIMEDIA_AVRECORDER_VIDEO_RESUME_PROMISE_0600
* @tc.name : 001.test start-resume
* @tc.desc : Recorder video start-resume
* @tc.size : MediumTest
* @tc.type : Function test
* @tc.level : Level2
*/
it
(
'
SUB_MULTIMEDIA_AVRECORDER_VIDEO_RESUME_PROMISE_0600
'
,
0
,
async
function
(
done
)
{
console
.
info
(
TAG
+
'
SUB_MULTIMEDIA_AVRECORDER_VIDEO_RESUME_PROMISE_0600 start
'
)
let
fileName
=
avVideoRecorderTestBase
.
resourceName
()
fdObject
=
await
mediaTestBase
.
getAvRecorderFd
(
fileName
,
"
video
"
);
fdPath
=
"
fd://
"
+
fdObject
.
fdNumber
;
avConfig
.
url
=
fdPath
;
avVideoRecorderTestBase
.
avRecorderResumePromise6
(
avConfig
,
avRecorder
,
recorderTime
,
done
);
console
.
info
(
TAG
+
'
SUB_MULTIMEDIA_AVRECORDER_VIDEO_RESUME_PROMISE_0600 end
'
)
})
/* *
* @tc.number : SUB_MULTIMEDIA_AVRECORDER_VIDEO_RESUME_PROMISE_0700
* @tc.name : 001.test start-resume
* @tc.desc : Recorder video start-resume
* @tc.size : MediumTest
* @tc.type : Function test
* @tc.level : Level2
*/
it
(
'
SUB_MULTIMEDIA_AVRECORDER_VIDEO_RESUME_PROMISE_0700
'
,
0
,
async
function
(
done
)
{
console
.
info
(
TAG
+
'
SUB_MULTIMEDIA_AVRECORDER_VIDEO_RESUME_PROMISE_0700 start
'
)
let
fileName
=
avVideoRecorderTestBase
.
resourceName
()
fdObject
=
await
mediaTestBase
.
getAvRecorderFd
(
fileName
,
"
video
"
);
fdPath
=
"
fd://
"
+
fdObject
.
fdNumber
;
avConfig
.
url
=
fdPath
;
avVideoRecorderTestBase
.
avRecorderResumePromise7
(
avConfig
,
avRecorder
,
recorderTime
,
done
);
console
.
info
(
TAG
+
'
SUB_MULTIMEDIA_AVRECORDER_VIDEO_RESUME_PROMISE_0700 end
'
)
})
/* *
* @tc.number : SUB_MULTIMEDIA_AVRECORDER_VIDEO_RESUME_PROMISE_0800
* @tc.name : 001.test start-resume
* @tc.desc : Recorder video start-resume
* @tc.size : MediumTest
* @tc.type : Function test
* @tc.level : Level2
*/
it
(
'
SUB_MULTIMEDIA_AVRECORDER_VIDEO_RESUME_PROMISE_0800
'
,
0
,
async
function
(
done
)
{
console
.
info
(
TAG
+
'
SUB_MULTIMEDIA_AVRECORDER_VIDEO_RESUME_PROMISE_0800 start
'
)
let
fileName
=
avVideoRecorderTestBase
.
resourceName
()
fdObject
=
await
mediaTestBase
.
getAvRecorderFd
(
fileName
,
"
video
"
);
fdPath
=
"
fd://
"
+
fdObject
.
fdNumber
;
avConfig
.
url
=
fdPath
;
avVideoRecorderTestBase
.
avRecorderResumePromise8
(
avConfig
,
avRecorder
,
recorderTime
,
done
);
console
.
info
(
TAG
+
'
SUB_MULTIMEDIA_AVRECORDER_VIDEO_RESUME_PROMISE_0800 end
'
)
})
/* *
/* *
* @tc.number : SUB_MULTIMEDIA_AVRECORDER_VIDEO_STOP_PROMISE_0100
* @tc.number : SUB_MULTIMEDIA_AVRECORDER_VIDEO_STOP_PROMISE_0100
* @tc.name : 001.test create-stop
* @tc.name : 001.test create-stop
...
@@ -189,8 +334,6 @@ export default function avVideoRecorderTestOne() {
...
@@ -189,8 +334,6 @@ export default function avVideoRecorderTestOne() {
avVideoRecorderTestBase
.
avRecorderResetPromise7
(
avConfig
,
avRecorder
,
recorderTime
,
done
);
avVideoRecorderTestBase
.
avRecorderResetPromise7
(
avConfig
,
avRecorder
,
recorderTime
,
done
);
console
.
info
(
TAG
+
'
SUB_MULTIMEDIA_AVRECORDER_VIDEO_RESET_PROMISE_0700 end
'
)
console
.
info
(
TAG
+
'
SUB_MULTIMEDIA_AVRECORDER_VIDEO_RESET_PROMISE_0700 end
'
)
})
})
})
})
}
}
multimedia/media/media_js_standard/avRecorder/src/main/js/test/AvVideoRecorderFuncTestThree.test.js
0 → 100644
浏览文件 @
d1e0e582
/**
* Copyright (c) 2022 Shenzhen Kaihong Digital Industry Development Co., Ltd.
* Licensed under the Apache License, Version 2.0 (the "License");
* you may not use this file except in compliance with the License.
* You may obtain a copy of the License at
*
* http://www.apache.org/licenses/LICENSE-2.0
*
* Unless required by applicable law or agreed to in writing, software
* distributed under the License is distributed on an "AS IS" BASIS,
* WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
* See the License for the specific language governing permissions and
* limitations under the License.
*/
import
media
from
'
@ohos.multimedia.media
'
import
camera
from
'
@ohos.multimedia.camera
'
import
deviceInfo
from
'
@ohos.deviceInfo
'
import
*
as
mediaTestBase
from
'
../../../../../MediaTestBase.js
'
;
import
*
as
avRecorderTestBase
from
'
../../../../../AVRecorderTestBase.js
'
;
import
*
as
avVideoRecorderTestBase
from
'
../../../../../AvVideoRecorderTestBase.js
'
;
import
{
describe
,
beforeAll
,
beforeEach
,
afterEach
,
afterAll
,
it
,
expect
}
from
'
@ohos/hypium
'
;
export
default
function
avVideoRecorderTestThree
()
{
describe
(
'
avVideoRecorderTestThree
'
,
function
()
{
let
avRecorder
=
null
;
const
RECORDER_TIME
=
3000
;
const
RECORDER_LONG_TIME
=
3600000
;
const
LOOP_TIMES
=
1000
;
const
FORMAT_M4A
=
media
.
ContainerFormatType
.
CFT_MPEG_4A
;
const
ENCORDER_AAC
=
media
.
CodecMimeType
.
AUDIO_AAC
;
const
ONLYAUDIO_TYPE
=
'
only_audio
'
;
let
trackArray
;
let
fdObject
;
let
fdPath
;
let
TAG
=
"
[avVideoRecorderTest]
"
;
let
avProfile
=
{
audioBitrate
:
48000
,
audioChannels
:
2
,
audioCodec
:
media
.
CodecMimeType
.
AUDIO_AAC
,
audioSampleRate
:
48000
,
fileFormat
:
media
.
ContainerFormatType
.
CFT_MPEG_4
,
// 视频文件封装格式,只支持MP4
videoBitrate
:
100000
,
// 视频比特率
videoCodec
:
media
.
CodecMimeType
.
VIDEO_MPEG4
,
// 视频文件编码格式,支持mpeg4和avc两种格式
videoFrameWidth
:
640
,
// 视频分辨率的宽
videoFrameHeight
:
480
,
// 视频分辨率的高
videoFrameRate
:
30
// 视频帧率
}
let
avConfig
=
{
audioSourceType
:
media
.
AudioSourceType
.
AUDIO_SOURCE_TYPE_MIC
,
videoSourceType
:
media
.
VideoSourceType
.
VIDEO_SOURCE_TYPE_SURFACE_ES
,
profile
:
avProfile
,
url
:
'
fd://35
'
,
// 参考应用文件访问与管理开发示例新建并读写一个文件
rotation
:
0
,
// 视频旋转角度,默认为0不旋转,支持的值为0、90、180、270
location
:
{
latitude
:
30
,
longitude
:
130
}
}
let
avProfileMpeg
=
{
fileFormat
:
media
.
ContainerFormatType
.
CFT_MPEG_4
,
videoBitrate
:
100000
,
videoCodec
:
media
.
CodecMimeType
.
VIDEO_MPEG4
,
videoFrameWidth
:
640
,
videoFrameHeight
:
480
,
videoFrameRate
:
30
}
let
avConfigMpeg
=
{
videoSourceType
:
media
.
VideoSourceType
.
VIDEO_SOURCE_TYPE_SURFACE_ES
,
profile
:
avProfileMpeg
,
url
:
'
fd://35
'
,
rotation
:
0
,
location
:
{
latitude
:
30
,
longitude
:
130
}
}
let
avProfileMpegAac
=
{
audioBitrate
:
48000
,
audioChannels
:
2
,
audioCodec
:
media
.
CodecMimeType
.
AUDIO_AAC
,
audioSampleRate
:
48000
,
fileFormat
:
media
.
ContainerFormatType
.
CFT_MPEG_4
,
videoBitrate
:
100000
,
videoCodec
:
media
.
CodecMimeType
.
VIDEO_MPEG4
,
videoFrameWidth
:
640
,
videoFrameHeight
:
480
,
videoFrameRate
:
30
}
let
avConfigMpegAac
=
{
audioSourceType
:
media
.
AudioSourceType
.
AUDIO_SOURCE_TYPE_MIC
,
videoSourceType
:
media
.
VideoSourceType
.
VIDEO_SOURCE_TYPE_SURFACE_ES
,
profile
:
avProfileMpegAac
,
url
:
'
fd://35
'
,
rotation
:
0
,
location
:
{
latitude
:
30
,
longitude
:
130
}
}
let
avProfileH264
=
{
fileFormat
:
media
.
ContainerFormatType
.
CFT_MPEG_4
,
videoBitrate
:
100000
,
videoCodec
:
media
.
CodecMimeType
.
VIDEO_AVC
,
videoFrameWidth
:
640
,
videoFrameHeight
:
480
,
videoFrameRate
:
30
}
let
avConfigH264
=
{
videoSourceType
:
media
.
VideoSourceType
.
VIDEO_SOURCE_TYPE_SURFACE_ES
,
profile
:
avProfileH264
,
url
:
'
fd://35
'
,
rotation
:
0
,
location
:
{
latitude
:
30
,
longitude
:
130
}
}
let
avProfileH264Aac
=
{
audioBitrate
:
48000
,
audioChannels
:
2
,
audioCodec
:
media
.
CodecMimeType
.
AUDIO_AAC
,
audioSampleRate
:
48000
,
fileFormat
:
media
.
ContainerFormatType
.
CFT_MPEG_4
,
videoBitrate
:
100000
,
videoCodec
:
media
.
CodecMimeType
.
VIDEO_AVC
,
videoFrameWidth
:
640
,
videoFrameHeight
:
480
,
videoFrameRate
:
30
}
let
avConfigH264Aac
=
{
audioSourceType
:
media
.
AudioSourceType
.
AUDIO_SOURCE_TYPE_MIC
,
videoSourceType
:
media
.
VideoSourceType
.
VIDEO_SOURCE_TYPE_SURFACE_ES
,
profile
:
avProfileH264Aac
,
url
:
'
fd://35
'
,
rotation
:
0
,
location
:
{
latitude
:
30
,
longitude
:
130
}
}
beforeAll
(
async
function
()
{
if
(
deviceInfo
.
deviceType
===
'
default
'
)
{
avConfig
.
videoSourceType
=
media
.
VideoSourceType
.
VIDEO_SOURCE_TYPE_SURFACE_ES
avConfigMpeg
.
videoSourceType
=
media
.
VideoSourceType
.
VIDEO_SOURCE_TYPE_SURFACE_ES
avConfigMpegAac
.
videoSourceType
=
media
.
VideoSourceType
.
VIDEO_SOURCE_TYPE_SURFACE_ES
avConfigH264
.
videoSourceType
=
media
.
VideoSourceType
.
VIDEO_SOURCE_TYPE_SURFACE_ES
avConfigH264Aac
.
videoSourceType
=
media
.
VideoSourceType
.
VIDEO_SOURCE_TYPE_SURFACE_ES
}
else
{
avConfig
.
videoSourceType
=
media
.
VideoSourceType
.
VIDEO_SOURCE_TYPE_SURFACE_YUV
avConfigMpeg
.
videoSourceType
=
media
.
VideoSourceType
.
VIDEO_SOURCE_TYPE_SURFACE_YUV
avConfigMpegAac
.
videoSourceType
=
media
.
VideoSourceType
.
VIDEO_SOURCE_TYPE_SURFACE_YUV
avConfigH264
.
videoSourceType
=
media
.
VideoSourceType
.
VIDEO_SOURCE_TYPE_SURFACE_YUV
avConfigH264Aac
.
videoSourceType
=
media
.
VideoSourceType
.
VIDEO_SOURCE_TYPE_SURFACE_YUV
}
console
.
info
(
'
beforeAll in1
'
);
let
permissionName1
=
'
ohos.permission.MICROPHONE
'
;
let
permissionName2
=
'
ohos.permission.MEDIA_LOCATION
'
;
let
permissionName3
=
'
ohos.permission.READ_MEDIA
'
;
let
permissionName4
=
'
ohos.permission.WRITE_MEDIA
'
;
let
permissionName5
=
'
ohos.permission.CAMERA
'
;
let
permissionNames
=
[
permissionName1
,
permissionName2
,
permissionName3
,
permissionName4
,
permissionName5
];
await
mediaTestBase
.
getPermission
(
permissionNames
);
await
mediaTestBase
.
msleepAsync
(
2000
);
await
mediaTestBase
.
driveFn
(
3
)
console
.
info
(
'
beforeAll out
'
);
})
beforeEach
(
async
function
()
{
console
.
info
(
'
beforeEach case
'
);
await
avRecorderTestBase
.
sleep
(
3000
);
})
afterEach
(
async
function
()
{
console
.
info
(
'
afterEach case
'
);
if
(
avRecorder
!=
null
)
{
avRecorder
.
release
().
then
(()
=>
{
console
.
info
(
TAG
+
'
this testCase execution completed
'
)
},
mediaTestBase
.
failureCallback
).
catch
(
mediaTestBase
.
catchCallback
);
}
await
avRecorderTestBase
.
sleep
(
1000
);
console
.
info
(
'
afterEach case
'
);
})
afterAll
(
function
()
{
mediaTestBase
.
closeFd
(
fdObject
.
fileAsset
,
fdObject
.
fdNumber
);
console
.
info
(
'
afterAll case
'
);
})
/* *
* @tc.number : SUB_MULTIMEDIA_AVRECORDER_VIDEO_FUNCTION_PROMISE_MPEG4_0200
* @tc.name : 02.AVRecorder recording(audioBitrate 8000,audioSampleRate 8000,videoBitrateRange 280000)
* @tc.desc : Recorder video
* @tc.size : MediumTest
* @tc.type : Function test
* @tc.level : Level2
*/
it
(
'
SUB_MULTIMEDIA_AVRECORDER_VIDEO_FUNCTION_PROMISE_MPEG4_0200
'
,
0
,
async
function
(
done
)
{
console
.
info
(
TAG
+
'
SUB_MULTIMEDIA_AVRECORDER_VIDEO_FUNCTION_PROMISE_MPEG4_0200 start
'
)
avProfileMpegAac
.
audioBitrate
=
8000
avProfileMpegAac
.
audioSampleRate
=
8000
avProfileMpegAac
.
videoBitrate
=
280000
let
fileName
=
avVideoRecorderTestBase
.
resourceName
()
fdObject
=
await
mediaTestBase
.
getAvRecorderFd
(
fileName
,
"
video
"
);
fdPath
=
"
fd://
"
+
fdObject
.
fdNumber
;
avConfigMpegAac
.
url
=
fdPath
;
avVideoRecorderTestBase
.
avRecorderWithPromise2
(
avConfigMpegAac
,
avRecorder
,
RECORDER_TIME
,
done
);
console
.
info
(
TAG
+
'
SUB_MULTIMEDIA_AVRECORDER_VIDEO_FUNCTION_PROMISE_MPEG4_0200 end
'
)
})
/* *
* @tc.number : SUB_MULTIMEDIA_AVRECORDER_VIDEO_FUNCTION_PROMISE_MPEG4_0300
* @tc.name : 03.AVRecorder recording(audioBitrate 16000,audioSampleRate 32000,videoBitrateRange 560000)
* @tc.desc : Recorder video
* @tc.size : MediumTest
* @tc.type : Function test
* @tc.level : Level2
*/
it
(
'
SUB_MULTIMEDIA_AVRECORDER_VIDEO_FUNCTION_PROMISE_MPEG4_0300
'
,
0
,
async
function
(
done
)
{
console
.
info
(
TAG
+
'
SUB_MULTIMEDIA_AVRECORDER_VIDEO_FUNCTION_PROMISE_MPEG4_0300 start
'
)
avProfileMpegAac
.
audioBitrate
=
16000
avProfileMpegAac
.
audioSampleRate
=
32000
avProfileMpegAac
.
videoBitrate
=
560000
let
fileName
=
avVideoRecorderTestBase
.
resourceName
()
fdObject
=
await
mediaTestBase
.
getAvRecorderFd
(
fileName
,
"
video
"
);
fdPath
=
"
fd://
"
+
fdObject
.
fdNumber
;
avConfigMpegAac
.
url
=
fdPath
;
avVideoRecorderTestBase
.
avRecorderWithPromise2
(
avConfigMpegAac
,
avRecorder
,
RECORDER_TIME
,
done
);
console
.
info
(
TAG
+
'
SUB_MULTIMEDIA_AVRECORDER_VIDEO_FUNCTION_PROMISE_MPEG4_0300 end
'
)
})
/* *
* @tc.number : SUB_MULTIMEDIA_AVRECORDER_VIDEO_FUNCTION_PROMISE_MPEG4_0400
* @tc.name : 04.AVRecorder recording(audioBitrate 32000,audioSampleRate 44100,videoBitrateRange 1120000)
* @tc.desc : Recorder video
* @tc.size : MediumTest
* @tc.type : Function test
* @tc.level : Level2
*/
it
(
'
SUB_MULTIMEDIA_AVRECORDER_VIDEO_FUNCTION_PROMISE_MPEG4_0400
'
,
0
,
async
function
(
done
)
{
console
.
info
(
TAG
+
'
SUB_MULTIMEDIA_AVRECORDER_VIDEO_FUNCTION_PROMISE_MPEG4_0400 start
'
)
avProfileMpegAac
.
audioBitrate
=
32000
avProfileMpegAac
.
audioSampleRate
=
44100
avProfileMpegAac
.
videoBitrate
=
1120000
let
fileName
=
avVideoRecorderTestBase
.
resourceName
()
fdObject
=
await
mediaTestBase
.
getAvRecorderFd
(
fileName
,
"
video
"
);
fdPath
=
"
fd://
"
+
fdObject
.
fdNumber
;
avConfigMpegAac
.
url
=
fdPath
;
avVideoRecorderTestBase
.
avRecorderWithPromise2
(
avConfigMpegAac
,
avRecorder
,
RECORDER_TIME
,
done
);
console
.
info
(
TAG
+
'
SUB_MULTIMEDIA_AVRECORDER_VIDEO_FUNCTION_PROMISE_MPEG4_0400 end
'
)
})
/* *
* @tc.number : SUB_MULTIMEDIA_AVRECORDER_VIDEO_FUNCTION_PROMISE_MPEG4_0500
* @tc.name : 05.AVRecorder recording(audioBitrate 112000,audioSampleRate 96000,videoBitrateRange 2240000)
* @tc.desc : Recorder video
* @tc.size : MediumTest
* @tc.type : Function test
* @tc.level : Level2
*/
it
(
'
SUB_MULTIMEDIA_AVRECORDER_VIDEO_FUNCTION_PROMISE_MPEG4_0500
'
,
0
,
async
function
(
done
)
{
console
.
info
(
TAG
+
'
SUB_MULTIMEDIA_AVRECORDER_VIDEO_FUNCTION_PROMISE_MPEG4_0500 start
'
)
avProfileMpegAac
.
audioBitrate
=
112000
avProfileMpegAac
.
audioSampleRate
=
96000
avProfileMpegAac
.
videoBitrate
=
2240000
let
fileName
=
avVideoRecorderTestBase
.
resourceName
()
fdObject
=
await
mediaTestBase
.
getAvRecorderFd
(
fileName
,
"
video
"
);
fdPath
=
"
fd://
"
+
fdObject
.
fdNumber
;
avConfigMpegAac
.
url
=
fdPath
;
avVideoRecorderTestBase
.
avRecorderWithPromise2
(
avConfigMpegAac
,
avRecorder
,
RECORDER_TIME
,
done
);
console
.
info
(
TAG
+
'
SUB_MULTIMEDIA_AVRECORDER_VIDEO_FUNCTION_PROMISE_MPEG4_0500 end
'
)
})
/* *
* @tc.number : SUB_MULTIMEDIA_AVRECORDER_VIDEO_FUNCTION_PROMISE_MPEG4_0600
* @tc.name : 06.AVRecorder recording orientationHint:90
* @tc.desc : Recorder video
* @tc.size : MediumTest
* @tc.type : Function test
* @tc.level : Level2
*/
it
(
'
SUB_MULTIMEDIA_AVRECORDER_VIDEO_FUNCTION_PROMISE_MPEG4_0600
'
,
0
,
async
function
(
done
)
{
console
.
info
(
TAG
+
'
SUB_MULTIMEDIA_AVRECORDER_VIDEO_FUNCTION_PROMISE_MPEG4_0600 start
'
)
avConfigMpegAac
.
orientationHint
=
90
let
fileName
=
avVideoRecorderTestBase
.
resourceName
()
fdObject
=
await
mediaTestBase
.
getAvRecorderFd
(
fileName
,
"
video
"
);
fdPath
=
"
fd://
"
+
fdObject
.
fdNumber
;
avConfigMpegAac
.
url
=
fdPath
;
avVideoRecorderTestBase
.
avRecorderWithPromise2
(
avConfigMpegAac
,
avRecorder
,
RECORDER_TIME
,
done
);
console
.
info
(
TAG
+
'
SUB_MULTIMEDIA_AVRECORDER_VIDEO_FUNCTION_PROMISE_MPEG4_0600 end
'
)
})
/* *
* @tc.number : SUB_MULTIMEDIA_AVRECORDER_VIDEO_FUNCTION_PROMISE_MPEG4_0700
* @tc.name : 07.AVRecorder recording orientationHint:180
* @tc.desc : Recorder video
* @tc.size : MediumTest
* @tc.type : Function test
* @tc.level : Level2
*/
it
(
'
SUB_MULTIMEDIA_AVRECORDER_VIDEO_FUNCTION_PROMISE_MPEG4_0700
'
,
0
,
async
function
(
done
)
{
console
.
info
(
TAG
+
'
SUB_MULTIMEDIA_AVRECORDER_VIDEO_FUNCTION_PROMISE_MPEG4_0700 start
'
)
avConfigMpegAac
.
orientationHint
=
180
let
fileName
=
avVideoRecorderTestBase
.
resourceName
()
fdObject
=
await
mediaTestBase
.
getAvRecorderFd
(
fileName
,
"
video
"
);
fdPath
=
"
fd://
"
+
fdObject
.
fdNumber
;
avConfigMpegAac
.
url
=
fdPath
;
avVideoRecorderTestBase
.
avRecorderWithPromise2
(
avConfigMpegAac
,
avRecorder
,
RECORDER_TIME
,
done
);
console
.
info
(
TAG
+
'
SUB_MULTIMEDIA_AVRECORDER_VIDEO_FUNCTION_PROMISE_MPEG4_0700 end
'
)
})
/* *
* @tc.number : SUB_MULTIMEDIA_AVRECORDER_VIDEO_FUNCTION_PROMISE_MPEG4_0800
* @tc.name : 08.AVRecorder recording orientationHint:270
* @tc.desc : Recorder video
* @tc.size : MediumTest
* @tc.type : Function test
* @tc.level : Level2
*/
it
(
'
SUB_MULTIMEDIA_AVRECORDER_VIDEO_FUNCTION_PROMISE_MPEG4_0800
'
,
0
,
async
function
(
done
)
{
console
.
info
(
TAG
+
'
SUB_MULTIMEDIA_AVRECORDER_VIDEO_FUNCTION_PROMISE_MPEG4_0800 start
'
)
avConfigMpegAac
.
orientationHint
=
270
let
fileName
=
avVideoRecorderTestBase
.
resourceName
()
fdObject
=
await
mediaTestBase
.
getAvRecorderFd
(
fileName
,
"
video
"
);
fdPath
=
"
fd://
"
+
fdObject
.
fdNumber
;
avConfigMpegAac
.
url
=
fdPath
;
avVideoRecorderTestBase
.
avRecorderWithPromise2
(
avConfigMpegAac
,
avRecorder
,
RECORDER_TIME
,
done
);
console
.
info
(
TAG
+
'
SUB_MULTIMEDIA_AVRECORDER_VIDEO_FUNCTION_PROMISE_MPEG4_0800 end
'
)
})
/* *
* @tc.number : SUB_MULTIMEDIA_AVRECORDER_VIDEO_FUNCTION_PROMISE_MPEG4_0900
* @tc.name : 09.AVRecorder recording videoFrameRate:5
* @tc.desc : Recorder video
* @tc.size : MediumTest
* @tc.type : Function test
* @tc.level : Level2
*/
it
(
'
SUB_MULTIMEDIA_AVRECORDER_VIDEO_FUNCTION_PROMISE_MPEG4_0900
'
,
0
,
async
function
(
done
)
{
console
.
info
(
TAG
+
'
SUB_MULTIMEDIA_AVRECORDER_VIDEO_FUNCTION_PROMISE_MPEG4_0900 start
'
)
avProfileMpegAac
.
videoFrameRate
=
5
let
fileName
=
avVideoRecorderTestBase
.
resourceName
()
fdObject
=
await
mediaTestBase
.
getAvRecorderFd
(
fileName
,
"
video
"
);
fdPath
=
"
fd://
"
+
fdObject
.
fdNumber
;
avConfigMpegAac
.
url
=
fdPath
;
avVideoRecorderTestBase
.
avRecorderWithPromise2
(
avConfigMpegAac
,
avRecorder
,
RECORDER_TIME
,
done
);
console
.
info
(
TAG
+
'
SUB_MULTIMEDIA_AVRECORDER_VIDEO_FUNCTION_PROMISE_MPEG4_0900 end
'
)
})
/* *
* @tc.number : SUB_MULTIMEDIA_AVRECORDER_VIDEO_FUNCTION_PROMISE_MPEG4_1000
* @tc.name : 10.AVRecorder recording videoFrameRate:30
* @tc.desc : Recorder video
* @tc.size : MediumTest
* @tc.type : Function test
* @tc.level : Level2
*/
it
(
'
SUB_MULTIMEDIA_AVRECORDER_VIDEO_FUNCTION_PROMISE_MPEG4_1000
'
,
0
,
async
function
(
done
)
{
console
.
info
(
TAG
+
'
SUB_MULTIMEDIA_AVRECORDER_VIDEO_FUNCTION_PROMISE_MPEG4_1000 start
'
)
avProfileMpegAac
.
videoFrameRate
=
30
let
fileName
=
avVideoRecorderTestBase
.
resourceName
()
fdObject
=
await
mediaTestBase
.
getAvRecorderFd
(
fileName
,
"
video
"
);
fdPath
=
"
fd://
"
+
fdObject
.
fdNumber
;
avConfigMpegAac
.
url
=
fdPath
;
avVideoRecorderTestBase
.
avRecorderWithPromise2
(
avConfigMpegAac
,
avRecorder
,
RECORDER_TIME
,
done
);
console
.
info
(
TAG
+
'
SUB_MULTIMEDIA_AVRECORDER_VIDEO_FUNCTION_PROMISE_MPEG4_1000 end
'
)
})
/* *
* @tc.number : SUB_MULTIMEDIA_AVRECORDER_VIDEO_FUNCTION_PROMISE_MPEG4_1100
* @tc.name : 11.AVRecorder recording videoFrameRate:60
* @tc.desc : Recorder video
* @tc.size : MediumTest
* @tc.type : Function test
* @tc.level : Level2
*/
it
(
'
SUB_MULTIMEDIA_AVRECORDER_VIDEO_FUNCTION_PROMISE_MPEG4_1100
'
,
0
,
async
function
(
done
)
{
console
.
info
(
TAG
+
'
SUB_MULTIMEDIA_AVRECORDER_VIDEO_FUNCTION_PROMISE_MPEG4_1100 start
'
)
avProfileMpegAac
.
videoFrameRate
=
60
let
fileName
=
avVideoRecorderTestBase
.
resourceName
()
fdObject
=
await
mediaTestBase
.
getAvRecorderFd
(
fileName
,
"
video
"
);
fdPath
=
"
fd://
"
+
fdObject
.
fdNumber
;
avConfigMpegAac
.
url
=
fdPath
;
avVideoRecorderTestBase
.
avRecorderWithPromise2
(
avConfigMpegAac
,
avRecorder
,
RECORDER_TIME
,
done
);
console
.
info
(
TAG
+
'
SUB_MULTIMEDIA_AVRECORDER_VIDEO_FUNCTION_PROMISE_MPEG4_1100 end
'
)
})
/* *
* @tc.number : SUB_MULTIMEDIA_AVRECORDER_VIDEO_FUNCTION_PROMISE_MPEG4_1200
* @tc.name : 12.AVRecorder Record MPEG4
* @tc.desc : Recorder video
* @tc.size : MediumTest
* @tc.type : Function test
* @tc.level : Level2
*/
it
(
'
SUB_MULTIMEDIA_AVRECORDER_VIDEO_FUNCTION_PROMISE_MPEG4_1200
'
,
0
,
async
function
(
done
)
{
console
.
info
(
TAG
+
'
SUB_MULTIMEDIA_AVRECORDER_VIDEO_FUNCTION_PROMISE_MPEG4_1200 start
'
)
let
fileName
=
avVideoRecorderTestBase
.
resourceName
()
fdObject
=
await
mediaTestBase
.
getAvRecorderFd
(
fileName
,
"
video
"
);
fdPath
=
"
fd://
"
+
fdObject
.
fdNumber
;
avConfigMpeg
.
url
=
fdPath
avVideoRecorderTestBase
.
avRecorderWithPromise2
(
avConfigMpeg
,
avRecorder
,
RECORDER_TIME
,
done
);
console
.
info
(
TAG
+
'
SUB_MULTIMEDIA_AVRECORDER_VIDEO_FUNCTION_PROMISE_MPEG4_1200 end
'
)
})
})
}
multimedia/media/media_js_standard/avRecorder/src/main/js/test/AvVideoRecorderFuncTestTwo.test.js
0 → 100644
浏览文件 @
d1e0e582
/**
* Copyright (c) 2022 Shenzhen Kaihong Digital Industry Development Co., Ltd.
* Licensed under the Apache License, Version 2.0 (the "License");
* you may not use this file except in compliance with the License.
* You may obtain a copy of the License at
*
* http://www.apache.org/licenses/LICENSE-2.0
*
* Unless required by applicable law or agreed to in writing, software
* distributed under the License is distributed on an "AS IS" BASIS,
* WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
* See the License for the specific language governing permissions and
* limitations under the License.
*/
import
media
from
'
@ohos.multimedia.media
'
import
camera
from
'
@ohos.multimedia.camera
'
import
*
as
mediaTestBase
from
'
../../../../../MediaTestBase.js
'
;
import
*
as
avRecorderTestBase
from
'
../../../../../AVRecorderTestBase.js
'
;
import
*
as
avVideoRecorderTestBase
from
'
../../../../../AvVideoRecorderTestBase.js
'
;
import
{
describe
,
beforeAll
,
beforeEach
,
afterEach
,
afterAll
,
it
,
expect
}
from
'
@ohos/hypium
'
;
import
deviceInfo
from
'
@ohos.deviceInfo
'
export
default
function
avVideoRecorderTestTwo
()
{
describe
(
'
avVideoRecorderTestTwo
'
,
function
()
{
let
avRecorder
=
null
;
const
RECORDER_TIME
=
3000
;
const
RECORDER_LONG_TIME
=
3600000
;
const
LOOP_TIMES
=
1000
;
const
FORMAT_M4A
=
media
.
ContainerFormatType
.
CFT_MPEG_4A
;
const
ENCORDER_AAC
=
media
.
CodecMimeType
.
AUDIO_AAC
;
const
ONLYAUDIO_TYPE
=
'
only_audio
'
;
let
trackArray
;
let
fdObject
;
let
fdPath
;
let
TAG
=
"
[avVideoRecorderTest]
"
;
let
avProfile
=
{
audioBitrate
:
48000
,
audioChannels
:
2
,
audioCodec
:
media
.
CodecMimeType
.
AUDIO_AAC
,
audioSampleRate
:
48000
,
fileFormat
:
media
.
ContainerFormatType
.
CFT_MPEG_4
,
// 视频文件封装格式,只支持MP4
videoBitrate
:
100000
,
// 视频比特率
videoCodec
:
media
.
CodecMimeType
.
VIDEO_MPEG4
,
// 视频文件编码格式,支持mpeg4和avc两种格式
videoFrameWidth
:
640
,
// 视频分辨率的宽
videoFrameHeight
:
480
,
// 视频分辨率的高
videoFrameRate
:
30
// 视频帧率
}
let
avConfig
=
{
audioSourceType
:
media
.
AudioSourceType
.
AUDIO_SOURCE_TYPE_MIC
,
videoSourceType
:
media
.
VideoSourceType
.
VIDEO_SOURCE_TYPE_SURFACE_ES
,
// 视频源类型,支持YUV和ES两种格式
profile
:
avProfile
,
url
:
'
fd://35
'
,
// 参考应用文件访问与管理开发示例新建并读写一个文件
rotation
:
0
,
// 视频旋转角度,默认为0不旋转,支持的值为0、90、180、270
location
:
{
latitude
:
30
,
longitude
:
130
}
}
beforeAll
(
async
function
()
{
console
.
info
(
'
beforeAll in1
'
);
let
permissionName1
=
'
ohos.permission.MICROPHONE
'
;
let
permissionName2
=
'
ohos.permission.MEDIA_LOCATION
'
;
let
permissionName3
=
'
ohos.permission.READ_MEDIA
'
;
let
permissionName4
=
'
ohos.permission.WRITE_MEDIA
'
;
let
permissionName5
=
'
ohos.permission.CAMERA
'
;
let
permissionNames
=
[
permissionName1
,
permissionName2
,
permissionName3
,
permissionName4
,
permissionName5
];
await
mediaTestBase
.
getPermission
(
permissionNames
);
await
mediaTestBase
.
msleepAsync
(
2000
);
await
mediaTestBase
.
driveFn
(
3
);
if
(
deviceInfo
.
deviceType
===
'
default
'
)
{
avConfig
.
videoSourceType
=
media
.
VideoSourceType
.
VIDEO_SOURCE_TYPE_SURFACE_ES
}
else
{
avConfig
.
videoSourceType
=
media
.
VideoSourceType
.
VIDEO_SOURCE_TYPE_SURFACE_YUV
}
console
.
info
(
'
beforeAll out
'
);
})
beforeEach
(
async
function
()
{
console
.
info
(
'
beforeEach case
'
);
await
avRecorderTestBase
.
sleep
(
3000
);
})
afterEach
(
async
function
()
{
console
.
info
(
'
afterEach case
'
);
if
(
avRecorder
!=
null
)
{
avRecorder
.
release
().
then
(()
=>
{
console
.
info
(
TAG
+
'
this testCase execution completed
'
)
},
mediaTestBase
.
failureCallback
).
catch
(
mediaTestBase
.
catchCallback
);
}
await
avRecorderTestBase
.
sleep
(
1000
);
console
.
info
(
'
afterEach case
'
);
})
afterAll
(
function
()
{
mediaTestBase
.
closeFd
(
fdObject
.
fileAsset
,
fdObject
.
fdNumber
);
console
.
info
(
'
afterAll case
'
);
})
// promise prepare
/* *
* @tc.number : SUB_MULTIMEDIA_AVRECORDER_VIDEO_PREPARE_PROMISE_0100
* @tc.name : 01. create->prepare
* @tc.desc : 1.create 2.prepare
* @tc.size : MediumTest
* @tc.type : Function
* @tc.level : Level 2
*/
it
(
'
SUB_MULTIMEDIA_AVRECORDER_VIDEO_PREPARE_PROMISE_0100
'
,
0
,
async
function
(
done
)
{
console
.
info
(
TAG
+
'
SUB_MULTIMEDIA_AVRECORDER_VIDEO_PREPARE_PROMISE_0100 start
'
)
let
fileName
=
avVideoRecorderTestBase
.
resourceName
()
fdObject
=
await
mediaTestBase
.
getAvRecorderFd
(
fileName
,
"
video
"
);
fdPath
=
"
fd://
"
+
fdObject
.
fdNumber
;
avConfig
.
url
=
fdPath
;
avVideoRecorderTestBase
.
create2PreparePromise
(
avConfig
,
avRecorder
,
done
);
console
.
info
(
TAG
+
'
SUB_MULTIMEDIA_AVRECORDER_VIDEO_PREPARE_PROMISE_0100 end
'
)
})
/* *
* @tc.number : SUB_MULTIMEDIA_AVRECORDER_VIDEO_PREPARE_PROMISE_0200
* @tc.name : 02. start->prepare
* @tc.desc : 1.create 2.prepare 3.start 4.prepare
* @tc.size : MediumTest
* @tc.type : Function
* @tc.level : Level 2
*/
it
(
'
SUB_MULTIMEDIA_AVRECORDER_VIDEO_PREPARE_PROMISE_0200
'
,
0
,
async
function
(
done
)
{
console
.
info
(
TAG
+
'
SUB_MULTIMEDIA_AVRECORDER_VIDEO_PREPARE_PROMISE_0200 start
'
)
let
fileName
=
avVideoRecorderTestBase
.
resourceName
()
fdObject
=
await
mediaTestBase
.
getAvRecorderFd
(
fileName
,
"
video
"
);
fdPath
=
"
fd://
"
+
fdObject
.
fdNumber
;
avConfig
.
url
=
fdPath
;
avVideoRecorderTestBase
.
start2PreparePromise
(
avConfig
,
avRecorder
,
RECORDER_TIME
,
done
);
console
.
info
(
TAG
+
'
SUB_MULTIMEDIA_AVRECORDER_VIDEO_PREPARE_PROMISE_0200 end
'
)
})
/* *
* @tc.number : SUB_MULTIMEDIA_AVRECORDER_VIDEO_PREPARE_PROMISE_0300
* @tc.name : 03. pause->prepare
* @tc.desc : 1.create 2.prepare 3.start 4.pause 5.prepare
* @tc.size : MediumTest
* @tc.type : Function
* @tc.level : Level 2
*/
it
(
'
SUB_MULTIMEDIA_AVRECORDER_VIDEO_PREPARE_PROMISE_0300
'
,
0
,
async
function
(
done
)
{
console
.
info
(
TAG
+
'
SUB_MULTIMEDIA_AVRECORDER_VIDEO_PREPARE_PROMISE_0300 start
'
)
let
fileName
=
avVideoRecorderTestBase
.
resourceName
()
fdObject
=
await
mediaTestBase
.
getAvRecorderFd
(
fileName
,
"
video
"
);
fdPath
=
"
fd://
"
+
fdObject
.
fdNumber
;
avConfig
.
url
=
fdPath
;
avVideoRecorderTestBase
.
pause2PreparePromise
(
avConfig
,
avRecorder
,
RECORDER_TIME
,
done
);
console
.
info
(
TAG
+
'
SUB_MULTIMEDIA_AVRECORDER_VIDEO_PREPARE_PROMISE_0300 end
'
)
})
/* *
* @tc.number : SUB_MULTIMEDIA_AVRECORDER_VIDEO_PREPARE_PROMISE_0400
* @tc.name : 04. resume->prepare
* @tc.desc : 1.create 2.prepare 3.start 4.pause 5.resume 6.prepare
* @tc.size : MediumTest
* @tc.type : Function
* @tc.level : Level 2
*/
it
(
'
SUB_MULTIMEDIA_AVRECORDER_VIDEO_PREPARE_PROMISE_0400
'
,
0
,
async
function
(
done
)
{
console
.
info
(
TAG
+
'
SUB_MULTIMEDIA_AVRECORDER_VIDEO_PREPARE_PROMISE_0400 start
'
)
let
fileName
=
avVideoRecorderTestBase
.
resourceName
()
fdObject
=
await
mediaTestBase
.
getAvRecorderFd
(
fileName
,
"
video
"
);
fdPath
=
"
fd://
"
+
fdObject
.
fdNumber
;
avConfig
.
url
=
fdPath
;
avVideoRecorderTestBase
.
resume2PreparePromise
(
avConfig
,
avRecorder
,
RECORDER_TIME
,
done
);
console
.
info
(
TAG
+
'
SUB_MULTIMEDIA_AVRECORDER_VIDEO_PREPARE_PROMISE_0400 end
'
)
})
/* *
* @tc.number : SUB_MULTIMEDIA_AVRECORDER_VIDEO_PREPARE_PROMISE_0500
* @tc.name : 05. stop->prepare
* @tc.desc : 1.create 2.prepare 3.start 4.stop 5.prepare
* @tc.size : MediumTest
* @tc.type : Function
* @tc.level : Level 2
*/
it
(
'
SUB_MULTIMEDIA_AVRECORDER_VIDEO_PREPARE_PROMISE_0500
'
,
0
,
async
function
(
done
)
{
console
.
info
(
TAG
+
'
SUB_MULTIMEDIA_AVRECORDER_VIDEO_PREPARE_PROMISE_0500 start
'
)
let
fileName
=
avVideoRecorderTestBase
.
resourceName
()
fdObject
=
await
mediaTestBase
.
getAvRecorderFd
(
fileName
,
"
video
"
);
fdPath
=
"
fd://
"
+
fdObject
.
fdNumber
;
avConfig
.
url
=
fdPath
;
avVideoRecorderTestBase
.
stop2PreparePromise
(
avConfig
,
avRecorder
,
RECORDER_TIME
,
done
);
console
.
info
(
TAG
+
'
SUB_MULTIMEDIA_AVRECORDER_VIDEO_PREPARE_PROMISE_0500 end
'
)
})
/* *
* @tc.number : SUB_MULTIMEDIA_AVRECORDER_VIDEO_PREPARE_PROMISE_0600
* @tc.name : 06. reset->prepare
* @tc.desc : 1.create 2.prepare 3.start 4.reset 5.prepare
* @tc.size : MediumTest
* @tc.type : Function
* @tc.level : Level 2
*/
it
(
'
SUB_MULTIMEDIA_AVRECORDER_VIDEO_PREPARE_PROMISE_0600
'
,
0
,
async
function
(
done
)
{
console
.
info
(
TAG
+
'
SUB_MULTIMEDIA_AVRECORDER_VIDEO_PREPARE_PROMISE_0600 start
'
)
let
fileName
=
avVideoRecorderTestBase
.
resourceName
()
fdObject
=
await
mediaTestBase
.
getAvRecorderFd
(
fileName
,
"
video
"
);
fdPath
=
"
fd://
"
+
fdObject
.
fdNumber
;
avConfig
.
url
=
fdPath
;
avVideoRecorderTestBase
.
reset2PreparePromise
(
avConfig
,
avRecorder
,
RECORDER_TIME
,
done
);
console
.
info
(
TAG
+
'
SUB_MULTIMEDIA_AVRECORDER_VIDEO_PREPARE_PROMISE_0600 end
'
)
})
/* *
* @tc.number : SUB_MULTIMEDIA_AVRECORDER_VIDEO_PREPARE_PROMISE_0700
* @tc.name : 07. getInputSurface->prepare
* @tc.desc : 1.create 2.prepare 3.getInputSurface 4.prepare
* @tc.size : MediumTest
* @tc.type : Function
* @tc.level : Level 2
*/
it
(
'
SUB_MULTIMEDIA_AVRECORDER_VIDEO_PREPARE_PROMISE_0700
'
,
0
,
async
function
(
done
)
{
console
.
info
(
TAG
+
'
SUB_MULTIMEDIA_AVRECORDER_VIDEO_PREPARE_PROMISE_0700 start
'
)
let
fileName
=
avVideoRecorderTestBase
.
resourceName
()
fdObject
=
await
mediaTestBase
.
getAvRecorderFd
(
fileName
,
"
video
"
);
fdPath
=
"
fd://
"
+
fdObject
.
fdNumber
;
avConfig
.
url
=
fdPath
;
avVideoRecorderTestBase
.
getInputSurface2PreparePromise
(
avConfig
,
avRecorder
,
done
);
console
.
info
(
TAG
+
'
SUB_MULTIMEDIA_AVRECORDER_VIDEO_PREPARE_PROMISE_0700 end
'
)
})
/* *
* @tc.number : SUB_MULTIMEDIA_AVRECORDER_VIDEO_PREPARE_PROMISE_0800
* @tc.name : 08. prepare 3 times
* @tc.desc : 1.create 2.prepare 3.prepare 4.prepare
* @tc.size : MediumTest
* @tc.type : Function
* @tc.level : Level 2
*/
it
(
'
SUB_MULTIMEDIA_AVRECORDER_VIDEO_PREPARE_PROMISE_0800
'
,
0
,
async
function
(
done
)
{
console
.
info
(
TAG
+
'
SUB_MULTIMEDIA_AVRECORDER_VIDEO_PREPARE_PROMISE_0800 start
'
)
let
fileName
=
avVideoRecorderTestBase
.
resourceName
()
fdObject
=
await
mediaTestBase
.
getAvRecorderFd
(
fileName
,
"
video
"
);
fdPath
=
"
fd://
"
+
fdObject
.
fdNumber
;
avConfig
.
url
=
fdPath
;
let
loopTimes
=
3
;
avVideoRecorderTestBase
.
prepare3TimesPromise
(
avConfig
,
avRecorder
,
loopTimes
,
done
);
console
.
info
(
TAG
+
'
SUB_MULTIMEDIA_AVRECORDER_VIDEO_PREPARE_PROMISE_0800 end
'
)
})
/* *
* @tc.number : SUB_MULTIMEDIA_AVRECORDER_VIDEO_PREPARE_PROMISE_0900
* @tc.name : 09.audioBitrate -1
* @tc.desc : 1.create 2.prepare (audioBitrate -1)
* @tc.size : MediumTest
* @tc.type : Function
* @tc.level : Level 2
*/
it
(
'
SUB_MULTIMEDIA_AVRECORDER_VIDEO_PREPARE_PROMISE_0900
'
,
0
,
async
function
(
done
)
{
console
.
info
(
TAG
+
'
SUB_MULTIMEDIA_AVRECORDER_VIDEO_PREPARE_PROMISE_0900 start
'
)
let
avNewProfile
=
{
audioBitrate
:
-
1
,
audioChannels
:
2
,
audioCodec
:
media
.
CodecMimeType
.
AUDIO_AAC
,
audioSampleRate
:
48000
,
fileFormat
:
media
.
ContainerFormatType
.
CFT_MPEG_4
,
// 视频文件封装格式,只支持MP4
videoBitrate
:
100000
,
// 视频比特率
videoCodec
:
media
.
CodecMimeType
.
VIDEO_MPEG4
,
// 视频文件编码格式,支持mpeg4和avc两种格式
videoFrameWidth
:
640
,
// 视频分辨率的宽
videoFrameHeight
:
480
,
// 视频分辨率的高
videoFrameRate
:
30
// 视频帧率
}
let
avNewConfig
=
{
audioSourceType
:
media
.
AudioSourceType
.
AUDIO_SOURCE_TYPE_MIC
,
videoSourceType
:
media
.
VideoSourceType
.
VIDEO_SOURCE_TYPE_SURFACE_ES
,
// 视频源类型,支持YUV和ES两种格式
profile
:
avNewProfile
,
url
:
'
fd://35
'
,
// 参考应用文件访问与管理开发示例新建并读写一个文件
rotation
:
0
,
// 视频旋转角度,默认为0不旋转,支持的值为0、90、180、270
location
:
{
latitude
:
30
,
longitude
:
130
}
}
let
fileName
=
avVideoRecorderTestBase
.
resourceName
()
fdObject
=
await
mediaTestBase
.
getAvRecorderFd
(
fileName
,
"
video
"
);
fdPath
=
"
fd://
"
+
fdObject
.
fdNumber
;
avNewConfig
.
url
=
fdPath
;
if
(
deviceInfo
.
deviceType
===
'
default
'
)
{
avNewConfig
.
videoSourceType
=
media
.
VideoSourceType
.
VIDEO_SOURCE_TYPE_SURFACE_ES
}
else
{
avNewConfig
.
videoSourceType
=
media
.
VideoSourceType
.
VIDEO_SOURCE_TYPE_SURFACE_YUV
}
avVideoRecorderTestBase
.
avConfigChangedPromise
(
avNewConfig
,
avRecorder
,
done
);
console
.
info
(
TAG
+
'
SUB_MULTIMEDIA_AVRECORDER_VIDEO_PREPARE_PROMISE_0900 end
'
)
})
/* *
* @tc.number : SUB_MULTIMEDIA_AVRECORDER_VIDEO_PREPARE_PROMISE_1000
* @tc.name : 10.audioSampleRate -1
* @tc.desc : 1.create 2.prepare (audioSampleRate -1)
* @tc.size : MediumTest
* @tc.type : Function
* @tc.level : Level 2
*/
it
(
'
SUB_MULTIMEDIA_AVRECORDER_VIDEO_PREPARE_PROMISE_1000
'
,
0
,
async
function
(
done
)
{
console
.
info
(
TAG
+
'
SUB_MULTIMEDIA_AVRECORDER_VIDEO_PREPARE_PROMISE_1000 start
'
)
let
avNewProfile
=
{
audioBitrate
:
48000
,
audioChannels
:
2
,
audioCodec
:
media
.
CodecMimeType
.
AUDIO_AAC
,
audioSampleRate
:
-
1
,
fileFormat
:
media
.
ContainerFormatType
.
CFT_MPEG_4
,
// 视频文件封装格式,只支持MP4
videoBitrate
:
100000
,
// 视频比特率
videoCodec
:
media
.
CodecMimeType
.
VIDEO_MPEG4
,
// 视频文件编码格式,支持mpeg4和avc两种格式
videoFrameWidth
:
640
,
// 视频分辨率的宽
videoFrameHeight
:
480
,
// 视频分辨率的高
videoFrameRate
:
30
// 视频帧率
}
let
avNewConfig
=
{
audioSourceType
:
media
.
AudioSourceType
.
AUDIO_SOURCE_TYPE_MIC
,
videoSourceType
:
media
.
VideoSourceType
.
VIDEO_SOURCE_TYPE_SURFACE_ES
,
profile
:
avNewProfile
,
url
:
'
fd://35
'
,
rotation
:
0
,
location
:
{
latitude
:
30
,
longitude
:
130
}
}
let
fileName
=
avVideoRecorderTestBase
.
resourceName
()
fdObject
=
await
mediaTestBase
.
getAvRecorderFd
(
fileName
,
"
video
"
);
fdPath
=
"
fd://
"
+
fdObject
.
fdNumber
;
avNewConfig
.
url
=
fdPath
;
if
(
deviceInfo
.
deviceType
===
'
default
'
)
{
avNewConfig
.
videoSourceType
=
media
.
VideoSourceType
.
VIDEO_SOURCE_TYPE_SURFACE_ES
}
else
{
avNewConfig
.
videoSourceType
=
media
.
VideoSourceType
.
VIDEO_SOURCE_TYPE_SURFACE_YUV
}
avVideoRecorderTestBase
.
avConfigChangedPromise
(
avNewConfig
,
avRecorder
,
done
);
console
.
info
(
TAG
+
'
SUB_MULTIMEDIA_AVRECORDER_VIDEO_PREPARE_PROMISE_1000 end
'
)
})
/* *
* @tc.number : SUB_MULTIMEDIA_AVRECORDER_VIDEO_PREPARE_PROMISE_1100
* @tc.name : 11.videoBitrateRange -1
* @tc.desc : 1.create 2.prepare (videoBitrateRange -1)
* @tc.size : MediumTest
* @tc.type : Function
* @tc.level : Level 2
*/
it
(
'
SUB_MULTIMEDIA_AVRECORDER_VIDEO_PREPARE_PROMISE_1100
'
,
0
,
async
function
(
done
)
{
console
.
info
(
TAG
+
'
SUB_MULTIMEDIA_AVRECORDER_VIDEO_PREPARE_PROMISE_1100 start
'
)
let
avNewProfile
=
{
audioBitrate
:
48000
,
audioChannels
:
2
,
audioCodec
:
media
.
CodecMimeType
.
AUDIO_AAC
,
audioSampleRate
:
48000
,
fileFormat
:
media
.
ContainerFormatType
.
CFT_MPEG_4
,
// 视频文件封装格式,只支持MP4
videoBitrate
:
-
1
,
// 视频比特率
videoCodec
:
media
.
CodecMimeType
.
VIDEO_MPEG4
,
// 视频文件编码格式,支持mpeg4和avc两种格式
videoFrameWidth
:
640
,
// 视频分辨率的宽
videoFrameHeight
:
480
,
// 视频分辨率的高
videoFrameRate
:
30
// 视频帧率
}
let
avNewConfig
=
{
audioSourceType
:
media
.
AudioSourceType
.
AUDIO_SOURCE_TYPE_MIC
,
videoSourceType
:
media
.
VideoSourceType
.
VIDEO_SOURCE_TYPE_SURFACE_ES
,
profile
:
avNewProfile
,
url
:
'
fd://35
'
,
rotation
:
0
,
location
:
{
latitude
:
30
,
longitude
:
130
}
}
let
fileName
=
avVideoRecorderTestBase
.
resourceName
()
fdObject
=
await
mediaTestBase
.
getAvRecorderFd
(
fileName
,
"
video
"
);
fdPath
=
"
fd://
"
+
fdObject
.
fdNumber
;
avNewConfig
.
url
=
fdPath
;
if
(
deviceInfo
.
deviceType
===
'
default
'
)
{
avNewConfig
.
videoSourceType
=
media
.
VideoSourceType
.
VIDEO_SOURCE_TYPE_SURFACE_ES
}
else
{
avNewConfig
.
videoSourceType
=
media
.
VideoSourceType
.
VIDEO_SOURCE_TYPE_SURFACE_YUV
}
avVideoRecorderTestBase
.
avConfigChangedPromise
(
avNewConfig
,
avRecorder
,
done
);
console
.
info
(
TAG
+
'
SUB_MULTIMEDIA_AVRECORDER_VIDEO_PREPARE_PROMISE_1100 end
'
)
})
/* *
* @tc.number : SUB_MULTIMEDIA_AVRECORDER_VIDEO_PREPARE_PROMISE_1200
* @tc.name : 12.videoFrameRate -1
* @tc.desc : 1.create 2.prepare (videoFrameRate -1)
* @tc.size : MediumTest
* @tc.type : Function
* @tc.level : Level 2
*/
it
(
'
SUB_MULTIMEDIA_AVRECORDER_VIDEO_PREPARE_PROMISE_1200
'
,
0
,
async
function
(
done
)
{
console
.
info
(
TAG
+
'
SUB_MULTIMEDIA_AVRECORDER_VIDEO_PREPARE_PROMISE_1200 start
'
)
let
avNewProfile
=
{
audioBitrate
:
48000
,
audioChannels
:
2
,
audioCodec
:
media
.
CodecMimeType
.
AUDIO_AAC
,
audioSampleRate
:
48000
,
fileFormat
:
media
.
ContainerFormatType
.
CFT_MPEG_4
,
// 视频文件封装格式,只支持MP4
videoBitrate
:
100000
,
// 视频比特率
videoCodec
:
media
.
CodecMimeType
.
VIDEO_MPEG4
,
// 视频文件编码格式,支持mpeg4和avc两种格式
videoFrameWidth
:
640
,
// 视频分辨率的宽
videoFrameHeight
:
480
,
// 视频分辨率的高
videoFrameRate
:
-
1
// 视频帧率
}
let
avNewConfig
=
{
audioSourceType
:
media
.
AudioSourceType
.
AUDIO_SOURCE_TYPE_MIC
,
videoSourceType
:
media
.
VideoSourceType
.
VIDEO_SOURCE_TYPE_SURFACE_ES
,
profile
:
avNewProfile
,
url
:
'
fd://35
'
,
rotation
:
0
,
location
:
{
latitude
:
30
,
longitude
:
130
}
}
let
fileName
=
avVideoRecorderTestBase
.
resourceName
()
fdObject
=
await
mediaTestBase
.
getAvRecorderFd
(
fileName
,
"
video
"
);
fdPath
=
"
fd://
"
+
fdObject
.
fdNumber
;
avNewConfig
.
url
=
fdPath
;
if
(
deviceInfo
.
deviceType
===
'
default
'
)
{
avNewConfig
.
videoSourceType
=
media
.
VideoSourceType
.
VIDEO_SOURCE_TYPE_SURFACE_ES
}
else
{
avNewConfig
.
videoSourceType
=
media
.
VideoSourceType
.
VIDEO_SOURCE_TYPE_SURFACE_YUV
}
avVideoRecorderTestBase
.
avConfigChangedPromise
(
avNewConfig
,
avRecorder
,
done
);
console
.
info
(
TAG
+
'
SUB_MULTIMEDIA_AVRECORDER_VIDEO_PREPARE_PROMISE_1200 end
'
)
})
// Promise getInputSurface
/* *
* @tc.number : SUB_MULTIMEDIA_AVRECORDER_VIDEO_GETSURFACE_PROMISE_0100
* @tc.name : 01. create->getInputSurface
* @tc.desc : 1.create 2.getInputSurface
* @tc.size : MediumTest
* @tc.type : Function
* @tc.level : Level 2
*/
it
(
'
SUB_MULTIMEDIA_AVRECORDER_VIDEO_GETSURFACE_PROMISE_0100
'
,
0
,
async
function
(
done
)
{
console
.
info
(
TAG
+
'
SUB_MULTIMEDIA_AVRECORDER_VIDEO_GETSURFACE_PROMISE_0100 start
'
)
let
fileName
=
avVideoRecorderTestBase
.
resourceName
()
fdObject
=
await
mediaTestBase
.
getAvRecorderFd
(
fileName
,
"
video
"
);
fdPath
=
"
fd://
"
+
fdObject
.
fdNumber
;
avConfig
.
url
=
fdPath
;
avVideoRecorderTestBase
.
create2GetInputSurfacePromise
(
avConfig
,
avRecorder
,
done
);
console
.
info
(
TAG
+
'
SUB_MULTIMEDIA_AVRECORDER_VIDEO_GETSURFACE_PROMISE_0100 end
'
)
})
/* *
* @tc.number : SUB_MULTIMEDIA_AVRECORDER_VIDEO_GETSURFACE_PROMISE_0200
* @tc.name : 02. prepare->getInputSurface
* @tc.desc : 1.create 2.prepare 3.getInputSurface
* @tc.size : MediumTest
* @tc.type : Function
* @tc.level : Level 2
*/
it
(
'
SUB_MULTIMEDIA_AVRECORDER_VIDEO_GETSURFACE_PROMISE_0200
'
,
0
,
async
function
(
done
)
{
console
.
info
(
TAG
+
'
SUB_MULTIMEDIA_AVRECORDER_VIDEO_GETSURFACE_PROMISE_0200 start
'
)
let
fileName
=
avVideoRecorderTestBase
.
resourceName
()
fdObject
=
await
mediaTestBase
.
getAvRecorderFd
(
fileName
,
"
video
"
);
fdPath
=
"
fd://
"
+
fdObject
.
fdNumber
;
avConfig
.
url
=
fdPath
;
avVideoRecorderTestBase
.
create2GetInputSurfacePromise2
(
avConfig
,
avRecorder
,
done
);
console
.
info
(
TAG
+
'
SUB_MULTIMEDIA_AVRECORDER_VIDEO_GETSURFACE_PROMISE_0200 end
'
)
})
/* *
* @tc.number : SUB_MULTIMEDIA_AVRECORDER_VIDEO_GETSURFACE_PROMISE_0300
* @tc.name : 03. start->getInputSurface
* @tc.desc : 1.create 2.prepare 3.getInputSurface 4.start 5.getInputSurface
* @tc.size : MediumTest
* @tc.type : Function
* @tc.level : Level 2
*/
it
(
'
SUB_MULTIMEDIA_AVRECORDER_VIDEO_GETSURFACE_PROMISE_0300
'
,
0
,
async
function
(
done
)
{
console
.
info
(
TAG
+
'
SUB_MULTIMEDIA_AVRECORDER_VIDEO_GETSURFACE_PROMISE_0300 start
'
)
let
fileName
=
avVideoRecorderTestBase
.
resourceName
()
fdObject
=
await
mediaTestBase
.
getAvRecorderFd
(
fileName
,
"
video
"
);
fdPath
=
"
fd://
"
+
fdObject
.
fdNumber
;
avConfig
.
url
=
fdPath
;
avVideoRecorderTestBase
.
create2GetInputSurfacePromise3
(
avConfig
,
avRecorder
,
RECORDER_TIME
,
done
);
console
.
info
(
TAG
+
'
SUB_MULTIMEDIA_AVRECORDER_VIDEO_GETSURFACE_PROMISE_0300 end
'
)
})
/* *
* @tc.number : SUB_MULTIMEDIA_AVRECORDER_VIDEO_GETSURFACE_PROMISE_0400
* @tc.name : 04. pause->getInputSurface
* @tc.desc : 1.create 2.prepare 3.getInputSurface 4.start 5.pause 6.getInputSurface
* @tc.size : MediumTest
* @tc.type : Function
* @tc.level : Level 2
*/
it
(
'
SUB_MULTIMEDIA_AVRECORDER_VIDEO_GETSURFACE_PROMISE_0400
'
,
0
,
async
function
(
done
)
{
console
.
info
(
TAG
+
'
SUB_MULTIMEDIA_AVRECORDER_VIDEO_GETSURFACE_PROMISE_0400 start
'
)
let
fileName
=
avVideoRecorderTestBase
.
resourceName
()
fdObject
=
await
mediaTestBase
.
getAvRecorderFd
(
fileName
,
"
video
"
);
fdPath
=
"
fd://
"
+
fdObject
.
fdNumber
;
avConfig
.
url
=
fdPath
;
avVideoRecorderTestBase
.
create2GetInputSurfacePromise4
(
avConfig
,
avRecorder
,
RECORDER_TIME
,
done
);
console
.
info
(
TAG
+
'
SUB_MULTIMEDIA_AVRECORDER_VIDEO_GETSURFACE_PROMISE_0400 end
'
)
})
/* *
* @tc.number : SUB_MULTIMEDIA_AVRECORDER_VIDEO_GETSURFACE_PROMISE_0500
* @tc.name : 05. resume->getInputSurface
* @tc.desc : 1.create 2.prepare 3.getInputSurface 4.start 5.pause 6.resume 7.getInputSurface
* @tc.size : MediumTest
* @tc.type : Function
* @tc.level : Level 2
*/
it
(
'
SUB_MULTIMEDIA_AVRECORDER_VIDEO_GETSURFACE_PROMISE_0500
'
,
0
,
async
function
(
done
)
{
console
.
info
(
TAG
+
'
SUB_MULTIMEDIA_AVRECORDER_VIDEO_GETSURFACE_PROMISE_0500 start
'
)
let
fileName
=
avVideoRecorderTestBase
.
resourceName
()
fdObject
=
await
mediaTestBase
.
getAvRecorderFd
(
fileName
,
"
video
"
);
fdPath
=
"
fd://
"
+
fdObject
.
fdNumber
;
avConfig
.
url
=
fdPath
;
avVideoRecorderTestBase
.
create2GetInputSurfacePromise5
(
avConfig
,
avRecorder
,
RECORDER_TIME
,
done
);
console
.
info
(
TAG
+
'
SUB_MULTIMEDIA_AVRECORDER_VIDEO_GETSURFACE_PROMISE_0500 end
'
)
})
/* *
* @tc.number : SUB_MULTIMEDIA_AVRECORDER_VIDEO_GETSURFACE_PROMISE_0600
* @tc.name : 06. stop->getInputSurface
* @tc.desc :1.create 2.prepare 3.getInputSurface 4.start 5.stop 6.getInputSurface
* @tc.size : MediumTest
* @tc.type : Function
* @tc.level : Level 2
*/
it
(
'
SUB_MULTIMEDIA_AVRECORDER_VIDEO_GETSURFACE_PROMISE_0600
'
,
0
,
async
function
(
done
)
{
console
.
info
(
TAG
+
'
SUB_MULTIMEDIA_AVRECORDER_VIDEO_GETSURFACE_PROMISE_0600 start
'
)
let
fileName
=
avVideoRecorderTestBase
.
resourceName
()
fdObject
=
await
mediaTestBase
.
getAvRecorderFd
(
fileName
,
"
video
"
);
fdPath
=
"
fd://
"
+
fdObject
.
fdNumber
;
avConfig
.
url
=
fdPath
;
avVideoRecorderTestBase
.
create2GetInputSurfacePromise6
(
avConfig
,
avRecorder
,
RECORDER_TIME
,
done
);
console
.
info
(
TAG
+
'
SUB_MULTIMEDIA_AVRECORDER_VIDEO_GETSURFACE_PROMISE_0600 end
'
)
})
/* *
* @tc.number : SUB_MULTIMEDIA_AVRECORDER_VIDEO_GETSURFACE_PROMISE_0700
* @tc.name : 07. reset->getInputSurface
* @tc.desc : 1.create 2.prepare 3.getInputSurface 4.start 5.reset 6.getInputSurface
* @tc.size : MediumTest
* @tc.type : Function
* @tc.level : Level 2
*/
it
(
'
SUB_MULTIMEDIA_AVRECORDER_VIDEO_GETSURFACE_PROMISE_0700
'
,
0
,
async
function
(
done
)
{
console
.
info
(
TAG
+
'
SUB_MULTIMEDIA_AVRECORDER_VIDEO_GETSURFACE_PROMISE_0700 start
'
)
let
fileName
=
avVideoRecorderTestBase
.
resourceName
()
fdObject
=
await
mediaTestBase
.
getAvRecorderFd
(
fileName
,
"
video
"
);
fdPath
=
"
fd://
"
+
fdObject
.
fdNumber
;
avConfig
.
url
=
fdPath
;
avVideoRecorderTestBase
.
create2GetInputSurfacePromise7
(
avConfig
,
avRecorder
,
RECORDER_TIME
,
done
);
console
.
info
(
TAG
+
'
SUB_MULTIMEDIA_AVRECORDER_VIDEO_GETSURFACE_PROMISE_0700 end
'
)
})
/* *
* @tc.number : SUB_MULTIMEDIA_AVRECORDER_VIDEO_GETSURFACE_PROMISE_0800
* @tc.name : 08. getInputSurface 3 times
* @tc.desc : 1.create 2.prepare 3.getInputSurface 4.getInputSurface 5.getInputSurface
* @tc.size : MediumTest
* @tc.type : Function
* @tc.level : Level 2
*/
it
(
'
SUB_MULTIMEDIA_AVRECORDER_VIDEO_GETSURFACE_PROMISE_0800
'
,
0
,
async
function
(
done
)
{
console
.
info
(
TAG
+
'
SUB_MULTIMEDIA_AVRECORDER_VIDEO_GETSURFACE_PROMISE_0800 start
'
)
let
fileName
=
avVideoRecorderTestBase
.
resourceName
()
fdObject
=
await
mediaTestBase
.
getAvRecorderFd
(
fileName
,
"
video
"
);
fdPath
=
"
fd://
"
+
fdObject
.
fdNumber
;
avConfig
.
url
=
fdPath
;
let
loopTimes
=
3
;
avVideoRecorderTestBase
.
getInputSurface3TimesPromise
(
avConfig
,
avRecorder
,
loopTimes
,
done
);
console
.
info
(
TAG
+
'
SUB_MULTIMEDIA_AVRECORDER_VIDEO_GETSURFACE_PROMISE_0800 end
'
)
})
// Promise start
/* *
* @tc.number : SUB_MULTIMEDIA_AVRECORDER_VIDEO_START_PROMISE_0100
* @tc.name : 01. create->start
* @tc.desc : 1.create 2.start
* @tc.size : MediumTest
* @tc.type : Function
* @tc.level : Level 2
*/
it
(
'
SUB_MULTIMEDIA_AVRECORDER_VIDEO_START_PROMISE_0100
'
,
0
,
async
function
(
done
)
{
console
.
info
(
TAG
+
'
SUB_MULTIMEDIA_AVRECORDER_VIDEO_START_PROMISE_0100 start
'
)
let
fileName
=
avVideoRecorderTestBase
.
resourceName
()
fdObject
=
await
mediaTestBase
.
getAvRecorderFd
(
fileName
,
"
video
"
);
fdPath
=
"
fd://
"
+
fdObject
.
fdNumber
;
avConfig
.
url
=
fdPath
;
avVideoRecorderTestBase
.
create2StartPromise
(
avConfig
,
avRecorder
,
RECORDER_TIME
,
done
);
console
.
info
(
TAG
+
'
SUB_MULTIMEDIA_AVRECORDER_VIDEO_START_PROMISE_0100 end
'
)
})
/* *
* @tc.number : SUB_MULTIMEDIA_AVRECORDER_VIDEO_START_PROMISE_0200
* @tc.name : 02. prepare->start
* @tc.desc : 1.create 2.prepare 4.start
* @tc.size : MediumTest
* @tc.type : Function
* @tc.level : Level 2
*/
it
(
'
SUB_MULTIMEDIA_AVRECORDER_VIDEO_START_PROMISE_0200
'
,
0
,
async
function
(
done
)
{
console
.
info
(
TAG
+
'
SUB_MULTIMEDIA_AVRECORDER_VIDEO_START_PROMISE_0200 start
'
)
let
fileName
=
avVideoRecorderTestBase
.
resourceName
()
fdObject
=
await
mediaTestBase
.
getAvRecorderFd
(
fileName
,
"
video
"
);
fdPath
=
"
fd://
"
+
fdObject
.
fdNumber
;
avConfig
.
url
=
fdPath
;
avVideoRecorderTestBase
.
prepare2StartPromise
(
avConfig
,
avRecorder
,
RECORDER_TIME
,
done
);
console
.
info
(
TAG
+
'
SUB_MULTIMEDIA_AVRECORDER_VIDEO_START_PROMISE_0200 end
'
)
})
/* *
* @tc.number : SUB_MULTIMEDIA_AVRECORDER_VIDEO_START_PROMISE_0300
* @tc.name : 03. pause->start
* @tc.desc : 1.create 2.prepare 3.getInputSurface 4.start 5.pause 6.start
* @tc.size : MediumTest
* @tc.type : Function
* @tc.level : Level 2
*/
it
(
'
SUB_MULTIMEDIA_AVRECORDER_VIDEO_START_PROMISE_0300
'
,
0
,
async
function
(
done
)
{
console
.
info
(
TAG
+
'
SUB_MULTIMEDIA_AVRECORDER_VIDEO_START_PROMISE_0300 start
'
)
let
fileName
=
avVideoRecorderTestBase
.
resourceName
()
fdObject
=
await
mediaTestBase
.
getAvRecorderFd
(
fileName
,
"
video
"
);
fdPath
=
"
fd://
"
+
fdObject
.
fdNumber
;
avConfig
.
url
=
fdPath
;
avVideoRecorderTestBase
.
pause2StartPromise
(
avConfig
,
avRecorder
,
RECORDER_TIME
,
done
);
console
.
info
(
TAG
+
'
SUB_MULTIMEDIA_AVRECORDER_VIDEO_START_PROMISE_0300 end
'
)
})
/* *
* @tc.number : SUB_MULTIMEDIA_AVRECORDER_VIDEO_START_PROMISE_0400
* @tc.name : 04. resume->start
* @tc.desc : 1.create 2.prepare 3.getInputSurface 4.start 5.pause 6.resume 7.start
* @tc.size : MediumTest
* @tc.type : Function
* @tc.level : Level 2
*/
it
(
'
SUB_MULTIMEDIA_AVRECORDER_VIDEO_START_PROMISE_0400
'
,
0
,
async
function
(
done
)
{
console
.
info
(
TAG
+
'
SUB_MULTIMEDIA_AVRECORDER_VIDEO_START_PROMISE_0400 start
'
)
let
fileName
=
avVideoRecorderTestBase
.
resourceName
()
fdObject
=
await
mediaTestBase
.
getAvRecorderFd
(
fileName
,
"
video
"
);
fdPath
=
"
fd://
"
+
fdObject
.
fdNumber
;
avConfig
.
url
=
fdPath
;
avVideoRecorderTestBase
.
resume2StartPromise
(
avConfig
,
avRecorder
,
RECORDER_TIME
,
done
);
console
.
info
(
TAG
+
'
SUB_MULTIMEDIA_AVRECORDER_VIDEO_START_PROMISE_0400 end
'
)
})
/* *
* @tc.number : SUB_MULTIMEDIA_AVRECORDER_VIDEO_START_PROMISE_0500
* @tc.name : 05. stop->start
* @tc.desc : 1.create 2.prepare 3.getInputSurface 4.start 5.stop 6.start
* @tc.size : MediumTest
* @tc.type : Function
* @tc.level : Level 2
*/
it
(
'
SUB_MULTIMEDIA_AVRECORDER_VIDEO_START_PROMISE_0500
'
,
0
,
async
function
(
done
)
{
console
.
info
(
TAG
+
'
SUB_MULTIMEDIA_AVRECORDER_VIDEO_START_PROMISE_0500 start
'
)
let
fileName
=
avVideoRecorderTestBase
.
resourceName
()
fdObject
=
await
mediaTestBase
.
getAvRecorderFd
(
fileName
,
"
video
"
);
fdPath
=
"
fd://
"
+
fdObject
.
fdNumber
;
avConfig
.
url
=
fdPath
;
avVideoRecorderTestBase
.
stop2StartPromise
(
avConfig
,
avRecorder
,
RECORDER_TIME
,
done
);
console
.
info
(
TAG
+
'
SUB_MULTIMEDIA_AVRECORDER_VIDEO_START_PROMISE_0500 end
'
)
})
/* *
* @tc.number : SUB_MULTIMEDIA_AVRECORDER_VIDEO_START_PROMISE_0600
* @tc.name : 06. reset->start
* @tc.desc : 1.create 2.prepare 3.getInputSurface 4.start 5.reset 6.start
* @tc.size : MediumTest
* @tc.type : Function
* @tc.level : Level 2
*/
it
(
'
SUB_MULTIMEDIA_AVRECORDER_VIDEO_START_PROMISE_0600
'
,
0
,
async
function
(
done
)
{
console
.
info
(
TAG
+
'
SUB_MULTIMEDIA_AVRECORDER_VIDEO_START_PROMISE_0600 start
'
)
let
fileName
=
avVideoRecorderTestBase
.
resourceName
()
fdObject
=
await
mediaTestBase
.
getAvRecorderFd
(
fileName
,
"
video
"
);
fdPath
=
"
fd://
"
+
fdObject
.
fdNumber
;
avConfig
.
url
=
fdPath
;
avVideoRecorderTestBase
.
reset2StartPromise
(
avConfig
,
avRecorder
,
RECORDER_TIME
,
done
);
console
.
info
(
TAG
+
'
SUB_MULTIMEDIA_AVRECORDER_VIDEO_START_PROMISE_0600 end
'
)
})
/* *
* @tc.number : SUB_MULTIMEDIA_AVRECORDER_VIDEO_START_PROMISE_0700
* @tc.name : 07. getInputSurface->start
* @tc.desc : 1.create 2.prepare 3.getInputSurface 4.start
* @tc.size : MediumTest
* @tc.type : Function
* @tc.level : Level 2
*/
it
(
'
SUB_MULTIMEDIA_AVRECORDER_VIDEO_START_PROMISE_0700
'
,
0
,
async
function
(
done
)
{
console
.
info
(
TAG
+
'
SUB_MULTIMEDIA_AVRECORDER_VIDEO_START_PROMISE_0700 start
'
)
let
fileName
=
avVideoRecorderTestBase
.
resourceName
()
fdObject
=
await
mediaTestBase
.
getAvRecorderFd
(
fileName
,
"
video
"
);
fdPath
=
"
fd://
"
+
fdObject
.
fdNumber
;
avConfig
.
url
=
fdPath
;
avVideoRecorderTestBase
.
getInputSurface2StartPromise
(
avConfig
,
avRecorder
,
RECORDER_TIME
,
done
);
console
.
info
(
TAG
+
'
SUB_MULTIMEDIA_AVRECORDER_VIDEO_START_PROMISE_0700 end
'
)
})
/* *
* @tc.number : SUB_MULTIMEDIA_AVRECORDER_VIDEO_START_PROMISE_0800
* @tc.name : 08. start 3 times
* @tc.desc : 1.create 2.prepare 3.getInputSurface 4.start 5.start 6.start
* @tc.size : MediumTest
* @tc.type : Function
* @tc.level : Level 2
*/
it
(
'
SUB_MULTIMEDIA_AVRECORDER_VIDEO_START_PROMISE_0800
'
,
0
,
async
function
(
done
)
{
console
.
info
(
TAG
+
'
SUB_MULTIMEDIA_AVRECORDER_VIDEO_START_PROMISE_0800 start
'
)
let
fileName
=
avVideoRecorderTestBase
.
resourceName
()
fdObject
=
await
mediaTestBase
.
getAvRecorderFd
(
fileName
,
"
video
"
);
fdPath
=
"
fd://
"
+
fdObject
.
fdNumber
;
avConfig
.
url
=
fdPath
;
let
loopTimes
=
3
;
avVideoRecorderTestBase
.
start3TimesPromise
(
avConfig
,
avRecorder
,
RECORDER_TIME
,
loopTimes
,
done
);
console
.
info
(
TAG
+
'
SUB_MULTIMEDIA_AVRECORDER_VIDEO_START_PROMISE_0800 end
'
)
})
// Promise pause
/* *
* @tc.number : SUB_MULTIMEDIA_AVRECORDER_VIDEO_PAUSE_PROMISE_0100
* @tc.name : 01. create->pause
* @tc.desc : 1.create 2.pause
* @tc.size : MediumTest
* @tc.type : Function
* @tc.level : Level 2
*/
it
(
'
SUB_MULTIMEDIA_AVRECORDER_VIDEO_PAUSE_PROMISE_0100
'
,
0
,
async
function
(
done
)
{
console
.
info
(
TAG
+
'
SUB_MULTIMEDIA_AVRECORDER_VIDEO_PAUSE_PROMISE_0100 start
'
)
let
fileName
=
avVideoRecorderTestBase
.
resourceName
()
fdObject
=
await
mediaTestBase
.
getAvRecorderFd
(
fileName
,
"
video
"
);
fdPath
=
"
fd://
"
+
fdObject
.
fdNumber
;
avConfig
.
url
=
fdPath
;
avVideoRecorderTestBase
.
create2PausePromise
(
avConfig
,
avRecorder
,
done
);
console
.
info
(
TAG
+
'
SUB_MULTIMEDIA_AVRECORDER_VIDEO_PAUSE_PROMISE_0100 end
'
)
})
/* *
* @tc.number : SUB_MULTIMEDIA_AVRECORDER_VIDEO_PAUSE_PROMISE_0200
* @tc.name : 02. prepare->pause
* @tc.desc : 1.create 2.prepare 3.pause
* @tc.size : MediumTest
* @tc.type : Function
* @tc.level : Level 2
*/
it
(
'
SUB_MULTIMEDIA_AVRECORDER_VIDEO_PAUSE_PROMISE_0200
'
,
0
,
async
function
(
done
)
{
console
.
info
(
TAG
+
'
SUB_MULTIMEDIA_AVRECORDER_VIDEO_PAUSE_PROMISE_0200 start
'
)
let
fileName
=
avVideoRecorderTestBase
.
resourceName
()
fdObject
=
await
mediaTestBase
.
getAvRecorderFd
(
fileName
,
"
video
"
);
fdPath
=
"
fd://
"
+
fdObject
.
fdNumber
;
avConfig
.
url
=
fdPath
;
avVideoRecorderTestBase
.
prepare2PausePromise
(
avConfig
,
avRecorder
,
done
);
console
.
info
(
TAG
+
'
SUB_MULTIMEDIA_AVRECORDER_VIDEO_PAUSE_PROMISE_0200 end
'
)
})
/* *
* @tc.number : SUB_MULTIMEDIA_AVRECORDER_VIDEO_PAUSE_PROMISE_0300
* @tc.name : 03. start->pause
* @tc.desc : 1.create 2.prepare 3.getInputSurface 4.start 5.pause
* @tc.size : MediumTest
* @tc.type : Function
* @tc.level : Level 2
*/
it
(
'
SUB_MULTIMEDIA_AVRECORDER_VIDEO_PAUSE_PROMISE_0300
'
,
0
,
async
function
(
done
)
{
console
.
info
(
TAG
+
'
SUB_MULTIMEDIA_AVRECORDER_VIDEO_PAUSE_PROMISE_0300 start
'
)
let
fileName
=
avVideoRecorderTestBase
.
resourceName
()
fdObject
=
await
mediaTestBase
.
getAvRecorderFd
(
fileName
,
"
video
"
);
fdPath
=
"
fd://
"
+
fdObject
.
fdNumber
;
avConfig
.
url
=
fdPath
;
avVideoRecorderTestBase
.
start2PausePromise
(
avConfig
,
avRecorder
,
RECORDER_TIME
,
done
);
console
.
info
(
TAG
+
'
SUB_MULTIMEDIA_AVRECORDER_VIDEO_PAUSE_PROMISE_0300 end
'
)
})
/* *
* @tc.number : SUB_MULTIMEDIA_AVRECORDER_VIDEO_PAUSE_PROMISE_0400
* @tc.name : 04. resume->pause
* @tc.desc : 1.create 2.prepare 3.getInputSurface 4.start 5.pause 6.resume 7.pause
* @tc.size : MediumTest
* @tc.type : Function
* @tc.level : Level 2
*/
it
(
'
SUB_MULTIMEDIA_AVRECORDER_VIDEO_PAUSE_PROMISE_0400
'
,
0
,
async
function
(
done
)
{
console
.
info
(
TAG
+
'
SUB_MULTIMEDIA_AVRECORDER_VIDEO_PAUSE_PROMISE_0400 start
'
)
let
fileName
=
avVideoRecorderTestBase
.
resourceName
()
fdObject
=
await
mediaTestBase
.
getAvRecorderFd
(
fileName
,
"
video
"
);
fdPath
=
"
fd://
"
+
fdObject
.
fdNumber
;
avConfig
.
url
=
fdPath
;
avVideoRecorderTestBase
.
resume2PausePromise
(
avConfig
,
avRecorder
,
RECORDER_TIME
,
done
);
console
.
info
(
TAG
+
'
SUB_MULTIMEDIA_AVRECORDER_VIDEO_PAUSE_PROMISE_0400 end
'
)
})
/* *
* @tc.number : SUB_MULTIMEDIA_AVRECORDER_VIDEO_PAUSE_PROMISE_0500
* @tc.name : 05. stop->pause
* @tc.desc : 1.create 2.prepare 3.getInputSurface 4.start 5.stop 6.pause
* @tc.size : MediumTest
* @tc.type : Function
* @tc.level : Level 2
*/
it
(
'
SUB_MULTIMEDIA_AVRECORDER_VIDEO_PAUSE_PROMISE_0500
'
,
0
,
async
function
(
done
)
{
console
.
info
(
TAG
+
'
SUB_MULTIMEDIA_AVRECORDER_VIDEO_PAUSE_PROMISE_0500 start
'
)
let
fileName
=
avVideoRecorderTestBase
.
resourceName
()
fdObject
=
await
mediaTestBase
.
getAvRecorderFd
(
fileName
,
"
video
"
);
fdPath
=
"
fd://
"
+
fdObject
.
fdNumber
;
avConfig
.
url
=
fdPath
;
avVideoRecorderTestBase
.
stop2PausePromise
(
avConfig
,
avRecorder
,
RECORDER_TIME
,
done
);
console
.
info
(
TAG
+
'
SUB_MULTIMEDIA_AVRECORDER_VIDEO_PAUSE_PROMISE_0500 end
'
)
})
/* *
* @tc.number : SUB_MULTIMEDIA_AVRECORDER_VIDEO_PAUSE_PROMISE_0600
* @tc.name : 06. reset->pause
* @tc.desc : 1.create 2.prepare 3.getInputSurface 4.start 5.reset 6.pause
* @tc.size : MediumTest
* @tc.type : Function
* @tc.level : Level 2
*/
it
(
'
SUB_MULTIMEDIA_AVRECORDER_VIDEO_PAUSE_PROMISE_0600
'
,
0
,
async
function
(
done
)
{
console
.
info
(
TAG
+
'
SUB_MULTIMEDIA_AVRECORDER_VIDEO_PAUSE_PROMISE_0600 start
'
)
let
fileName
=
avVideoRecorderTestBase
.
resourceName
()
fdObject
=
await
mediaTestBase
.
getAvRecorderFd
(
fileName
,
"
video
"
);
fdPath
=
"
fd://
"
+
fdObject
.
fdNumber
;
avConfig
.
url
=
fdPath
;
avVideoRecorderTestBase
.
reset2PausePromise
(
avConfig
,
avRecorder
,
RECORDER_TIME
,
done
);
console
.
info
(
TAG
+
'
SUB_MULTIMEDIA_AVRECORDER_VIDEO_PAUSE_PROMISE_0600 end
'
)
})
/* *
* @tc.number : SUB_MULTIMEDIA_AVRECORDER_VIDEO_PAUSE_PROMISE_0700
* @tc.name : 07. getInputSurface->pause
* @tc.desc : 1.create 2.prepare 3.getInputSurface 4.pause
* @tc.size : MediumTest
* @tc.type : Function
* @tc.level : Level 2
*/
it
(
'
SUB_MULTIMEDIA_AVRECORDER_VIDEO_PAUSE_PROMISE_0700
'
,
0
,
async
function
(
done
)
{
console
.
info
(
TAG
+
'
SUB_MULTIMEDIA_AVRECORDER_VIDEO_PAUSE_PROMISE_0700 start
'
)
let
fileName
=
avVideoRecorderTestBase
.
resourceName
()
fdObject
=
await
mediaTestBase
.
getAvRecorderFd
(
fileName
,
"
video
"
);
fdPath
=
"
fd://
"
+
fdObject
.
fdNumber
;
avConfig
.
url
=
fdPath
;
avVideoRecorderTestBase
.
getInputSurface2PausePromise
(
avConfig
,
avRecorder
,
done
);
console
.
info
(
TAG
+
'
SUB_MULTIMEDIA_AVRECORDER_VIDEO_PAUSE_PROMISE_0700 end
'
)
})
/* *
* @tc.number : SUB_MULTIMEDIA_AVRECORDER_VIDEO_PAUSE_PROMISE_0800
* @tc.name : 08. pause 3 times
* @tc.desc : 1.create 2.prepare 3.getInputSurface 4.start 5.pause 6.pause 7.pause
* @tc.size : MediumTest
* @tc.type : Function
* @tc.level : Level 2
*/
it
(
'
SUB_MULTIMEDIA_AVRECORDER_VIDEO_PAUSE_PROMISE_0800
'
,
0
,
async
function
(
done
)
{
console
.
info
(
TAG
+
'
SUB_MULTIMEDIA_AVRECORDER_VIDEO_PAUSE_PROMISE_0800 start
'
)
let
fileName
=
avVideoRecorderTestBase
.
resourceName
()
fdObject
=
await
mediaTestBase
.
getAvRecorderFd
(
fileName
,
"
video
"
);
fdPath
=
"
fd://
"
+
fdObject
.
fdNumber
;
avConfig
.
url
=
fdPath
;
let
loopTimes
=
3
;
avVideoRecorderTestBase
.
pause3TimesPromise
(
avConfig
,
avRecorder
,
RECORDER_TIME
,
loopTimes
,
done
);
console
.
info
(
TAG
+
'
SUB_MULTIMEDIA_AVRECORDER_VIDEO_PAUSE_PROMISE_0800 end
'
)
})
// 状态切换
// 01.promise回调方式
/* *
* @tc.number : SUB_MULTIMEDIA_AVRECORDER_VIDEO_FUNCTION_PROMISE_0100
* @tc.name : 01.AVRecorder test recording 3 seconds
* @tc.desc : 1.createAVRecorder 2.prepare 3.getInputSurface 4.start 5.release
* @tc.size : MediumTest
* @tc.type : Function
* @tc.level : Level 2
*/
it
(
'
SUB_MULTIMEDIA_AVRECORDER_VIDEO_FUNCTION_PROMISE_0100
'
,
0
,
async
function
(
done
)
{
console
.
info
(
TAG
+
'
SUB_MULTIMEDIA_AVRECORDER_VIDEO_FUNCTION_PROMISE_0100 start
'
)
let
fileName
=
avVideoRecorderTestBase
.
resourceName
()
fdObject
=
await
mediaTestBase
.
getAvRecorderFd
(
fileName
,
"
video
"
);
fdPath
=
"
fd://
"
+
fdObject
.
fdNumber
;
avConfig
.
url
=
fdPath
;
avVideoRecorderTestBase
.
recordStart2ReleaseWithPromise
(
avConfig
,
avRecorder
,
RECORDER_TIME
,
done
);
console
.
info
(
TAG
+
'
SUB_MULTIMEDIA_AVRECORDER_VIDEO_FUNCTION_PROMISE_0100 end
'
)
})
/* *
* @tc.number : SUB_MULTIMEDIA_AVRECORDER_VIDEO_FUNCTION_PROMISE_0200
* @tc.name : 02.AVRecorder test recording 3 seconds to pause
* @tc.desc : 1.createAVRecorder 2.prepare 3.getInputSurface 4.start 5.pause 6.release
* @tc.size : MediumTest
* @tc.type : Function
* @tc.level : Level 2
*/
it
(
'
SUB_MULTIMEDIA_AVRECORDER_VIDEO_FUNCTION_PROMISE_0200
'
,
0
,
async
function
(
done
)
{
console
.
info
(
TAG
+
'
SUB_MULTIMEDIA_AVRECORDER_VIDEO_FUNCTION_PROMISE_0200 start
'
)
let
fileName
=
avVideoRecorderTestBase
.
resourceName
()
fdObject
=
await
mediaTestBase
.
getAvRecorderFd
(
fileName
,
"
video
"
);
fdPath
=
"
fd://
"
+
fdObject
.
fdNumber
;
avConfig
.
url
=
fdPath
;
avVideoRecorderTestBase
.
recordStart2PauseWithPromise
(
avConfig
,
avRecorder
,
RECORDER_TIME
,
done
);
console
.
info
(
TAG
+
'
SUB_MULTIMEDIA_AVRECORDER_VIDEO_FUNCTION_PROMISE_0200 end
'
)
})
/* *
* @tc.number : SUB_MULTIMEDIA_AVRECORDER_VIDEO_FUNCTION_PROMISE_0300
* @tc.name : 03.AVRecorder test recording 3 seconds to pause to resume
* @tc.desc : 1.createAVRecorder 2.prepare 3.getInputSurface 4.start 5.pause 6.resume 7.release
* @tc.size : MediumTest
* @tc.type : Function
* @tc.level : Level 2
*/
it
(
'
SUB_MULTIMEDIA_AVRECORDER_VIDEO_FUNCTION_PROMISE_0300
'
,
0
,
async
function
(
done
)
{
console
.
info
(
TAG
+
'
SUB_MULTIMEDIA_AVRECORDER_VIDEO_FUNCTION_PROMISE_0300 start
'
)
let
fileName
=
avVideoRecorderTestBase
.
resourceName
()
fdObject
=
await
mediaTestBase
.
getAvRecorderFd
(
fileName
,
"
video
"
);
fdPath
=
"
fd://
"
+
fdObject
.
fdNumber
;
avConfig
.
url
=
fdPath
;
avVideoRecorderTestBase
.
recordStart2ResumeWithPromise
(
avConfig
,
avRecorder
,
RECORDER_TIME
,
done
);
console
.
info
(
TAG
+
'
SUB_MULTIMEDIA_AVRECORDER_VIDEO_FUNCTION_PROMISE_0300 end
'
)
})
/* *
* @tc.number : SUB_MULTIMEDIA_AVRECORDER_VIDEO_FUNCTION_PROMISE_0400
* @tc.name : 04.AVRecorder test recording 3 seconds to stop
* @tc.desc : 1.createAVRecorder 2.prepare 3.getInputSurface 4.start 5.stop 6.release
* @tc.size : MediumTest
* @tc.type : Function
* @tc.level : Level 2
*/
it
(
'
SUB_MULTIMEDIA_AVRECORDER_VIDEO_FUNCTION_PROMISE_0400
'
,
0
,
async
function
(
done
)
{
console
.
info
(
TAG
+
'
SUB_MULTIMEDIA_AVRECORDER_VIDEO_FUNCTION_PROMISE_0400 start
'
)
let
fileName
=
avVideoRecorderTestBase
.
resourceName
()
fdObject
=
await
mediaTestBase
.
getAvRecorderFd
(
fileName
,
"
video
"
);
fdPath
=
"
fd://
"
+
fdObject
.
fdNumber
;
avConfig
.
url
=
fdPath
;
avVideoRecorderTestBase
.
recordStart2StopWithPromise
(
avConfig
,
avRecorder
,
RECORDER_TIME
,
done
);
console
.
info
(
TAG
+
'
SUB_MULTIMEDIA_AVRECORDER_VIDEO_FUNCTION_PROMISE_0400 end
'
)
})
/* *
* @tc.number : SUB_MULTIMEDIA_AVRECORDER_VIDEO_FUNCTION_PROMISE_0500
* @tc.name : 05.AVRecorder test recording 3 seconds to reset
* @tc.desc : 1.createAVRecorder 2.prepare 3.getInputSurface 4.start 5.reset 6.release
* @tc.size : MediumTest
* @tc.type : Function
* @tc.level : Level 2
*/
it
(
'
SUB_MULTIMEDIA_AVRECORDER_VIDEO_FUNCTION_PROMISE_0500
'
,
0
,
async
function
(
done
)
{
console
.
info
(
TAG
+
'
SUB_MULTIMEDIA_AVRECORDER_VIDEO_FUNCTION_PROMISE_0500 start
'
)
let
fileName
=
avVideoRecorderTestBase
.
resourceName
()
fdObject
=
await
mediaTestBase
.
getAvRecorderFd
(
fileName
,
"
video
"
);
fdPath
=
"
fd://
"
+
fdObject
.
fdNumber
;
avConfig
.
url
=
fdPath
;
avVideoRecorderTestBase
.
recordStart2ResetWithPromise
(
avConfig
,
avRecorder
,
RECORDER_TIME
,
done
);
console
.
info
(
TAG
+
'
SUB_MULTIMEDIA_AVRECORDER_VIDEO_FUNCTION_PROMISE_0500 end
'
)
})
})
}
multimedia/media/media_js_standard/avRecorder/src/main/js/test/List.test.js
浏览文件 @
d1e0e582
...
@@ -14,8 +14,13 @@
...
@@ -14,8 +14,13 @@
*/
*/
import
avRecorderTest
from
'
./AVRecorderFuncTest.test.js
'
import
avRecorderTest
from
'
./AVRecorderFuncTest.test.js
'
import
avVideoRecorderTestOne
from
'
./AvVideoRecorderFuncTestOne.test.js
'
import
avVideoRecorderTestTwo
from
'
./AvVideoRecorderFuncTestTwo.test.js
'
import
avVideoRecorderTestThree
from
'
./AvVideoRecorderFuncTestThree.test.js
'
export
default
function
testsuite
()
{
export
default
function
testsuite
()
{
avRecorderTest
()
avRecorderTest
()
avVideoRecorderTestOne
()
avVideoRecorderTestTwo
()
avVideoRecorderTestThree
()
}
}
\ No newline at end of file
编辑
预览
Markdown
is supported
0%
请重试
或
添加新附件
.
添加附件
取消
You are about to add
0
people
to the discussion. Proceed with caution.
先完成此消息的编辑!
取消
想要评论请
注册
或
登录