私はビデオを持っており、サムネイルを取得する必要があります。私はこの目的のためにThumbnailUtils
クラスを使用しますが、期待される代わりにnullを返しますBitmap
。私のアプリケーションをデバッグすると、createVideoThumbnail
のメソッドMediaMetadataRetriever.setDataSource
が呼び出され、IllegalArgumentException
がスローされることがわかります。ThumbnailUtils.createVideoThumbnailは、既存のmp4ビデオのヌルを返します
public void setDataSource(String path) throws IllegalArgumentException {
if (path == null) {
throw new IllegalArgumentException();
}
try (FileInputStream is = new FileInputStream(path)) {
FileDescriptor fd = is.getFD();
setDataSource(fd, 0, 0x7ffffffffffffffL);
} catch (FileNotFoundException fileEx) {
throw new IllegalArgumentException(); // and I've found out that method throws IllegalArgimentException inside this catch block
} catch (IOException ioEx) {
throw new IllegalArgumentException();
}
}
私はそれが与えられたファイルのファイルが存在しないことを意味だと思う:setDataSource
内部で私はこのコードを参照してください。しかし、私はファイルシステムでそれを見て、それは正常に再生されます。たぶん別の理由があるのでしょうか?
こんにちは以下のコードを使用してあなたの質問を1として、私は 'ThumbnailUtils.createVideoThumbnailを()'を見つけることができない、あなたは、このいずれかの場所を定義しましコードスニペットを改善してください。 – TejaDroid
あなたに役立つ答えがありますか?もしあれば、適切なものとしてマークしてください。 – b2mob