]> git.immae.eu Git - github/Chocobozzz/PeerTube.git/commitdiff
Fix audio file merge
authorChocobozzz <me@florianbigard.com>
Tue, 12 Jul 2022 14:00:15 +0000 (16:00 +0200)
committerChocobozzz <me@florianbigard.com>
Tue, 12 Jul 2022 14:00:15 +0000 (16:00 +0200)
Image streams are considered as video streams by ffmpeg
Filter out image codec name

server/tests/api/server/stats.ts
shared/extra-utils/ffprobe.ts

index 6654eaaee3239eb1067ece6e0795ab3a874240ab..bc35cbe4e87040e0042d9c0c242b3cdee2da8ca9 100644 (file)
@@ -26,7 +26,7 @@ describe('Test stats (excluding redundancy)', function () {
   }
 
   before(async function () {
-    this.timeout(60000)
+    this.timeout(120000)
 
     servers = await createMultipleServers(3)
 
index dfacd251c6f84df5e60c87297603ae56bee06354..b95202464f105c7af4236a17364ad894d0cdf901 100644 (file)
@@ -21,10 +21,19 @@ function ffprobePromise (path: string) {
 // Audio
 // ---------------------------------------------------------------------------
 
+const imageCodecs = new Set([
+  'ansi', 'apng', 'bintext', 'bmp', 'brender_pix', 'dpx', 'exr', 'fits', 'gem', 'gif', 'jpeg2000', 'jpgls', 'mjpeg', 'mjpegb', 'msp2',
+  'pam', 'pbm', 'pcx', 'pfm', 'pgm', 'pgmyuv', 'pgx', 'photocd', 'pictor', 'png', 'ppm', 'psd', 'sgi', 'sunrast', 'svg', 'targa', 'tiff',
+  'txd', 'webp', 'xbin', 'xbm', 'xface', 'xpm', 'xwd'
+])
+
 async function isAudioFile (path: string, existingProbe?: FfprobeData) {
   const videoStream = await getVideoStream(path, existingProbe)
+  if (!videoStream) return true
+
+  if (imageCodecs.has(videoStream.codec_name)) return true
 
-  return !videoStream
+  return false
 }
 
 async function hasAudioStream (path: string, existingProbe?: FfprobeData) {