gpt4 book ai didi

ios - AVVideoAverageBitRateKey 没有生效

转载 作者:可可西里 更新时间:2023-11-01 04:43:39 25 4
gpt4 key购买 nike

我将 AVVideoAverageBitRateKey 设置为 900000,但我录制的视频获得了不同的比特率值。总是不同的值,有时 850k,有时 780k,810k,从不 900k。为什么?

这是我做的设置:

    NSNumber *compression = [NSNumber numberWithLong:900000];

AVAsset *videoAsset = [[AVURLAsset alloc] initWithURL:inputURL options:nil];

AVAssetTrack *videoTrack = [[videoAsset tracksWithMediaType:AVMediaTypeVideo] objectAtIndex:0];
CGSize videoSize = videoTrack.naturalSize;
NSDictionary *videoWriterCompressionSettings = [NSDictionary dictionaryWithObjectsAndKeys:compression, AVVideoAverageBitRateKey, nil];
NSDictionary *videoWriterSettings = [NSDictionary dictionaryWithObjectsAndKeys:AVVideoCodecH264,
AVVideoCodecKey, videoWriterCompressionSettings,
AVVideoCompressionPropertiesKey, [NSNumber numberWithFloat:videoSize.width],
AVVideoWidthKey, [NSNumber numberWithFloat:videoSize.height],
AVVideoHeightKey, nil];

AVAssetWriterInput* videoWriterInput = [AVAssetWriterInput assetWriterInputWithMediaType:AVMediaTypeVideo outputSettings:videoWriterSettings];

videoWriterInput.expectsMediaDataInRealTime = YES;

videoWriterInput.transform = videoTrack.preferredTransform;

AVAssetWriter *videoWriter = [[AVAssetWriter alloc] initWithURL:outputURL fileType:AVFileTypeQuickTimeMovie error:nil];

[videoWriter addInput:videoWriterInput];

最佳答案

目前还没有人回答这个问题,但是复活了。比特率是一个复杂的值,与视频等式中的其他各种变量成比例——与帧率、分辨率和其他因素有关。使用的编解码器。恒定比特率还是可变比特率?等等。其中一些因素本身会产生限制性影响,这些影响会传递给最终观察到的平均比特率。请注意,您用来指定比特率的 key 称为 AVVideoAverageBitRateKey - 平均值,而不是固定值。请求比特率就像请求一个大概数字,结果应该接近您的请求,但可能不完全相同。

关于ios - AVVideoAverageBitRateKey 没有生效,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/31358715/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com