diff --git a/CHANGELOG.md b/CHANGELOG.md
index ab0c1d46d..7a534225e 100644
--- a/CHANGELOG.md
+++ b/CHANGELOG.md
@@ -4,6 +4,15 @@ All notable changes to this project will be documented in this file.
## [Unreleased]
+### Changed
+
+- Video: use `media-kit` instead of `ffmpeg-kit` for metadata fetch
+- Info: show video chapters
+
+### Fixed
+
+- crash when cataloguing some videos
+
## [v1.12.1] - 2025-01-05
### Added
diff --git a/lib/model/app/dependencies.dart b/lib/model/app/dependencies.dart
index d09b2b933..5171e7fbb 100644
--- a/lib/model/app/dependencies.dart
+++ b/lib/model/app/dependencies.dart
@@ -73,11 +73,6 @@ class Dependencies {
licenseUrl: 'https://github.com/material-foundation/flutter-packages/blob/main/packages/dynamic_color/LICENSE',
sourceUrl: 'https://github.com/material-foundation/flutter-packages/tree/main/packages/dynamic_color',
),
- Dependency(
- name: 'FFmpegKit (Aves fork)',
- license: lgpl3,
- sourceUrl: 'https://github.com/deckerst/ffmpeg-kit',
- ),
Dependency(
name: 'Floating',
license: mit,
diff --git a/lib/model/entry/entry.dart b/lib/model/entry/entry.dart
index 0a3f6ab98..d5698a903 100644
--- a/lib/model/entry/entry.dart
+++ b/lib/model/entry/entry.dart
@@ -232,6 +232,7 @@ class AvesEntry with AvesEntryBase {
// the MIME type reported by the Media Store is unreliable
// so we use the one found during cataloguing if possible
+ @override
String get mimeType => _catalogMetadata?.mimeType ?? sourceMimeType;
bool get isCatalogued => _catalogMetadata != null;
diff --git a/lib/model/entry/extensions/info.dart b/lib/model/entry/extensions/info.dart
index 7353a0726..81fc0bf3e 100644
--- a/lib/model/entry/extensions/info.dart
+++ b/lib/model/entry/extensions/info.dart
@@ -9,6 +9,7 @@ import 'package:aves/ref/mime_types.dart';
import 'package:aves/services/common/services.dart';
import 'package:aves/services/metadata/svg_metadata_service.dart';
import 'package:aves/theme/colors.dart';
+import 'package:aves/theme/format.dart';
import 'package:aves/theme/text.dart';
import 'package:aves/widgets/viewer/info/metadata/metadata_dir.dart';
import 'package:aves_model/aves_model.dart';
@@ -82,6 +83,21 @@ extension ExtraAvesEntryInfo on AvesEntry {
directories.add(MetadataDirectory(MetadataDirectory.mediaDirectory, _toSortedTags(formattedMediaTags)));
}
+ if (mediaInfo.containsKey(Keys.chapters)) {
+ final allChapters = (mediaInfo.remove(Keys.chapters) as List).cast