-
Notifications
You must be signed in to change notification settings - Fork 51
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
Demuxer: emit PAT/PMT when seen #24
Conversation
…p one per-pid map
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
I like the idea of the accumulator (I remember I couldn't find a proper name for this logic but loves accumulator
) but I feel some minor changes need to be done.
Also, those changes now have conflicts since I've started merging your PRs.
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
I've updated the PR as requested, to:
- decouple Demuxer and packetPool
- merge master to fix conflicts
- improve hexToBytes to allow whitespace
- add TODO for partial parsing
I plan to remove the parseData in a follow-up PR.
I also had to turn programMap into a pointer so I could pass it down into the pool.
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Updated as requested.
@asticode how does this look now? |
Cheers |
This is a simple implementation of the fix discussed in #20
For now I am simply calling
parseData
, and only trying to flush early for PAT and PMT. In the future we could use a smarter/cheaper heuristic than a fullparseData
, and can also expand this to other types of PSI and PES.Includes #21 and #23. I can rebase this whenever either of those are updated.
cc @barbashov @asticode