ALAsset 中缺少视频文件缩略图时间戳

Posted

技术标签:

【中文标题】ALAsset 中缺少视频文件缩略图时间戳【英文标题】:Video File thumbnail timestamp missing in ALAsset 【发布时间】:2012-06-05 11:30:58 【问题描述】:

嗨,我正在从 ALAsset 库中获取所有照片和视频缩略图。我的代码工作正常,我正在获取照片和视频缩略图。但是在视频缩略图中缺少视频图标及其时间戳

[assetImageView setImage:[UIImage imageWithCGImage:[self.asset thumbnail]]];

我越来越像上面了..我正在使用 ELCImagePickerDemp API

我需要这样,我错过了右下角缩略图中的时间和图标。任何帮助将不胜感激...... THX

【问题讨论】:

【参考方案1】:

您注意到的资产库缩略图不包括缩略图中的符号和时间信息。因此,您必须使用从 Alassetslibrary 获得的信息在缩略图上自己绘制这些(检查 ALAssetPropertyType 和 ALAseetPropertyDuration 以获取您自己绘制这些所需的信息)。

干杯,

亨德里克

【讨论】:

ok thx.. 如果你有任何链接,你可以分享我在缩略图图标底部绘制视频图标和时间【参考方案2】:

将代码形式“allPhotos”中的过滤器替换为“allAssets”中的两个位置 ELCAlbumPickerController.m

-(UITableViewCell *)tableView:(UITableView *)tableView cellForRowAtIndexPath:(NSIndexPath *)indexPath 

                  // replace [g setAssetsFilter:[ALAssetsFilter allPhotos]];  as it filter only photo
                   [g setAssetsFilter:[ALAssetsFilter allAssets]];  //gives allassets


-(void)tableView:(UITableView *)tableView didSelectRowAtIndexPath:(NSIndexPath *)indexPath  

 // replace [picker.assetGroup setAssetsFilter:[ALAssetsFilter allPhotos]]; as it filer only photo 
    **[picker.assetGroup setAssetsFilter:[ALAssetsFilter allAsset]];** // gives allassets

现在所有资源都将显示在库中。为了区分视频和图像缩略图,您现在必须在构造函数中添加一些代码 ELCAsset.m

-(id)initWithAsset:(ALAsset*)asset_ 
if ([self.asset valueForProperty:ALAssetPropertyType] == ALAssetTypeVideo )
         // code for video thumbnail 
       // you can use this link to understand video thumbnail 
     //http://***.com/questions/11688938/alasset-thumbnail-at-specific-timestamp


    if ([self.asset valueForProperty:ALAssetPropertyType] == ALAssetTypePhoto )
             // code for Photo thumbnail 
    


【讨论】:

以上是关于ALAsset 中缺少视频文件缩略图时间戳的主要内容,如果未能解决你的问题,请参考以下文章

时间戳未打印在 FFMPEG 的缩略图上

如何创建从Android视频文件路径视频缩略图

Android:如何获取应用程序私有文件的视频缩略图?

为文件夹中的一堆 mp4 视频生成缩略图

怎么更换文件夹下的视频预览的缩略图

使用 Python 从视频文件创建缩略图