HarmonyOS 录音后的文件无法使用,是坏掉的
根据“使用AudioCapturer开发音频录制功能”这篇文档进行的录音,录音成功后的文件不能用,这是部分代码。
filePath: string = getContext().cacheDir + '/StarWars10s-2C-48000-4SW.wav';
file:fs.File = fs.openSync(this.filePath, fs.OpenMode.READ_WRITE | fs.OpenMode.CREATE)
//文件写入
(this.audioCapturer as audio.AudioCapturer).on('readData', (buffer: ArrayBuffer) => {
let options: Options = {
offset: this.bufferSize,
length: buffer.byteLength
}
fs.writeSync(this.file.fd, buffer, options);
this.bufferSize += buffer.byteLength;
});
//录音停止
(this.audioCapturer as audio.AudioCapturer).stop((err: BusinessError) => {
if (err) {
console.error('Capturer stop failed.');
} else {
fs.close(this.file).then(()=>{
let file = fs.openSync(this.filePath)
this.initAudioAvPlayer('fd://'+file.fd)
}).catch(()=>{console.log("文件关闭失败")})
console.info('Capturer stop success.');
}
});
这边是在录音stop后,file.close的回调中对文件进行音频的播放或者上传,都显示文件时损坏的,这是什么问题?
HarmonyOS
赞
收藏 0
回答 1
待解决
相关问题
HarmonyOS AudioCapturer录音后生成的wav文件无法播放
73浏览 • 1回复 待解决
录音后文件转mp3,是否支持录音后可将文件转成mp3?
217浏览 • 1回复 待解决
HarmonyOS 录音上传文件
104浏览 • 1回复 待解决
HarmonyOS 工程机怎么获取系统的录音文件
475浏览 • 1回复 待解决
HarmonyOS 如何指定不同的录音设备进行录音?
332浏览 • 1回复 待解决
HarmonyOS 使用相机拍照,拍照后的照片是黑色的
234浏览 • 1回复 待解决
HarmonyOS 关于文件上传成功后无法获取接口返回的信息
108浏览 • 1回复 待解决
HarmonyOS request下载文件后使用fs.listFileSync无法查找到
20浏览 • 1回复 待解决
HarmonyOS 使用的是list组件添加swipeAction后如何复位
404浏览 • 1回复 待解决
HarmonyOS关于JSON 转换后对象的方法无法使用问题
814浏览 • 1回复 待解决
HarmonyOS 录音,希望能有录音Demo
226浏览 • 1回复 待解决
HarmonyOS request上传文件后headerReceive内容无法解析
41浏览 • 1回复 待解决
HarmonyOS的media.AVRecorder支持设置最大录音文件大小和录音质量(类似quality字段,1到100)吗?
450浏览 • 1回复 待解决
HarmonyOS AVPlayer播放本地沙箱目录音频文件
432浏览 • 1回复 待解决
HarmonyOS 配置了正式签名后,点击build - build apps生成的是hap格式的文件是怎么回事
805浏览 • 1回复 待解决
HarmonyOS 使用AVRecorder录音时,怎么获取音量
36浏览 • 1回复 待解决
文件下载后shell进入存储之后无法找到相应文件
1707浏览 • 1回复 待解决
HarmonyOS使用fs.open无法打开photoViewPicker选择文件的uri
443浏览 • 1回复 待解决
HarmonyOS 使用AudioCapturer录音过程中闪退
256浏览 • 1回复 待解决
#鸿蒙通关秘籍#HarmonyOS Next中处理文件上传成功后的回调机制是怎样的?
164浏览 • 1回复 待解决
HarmonyOS 编译c文件无法使用time.h种的POSIX接口
19浏览 • 1回复 待解决
HarmonyOS 关于获取录音音频的时长的问题咨询
76浏览 • 1回复 待解决
HarmonyOS 使用 url.parse.params.get() 方法获取的value获取的是解码后的内容
205浏览 • 1回复 待解决
audioCapture生成的音频文件是PCM格式原始数据,需要音频输出后添加数据处理才能播放。
验证阶段可以把录音文件导出来,用三方软件比如Audacity转为可以播放的格式。
此demo录制出来的pcm码流可以使用音频编码为MP3文件,参考官网链接:https://developer.huawei.com/consumer/cn/doc/harmonyos-guides-V5/audio-encoding-V5