Commit 94a4392
fix(timing): Fix --goptime producing compressed timestamps (Test 163)
When using --goptime, timestamps were compressed to 00:00:01-02 instead
of actual GOP times (17:56:40-47). This was caused by conflicts between:
- GOP timing set from GOP headers (wall-clock time, e.g., 17:56:40)
- PES PTS timing (stream-relative time, e.g., 00:00:02)
The sync detection saw these as 64,598-second "jumps" and kept resetting
timing, corrupting the output.
Fixes:
1. Guard video PES timing in general_loop.c - skip set_current_pts and
set_fts when use_gop_as_pts == 1 to prevent PES PTS from overwriting
GOP-based timing
2. Disable sync check in ccextractor.c when use_gop_as_pts == 1 since
GOP time and PES PTS are in different time bases and sync detection
is meaningless
Test results:
- Before: 00:00:01,231 --> 00:00:01,729
- After: 17:56:41,319 --> 17:56:43,084
🤖 Generated with [Claude Code](https://claude.com/claude-code)
Co-Authored-By: Claude Opus 4.5 <[email protected]>1 parent 25d68b7 commit 94a4392
2 files changed
+14
-2
lines changed| Original file line number | Diff line number | Diff line change | |
|---|---|---|---|
| |||
186 | 186 | | |
187 | 187 | | |
188 | 188 | | |
| 189 | + | |
| 190 | + | |
| 191 | + | |
| 192 | + | |
| 193 | + | |
189 | 194 | | |
190 | 195 | | |
191 | 196 | | |
| |||
| Original file line number | Diff line number | Diff line change | |
|---|---|---|---|
| |||
1018 | 1018 | | |
1019 | 1019 | | |
1020 | 1020 | | |
1021 | | - | |
1022 | | - | |
| 1021 | + | |
| 1022 | + | |
| 1023 | + | |
| 1024 | + | |
| 1025 | + | |
| 1026 | + | |
| 1027 | + | |
| 1028 | + | |
| 1029 | + | |
1023 | 1030 | | |
1024 | 1031 | | |
1025 | 1032 | | |
| |||
0 commit comments