diff --git a/.github/workflows/container.yml b/.github/workflows/container.yml
index 28f4b5b..1c4ce21 100644
--- a/.github/workflows/container.yml
+++ b/.github/workflows/container.yml
@@ -25,6 +25,8 @@ jobs:
for attempt in $(seq 1 60); do
if docker exec nodecast-smoke node scripts/healthcheck.cjs; then
docker exec nodecast-smoke sh -c 'test ! -e /app/.env.container-sentinel && test ! -e /app/data/container-sentinel'
+ docker exec nodecast-smoke lspci --version
+ docker exec nodecast-smoke node -e "require('./server/services/hwDetect').detectQuickSync('ffmpeg').then(q => { if (q.available) process.exit(1); })"
exit 0
fi
sleep 2
diff --git a/Dockerfile b/Dockerfile
index 10f8e8d..40ce495 100644
--- a/Dockerfile
+++ b/Dockerfile
@@ -26,6 +26,7 @@ RUN apt-get update && apt-get install -y --no-install-recommends \
&& apt-get update && apt-get install -y --no-install-recommends \
nodejs \
ffmpeg \
+ pciutils \
python3 \
make \
g++ \
diff --git a/README.md b/README.md
index 2606f16..73ec1e7 100644
--- a/README.md
+++ b/README.md
@@ -120,6 +120,8 @@ Ensure you have the [NVIDIA Container Toolkit](https://docs.nvidia.com/datacente
```
**Verify:**
+On Linux, QSV detection checks an accessible Intel render device and verifies a short H.264 encode with the configured FFmpeg. If that check fails, QSV is not automatically recommended. Ensure the container has read/write permission on the mapped device. The image includes `pciutils` for systems where GPU vendor information is hidden in sysfs.
+
After restarting the container, go to **Settings -> Transcoding**. The **Hardware Detection** status should list your GPU (e.g., "NVIDIA GPU Detected" or "VAAPI Available").
### SSO / OIDC Setup
diff --git a/package-lock.json b/package-lock.json
index 1f31400..7650c2f 100644
--- a/package-lock.json
+++ b/package-lock.json
@@ -1,12 +1,12 @@
{
"name": "nodecast-tv",
- "version": "2.2.4",
+ "version": "2.2.5",
"lockfileVersion": 3,
"requires": true,
"packages": {
"": {
"name": "nodecast-tv",
- "version": "2.2.4",
+ "version": "2.2.5",
"license": "GPL-3.0-only",
"dependencies": {
"@ffprobe-installer/ffprobe": "^2.1.2",
diff --git a/package.json b/package.json
index f287db4..8c84129 100644
--- a/package.json
+++ b/package.json
@@ -1,6 +1,6 @@
{
"name": "nodecast-tv",
- "version": "2.2.4",
+ "version": "2.2.5",
"description": "Modern IPTV Player",
"license": "GPL-3.0-only",
"main": "server/index.js",
diff --git a/public/index.html b/public/index.html
index ab982c1..617b76b 100644
--- a/public/index.html
+++ b/public/index.html
@@ -1107,8 +1107,9 @@
+
-
+
@@ -1118,7 +1119,7 @@
-
+