mardi 27 janvier 2015

How to create a landscape video using sequence of portrait images?

I have sequence of images with portrait orientation. I am converting that images in landscape and trying to create a video but failed to generate a right video. I successfully converted images into landscape orientation but not able to right video. `CVReturn cvErr = kCVReturnSuccess; // get screenshot image! UIImage *testImage = [self createARGBImageFromRGBAImage:self.currentScreen]; NSLog(@"testImage Old :- width :- %f height :- %f",testImage.size.width,testImage.size.height); UIImage * landscapeImage = [[UIImage alloc] initWithCGImage: testImage.CGImage scale: 1.0 orientation: UIImageOrientationLeft];



NSLog(@"landscapeImage :- width :- %f height :- %f",landscapeImage.size.width,landscapeImage.size.height);
CGImageRef image = (CGImageRef)[landscapeImage CGImage];
// prepare the pixel buffer
CVPixelBufferRef pixelBuffer = NULL;
CFDataRef imageData= CGDataProviderCopyData(CGImageGetDataProvider(image));
cvErr = CVPixelBufferCreateWithBytes(kCFAllocatorDefault,
landscapeImage.size.width,
landscapeImage.size.height,
kCVPixelFormatType_32ARGB,
(void*)CFDataGetBytePtr(imageData),
CGImageGetBytesPerRow(image),
NULL,
NULL,
NULL,
&pixelBuffer);
// calculate the time
CFAbsoluteTime thisFrameWallClockTime = CFAbsoluteTimeGetCurrent();
CFTimeInterval elapsedTime = thisFrameWallClockTime - firstFrameWallClockTime;
//NSLog (@”elapsedTime: %f”, elapsedTime);
CMTime presentationTime = CMTimeMake (elapsedTime * TIME_SCALE, TIME_SCALE);

// write the sample
BOOL appended = [avAdaptor appendPixelBuffer:pixelBuffer withPresentationTime:presentationTime];


`




Aucun commentaire:

Enregistrer un commentaire