- html - 出于某种原因,IE8 对我的 Sass 文件中继承的 html5 CSS 不友好?
- JMeter 在响应断言中使用 span 标签的问题
- html - 在 :hover and :active? 上具有不同效果的 CSS 动画
- html - 相对于居中的 html 内容固定的 CSS 重复背景?
我正在使用 AVAssetExportSession
在 iOS 应用程序中导出视频。为了以正确的方向呈现视频,我正在使用 AVAssetTrack
的 preferredTransform
.对于一些源视频,这个属性似乎有一个错误的值,结果视频出现偏移或全黑。我怎样才能解决这个问题?
最佳答案
preferredTransform
是 CGAffineTransform
.属性a
, b
, c
, d
是反射和旋转矩阵的串联,以及属性 tx
和 ty
描述一个翻译。在所有我观察到的不正确的情况下 preferredTransform
,反射/旋转部分似乎是正确的,只有平移部分包含错误的值。一个可靠的解决方法似乎是检查 a
, b
, c
, d
(共8个case,每个对应UIImageOrientation
中的一个case)并更新tx
和 ty
因此:
extension AVAssetTrack {
var fixedPreferredTransform: CGAffineTransform {
var t = preferredTransform
switch(t.a, t.b, t.c, t.d) {
case (1, 0, 0, 1):
t.tx = 0
t.ty = 0
case (1, 0, 0, -1):
t.tx = 0
t.ty = naturalSize.height
case (-1, 0, 0, 1):
t.tx = naturalSize.width
t.ty = 0
case (-1, 0, 0, -1):
t.tx = naturalSize.width
t.ty = naturalSize.height
case (0, -1, 1, 0):
t.tx = 0
t.ty = naturalSize.width
case (0, 1, -1, 0):
t.tx = naturalSize.height
t.ty = 0
case (0, 1, 1, 0):
t.tx = 0
t.ty = 0
case (0, -1, -1, 0):
t.tx = naturalSize.height
t.ty = naturalSize.width
default:
break
}
return t
}
}
关于ios - AVAssetTrack 的 preferredTransform 有时似乎是错误的。如何解决这个问题?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/64161544/
我是 swift 和编程的新手,我尝试连接一些记录器文件,我成功地制作了这样的文件: func concatenateFiles(audioFiles: [URL], completion: @esc
我有一个录制视频的应用。 为了处理手机旋转,我有以下代码: // called on phone rotation AVCaptureConnection *previewLayerC
我有一些音频文件需要插入到 AVMutableComposition 中。每个音频都有不同的音量。为此,我为每个音频文件创建了一个 AVMutableTrackComposition 和一个 AVAs
我试图从 AVAssetTrack 对象获取 asset 属性,但有时它是 nil。似乎只有在我使用 Dispatch.main.async 之后才会出现问题。 根据documentation ,需要
我的设置相当简单。我有一个包含视频和音频轨道的作品。视频以左横向或右横向拍摄。视频帧缓冲区使用 AVCaptureVideoDataOutput 对象捕获并使用 AVAssetWriter/AVAss
具有以下内容和一个 MP3 文件: AVURLAsset* audio = [[AVURLAsset alloc]initWithURL:audioUrl options:nil]; AVAssetT
我试图区分具有可变帧速率的 AVAssets 和那些不可变帧速率的 AVAssets。 我知道我可以解码每一帧并检查帧持续时间是否不会改变每一帧,但这代价高昂,我查看了可用的元数据但没有发现任何有用的
我正在使用 AVAssetExportSession在 iOS 应用程序中导出视频。为了以正确的方向呈现视频,我正在使用 AVAssetTrack的 preferredTransform .对于一些源
我在 AVAsset 中有一个音频文件(mp3、wav、aiff、...)然后得到 AVAssetTrack . 我正在寻找一种从该 Assets 中以 Apple 格式(如 AVFileType)查
像这样加载 AVAsset 之后: AVAsset *asset = [AVAsset assetWithURL:url]; 我想知道音轨的采样率是多少。目前,我得到的音轨是这样的: AVAssetT
我正在录制屏幕,我想将麦克风音频和应用程序音频中的声音组合成一个带有 ONE stero 音轨的视频。与 AVAssetWriter我有设置,它会创建一个包含两个单独音轨的视频文件;一个用于设备音频的
这很奇怪,经过数小时的测试我仍然无法弄清楚。 好的,这就是我要做的:合并两个视频,也就是一个接一个地追加。 我拍摄了两个视频,然后有两个网址。然后我使用以下方法创建了两个 AVURLAsset: A
IOS 4.0的新功能列表显示,AV Foundation框架具有媒体 Assets 管理、轨道管理、媒体编辑和媒体项元数据管理。他们这是什么意思? 使用轨道管理和媒体 Assets 管理,我可以从照
我是一名优秀的程序员,十分优秀!