Ich versuche, Instagram Video Cropping-Funktion zu implementieren. Dazu muss ich richtig Orientierung des Videos, mit dem ich meine MPMoviePlayerController
Layout im richtigen Seitenverhältnis Layout und Benutzer wird dann in der Lage sein, das Video zu schwenken und gezeigt quadratisches Video wird auf Aktion zugeschnitten werden.Wie bekomme ich die richtige Orientierung für Videos von PhotoLibrary iOS
Ich habe Probleme mit der richtigen Ausrichtung des Videos. Ich verwende folgenden Code
AVURLAsset *asset = [AVURLAsset URLAssetWithURL:fileUrl options:nil];
NSArray *tracks = [asset tracksWithMediaType:AVMediaTypeVideo];
AVAssetTrack *track = [tracks objectAtIndex:0];
UIInterfaceOrientation orientation =[self orientationForTrack:track];
// method to get orientation
- (UIInterfaceOrientation)orientationForTrack:(AVAssetTrack *)videoTrack
{
CGSize size = [videoTrack naturalSize];
CGAffineTransform txf = [videoTrack preferredTransform];
if (size.width == txf.tx && size.height == txf.ty)
return UIInterfaceOrientationLandscapeRight;
else if (txf.tx == 0 && txf.ty == 0)
return UIInterfaceOrientationLandscapeLeft;
else if (txf.tx == 0 && txf.ty == size.width)
return UIInterfaceOrientationPortraitUpsideDown;
else
return UIInterfaceOrientationUnknown;
}
Problem, das ich habe, ist, dass einige Male die Videos, die tatsächlich im Portrait sind, ist oben Stück Code als Landschaft Klassifizieren und umgekehrt. Ich muss nur zwei Zustände der Videoausrichtung kennen: (Querformat oder Hochformat). Ich möchte genau den gleichen Orientierungswert, den MPMoviePlayerController
interpretiert. Meine Anwendung unterstützt nur Portrait Ausrichtung. Jede Hilfe würde sehr geschätzt werden.
PS: Oben Code funktioniert gut für Videos, die von iPhone Kamera erfasst werden, Videos, die heruntergeladen oder durch die WhatsApp freigegeben sind, verursachen das Problem.
möglicherweise dieser Link wird Ihnen helfen https://gist.github.com/lukabernardi/5020724 –
Nein, es hat nicht. Ich habe dieses Problem gelöst, ich werde die Lösung hochladen, wenn ich etwas Zeit bekommen werde. Danke für Ihre Hilfe. – Usama
ok. lege es so, dass andere etwas Hilfe bekommen werden ....:) –