2014-01-29 80 views
0

我有用戶錄製的視頻。我希望用戶能夠定義任意的旋轉軸,並沿着該軸翻轉視頻。我也希望最終翻轉的視頻剪裁成原始尺寸。翻轉任意軸周圍的視頻

enter image description here

我已經使用了CGAffineTransformMakeScale(-1, 1)翻轉沿水平軸的視頻,但這是圍繞中心點。

我已經在使用AVMutableComposition來做一些合成。有沒有任何AVMutableVideoCompositionLayerInstruction有幫助?

_mike

回答

0

您應計算在用戶設置的軸線或圖像是離多遠集,翻轉圖像,並重新應用此向相反方向偏移。那麼你只需要得到一個圖像的子圖像。 您可以通過這樣做:

CGRect fromRect = CGRectMake(0, 0, 320, 480); // or whatever rectangle 

CGImageRef drawImage = CGImageCreateWithImageInRect(image.CGImage, fromRect); 
UIImage *newImage = [UIImage imageWithCGImage:drawImage]; 
CGImageRelease(drawImage); 

Code Reference Subimage of Image

+0

我期待在做這個視頻,不只是一個單一的框架。我仍然喜歡你的翻譯方法,然後翻譯。我認爲*視頻幀也有「裁剪」機制。感謝您的信息,我會看看我能想出什麼。 – nibeck

+0

哦,這可能會起作用,但是如果你導入QuartzCore並使用MPMoviewPlayerView.layer的轉換方法,你可能可以實現這一點,並在視頻上放置一個遮罩,使其看起來像是在裁剪它 –