Users watching a video are getting an error that relates to showing the captions:
404 (Not Found) GET error looking for: https://video.edu.nl/client/en-US/null initator: polyfills-G46XNLVB.js:1
The captions are not (never) showing
When does it happen:
- While loading videopage initial (even before playing)
- When clicking on captions on/off
- When changing caption language in video
- When clicking show transcriptions
Example:
The Video: https://video.edu.nl/w/6Ps35erky4d5nP8zYJVDRE
ID: 6Ps35erky4d5nP8zYJVDRE
Captions json: video.edu.nl/api/v1/videos/6Ps35erky4d5nP8zYJVDRE/captions
With 2 VTT’s (besides 2 m3u8Url url’s with a language extension)
I have both video formats enabled:
- Web videos
- HLS videos
- Original video
The Captions JSON states for both languages (en and af):
captionPath": null,
Could this be the issue?
Does the so called “streaming captions” (when used with HLS) can be involved?
Although the VTT exists (auto generated or uploaded) it does show when watching video…
Hello,
I think this bug should be fixed in PeerTube V8 
That would be great, I’ll keep you updated here if the update to version 8 fixes this, keep up the good work!
Unfortunately, updating to version 8 did not help, we still get the error.
In another browser set on another language I have the same error…. (but then a 404 seeking another language folder (nl_NL)
Firefox NL: https://video.edu.nl/client/nl-NL/null
Chrome EN: GET https://video.edu.nl/client/en-US/null 404 (Not Found)
Video example: test captions1 - video.edu.nl
Captions file: https://video.edu.nl/api/v1/videos/n9ch6PnymQbEfjTK8Wa8CC/captions
I saw this in the log?! Is it possible related?
edited some XXXXXXXX for potential sensitivity
error[12/19/2025, 3:00:39 PM] Cannot execute job 161 in queue video-transcription.
{
"payload": {
"videoUUID": "ab34cfe4-9fd8-4bbe-8ab3-XXXXXXXX"
},
"err": {
"stack": "Error: ENOENT: no such file or directory, open '/data/tmp/transcription/uGj4EkBV7QM5VvziGXXXXXXXXX/0037ba8b-086a-46b2-8c6f-XXXXXXXX1234a3-720.json'",
"message": "ENOENT: no such file or directory, open '/data/tmp/transcription/uGj4EkBV7QM5VvziGXXXXXXXXX/0037ba8b-086a-46b2-8c6f-XXXXXXXX1234a3-720.json'",
"errno": -2,
"code": "ENOENT",
"syscall": "open",
"path": "/data/tmp/transcription/uGj4EkBV7QM5VvziGXXXXXXXXX/0037ba8b-086a-46b2-8c6f-XXXXXXXX1234a3-720.json"
}
}
Tested today if using a runner makes a different but it does not… I do see a possible cause in video.edu.nl
(it does not matter if you use transcription from a video or extracted audio as input file…)
Parent job: -
Processed on 12/21/25, 9:51:54.191 PM
Finished on 12/21/25, 9:53:26.766 PM
Payload:
{
"input": {
"videoFileUrl": "https://video.edu.nl/api/v1/runners/jobs/xxxxxxxxxx/files/videos/xxxxxxxxx/max-quality/audio"
},
"output": {}
}
Private payload:
{
"videoUUID": "xxxxxxxxxxxxxxxxxx"
}
I think that something went wrong in your upgrade process.
I guess you’re using Docker to deploy PeerTube, and that you didn’t correctly use the -v command of docker compose down -v (see the upgrade guide: Docker guide | PeerTube documentation).
It works!! the (missing) captions were resolved! Thank you!