HarmonyOS 鸿蒙Next 使用 AVRecorder 进行录制,结合相机自行截帧传递到 Surface,需要设置 pts 么?
HarmonyOS 鸿蒙Next 使用 AVRecorder 进行录制,结合相机自行截帧传递到 Surface,需要设置 pts 么?
我已经通过 AVRecorder 设置了参数和获取 SurfaceId 给到相机的 egl 环境,创建 EGLSuface 。会对齐进行写入内容 swapbuffer ,在 Android 中需要 eglPresentationTimeANDROID 写入 pts 保证音视频的展示顺序,鸿蒙需要怎么写入这一个值?
更多关于HarmonyOS 鸿蒙Next 使用 AVRecorder 进行录制,结合相机自行截帧传递到 Surface,需要设置 pts 么?的实战系列教程也可以访问 https://www.itying.com/category-93-b0.html
可以通过focusControl.requestFocus获取焦点
import promptAction from '[@ohos](/user/ohos).promptAction';
[@Entry](/user/Entry)
[@Component](/user/Component)
struct RequestFocusExample {
[@State](/user/State) selectId: string = 'A'
[@State](/user/State) mobileNo:string = '18015898753'
build() {
Column({ space:20 }){
Row({space: 5}) {
TextInput({text:this.mobileNo})
.width(200).height(50).fontColor(Color.Black)
.key('A')
Button("获取焦点")
.width(80).height(35).fontColor(Color.White)
.onClick(() => {
let res = focusControl.requestFocus('A') // 使选中的this.selectId的组件获焦
if (res) {
promptAction.showToast({message: 'Request success'})
} else {
promptAction.showToast({message: 'Request failed'})
}
})
}
}.width('100%').margin({ top:20 })
}
}
更多关于HarmonyOS 鸿蒙Next 使用 AVRecorder 进行录制,结合相机自行截帧传递到 Surface,需要设置 pts 么?的实战系列教程也可以访问 https://www.itying.com/category-93-b0.html
在使用 HarmonyOS 鸿蒙Next 进行开发时,如果你使用 AVRecorder
进行录制,并且结合相机自行截帧传递到 Surface
,是否需要设置 pts
(Presentation Time Stamp,呈现时间戳)取决于你的具体需求和应用场景。
pts
主要用于指示数据包在解码后的播放时间,确保音视频同步。如果你的应用需要精确控制帧的播放顺序和时间,特别是在进行实时视频处理或需要确保音视频帧严格对齐的情况下,设置 pts
是必要的。
然而,如果你的应用对实时性要求不高,或者只是进行简单的视频录制和播放,不设置 pts
也可能不会影响基本功能。但请注意,不设置 pts
可能会导致在某些情况下音视频不同步或播放顺序混乱。
在鸿蒙系统中,你可以通过 AVRecorder
的相关接口来设置和管理 pts
。具体实现方式需参考鸿蒙系统的API文档和示例代码。
总之,是否需要设置 pts
取决于你的应用需求。如果涉及音视频同步或精确控制播放顺序,建议设置 pts
。
如果问题依旧没法解决请联系官网客服,官网地址是:https://www.itying.com/category-93-b0.html