EpicGamesExt / PixelStreamingInfrastructure

The official Pixel Streaming servers and frontend.
MIT License
131 stars 44 forks source link

[BUG] - Missing module "lib/stringify" in frontend when running on Ubuntu server. #156

Open ethan-tqa opened 1 week ago

ethan-tqa commented 1 week ago

UE Version: E.g. UE 5.4

Frontend Version: E.g. UE5.4

Problem component Signalling Server, Frontend

Description An error in the player or frontend that prevents the user from playing. There is nothing but a blank page presented. The error and stack trace is as follows:

Uncaught Error: Module build failed (from ./node_modules/ts-loader/index.js):
Error: Cannot find module './lib/stringify'
Require stack:
- /home/ubuntu/PixelStreamingInfrastructure/Frontend/ui-library/node_modules/braces/index.js
- /home/ubuntu/PixelStreamingInfrastructure/Frontend/ui-library/node_modules/micromatch/index.js
- /home/ubuntu/PixelStreamingInfrastructure/Frontend/ui-library/node_modules/ts-loader/dist/utils.js
- /home/ubuntu/PixelStreamingInfrastructure/Frontend/ui-library/node_modules/ts-loader/dist/after-compile.js
- /home/ubuntu/PixelStreamingInfrastructure/Frontend/ui-library/node_modules/ts-loader/dist/instances.js
- /home/ubuntu/PixelStreamingInfrastructure/Frontend/ui-library/node_modules/ts-loader/dist/index.js
- /home/ubuntu/PixelStreamingInfrastructure/Frontend/ui-library/node_modules/ts-loader/index.js
- /home/ubuntu/PixelStreamingInfrastructure/Frontend/ui-library/node_modules/loader-runner/lib/loadLoader.js
- /home/ubuntu/PixelStreamingInfrastructure/Frontend/ui-library/node_modules/loader-runner/lib/LoaderRunner.js
- /home/ubuntu/PixelStreamingInfrastructure/Frontend/ui-library/node_modules/webpack/lib/NormalModuleFactory.js
- /home/ubuntu/PixelStreamingInfrastructure/Frontend/ui-library/node_modules/webpack/lib/Compiler.js
- /home/ubuntu/PixelStreamingInfrastructure/Frontend/ui-library/node_modules/webpack/lib/webpack.js
- /home/ubuntu/PixelStreamingInfrastructure/Frontend/ui-library/node_modules/webpack/lib/index.js
- /home/ubuntu/PixelStreamingInfrastructure/Frontend/ui-library/node_modules/webpack-cli/lib/webpack-cli.js
- /home/ubuntu/PixelStreamingInfrastructure/Frontend/ui-library/node_modules/webpack-cli/lib/bootstrap.js
- /home/ubuntu/PixelStreamingInfrastructure/Frontend/ui-library/node_modules/webpack-cli/bin/cli.js
- /home/ubuntu/PixelStreamingInfrastructure/Frontend/ui-library/node_modules/webpack/bin/webpack.js
    at Module._resolveFilename (node:internal/modules/cjs/loader:1077:15)
    at Module._load (node:internal/modules/cjs/loader:922:27)
    at Module.require (node:internal/modules/cjs/loader:1143:19)
    at require (node:internal/modules/cjs/helpers:110:18)
    at Object.<anonymous> (/home/ubuntu/PixelStreamingInfrastructure/Frontend/ui-library/node_modules/braces/index.js:3:19)
    at Module._compile (node:internal/modules/cjs/loader:1256:14)
    at Module._extensions..js (node:internal/modules/cjs/loader:1310:10)
    at Module.load (node:internal/modules/cjs/loader:1119:32)
    at Module._load (node:internal/modules/cjs/loader:960:12)
    at Module.require (node:internal/modules/cjs/loader:1143:19)
    at ./src/pixelstreamingfrontend-ui.ts (http://myipaddress/player.js:10086:7)
    at ../../ui-library/dist/lib-pixelstreamingfrontend-ui.esm.js (http://myipaddress/player.js:10097:67)
    at __webpack_require__ (http://myipaddress/player.js:10124:41)
    at http://myipaddress/player.js:10181:107
    at http://myipaddress/player.js:10204:3
    at http://myipaddress/player.js:10207:12
    at webpackUniversalModuleDefinition (http://myipaddress/player.js:9:32)
    at http://myipaddress/player.js:10:3

Steps to Reproduce:

  1. Clone this project and setup the Signalling Server as per documentation, on Ubuntu server.
  2. Run the signalling server.
  3. Open the frontend page in browser.

Expected behavior

  1. The frontend works normally

Screenshots N/A

Platform (please complete the following information):

Additional context I was using AWS EC2 instance with Amazon Linux, it should behave similarly to normal Ubuntu for the most part. The problem does not appear on Windows when I test locally. This issue happens regardless of whether the streamer instance is connected or not.

mcottontensor commented 1 week ago

I tested this on a fresh AWS instance running Ubuntu Server 24.04 and cloned the infrastructure repo, switched to UE5.4 branch and ran the run_local.sh script. I pointed a streamer at it and then opened the frontend on a Windows machine on both Chrome and Firefox and was unable to reproduce this issue. Both browsers streamed without issues. Is there something different with your setup? Have you tried using a fresh AWS instance? It seems like something in your environment has become corrupt.