1

在 iPhone 开发视频压缩功能。我开发了该功能,但对比特率计算有点困惑。

我正在使用以下方法进行视频压缩。

 1. AVAsset 
 2. AVAssetTrack
 3. AVAssetWriterInput
 4. AVAssetWriter
 5. AVAssetReader
 6. AVAssetReaderOutput
 7. AVAssetTrack
 8. AVAssetReader

我们可以获得原始视频的视频比特率吗?

4

1 回答 1

1

循环遍历 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;
    }
}
于 2015-04-28T11:18:34.783 回答