diff --git a/index.html b/index.html
index 30b95f3..54ad951 100644
--- a/index.html
+++ b/index.html
@@ -128,7 +128,7 @@
background-color: #f8f9fa;
}
- .file-duration, .file-quality {
+ .file-duration, .file-quality, .file-fps {
margin: 0 10px;
color: #666;
min-width: 80px; /* Ensure consistent column width */
diff --git a/renderer.js b/renderer.js
index 410f623..9abeede 100644
--- a/renderer.js
+++ b/renderer.js
@@ -71,6 +71,7 @@ function displayFiles(files) {
// Use actual duration from file metadata
const duration = file.duration || '00:00';
const quality = file.quality || 'unknown';
+ const fps = file.fps || 'unknown';
// Add label for problematic files
const problemLabel = file.isProblematic ? '⚠️ ' : '';
@@ -79,6 +80,7 @@ function displayFiles(files) {
${problemLabel}${file.name}
${duration}
${quality}
+ ${fps}
`;
// Add click event to make file name editable
diff --git a/utils/fileUtils.js b/utils/fileUtils.js
index a41b21b..6143016 100644
--- a/utils/fileUtils.js
+++ b/utils/fileUtils.js
@@ -56,9 +56,12 @@ async function scanDirectory(directoryPath) {
try {
const quality = await extractVideoQuality(filePath);
- fileData.quality = quality;
+ fileData.quality = quality.quality;
+ fileData.fps = quality.fps;
} catch (error) {
console.warn(`Failed to extract quality for ${filePath}:`, error.message);
+ fileData.quality = 'unknown';
+ fileData.fps = 'unknown';
}
mediaFiles.push(fileData);
@@ -118,14 +121,14 @@ async function extractFileDuration(filePath) {
/**
* Extract video quality information using ffmpeg
* @param {string} filePath - Path to the media file
- * @returns {Promise} - Quality information (e.g., "1080p30fps")
+ * @returns {Promise