AVFoundation ve kod çözme işleminde yeni bir kullanıcıyım. Bir h264 video dosyasının kodunu çözmem ve onu iPhone'da oynatmam gerekiyor ... bana bunu yapmak için bana rehberlik edebilir.ios kod çözme h264 in ios
Bunu yapmak için ffmpeg veya üçüncü taraf kitaplığı kullanmak istemiyorum. Bildiğim kadarıyla AVFoundation kodlamasını kullanarak bildiği gibi
float bitsPerPixel;
CMVideoDimensions dimensions = CMVideoFormatDescriptionGetDimensions(currentFormatDescription);
int numPixels = dimensions.width * dimensions.height;
int bitsPerSecond;
// Assume that lower-than-SD resolutions are intended for streaming, and use a lower bitrate
if (numPixels < (640 * 480))
bitsPerPixel = 4.05; // This bitrate matches the quality produced by AVCaptureSessionPresetMedium or Low.
else
bitsPerPixel = 11.4; // This bitrate matches the quality produced by AVCaptureSessionPresetHigh.
bitsPerSecond = numPixels * bitsPerPixel;
NSDictionary *videoCompressionSettings = [NSDictionary dictionaryWithObjectsAndKeys:
AVVideoCodecH264, AVVideoCodecKey,
[NSNumber numberWithInteger:dimensions.width], AVVideoWidthKey,
[NSNumber numberWithInteger:dimensions.height], AVVideoHeightKey,
[NSDictionary dictionaryWithObjectsAndKeys:
[NSNumber numberWithInteger:bitsPerSecond], AVVideoAverageBitRateKey,
[NSNumber numberWithInteger:30], AVVideoMaxKeyFrameIntervalKey,
nil], AVVideoCompressionPropertiesKey,
nil];
if ([assetWriter canApplyOutputSettings:videoCompressionSettings forMediaType:AVMediaTypeVideo]) {
assetWriterVideoIn = [[AVAssetWriterInput alloc] initWithMediaType:AVMediaTypeVideo outputSettings:videoCompressionSettings];
assetWriterVideoIn.expectsMediaDataInRealTime = YES;
assetWriterVideoIn.transform = [self transformFromCurrentVideoOrientationToOrientation:self.referenceOrientation];
if ([assetWriter canAddInput:assetWriterVideoIn])
[assetWriter addInput:assetWriterVideoIn];
else {
NSLog(@"Couldn't add asset writer video input.");
return NO;
}
}
else {
NSLog(@"Couldn't apply video output settings.");
return NO;
}
return YES;
Bu konuda tamamen naif değilim burada ... ... mümkündür Ben kodlama için ama hiç emin kullanılır düşünce kodu yardım lütfen .. .from nerede /// basit bir çözüm MPMoviePlayerController kullanmaktır
sayesinde
Aynı şeyi yapmaya çalışıyorum bir çözüm buldunuz mu? –
proje iptal edildi ... çözümü bulamadık ... –