danielgtaylor / danielgtaylor/qtfaststart

Error when relocating moov atom on certain files

Open
#20 1 comment 0 reactions 0 assignees View on GitHub
Dominant language
Python
Stars
476
Forks
56
PR merge metrics
No merged PRs in 30d

Description

In 99% of test cases, the relocation works fine however, in rare instances the following error is observed. I can't find any consistent criteria about the file to indicate why this is the case, but here is the error produced:

```
Traceback (most recent call last):
...
File "/usr/local/lib/python2.7/site-packages/qtfaststart/processor.py", line 197, in process
moov = _patch_moov(datastream, moov_atom, offset)
File "/usr/local/lib/python2.7/site-packages/qtfaststart/processor.py", line 263, in _patch_moov
moov.write(struct.pack(struct_fmt, *offset_entries))
struct.error: 'L' format requires 0 <= number <= 4294967295
```

I can provide some of the file in question if needed.

Contributor guide

No contributing guide indexed for this repository

Research direction

Start in qtfaststart/processor.py, especially process and _patch_moov, using the traceback and a file that reproduces the failure. Determine why offset_entries exceeds the struct.pack range, then verify the behavior on the failing file and against the existing test suite.

Written by the indexing model from the issue text.

Assessment

Tech stack
python
Domain
audio-video-rtc
Issue type
Bug
Difficulty
4/5
Estimated time
3-5 days
Activity status
Stale
Clarity
Needs clarification
Newbie friendliness
30/100

Get new issues in your inbox

A short digest of beginner-friendly GitHub issues.