The python script PcrAnalysis.py is tailored to check PCR integrity (or timing integrity) of MPEG TS stream.
This script analyzes:
- whether PCR interval is smaller or equal to 100ms (as required by MPEG System standard). If not a violation is reported.
- whether PCR values are monotonic unless the discontinuity flag is set. If not a violation is reported.
- whether PCR is coupled with PES header (or aligned to video frame)
Usage:
python PcrAnalysis.py ts-file
Example:
python PcrAnalysis.py test.ts
Total Pkts 117138, pcr cnt 12296
Maximal PCR Diff 691598 (25.6147ms), attained at packet 309
PCR is not always followed by PES header, dangling pcr cnt 10776
Elaboration:
‘pcr cnt’ is the total number of PCRs detected in the input stream
‘PCR Diff’ – is measured in units of 27Mhz
‘Dangling pcr cnt’ – PCRs which are not alighned to PES headers
Note:
PCRs are timestamps in units of 27Mhz which must be transmitted in transport stream at intervals <100ms (mandatory in MPEG2-System).
23+ years’ programming and theoretical experience in the computer science fields such as video compression, media streaming and artificial intelligence (co-author of several papers and patents).
the author is looking for new job, my resume
You really make it seem so easy with your presentation but I find this topic to be actually something which I think I would never understand. It seems too complex and very broad for me. I am looking forward for your next post, I will try to get the hang of it!
I haven’t checked in here for some time since I thought it was getting boring, but the last several posts are great quality so I guess I will add you back to my everyday bloglist. You deserve it my friend 🙂
This site is known as a stroll-by means of for all of the info you wished about this and didn’t know who to ask. Glimpse right here, and you’ll positively uncover it.
Wonderful items from you, man. I have be mindful your stuff prior to and you’re just extremely fantastic. I really like what you’ve got right here, really like what you are saying and the way in which you assert it. You’re making it entertaining and you continue to care for to stay it sensible. I cant wait to read much more from you. This is really a great web site.
Nice post. I learn something more challenging on different blogs everyday. It will always be stimulating to read content from other writers and practice a little something from their store. I’d prefer to use some with the content on my blog whether you don’t mind. Natually I’ll give you a link on your web blog. Thanks for sharing.
Perfectly composed content, Really enjoyed looking through.
Thanks , I have recently been looking for information approximately this subject for ages and yours is the best I have came upon so far. However, what about the bottom line? Are you certain about the supply?
Thank you for the good writeup. It in fact was a amusement account it. Look advanced to more added agreeable from you! By the way, how can we communicate?
It’s really a great and helpful piece of info. I’m glad that you shared this useful information with us. Please keep us informed like this. Thanks for sharing.
Keep working ,remarkable job!
I went over this website and I believe you have a lot of great information, saved to bookmarks (:.
It’s arduous to find knowledgeable folks on this subject, but you sound like you understand what you’re talking about! Thanks
I have not checked in here for a while as I thought it was getting boring, but the last several posts are good quality so I guess I will add you back to my daily bloglist. You deserve it my friend 🙂
Fantastic goods from you, man. I’ve take into account your stuff prior to and you are just too fantastic. I actually like what you have got here, really like what you are stating and the best way wherein you are saying it. You’re making it entertaining and you continue to take care of to stay it sensible. I can’t wait to read far more from you. This is actually a wonderful web site.