Skip to content

Commit 3a3b798

Browse files
jennifer-shehanecypress-bot[bot]
andauthored
fix: Configure ffprobe path + bump ffprobe dep (#33136)
* fix: set ffprobe path in server package * yarn lock * move to prod deps * index on ffprobe-path-update: 708f31b move to prod deps * index on ffprobe-path-update: 708f31b move to prod deps * index on ffprobe-path-update: 708f31b move to prod deps * changelog entry --------- Co-authored-by: cypress-bot[bot] <+cypress-bot[bot]@users.noreply.github.com>
1 parent ee24d81 commit 3a3b798

File tree

8 files changed

+20
-55
lines changed

8 files changed

+20
-55
lines changed

cli/CHANGELOG.md

Lines changed: 8 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -1,4 +1,12 @@
11
<!-- See the ../guides/writing-the-cypress-changelog.md for details on writing the changelog. -->
2+
## 15.8.2
3+
4+
_Released 12/30/2025 (PENDING)_
5+
6+
**Bugfixes:**
7+
8+
- Fixed an issue where the ffprobe path was not properly configured for video operations. The path is now set at module load time, ensuring it's available for all video operations. Upgraded `@ffprobe-installer/ffprobe` from `1.1.0` to `2.1.2` to support darwin-arm64 (Apple Silicon). Addressed in [#33136](https://github.com/cypress-io/cypress/pull/33136).
9+
210
## 15.8.1
311

412
_Released 12/18/2025_

packages/server/lib/video_capture.ts

Lines changed: 2 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -5,6 +5,7 @@ import ffmpeg from 'fluent-ffmpeg'
55
import stream from 'stream'
66
import Bluebird from 'bluebird'
77
import { path as ffmpegPath } from '@ffmpeg-installer/ffmpeg'
8+
import { path as ffprobePath } from '@ffprobe-installer/ffprobe'
89
import BlackHoleStream from 'black-hole-stream'
910
import { fs } from './util/fs'
1011
import type { ProcessOptions, WriteVideoFrame } from '@packages/types'
@@ -17,6 +18,7 @@ const debugFrames = Debug('cypress-verbose:server:video:frames')
1718
debug('using ffmpeg from %s', ffmpegPath)
1819

1920
ffmpeg.setFfmpegPath(ffmpegPath)
21+
ffmpeg.setFfprobePath(ffprobePath)
2022

2123
const deferredPromise = function () {
2224
let reject

packages/server/package.json

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -30,6 +30,7 @@
3030
"@cypress/webpack-dev-server": "0.0.0-development",
3131
"@cypress/webpack-preprocessor": "0.0.0-development",
3232
"@ffmpeg-installer/ffmpeg": "1.1.0",
33+
"@ffprobe-installer/ffprobe": "2.1.2",
3334
"@packages/icons": "0.0.0-development",
3435
"@packages/stderr-filtering": "0.0.0-development",
3536
"@packages/telemetry": "0.0.0-development",
@@ -136,7 +137,6 @@
136137
"@cypress/sinon-chai": "2.9.1",
137138
"@cypress/webpack-dev-server": "0.0.0-development",
138139
"@electron/rebuild": "4.0.2",
139-
"@ffprobe-installer/ffprobe": "1.1.0",
140140
"@packages/config": "0.0.0-development",
141141
"@packages/data-context": "0.0.0-development",
142142
"@packages/electron": "0.0.0-development",

system-tests/test/video_compression_spec.js

Lines changed: 0 additions & 6 deletions
Original file line numberDiff line numberDiff line change
@@ -1,11 +1,5 @@
1-
// ffprobe is necessary to extract chapters data from mp4 files.
2-
// ffprobe is usually installed with ffmpeg.
3-
// But in our CI, it doesn't. That's why we're installing ffprobe here.
4-
const ffprobePath = require('@ffprobe-installer/ffprobe').path
51
const ffmpeg = require('fluent-ffmpeg')
62

7-
ffmpeg.setFfprobePath(ffprobePath)
8-
93
const path = require('path')
104
const fs = require('fs-extra')
115
const humanInterval = require('human-interval')

tooling/v8-snapshot/cache/darwin/snapshot-meta.json

Lines changed: 3 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -204,6 +204,8 @@
204204
"./node_modules/@cypress/request/node_modules/tough-cookie/dist/cookie/canonicalDomain.js",
205205
"./node_modules/@cypress/request/request.js",
206206
"./node_modules/@ffmpeg-installer/ffmpeg/index.js",
207+
"./node_modules/@ffprobe-installer/ffprobe/index.js",
208+
"./node_modules/@ffprobe-installer/ffprobe/lib/verify-file.js",
207209
"./node_modules/@graphql-tools/batch-execute/index.js",
208210
"./node_modules/@graphql-tools/batch-execute/node_modules/dataloader/index.js",
209211
"./node_modules/@jimp/core/dist/index.js",
@@ -1242,6 +1244,7 @@
12421244
"./node_modules/@electron/fuses/dist/index.js",
12431245
"./node_modules/@ffmpeg-installer/ffmpeg/lib/verify-file.js",
12441246
"./node_modules/@ffmpeg-installer/ffmpeg/package.json",
1247+
"./node_modules/@ffprobe-installer/ffprobe/package.json",
12451248
"./node_modules/@graphql-tools/batch-execute/node_modules/@graphql-tools/utils/index.js",
12461249
"./node_modules/@graphql-tools/delegate/index.js",
12471250
"./node_modules/@graphql-tools/delegate/node_modules/@graphql-tools/utils/index.js",

tooling/v8-snapshot/cache/linux/snapshot-meta.json

Lines changed: 3 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -204,6 +204,8 @@
204204
"./node_modules/@cypress/request/node_modules/tough-cookie/dist/cookie/canonicalDomain.js",
205205
"./node_modules/@cypress/request/request.js",
206206
"./node_modules/@ffmpeg-installer/ffmpeg/index.js",
207+
"./node_modules/@ffprobe-installer/ffprobe/index.js",
208+
"./node_modules/@ffprobe-installer/ffprobe/lib/verify-file.js",
207209
"./node_modules/@graphql-tools/batch-execute/index.js",
208210
"./node_modules/@graphql-tools/batch-execute/node_modules/dataloader/index.js",
209211
"./node_modules/@jimp/core/dist/index.js",
@@ -1241,6 +1243,7 @@
12411243
"./node_modules/@electron/fuses/dist/index.js",
12421244
"./node_modules/@ffmpeg-installer/ffmpeg/lib/verify-file.js",
12431245
"./node_modules/@ffmpeg-installer/ffmpeg/package.json",
1246+
"./node_modules/@ffprobe-installer/ffprobe/package.json",
12441247
"./node_modules/@graphql-tools/batch-execute/node_modules/@graphql-tools/utils/index.js",
12451248
"./node_modules/@graphql-tools/delegate/index.js",
12461249
"./node_modules/@graphql-tools/delegate/node_modules/@graphql-tools/utils/index.js",

tooling/v8-snapshot/cache/win32/snapshot-meta.json

Lines changed: 3 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -206,6 +206,8 @@
206206
"./node_modules/@cypress/request/node_modules/tough-cookie/dist/cookie/canonicalDomain.js",
207207
"./node_modules/@cypress/request/request.js",
208208
"./node_modules/@ffmpeg-installer/ffmpeg/index.js",
209+
"./node_modules/@ffprobe-installer/ffprobe/index.js",
210+
"./node_modules/@ffprobe-installer/ffprobe/lib/verify-file.js",
209211
"./node_modules/@graphql-tools/batch-execute/index.js",
210212
"./node_modules/@graphql-tools/batch-execute/node_modules/dataloader/index.js",
211213
"./node_modules/@jimp/core/dist/index.js",
@@ -1246,6 +1248,7 @@
12461248
"./node_modules/@electron/fuses/dist/index.js",
12471249
"./node_modules/@ffmpeg-installer/ffmpeg/lib/verify-file.js",
12481250
"./node_modules/@ffmpeg-installer/ffmpeg/package.json",
1251+
"./node_modules/@ffprobe-installer/ffprobe/package.json",
12491252
"./node_modules/@graphql-tools/batch-execute/node_modules/@graphql-tools/utils/index.js",
12501253
"./node_modules/@graphql-tools/delegate/index.js",
12511254
"./node_modules/@graphql-tools/delegate/node_modules/@graphql-tools/utils/index.js",

yarn.lock

Lines changed: 0 additions & 48 deletions
Original file line numberDiff line numberDiff line change
@@ -3551,29 +3551,11 @@
35513551
resolved "https://registry.yarnpkg.com/@ffprobe-installer/darwin-arm64/-/darwin-arm64-5.0.1.tgz#a020a623955d55aa8daf45cb668c3044876b553b"
35523552
integrity sha512-vwNCNjokH8hfkbl6m95zICHwkSzhEvDC3GVBcUp5HX8+4wsX10SP3B+bGur7XUzTIZ4cQpgJmEIAx6TUwRepMg==
35533553

3554-
"@ffprobe-installer/[email protected]":
3555-
version "4.1.0"
3556-
resolved "https://registry.yarnpkg.com/@ffprobe-installer/darwin-x64/-/darwin-x64-4.1.0.tgz#025c5108faf3e456e6a407dd65b798f8dcc805dd"
3557-
integrity sha512-ESwvOnbGVGK0r7bUdThSZAYipQOH0X79M4SoNZ5Tg77lq/RVbEdpObNEM2oRfLINbMlQQrezA4VYzt0n/DOkcQ==
3558-
35593554
"@ffprobe-installer/[email protected]":
35603555
version "5.1.0"
35613556
resolved "https://registry.yarnpkg.com/@ffprobe-installer/darwin-x64/-/darwin-x64-5.1.0.tgz#f52316ac0bbe6f4ac70fdaea8db259ba4a055b00"
35623557
integrity sha512-J+YGscZMpQclFg31O4cfVRGmDpkVsQ2fZujoUdMAAYcP0NtqpC49Hs3SWJpBdsGB4VeqOt5TTm1vSZQzs1NkhA==
35633558

3564-
"@ffprobe-installer/[email protected]":
3565-
version "1.1.0"
3566-
resolved "https://registry.yarnpkg.com/@ffprobe-installer/ffprobe/-/ffprobe-1.1.0.tgz#a2f6fbd383f90d9359dc6c0552dca9793a884b3c"
3567-
integrity sha512-koiZrWEC4hrzCuN+/ijHkeiyx7CnUr/cnGynQAgHMDphsDgZkXivNzZrtT6VI5Nf0SkQqC2ZPU5rx3nZ8yEqLQ==
3568-
optionalDependencies:
3569-
"@ffprobe-installer/darwin-x64" "4.1.0"
3570-
"@ffprobe-installer/linux-arm" "4.3.2"
3571-
"@ffprobe-installer/linux-arm64" "4.3.2"
3572-
"@ffprobe-installer/linux-ia32" "4.1.0"
3573-
"@ffprobe-installer/linux-x64" "4.1.0"
3574-
"@ffprobe-installer/win32-ia32" "4.1.0"
3575-
"@ffprobe-installer/win32-x64" "4.1.0"
3576-
35773559
"@ffprobe-installer/[email protected]":
35783560
version "2.1.2"
35793561
resolved "https://registry.yarnpkg.com/@ffprobe-installer/ffprobe/-/ffprobe-2.1.2.tgz#ef9826b714cefe5e2debbe357afbb1ba738dfb32"
@@ -3588,61 +3570,31 @@
35883570
"@ffprobe-installer/win32-ia32" "5.1.0"
35893571
"@ffprobe-installer/win32-x64" "5.1.0"
35903572

3591-
"@ffprobe-installer/[email protected]":
3592-
version "4.3.2"
3593-
resolved "https://registry.yarnpkg.com/@ffprobe-installer/linux-arm64/-/linux-arm64-4.3.2.tgz#a64ed27672d55460bdea59bc63da0cf3731f19e8"
3594-
integrity sha512-9mCINruqx30UqB7kRvc75sj0yAPiDy21Fowow8bQDaAYAuO39MrFt/caLJrX11vCUfx2awolxKeuzTqcO9JjMQ==
3595-
35963573
"@ffprobe-installer/[email protected]":
35973574
version "5.2.0"
35983575
resolved "https://registry.yarnpkg.com/@ffprobe-installer/linux-arm64/-/linux-arm64-5.2.0.tgz#b6cb3735792d9d012d1caba4de2a6f90af2a8966"
35993576
integrity sha512-X1VvWtlLs6ScP73biVLuHD5ohKJKsMTa0vafCESOen4mOoNeLAYbxOVxDWAdFz9cpZgRiloFj5QD6nDj8E28yQ==
36003577

3601-
"@ffprobe-installer/[email protected]":
3602-
version "4.3.2"
3603-
resolved "https://registry.yarnpkg.com/@ffprobe-installer/linux-arm/-/linux-arm-4.3.2.tgz#09347e67539544168d9815486cd543c3e88cba29"
3604-
integrity sha512-nZJbpTdh29swlgjVWi2fcV5jvbDFgo2y6a7X/uBsbely/TB158Fg0AncWJm7BbC0CwasGmSdqBsLtoSwXIcrlQ==
3605-
36063578
"@ffprobe-installer/[email protected]":
36073579
version "5.2.0"
36083580
resolved "https://registry.yarnpkg.com/@ffprobe-installer/linux-arm/-/linux-arm-5.2.0.tgz#0120863c181303a1610b1e6956c6a5492d6c45a6"
36093581
integrity sha512-PF5HqEhCY7WTWHtLDYbA/+rLS+rhslWvyBlAG1Fk8VzVlnRdl93o6hy7DE2kJgxWQbFaR3ZktPQGEzfkrmQHvQ==
36103582

3611-
"@ffprobe-installer/[email protected]":
3612-
version "4.1.0"
3613-
resolved "https://registry.yarnpkg.com/@ffprobe-installer/linux-ia32/-/linux-ia32-4.1.0.tgz#50b5952927b8b1bc42c3f2edd788b995e8470d17"
3614-
integrity sha512-V2NeZpnly4HP1IU5IrsbbcRg8SWzC/SS0YDNSCjmhxGV2U8MUpW8c8KREE6nX56Dml8B8do5NNkTnaYCDPt3Xw==
3615-
36163583
"@ffprobe-installer/[email protected]":
36173584
version "5.2.0"
36183585
resolved "https://registry.yarnpkg.com/@ffprobe-installer/linux-ia32/-/linux-ia32-5.2.0.tgz#d42a892003811b5e1f2c958d330b841ef6ff3233"
36193586
integrity sha512-TFVK5sasXyXhbIG7LtPRDmtkrkOsInwKcL43iEvEw+D9vCS2rc//mn9/0Q+BR0UoJEiMK4+ApYr/3LLVUBPOCQ==
36203587

3621-
"@ffprobe-installer/[email protected]":
3622-
version "4.1.0"
3623-
resolved "https://registry.yarnpkg.com/@ffprobe-installer/linux-x64/-/linux-x64-4.1.0.tgz#b67c96748457677171ca31b0fb83e4bd3c644ab5"
3624-
integrity sha512-Id+irHoI+Arq6tb3sHNQyzRrgUVVDgbmwpREDqQ+GDydiCw5ca7VnvRGXE/tBM2mVQ3/6m9wWHR7+xaW3gKJlA==
3625-
36263588
"@ffprobe-installer/[email protected]":
36273589
version "5.2.0"
36283590
resolved "https://registry.yarnpkg.com/@ffprobe-installer/linux-x64/-/linux-x64-5.2.0.tgz#5dd8dbd51d130b5997bf49cb874e1f92e97f02e7"
36293591
integrity sha512-D3UeqTLYPNs7pBWPLUYGehPdRVqU8eACox4OZy3pZUZatxye2YKlvBwEfaLdL1v2Z4FOAlLUhms0kY8m8kqSRA==
36303592

3631-
"@ffprobe-installer/[email protected]":
3632-
version "4.1.0"
3633-
resolved "https://registry.yarnpkg.com/@ffprobe-installer/win32-ia32/-/win32-ia32-4.1.0.tgz#19cc6d1043f7e54c2764ada6af8f7f26f98bbad8"
3634-
integrity sha512-G1pbRfk7XDi9EioT0gSR+O4ARdppS9kSXRzhnJOojUFD6x1k8Qv27RoOXeE5DtIE7TdX6UTywj8qA1BXI5zUUA==
3635-
36363593
"@ffprobe-installer/[email protected]":
36373594
version "5.1.0"
36383595
resolved "https://registry.yarnpkg.com/@ffprobe-installer/win32-ia32/-/win32-ia32-5.1.0.tgz#43b1462b9d89570fe3723c20b66bab684516751a"
36393596
integrity sha512-5O3vOoNRxmut0/Nu9vSazTdSHasrr+zPT2B3Hm7kjmO3QVFcIfVImS6ReQnZeSy8JPJOqXts5kX5x/3KOX54XQ==
36403597

3641-
"@ffprobe-installer/[email protected]":
3642-
version "4.1.0"
3643-
resolved "https://registry.yarnpkg.com/@ffprobe-installer/win32-x64/-/win32-x64-4.1.0.tgz#ed3e8a329eeb6c0625ac439e31ad9ec43001b33c"
3644-
integrity sha512-gPW2FZxexzCAOhGch0JFkeSSln+wcL5d1JDlJwfSJVEAShHf9MmxiWq0NpHoCSzFvK5qwl0C58KG180eKvd3mA==
3645-
36463598
"@ffprobe-installer/[email protected]":
36473599
version "5.1.0"
36483600
resolved "https://registry.yarnpkg.com/@ffprobe-installer/win32-x64/-/win32-x64-5.1.0.tgz#87841123e8b903cc327f1e5b9aa69e5d2fbe6d7b"

0 commit comments

Comments
 (0)