SharedMedia: Fix handling of video media type
This commit is contained in:
parent
ccbcef0b6d
commit
be8019f338
1 changed files with 20 additions and 15 deletions
|
@ -49,26 +49,31 @@ Future<List<File>> convertIncomingSharedMediaToFile(
|
|||
var enteFile = File();
|
||||
// fileName: img_x.jpg
|
||||
enteFile.title = basename(media.path);
|
||||
|
||||
var ioFile = dartio.File(media.path);
|
||||
ioFile = ioFile.renameSync(Configuration.instance.getSharedMediaCacheDirectory() +
|
||||
"/" +
|
||||
enteFile.title);
|
||||
ioFile = ioFile.renameSync(
|
||||
Configuration.instance.getSharedMediaCacheDirectory() +
|
||||
"/" +
|
||||
enteFile.title);
|
||||
enteFile.localID = kSharedMediaIdentifier + enteFile.title;
|
||||
enteFile.collectionID = collectionID;
|
||||
enteFile.fileType = FileType.image;
|
||||
enteFile.fileType =
|
||||
media.type == SharedMediaType.IMAGE ? FileType.image : FileType.video;
|
||||
|
||||
var exifMap = await readExifFromFile(ioFile);
|
||||
if (exifMap != null &&
|
||||
exifMap["Image DateTime"] != null &&
|
||||
'0000:00:00 00:00:00' != exifMap["Image DateTime"].toString()) {
|
||||
try {
|
||||
final exifTime =
|
||||
_exifDateFormat.parse(exifMap["Image DateTime"].toString());
|
||||
enteFile.creationTime = exifTime.microsecondsSinceEpoch;
|
||||
} catch (e) {
|
||||
//ignore
|
||||
if (enteFile.fileType == FileType.image) {
|
||||
final exifMap = await readExifFromFile(ioFile);
|
||||
if (exifMap != null &&
|
||||
exifMap["Image DateTime"] != null &&
|
||||
'0000:00:00 00:00:00' != exifMap["Image DateTime"].toString()) {
|
||||
try {
|
||||
final exifTime =
|
||||
_exifDateFormat.parse(exifMap["Image DateTime"].toString());
|
||||
enteFile.creationTime = exifTime.microsecondsSinceEpoch;
|
||||
} catch (e) {
|
||||
//ignore
|
||||
}
|
||||
}
|
||||
} else if (enteFile.fileType == FileType.video) {
|
||||
enteFile.duration = media.duration ?? 0;
|
||||
}
|
||||
if (enteFile.creationTime == null || enteFile.creationTime == 0) {
|
||||
final parsedDateTime =
|
||||
|
|
Loading…
Add table
Reference in a new issue