ios 视频选择/拍摄后竖屏的视频会自动旋转为横屏 uni-app

ios 视频选择/拍摄后竖屏的视频会自动旋转为横屏 uni-app

开发环境 版本号 项目创建方式
Windows 10 HBuilderX
# 操作步骤:
- 从相册选择/拍摄竖屏视频,上传至服务器

# 预期结果:
- 竖屏视频

# 实际结果:
- 下载源视频为竖屏

# bug描述:
- 如题
3 回复

使用的chooseVideo选的视频吗?
中间是否有压缩视频?
拍摄完成后 getVideoInfo看下视频方向属性是什么

更多关于ios 视频选择/拍摄后竖屏的视频会自动旋转为横屏 uni-app的实战教程也可以访问 https://www.itying.com/category-93-b0.html


请问问题解决了嘛?

这是一个iOS系统处理视频方向的常见问题。在uni-app中,iOS设备拍摄或选择的竖屏视频会被自动添加旋转元数据(metadata),导致播放时被错误识别为横屏。

解决方法:

  1. 使用uni.chooseVideo时添加compressed: false参数,避免系统自动处理:
uni.chooseVideo({
  sourceType: ['album','camera'],
  compressed: false,
  success: (res) => {
    // 处理视频
  }
})
  1. 上传前使用plus.io的API获取文件对象进行处理:
plus.io.resolveLocalFileSystemURL(res.tempFilePath, (entry) => {
  entry.file((file) => {
    // file对象包含原始视频数据
  })
})
  1. 或者在后端处理时,通过FFmpeg等工具读取视频元数据并修正方向:
ffmpeg -i input.mp4 -metadata:s:v rotate="0" -codec copy output.mp4
回到顶部