由于mac自带录屏是mov并且文件特别大,我使用ffmpeg转码视频为h265
使用如下命令
ffmpeg_command = [
ffmpeg_path,
"-i", input_path,
"-c:v", "libx265",
"-preset", "veryslow",
"-map_metadata", "0", # 保留元数据
output_path
]

点开转码完的文件后,出现如下报错。
continue进入后,发现音频正常播放。尝试发到手机/window电脑后,发现正常播放
一番查询后,发现这里是属于apple的一个坑。
视频文件一般来说会有一个标签来标识文件到底是什么编码,对于h265一般有hev1,hvc1,dvh1。FFmpeg默认是使用hev1标签(ISO/IEC 14496-15),但是由于读取hev1标签会导致要扫视频流,apple为了避免安全问题禁止。而必须要加一个 "-tag:v", "hvc1"的标签。最后,解决