Compare commits

...

2 Commits

Author SHA1 Message Date
28b0907c70 Merge remote-tracking branch 'origin/main' 2025-12-01 22:27:47 -07:00
e895c22b6e bulk hydra 2025-12-01 22:27:39 -07:00
4 changed files with 7452 additions and 3 deletions

File diff suppressed because one or more lines are too long

View File

@@ -0,0 +1,186 @@
<!-- Generated by SpecStory, Markdown v2.0.0 -->
<!-- cursor Session 3bab80f9-de45-4af3-9283-05d0a836948d (2025-11-07 07:55Z) -->
# OBS update issues and encoding speed (2025-11-07 07:55Z)
_**User (2025-11-07 07:55Z)**_
Kinda crazy. OBS updating murdered all of my preferences, so I forgot to change the default rescaled output and default framerate from 60. My @encode_VOD.py script recoded the 2hr+ file in 18 minutes. @1080p60, I would normally expect that to take at least an hour... That's the difference between ~2x speed and ~7x speed... @encode_20251107_003149.log
---
_**Agent (model default, mode Agent)**_
---
Reviewing the log to understand why encoding was faster than expected.
---
<tool-use data-tool-type="read" data-tool-name="read_file">
<details><summary>Tool use: **read_file** • Read file: logs/encode_20251107_003149.log</summary>
</details>
</tool-use>
---
<tool-use data-tool-type="read" data-tool-name="read_file">
<details><summary>Tool use: **read_file** • Read file: encode_VOD.py</summary>
</details>
</tool-use>
---
---
Checking key sections of the log for input file details and encoding speed:
---
<tool-use data-tool-type="read" data-tool-name="read_file">
<details><summary>Tool use: **read_file** • Read file: logs/encode_20251107_003149.log</summary>
</details>
</tool-use>
---
<tool-use data-tool-type="grep" data-tool-name="grep">
<details>
<summary>Tool use: **grep** • Grep for "width|height|r_frame_rate|fps=|frame=" in "logs/encode_20251107_003149.log" • 49 matches</summary>
Output mode: content
| File | Content | Line |
|------|------|------|
| `logs/encode_20251107_003149.log` | `2025-11-07 00:31:50,958 - INFO - width: 1280` | L9 |
| `logs/encode_20251107_003149.log` | `2025-11-07 00:31:50,959 - INFO - height: 720` | L10 |
| `logs/encode_20251107_003149.log` | `2025-11-07 00:31:50,959 - INFO - r_frame_rate: 30/1` | L11 |
| `logs/encode_20251107_003149.log` | `2025-11-07 00:31:50,960 - INFO - r_frame_rate: 0/0` | L16 |
| `logs/encode_20251107_003149.log` | `2025-11-07 00:31:50,961 - INFO - r_frame_rate: 0/0` | L21 |
| `logs/encode_20251107_003149.log` | `2025-11-07 00:31:53,413 - INFO - Progress: frame= 211 fps=205 q=3.0 size= 3072KiB time=00:00:06.86 bitrate=3665.0kbits/s speed=6.69x elapsed=0:00:01.02` | L87 |
| `logs/encode_20251107_003149.log` | `2025-11-07 00:31:54,433 - INFO - Progress: frame= 478 fps=235 q=3.0 size= 3584KiB time=00:00:15.83 bitrate=1854.3kbits/s speed=7.78x elapsed=0:00:02.03` | L88 |
| `logs/encode_20251107_003149.log` | `2025-11-07 00:31:55,436 - INFO - Progress: frame= 783 fps=256 q=3.0 size= 4352KiB time=00:00:26.00 bitrate=1371.2kbits/s speed=8.51x elapsed=0:00:03.05` | L89 |
| `logs/encode_20251107_003149.log` | `2025-11-07 00:31:56,458 - INFO - Progress: frame= 1080 fps=266 q=3.0 size= 5376KiB time=00:00:35.90 bitrate=1226.8kbits/s speed=8.84x elapsed=0:00:04.05` | L90 |
| `logs/encode_20251107_003149.log` | `2025-11-07 00:31:57,475 - INFO - Progress: frame= 1382 fps=272 q=3.0 size= 6144KiB time=00:00:45.96 bitrate=1095.0kbits/s speed=9.05x elapsed=0:00:05.08` | L91 |
| `logs/encode_20251107_003149.log` | `2025-11-07 00:31:58,493 - INFO - Progress: frame= 1684 fps=276 q=3.0 size= 9984KiB time=00:00:56.03 bitrate=1459.7kbits/s speed=9.19x elapsed=0:00:06.09` | L92 |
| `logs/encode_20251107_003149.log` | `2025-11-07 00:31:59,511 - INFO - Progress: frame= 1982 fps=279 q=4.0 size= 14336KiB time=00:01:05.96 bitrate=1780.3kbits/s speed=9.27x elapsed=0:00:07.11` | L93 |
| `logs/encode_20251107_003149.log` | `2025-11-07 00:32:00,515 - INFO - Progress: frame= 2282 fps=281 q=4.0 size= 20224KiB time=00:01:15.96 bitrate=2180.9kbits/s speed=9.34x elapsed=0:00:08.13` | L94 |
| `logs/encode_20251107_003149.log` | `2025-11-07 00:32:01,534 - INFO - Progress: frame= 2552 fps=279 q=2.0 size= 23808KiB time=00:01:25.10 bitrate=2291.8kbits/s speed=9.31x elapsed=0:00:09.13` | L95 |
| `logs/encode_20251107_003149.log` | `2025-11-07 00:32:02,558 - INFO - Progress: frame= 2854 fps=281 q=2.0 size= 28160KiB time=00:01:35.03 bitrate=2427.4kbits/s speed=9.36x elapsed=0:00:10.15` | L96 |
| `logs/encode_20251107_003149.log` | `2025-11-07 00:32:03,564 - INFO - Progress: frame= 3156 fps=282 q=4.0 size= 32000KiB time=00:01:45.10 bitrate=2494.2kbits/s speed= 9.4x elapsed=0:00:11.18` | L97 |
| `logs/encode_20251107_003149.log` | `2025-11-07 00:32:04,583 - INFO - Progress: frame= 3454 fps=283 q=2.0 size= 34816KiB time=00:01:55.03 bitrate=2479.4kbits/s speed=9.44x elapsed=0:00:12.18` | L98 |
| `logs/encode_20251107_003149.log` | `2025-11-07 00:32:05,599 - INFO - Progress: frame= 3746 fps=284 q=3.0 size= 38912KiB time=00:02:04.76 bitrate=2554.9kbits/s speed=9.45x elapsed=0:00:13.20` | L99 |
| `logs/encode_20251107_003149.log` | `2025-11-07 00:32:06,620 - INFO - Progress: frame= 3910 fps=275 q=4.0 size= 40192KiB time=00:02:10.23 bitrate=2528.2kbits/s speed=9.16x elapsed=0:00:14.22` | L100 |
| `logs/encode_20251107_003149.log` | `2025-11-07 00:32:07,627 - INFO - Progress: frame= 4212 fps=276 q=4.0 size= 44544KiB time=00:02:20.30 bitrate=2600.9kbits/s speed= 9.2x elapsed=0:00:15.24` | L101 |
| `logs/encode_20251107_003149.log` | `2025-11-07 00:32:08,645 - INFO - Progress: frame= 4442 fps=273 q=4.0 size= 47104KiB time=00:02:27.96 bitrate=2607.9kbits/s speed=9.11x elapsed=0:00:16.25` | L102 |
| `logs/encode_20251107_003149.log` | `2025-11-07 00:32:09,664 - INFO - Progress: frame= 4744 fps=275 q=4.0 size= 50688KiB time=00:02:38.03 bitrate=2627.5kbits/s speed=9.15x elapsed=0:00:17.26` | L103 |
| `logs/encode_20251107_003149.log` | `2025-11-07 00:32:10,681 - INFO - Progress: frame= 5044 fps=276 q=4.0 size= 54784KiB time=00:02:48.03 bitrate=2670.8kbits/s speed=9.19x elapsed=0:00:18.28` | L104 |
| `logs/encode_20251107_003149.log` | `2025-11-07 00:32:11,688 - INFO - Progress: frame= 5342 fps=277 q=4.0 size= 58624KiB time=00:02:57.96 bitrate=2698.5kbits/s speed=9.22x elapsed=0:00:19.30` | L105 |
| `logs/encode_20251107_003149.log` | `2025-11-07 00:32:12,707 - INFO - Progress: frame= 5616 fps=276 q=4.0 size= 62464KiB time=00:03:07.10 bitrate=2734.9kbits/s speed=9.21x elapsed=0:00:20.31` | L106 |
| `logs/encode_20251107_003149.log` | `2025-11-07 00:32:13,727 - INFO - Progress: frame= 5918 fps=277 q=4.0 size= 66304KiB time=00:03:17.16 bitrate=2754.8kbits/s speed=9.24x elapsed=0:00:21.33` | L107 |
| `logs/encode_20251107_003149.log` | `2025-11-07 00:32:14,737 - INFO - Progress: frame= 6220 fps=278 q=4.0 size= 70656KiB time=00:03:27.23 bitrate=2793.1kbits/s speed=9.27x elapsed=0:00:22.35` | L108 |
| `logs/encode_20251107_003149.log` | `2025-11-07 00:32:15,755 - INFO - Progress: frame= 6516 fps=279 q=3.0 size= 74496KiB time=00:03:37.10 bitrate=2811.0kbits/s speed=9.29x elapsed=0:00:23.36` | L109 |
| `logs/encode_20251107_003149.log` | `2025-11-07 00:32:16,774 - INFO - Progress: frame= 6818 fps=280 q=12.0 size= 79616KiB time=00:03:47.16 bitrate=2871.1kbits/s speed=9.32x elapsed=0:00:24.37` | L110 |
| `logs/encode_20251107_003149.log` | `2025-11-07 00:32:17,794 - INFO - Progress: frame= 7116 fps=280 q=9.0 size= 92160KiB time=00:03:57.10 bitrate=3184.2kbits/s speed=9.34x elapsed=0:00:25.39` | L111 |
| `logs/encode_20251107_003149.log` | `2025-11-07 00:32:18,798 - INFO - Progress: frame= 7383 fps=279 q=9.0 size= 103424KiB time=00:04:06.00 bitrate=3444.1kbits/s speed=9.31x elapsed=0:00:26.41` | L112 |
| `logs/encode_20251107_003149.log` | `2025-11-07 00:32:19,818 - INFO - Progress: frame= 7594 fps=277 q=11.0 size= 112384KiB time=00:04:13.03 bitrate=3638.5kbits/s speed=9.23x elapsed=0:00:27.42` | L113 |
| `logs/encode_20251107_003149.log` | `2025-11-07 00:32:20,836 - INFO - Progress: frame= 7878 fps=277 q=14.0 size= 124160KiB time=00:04:22.50 bitrate=3874.7kbits/s speed=9.23x elapsed=0:00:28.44` | L114 |
| `logs/encode_20251107_003149.log` | `2025-11-07 00:32:21,843 - INFO - Progress: frame= 8165 fps=277 q=9.0 size= 136192KiB time=00:04:32.06 bitrate=4100.8kbits/s speed=9.24x elapsed=0:00:29.45` | L115 |
| `logs/encode_20251107_003149.log` | `2025-11-07 00:32:22,867 - INFO - Progress: frame= 8434 fps=277 q=17.0 size= 147712KiB time=00:04:41.03 bitrate=4305.7kbits/s speed=9.22x elapsed=0:00:30.46` | L116 |
| `logs/encode_20251107_003149.log` | `2025-11-07 00:32:23,874 - INFO - Progress: frame= 8708 fps=277 q=16.0 size= 158720KiB time=00:04:50.16 bitrate=4481.0kbits/s speed=9.21x elapsed=0:00:31.49` | L117 |
| `logs/encode_20251107_003149.log` | `2025-11-07 00:32:24,894 - INFO - Progress: frame= 8984 fps=276 q=18.0 size= 170496KiB time=00:04:59.40 bitrate=4665.0kbits/s speed=9.21x elapsed=0:00:32.49` | L118 |
| `logs/encode_20251107_003149.log` | `2025-11-07 00:32:25,904 - INFO - Progress: frame= 9279 fps=277 q=17.0 size= 182528KiB time=00:05:09.20 bitrate=4835.9kbits/s speed=9.23x elapsed=0:00:33.51` | L119 |
| `logs/encode_20251107_003149.log` | `2025-11-07 00:32:26,928 - INFO - Progress: frame= 9567 fps=277 q=10.0 size= 195072KiB time=00:05:18.80 bitrate=5012.6kbits/s speed=9.23x elapsed=0:00:34.52` | L120 |
| `logs/encode_20251107_003149.log` | `2025-11-07 00:32:27,949 - INFO - Progress: frame= 9863 fps=277 q=11.0 size= 207104KiB time=00:05:28.70 bitrate=5161.5kbits/s speed=9.25x elapsed=0:00:35.55` | L121 |
| `logs/encode_20251107_003149.log` | `2025-11-07 00:32:28,961 - INFO - Progress: frame=10121 fps=277 q=12.0 size= 217856KiB time=00:05:37.26 bitrate=5291.6kbits/s speed=9.22x elapsed=0:00:36.57` | L122 |
| `logs/encode_20251107_003149.log` | `2025-11-07 00:32:29,980 - INFO - Progress: frame=10398 fps=277 q=-1.0 size= 228352KiB time=00:05:46.50 bitrate=5398.7kbits/s speed=9.22x elapsed=0:00:37.58` | L123 |
| `logs/encode_20251107_003149.log` | `2025-11-07 00:32:30,991 - INFO - Progress: frame=10663 fps=276 q=4.0 size= 237568KiB time=00:05:55.33 bitrate=5477.0kbits/s speed= 9.2x elapsed=0:00:38.60` | L124 |
| `logs/encode_20251107_003149.log` | `2025-11-07 00:32:32,001 - INFO - Progress: frame=10933 fps=276 q=9.0 size= 248576KiB time=00:06:04.33 bitrate=5589.2kbits/s speed= 9.2x elapsed=0:00:39.61` | L125 |
| `logs/encode_20251107_003149.log` | `2025-11-07 00:32:33,022 - INFO - Progress: frame=11176 fps=275 q=8.0 size= 258560KiB time=00:06:12.43 bitrate=5687.3kbits/s speed=9.17x elapsed=0:00:40.62` | L126 |
| `logs/encode_20251107_003149.log` | `2025-11-07 00:32:34,039 - INFO - Progress: frame=11472 fps=275 q=8.0 size= 271104KiB time=00:06:22.30 bitrate=5809.3kbits/s speed=9.18x elapsed=0:00:41.64` | L127 |
| `logs/encode_20251107_003149.log` | `2025-11-07 00:32:35,058 - INFO - Progress: frame=11774 fps=276 q=11.0 size= 283392KiB time=00:06:32.36 bitrate=5916.8kbits/s speed= 9.2x elapsed=0:00:42.66` | L128 |
| `logs/encode_20251107_003149.log` | `2025-11-07 00:32:36,070 - INFO - Progress: frame=12049 fps=276 q=5.0 size= 294656KiB time=00:06:41.53 bitrate=6011.5kbits/s speed=9.19x elapsed=0:00:43.68` | L129 |
| `logs/encode_20251107_003149.log` | `2025-11-07 00:32:37,085 - INFO - Progress: frame=12274 fps=275 q=12.0 size= 304128KiB time=00:06:49.03 bitrate=6091.0kbits/s speed=9.15x elapsed=0:00:44.69` | L130 |
</details>
</tool-use>
---
---
Checking the end of the log for completion stats:
---
<tool-use data-tool-type="grep" data-tool-name="grep">
<details>
<summary>Tool use: **grep** • Grep for "Successfully encoded|Compression ratio|Processing file" in "logs/encode_20251107_003149.log" • 6 matches</summary>
Output mode: content
| File | Content | Line |
|------|------|------|
| `logs/encode_20251107_003149.log` | `2025-11-07 00:31:50,612 - INFO - Processing file 1/2: 2025-11-06 graveyard_gameplay.mp4` | L3 |
| `logs/encode_20251107_003149.log` | `2025-11-07 00:31:50,956 - INFO - Processing file: input\2025-11-06 graveyard_gameplay.mp4` | L4 |
| `logs/encode_20251107_003149.log` | `2025-11-07 00:50:34,966 - INFO - Successfully encoded: output\2025-11-06 graveyard_gameplay.mp4` | L1194 |
| `logs/encode_20251107_003149.log` | `2025-11-07 00:50:34,967 - INFO - Compression ratio: 2.78x` | L1196 |
| `logs/encode_20251107_003149.log` | `2025-11-07 00:50:34,968 - INFO - Processing file 2/2: 2025-11-06 graveyard.ts.mp4` | L1197 |
| `logs/encode_20251107_003149.log` | `2025-11-07 00:50:35,767 - INFO - Processing file: input\2025-11-06 graveyard.ts.mp4` | L1198 |
</details>
</tool-use>
---
---
The log shows why it was faster than expected:
**Input file specs:**
- Resolution: **1280x720** (not 1080p)
- Frame rate: **30 fps** (not 60 fps)
- Duration: 2h 14m 30s (8070 seconds)
**Encoding performance:**
- Speed: consistently **~9.2x9.4x**
- Total time: ~18 minutes (00:31:50 → 00:50:34)
**Why it was faster:**
720p30 vs 1080p60:
- Pixels: 921,600 vs 2,073,600 (2.25x fewer)
- Frame rate: 30 vs 60 fps (2x fewer frames)
- Combined: ~4.5x less work
So ~9x speed for 720p30 roughly matches ~2x speed for 1080p60, which aligns with your expectation.
The script is working as expected; the input was recorded at 720p30 due to OBS settings resetting. If you re-encode a true 1080p60 file, expect ~2x speed.
The encoding completed successfully with a **2.78x compression ratio** (19.10 GB → ~6.87 GB).
---

View File

@@ -128,8 +128,8 @@ def encode_dvr(input_file, output_dir, gpu):
'-aq-strength', '15',
'-cq', '0',
'-b:v', '10000k',
'-maxrate', '10000k',
'-bufsize', '20000k',
'-maxrate', '5500k',
'-bufsize', '11000k',
'-c:a', 'copy',
'-map', '0',
]

View File

@@ -118,7 +118,7 @@ def encode_dvr(input_file, output_dir, gpu):
'-aq-strength', '15',
'-cq', '0',
'-b:v', '0',
'-maxrate', '10000k',
'-maxrate', '5500k',
'-c:a', 'copy',
'-map', '0',
]