HarmonyOS 鸿蒙Next AVRecorder录制的m4a无法在iOS播放
HarmonyOS 鸿蒙Next AVRecorder录制的m4a无法在iOS播放
private avProfile: media.AVRecorderProfile = {
audioBitrate:10000,
audioChannels: 1, // 音频声道数
audioCodec: media.CodecMimeType.AUDIO_AAC, // 音频编码格式,当前支持ACC,MP3,G711MU
audioSampleRate: audio.AudioSamplingRate.SAMPLE_RATE_12000, // 音频采样率
fileFormat: media.ContainerFormatType.CFT_MPEG_4A, // 封装格式,当前支持MP4,M4A,MP3,WAV
};
以上是录制的配置,在录制完后上传至服务端,安卓和pc端均可正常播放,但是iOS的播放时无法获取总时长,也无法正常播放,不确定是哪个参数的问题,对照iOS代码设置的audioChannels:1 audioSampleRate:12000 但是iOS里没有audioBitrate参数
更多关于HarmonyOS 鸿蒙Next AVRecorder录制的m4a无法在iOS播放的实战系列教程也可以访问 https://www.itying.com/category-93-b0.html
封装格式m4a,文件名也要这个后缀。
更多关于HarmonyOS 鸿蒙Next AVRecorder录制的m4a无法在iOS播放的实战系列教程也可以访问 https://www.itying.com/category-93-b0.html
试了下确实存储的路径改为.m4a iOS的就能播放了。
鸿蒙录制的m4a在mac下显示的信息
iOS和安卓端录制的m4a在mac下显示的信息
对比两文件 ,图1为鸿蒙录制的aac文件,实际文件为mpeg-4,并非m4a
图2为安卓和iOS录制的音频信息,实际为adts,并且信息少很多,从现象上看,鸿蒙是把音频当成视频来录制了
针对HarmonyOS鸿蒙系统中Next AVRecorder录制的m4a文件无法在iOS播放的问题,可能的原因及解决方案如下:
-
编码格式不兼容:iOS设备可能不支持某些特定的m4a编码格式。确保录制的m4a文件使用的是iOS兼容的编码,如AAC。在鸿蒙系统中录制时,检查AVRecorder的配置,确保选择了正确的编码器和参数。
-
元数据问题:m4a文件的元数据(如标签信息)可能不符合iOS的解析标准。尝试使用专业的音频编辑软件重新编辑或转换文件,确保元数据正确无误。
-
文件损坏:录制过程中可能由于系统错误或存储问题导致文件损坏。重新录制文件并尝试在iOS设备上播放,以排除文件损坏的可能性。
-
系统更新:检查鸿蒙系统和iOS系统是否为最新版本,有时系统更新能解决兼容性问题。
-
第三方软件:尝试使用第三方音频转换工具将m4a文件转换为其他格式(如mp3),再尝试在iOS设备上播放,以验证是否为格式兼容性问题。
如果问题依旧没法解决请联系官网客服,官网地址是 https://www.itying.com/category-93-b0.html 。