【问题标题】:how to get correct Video Orientation correctly in iOS after save to server保存到服务器后如何在 iOS 中正确获取正确的视频方向
【发布时间】:2014-04-27 07:46:34
【问题描述】:

我尝试使用下面的代码将视频从ALAsset 转换为NSData,这个NSData 正在正确地提交到服务器。

问题:

但问题是当我从服务器中的 NSData 获取缩略图时,某些视频的图像方向不正确,而其他视频的图像显示不正确。我也觉得视频的方向也不正确。

所以我必须在我的代码中包含任何额外的东西。我知道如何定位图像,但我不知道如何正确定位视频。

-(NSData *)ConvertVideoToNSData:(ALAsset *)asset{

NSData *VideoData;
        ALAssetRepresentation *rep = [asset defaultRepresentation];

        Byte *buffer = (Byte*)malloc(rep.size);
        NSUInteger buffered = [rep getBytes:buffer fromOffset:0.0 length:rep.size error:nil];
        VideoData = [NSData dataWithBytesNoCopy:buffer length:buffered freeWhenDone:YES];
        return VideoData;
}

【问题讨论】:

  • 是什么让你认为视频数据不好,而不是缩略图生成本身?
  • 你可以尝试使用this answer,但是你真正需要做的是纠正这个问题(带标题),因为它太板了,不清楚而且它本身矛盾。
  • 好的。我已经检查了那个链接。但它建议从服务器进行定位。我想要的是从设备本身做出正确的方向。
  • 单独评论,你用 VideoData 做什么来将其转换为视频?我在这个问题上遇到了这个问题:stackoverflow.com/questions/22390679/…
  • Eric,我没有将 VideoData 转换为设备上的视频。当我将(POST)VideoData 上传到服务器时,我将视频存储在某个文件夹中,然后获取该视频的 URL 并使用 MPMoviePlayerViewController 播放该视频。我的问题是关于方向。

标签: ios iphone uiimagepickercontroller alasset


【解决方案1】:

试试

CGSize dimesions = [representation dimensions];
if (dimesions.height > dimesions.width)
    orientation = 1; //Portrait
else
    orientation = 0; //Lanscape

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2016-04-16
    • 2020-06-14
    • 2015-07-07
    • 2012-06-18
    相关资源
    最近更新 更多