Skip to content
体验新版
项目
组织
正在加载...
登录
切换导航
打开侧边栏
OpenHarmony
Xts Acts
提交
754904fb
X
Xts Acts
项目概览
OpenHarmony
/
Xts Acts
12 个月 前同步成功
通知
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看板
体验新版 GitCode,发现更多精彩内容 >>
提交
754904fb
编写于
9月 24, 2021
作者:
O
openharmony_ci
提交者:
Gitee
9月 24, 2021
浏览文件
操作
浏览文件
下载
差异文件
!712 提交录制测试代码
Merge pull request !712 from sharpshooter/hxl
上级
c94c1a75
1b28d0aa
变更
15
展开全部
隐藏空白更改
内联
并排
Showing
15 changed file
with
1526 addition
and
158 deletion
+1526
-158
multimedia/BUILD.gn
multimedia/BUILD.gn
+4
-3
multimedia/audio/audio_js_standard/audioRecorder/BUILD.gn
multimedia/audio/audio_js_standard/audioRecorder/BUILD.gn
+38
-0
multimedia/audio/audio_js_standard/audioRecorder/Test.json
multimedia/audio/audio_js_standard/audioRecorder/Test.json
+18
-0
multimedia/audio/audio_js_standard/audioRecorder/src/main/config.json
...udio/audio_js_standard/audioRecorder/src/main/config.json
+60
-0
multimedia/audio/audio_js_standard/audioRecorder/src/main/js/default/app.js
...udio_js_standard/audioRecorder/src/main/js/default/app.js
+25
-18
multimedia/audio/audio_js_standard/audioRecorder/src/main/js/default/i18n/en-US.json
...tandard/audioRecorder/src/main/js/default/i18n/en-US.json
+6
-0
multimedia/audio/audio_js_standard/audioRecorder/src/main/js/default/i18n/zn-CN.json
...tandard/audioRecorder/src/main/js/default/i18n/zn-CN.json
+6
-0
multimedia/audio/audio_js_standard/audioRecorder/src/main/js/default/pages/index/index.css
...d/audioRecorder/src/main/js/default/pages/index/index.css
+9
-0
multimedia/audio/audio_js_standard/audioRecorder/src/main/js/default/pages/index/index.hml
...d/audioRecorder/src/main/js/default/pages/index/index.hml
+5
-0
multimedia/audio/audio_js_standard/audioRecorder/src/main/js/default/pages/index/index.js
...rd/audioRecorder/src/main/js/default/pages/index/index.js
+45
-0
multimedia/audio/audio_js_standard/audioRecorder/src/main/js/default/test/List.test.js
...ndard/audioRecorder/src/main/js/default/test/List.test.js
+17
-18
multimedia/audio/audio_js_standard/audioRecorder/src/main/js/default/test/RecorderLocalTestAudioAPI.test.js
...rc/main/js/default/test/RecorderLocalTestAudioAPI.test.js
+638
-0
multimedia/audio/audio_js_standard/audioRecorder/src/main/js/default/test/RecorderLocalTestAudioFUNC.test.js
...c/main/js/default/test/RecorderLocalTestAudioFUNC.test.js
+524
-0
multimedia/audio/audio_js_standard/audioRecorder/src/main/resources/base/element/string.json
...audioRecorder/src/main/resources/base/element/string.json
+12
-0
multimedia/media/media_cpp_test_standard/player/include/TestPlayer.h
...media/media_cpp_test_standard/player/include/TestPlayer.h
+119
-119
未找到文件。
multimedia/BUILD.gn
浏览文件 @
754904fb
...
...
@@ -16,11 +16,12 @@ import("//test/xts/tools/build/suite.gni")
group("multimedia") {
testonly = true
if (is_standard_system) {
deps = [
deps = [
"audio/audio_js_standard/audioManager:audio_manager_js_hap",
"audio/audio_js_standard/audioPlayer:audio_player_js_hap",
"audio/audio_js_standard/audioPlayer_API:audio_player_api_js_hap",
"audio/audio_js_standard/audio
Manager:audio_manag
er_js_hap",
"media/media_cpp_test_standard:ActsMediaCppStandardTest"
"audio/audio_js_standard/audio
Recorder:audio_record
er_js_hap",
"media/media_cpp_test_standard:ActsMediaCppStandardTest"
,
]
} else {
deps = [
...
...
multimedia/audio/audio_js_standard/audioRecorder/BUILD.gn
0 → 100644
浏览文件 @
754904fb
# Copyright (C) 2021 Huawei Device 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("//test/xts/tools/build/suite.gni")
ohos_js_hap_suite("audio_recorder_js_hap") {
hap_profile = "./src/main/config.json"
deps = [
":audio_recorder_js_assets",
":audio_recorder_resources",
]
# shared_libraries = [
# "//third_party/giflib:libgif",
# "//third_party/libpng:libpng",
# ]
certificate_profile = "./signature/openharmony_sx.p7b"
hap_name = "AudioRecorderJsTest"
# part_name = "prebuilt_hap"
# subsystem_name = "xts"
}
ohos_js_assets("audio_recorder_js_assets") {
source_dir = "./src/main/js/default"
}
ohos_resources("audio_recorder_resources") {
sources = [ "./src/main/resources" ]
hap_profile = "./src/main/config.json"
}
multimedia/audio/audio_js_standard/audioRecorder/Test.json
0 → 100644
浏览文件 @
754904fb
{
"description"
:
"Configuration for audio manager Tests"
,
"driver"
:
{
"type"
:
"JSUnitTest"
,
"test-timeout"
:
"60000"
,
"package"
:
"ohos.acts.multimedia.audio.function"
,
"shell-timeout"
:
"60000"
},
"kits"
:
[
{
"test-file-name"
:
[
"AudioRecorderJsTest.hap"
],
"type"
:
"AppInstallKit"
,
"cleanup-apps"
:
true
}
]
}
\ No newline at end of file
multimedia/audio/audio_js_standard/audioRecorder/src/main/config.json
0 → 100644
浏览文件 @
754904fb
{
"app"
:
{
"bundleName"
:
"ohos.acts.multimedia.audio.function"
,
"vendor"
:
"acts"
,
"version"
:
{
"code"
:
1000000
,
"name"
:
"1.0.0"
},
"apiVersion"
:
{
"compatible"
:
4
,
"target"
:
5
}
},
"deviceConfig"
:
{},
"module"
:
{
"package"
:
"ohos.acts.multimedia.audio.function"
,
"name"
:
".MyApplication"
,
"deviceType"
:
[
"phone"
],
"distro"
:
{
"deliveryWithInstall"
:
true
,
"moduleName"
:
"entry"
,
"moduleType"
:
"entry"
},
"abilities"
:
[
{
"visible"
:
true
,
"skills"
:
[
{
"entities"
:
[
"entity.system.home"
],
"actions"
:
[
"action.system.home"
]
}
],
"name"
:
"ohos.acts.multimedia.audio.function.MainAbility"
,
"icon"
:
"$media:icon"
,
"description"
:
"$string:mainability_description"
,
"label"
:
"$string:app_name"
,
"type"
:
"page"
,
"launchType"
:
"standard"
}
],
"js"
:
[
{
"pages"
:
[
"pages/index/index"
],
"name"
:
"default"
,
"window"
:
{
"designWidth"
:
720
,
"autoDesignWidth"
:
false
}
}
]
}
}
multimedia/
media/media_cpp_test_standard/player/include/common.h
→
multimedia/
audio/audio_js_standard/audioRecorder/src/main/js/default/app.js
100755 → 100644
浏览文件 @
754904fb
/*
* Copyright (C) 2021 Huawei Device 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.
*/
#ifndef DISABLE_COMMON_TEST_H
#define DISABLE_COMMON_TEST_H
#endif
\ No newline at end of file
/*
* Copyright (C) 2021 Huawei Device 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
device
from
'
@system.device
'
;
export
default
{
onCreate
()
{
console
.
info
(
'
AceApplication onCreate
'
);
},
onDestroy
()
{
console
.
info
(
'
AceApplication onDestroy
'
);
}
};
multimedia/audio/audio_js_standard/audioRecorder/src/main/js/default/i18n/en-US.json
0 → 100644
浏览文件 @
754904fb
{
"strings"
:
{
"hello"
:
"Hello"
,
"world"
:
"World"
}
}
\ No newline at end of file
multimedia/audio/audio_js_standard/audioRecorder/src/main/js/default/i18n/zn-CN.json
0 → 100644
浏览文件 @
754904fb
{
"strings"
:
{
"hello"
:
"您好"
,
"world"
:
"世界"
}
}
\ No newline at end of file
multimedia/audio/audio_js_standard/audioRecorder/src/main/js/default/pages/index/index.css
0 → 100644
浏览文件 @
754904fb
.container
{
flex-direction
:
column
;
justify-content
:
center
;
align-items
:
center
;
}
.title
{
font-size
:
100px
;
}
multimedia/audio/audio_js_standard/audioRecorder/src/main/js/default/pages/index/index.hml
0 → 100644
浏览文件 @
754904fb
<div class="container">
<text class="title">
{{ $t('strings.hello') }} {{ title }}
</text>
</div>
multimedia/audio/audio_js_standard/audioRecorder/src/main/js/default/pages/index/index.js
0 → 100644
浏览文件 @
754904fb
/*
* Copyright (C) 2021 Huawei Device 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
app
from
'
@system.app
'
import
{
Core
,
ExpectExtend
}
from
'
deccjsunit/index
'
const
injectRef
=
Object
.
getPrototypeOf
(
global
)
||
global
injectRef
.
regeneratorRuntime
=
require
(
'
@babel/runtime/regenerator
'
)
export
default
{
data
:
{
title
:
""
},
onInit
()
{
this
.
title
=
this
.
$t
(
'
strings.world
'
);
},
onShow
()
{
console
.
info
(
'
onShow finish
'
)
const
core
=
Core
.
getInstance
()
const
expectExtend
=
new
ExpectExtend
({
'
id
'
:
'
extend
'
})
core
.
addService
(
'
expect
'
,
expectExtend
)
core
.
init
()
const
configService
=
core
.
getDefaultService
(
'
config
'
)
configService
.
setConfig
(
this
)
require
(
'
../../test/List.test
'
)
core
.
execute
()
},
onReady
()
{
},
}
\ No newline at end of file
multimedia/
media/media_cpp_test_standard/player/include/Testplayer.h
→
multimedia/
audio/audio_js_standard/audioRecorder/src/main/js/default/test/List.test.js
100755 → 100644
浏览文件 @
754904fb
/*
* Copyright (C) 2021 Huawei Device 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.
*/
#ifndef DISABLE_PLAYER_TEST_H
#define DISABLE_PLAYER_TEST_H
#endif
\ No newline at end of file
/*
* Copyright (C) 2021 Huawei Device 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.
*/
require
(
'
./RecorderLocalTestAudioFUNC.test.js
'
)
require
(
'
./RecorderLocalTestAudioAPI.test.js
'
)
\ No newline at end of file
multimedia/audio/audio_js_standard/audioRecorder/src/main/js/default/test/RecorderLocalTestAudioAPI.test.js
0 → 100644
浏览文件 @
754904fb
此差异已折叠。
点击以展开。
multimedia/audio/audio_js_standard/audioRecorder/src/main/js/default/test/RecorderLocalTestAudioFUNC.test.js
0 → 100644
浏览文件 @
754904fb
此差异已折叠。
点击以展开。
multimedia/audio/audio_js_standard/audioRecorder/src/main/resources/base/element/string.json
0 → 100644
浏览文件 @
754904fb
{
"string"
:
[
{
"name"
:
"app_name"
,
"value"
:
"MyApplication"
},
{
"name"
:
"mainability_description"
,
"value"
:
"JS_Phone_Empty Feature Ability"
}
]
}
\ No newline at end of file
multimedia/media/media_cpp_test_standard/player/include/TestPlayer.h
浏览文件 @
754904fb
/*
* Copyright (C) 2021 Huawei Device 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.
*/
#ifndef PLAYER_TEST_H
#define PLAYER_TEST_H
#include "securec.h"
#include "TestParamsConfig.h"
#include "window_manager.h"
#include "surface_type.h"
#include "display_type.h"
namespace
OHOS
{
namespace
Media
{
static
const
std
::
string
SURFACE_STRIDE_ALIGNMENT
=
"SURFACE_STRIDE_ALIGNMENT"
;
static
const
std
::
string
SURFACE_FORMAT
=
"SURFACE_FORMAT"
;
static
WindowConfig
g_config
=
{
1920
,
1080
,
PIXEL_FMT_RGBA_8888
,
0
,
0
,
WINDOW_TYPE_NORMAL
};
static
WindowConfig
g_sub_config
=
{
720
,
480
,
PIXEL_FMT_YCRCB_420_SP
,
0
,
0
,
WINDOW_TYPE_VIDEO
,
};
class
PlayerSignal
{
public:
PlayerStates
state_
=
PLAYER_IDLE
;
int32_t
seekPositon_
;
bool
seekDoneFlag_
;
bool
mutexFlag_
=
true
;
std
::
mutex
mutexSeek_
;
std
::
mutex
mutexReset_
;
std
::
mutex
mutexPrepare_
;
std
::
mutex
mutexPlay_
;
std
::
mutex
mutexPause_
;
std
::
mutex
mutexStop_
;
std
::
condition_variable
condVarSeek_
;
std
::
condition_variable
condVarReset_
;
std
::
condition_variable
condVarPrepare_
;
std
::
condition_variable
condVarPlay_
;
std
::
condition_variable
condVarPause_
;
std
::
condition_variable
condVarStop_
;
void
SetState
(
PlayerStates
state
);
void
SetSeekResult
(
bool
seekDoneFlag
);
};
class
TestPlayer
{
public:
std
::
shared_ptr
<
Player
>
player_
=
nullptr
;
sptr
<
Window
>
window_
=
nullptr
;
explicit
TestPlayer
(
std
::
shared_ptr
<
PlayerSignal
>
test
);
virtual
~
TestPlayer
();
bool
CreatePlayer
();
int32_t
SetSource
(
const
std
::
string
&
uri
);
int32_t
SetDataSrc
(
const
std
::
string
&
uri
,
bool
seekable
);
int32_t
Play
();
int32_t
Prepare
();
int32_t
PrepareAsync
();
int32_t
Pause
();
int32_t
Stop
();
int32_t
Reset
();
int32_t
Release
();
int32_t
SetVolume
(
float
leftVolume
,
float
rightVolume
);
int32_t
Seek
(
int32_t
mseconds
,
PlayerSeekMode
mode
);
int32_t
GetCurrentTime
(
int32_t
&
currentTime
);
int32_t
GetDuration
(
int32_t
&
duration
);
int32_t
SetPlaybackSpeed
(
PlaybackRateMode
mode
);
int32_t
GetPlaybackSpeed
(
PlaybackRateMode
&
mode
);
sptr
<
Surface
>
GetVideoSurface
(
WindowConfig
g_sub_config
);
int32_t
SetVideoSurface
(
sptr
<
Surface
>
surface
);
bool
IsPlaying
();
bool
IsLooping
();
int32_t
SetLooping
(
bool
loop
);
int32_t
SetPlayerCallback
(
const
std
::
shared_ptr
<
PlayerCallback
>
&
callback
);
private:
std
::
shared_ptr
<
PlayerSignal
>
test_
;
};
class
TestPlayerCallback
:
public
PlayerCallback
{
public:
int
errorNum_
=
0
;
PlayerStates
state_
=
PLAYER_STATE_ERROR
;
explicit
TestPlayerCallback
(
std
::
shared_ptr
<
PlayerSignal
>
test
);
virtual
~
TestPlayerCallback
();
void
OnError
(
PlayerErrorType
errorType
,
int32_t
errorCode
);
int
WaitForSeekDone
(
int32_t
currentPositon
);
void
OnInfo
(
PlayerOnInfoType
type
,
int32_t
extra
,
const
Format
&
infoBody
=
{});
int
WaitForState
(
PlayerStates
state
);
private:
void
PrintState
(
PlayerStates
state
);
PlayerErrorType
errorType_
=
PLAYER_ERROR_UNKNOWN
;
int32_t
errorCode_
=
-
1
;
bool
seekDoneFlag_
=
false
;
int32_t
postion_
=
0
;
std
::
shared_ptr
<
PlayerSignal
>
test_
;
};
}
}
/*
* Copyright (C) 2021 Huawei Device 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.
*/
#ifndef PLAYER_TEST_H
#define PLAYER_TEST_H
#include "securec.h"
#include "TestParamsConfig.h"
#include "window_manager.h"
#include "surface_type.h"
#include "display_type.h"
namespace
OHOS
{
namespace
Media
{
static
const
std
::
string
SURFACE_STRIDE_ALIGNMENT
=
"SURFACE_STRIDE_ALIGNMENT"
;
static
const
std
::
string
SURFACE_FORMAT
=
"SURFACE_FORMAT"
;
static
WindowConfig
g_config
=
{
1920
,
1080
,
PIXEL_FMT_RGBA_8888
,
0
,
0
,
WINDOW_TYPE_NORMAL
};
static
WindowConfig
g_sub_config
=
{
720
,
480
,
PIXEL_FMT_YCRCB_420_SP
,
0
,
0
,
WINDOW_TYPE_VIDEO
,
};
class
PlayerSignal
{
public:
PlayerStates
state_
=
PLAYER_IDLE
;
int32_t
seekPositon_
;
bool
seekDoneFlag_
;
bool
mutexFlag_
=
true
;
std
::
mutex
mutexSeek_
;
std
::
mutex
mutexReset_
;
std
::
mutex
mutexPrepare_
;
std
::
mutex
mutexPlay_
;
std
::
mutex
mutexPause_
;
std
::
mutex
mutexStop_
;
std
::
condition_variable
condVarSeek_
;
std
::
condition_variable
condVarReset_
;
std
::
condition_variable
condVarPrepare_
;
std
::
condition_variable
condVarPlay_
;
std
::
condition_variable
condVarPause_
;
std
::
condition_variable
condVarStop_
;
void
SetState
(
PlayerStates
state
);
void
SetSeekResult
(
bool
seekDoneFlag
);
};
class
TestPlayer
{
public:
std
::
shared_ptr
<
Player
>
player_
=
nullptr
;
sptr
<
Window
>
window_
=
nullptr
;
explicit
TestPlayer
(
std
::
shared_ptr
<
PlayerSignal
>
test
);
virtual
~
TestPlayer
();
bool
CreatePlayer
();
int32_t
SetSource
(
const
std
::
string
&
uri
);
int32_t
SetDataSrc
(
const
std
::
string
&
uri
,
bool
seekable
);
int32_t
Play
();
int32_t
Prepare
();
int32_t
PrepareAsync
();
int32_t
Pause
();
int32_t
Stop
();
int32_t
Reset
();
int32_t
Release
();
int32_t
SetVolume
(
float
leftVolume
,
float
rightVolume
);
int32_t
Seek
(
int32_t
mseconds
,
PlayerSeekMode
mode
);
int32_t
GetCurrentTime
(
int32_t
&
currentTime
);
int32_t
GetDuration
(
int32_t
&
duration
);
int32_t
SetPlaybackSpeed
(
PlaybackRateMode
mode
);
int32_t
GetPlaybackSpeed
(
PlaybackRateMode
&
mode
);
sptr
<
Surface
>
GetVideoSurface
(
WindowConfig
g_sub_config
);
int32_t
SetVideoSurface
(
sptr
<
Surface
>
surface
);
bool
IsPlaying
();
bool
IsLooping
();
int32_t
SetLooping
(
bool
loop
);
int32_t
SetPlayerCallback
(
const
std
::
shared_ptr
<
PlayerCallback
>
&
callback
);
private:
std
::
shared_ptr
<
PlayerSignal
>
test_
;
};
class
TestPlayerCallback
:
public
PlayerCallback
{
public:
int
errorNum_
=
0
;
PlayerStates
state_
=
PLAYER_STATE_ERROR
;
explicit
TestPlayerCallback
(
std
::
shared_ptr
<
PlayerSignal
>
test
);
virtual
~
TestPlayerCallback
();
void
OnError
(
PlayerErrorType
errorType
,
int32_t
errorCode
);
int
WaitForSeekDone
(
int32_t
currentPositon
);
void
OnInfo
(
PlayerOnInfoType
type
,
int32_t
extra
,
const
Format
&
infoBody
=
{});
int
WaitForState
(
PlayerStates
state
);
private:
void
PrintState
(
PlayerStates
state
);
PlayerErrorType
errorType_
=
PLAYER_ERROR_UNKNOWN
;
int32_t
errorCode_
=
-
1
;
bool
seekDoneFlag_
=
false
;
int32_t
postion_
=
0
;
std
::
shared_ptr
<
PlayerSignal
>
test_
;
};
}
}
#endif
\ No newline at end of file
编辑
预览
Markdown
is supported
0%
请重试
或
添加新附件
.
添加附件
取消
You are about to add
0
people
to the discussion. Proceed with caution.
先完成此消息的编辑!
取消
想要评论请
注册
或
登录