2016-08-10 13 views
0

SwiftyDropbox APIのおかげで、Dropboxに保存された動画の再生時間を得るためにできることはわかりません。Dropboxに保存されたビデオからビデオメタデータを取得する方法は?

これらの情報はFiles.VideoMetadataクラス

のインスタンスにする必要がありますようにそれは私がgetMetadataメソッドを使用しようとしましたが、結果は私が得ることを期待するものであるビデオ再生時間が含まれていないですね。

これは私の現在のコードです:

Dropbox.authorizedClient! 
     .files 
     .getMetadata(path: file.pathLower!, includeMediaInfo: true) 
     .response({ (result, err) in 
if let metadata = result as? Files.FileMetadata { 
    print(metadata.name) 
    if metadata.mediaInfo != nil { 
     switch metadata.mediaInfo! as Files.MediaInfo { 
      case .Pending: 
       print("Pending") 
      case .Metadata(let mediaMetadata): 
       print(mediaMetadata) 
     } 
    } 
} 
}) 

mediaMetadata{}が含まれている、と私は、ビデオの継続時間、また他のプロパティを取得することはできません。

Dropboxにアップロードされた動画が.mov形式であるためです。この場合の解決策はありますか?

答えて

0

getMetadataincludeMediaInfotrueに設定していることを確認してください。 (また、これが唯一の最近追加されたので、あなたはSwiftyDropboxの最新バージョンを実行していることを確認しました。)

結果FileMetadataは、うまくいけばMediaMetadataのインスタンスにMediaInfoセットを持っています。 (Pendingでもかまいませんので、注意してください)

MediaMetadataを一度見ても、そのフィールドはすべてオプションとして設定されていることに注意してください。残念ながら、利用可能であるとは保証されません。

これは、Dropboxがこのメタデータの抽出に最善を尽くしている一方で、常にそうすることができないためです。これはファイルごとに異なる場合があります。

+0

私はそれをしましたが、何も得られず、何の誤りもありません。 現在のコードで自分の質問を編集しました。 –

+0

Dropboxにアップロードされた動画が.mov形式になっているようです。この場合の解決策はありますか? –

関連する問題