在 iPhone 开发视频压缩功能。我开发了该功能,但对比特率计算有点困惑。
我正在使用以下方法进行视频压缩。
1. AVAsset
2. AVAssetTrack
3. AVAssetWriterInput
4. AVAssetWriter
5. AVAssetReader
6. AVAssetReaderOutput
7. AVAssetTrack
8. AVAssetReader
我们可以获得原始视频的视频比特率吗?
在 iPhone 开发视频压缩功能。我开发了该功能,但对比特率计算有点困惑。
我正在使用以下方法进行视频压缩。
1. AVAsset
2. AVAssetTrack
3. AVAssetWriterInput
4. AVAssetWriter
5. AVAssetReader
6. AVAssetReaderOutput
7. AVAssetTrack
8. AVAssetReader
我们可以获得原始视频的视频比特率吗?
循环遍历 AVAsset 的轨道,确定它是哪种轨道(音频/视频)并使用 AVAssetTrack 的“estimatedDataRate”属性来获取文件的平均比特率。像这样的东西:
AVAsset *asset = [AVAsset assetWithURL:url];
for(AVAssetTrack *track in asset.tracks)
{
if([track.mediaType isEqual:AVMediaTypeVideo])
{
videoBitrate = track.estimatedDataRate;
}
if([track.mediaType isEqual:AVMediaTypeAudio])
{
audioBitrate = track.estimatedDataRate;
}
}