Difference between revisions of "TS Info"
(TSinfo) |
(→Features: Add wikilinks, including GOP) |
||
(7 intermediate revisions by 2 users not shown) | |||
Line 1: | Line 1: | ||
− | + | In the Open Source multimedia field there are various choices for multimedia streaming and playback. However analysing and checking validity of [[MPEG-TS]] streams is not really possible. DVBsnoop (http://dvbsnoop.sourceforge.net/) is the only application that is only one that comes near this goal, but it is a commandline utility. This doesn't make it easy to be used. | |
+ | |||
+ | The goal of TS Info is to be an easy to use MPEG-TS (MPTS/SPTS) analyser with all the information, analysis and validation right under you finger tips. | ||
+ | |||
+ | It should also be possible to insert the TS Analyser/TS Monitor in between the client and the server and monitor the stream for the boundaries configured. If the boundaries (or rules) are crossed, then a trigger will be sent to indicate a deviation from the required settings. | ||
+ | |||
+ | == Features == | ||
* Input from TS/RTP/UDP or TS/UDP | * Input from TS/RTP/UDP or TS/UDP | ||
− | * Possible extension to use linux-dvb device | + | * Possible extension to use linux-dvb device (maybe use [[dvblast]] as input) |
* PID list and bandwidths / %age - bargraph | * PID list and bandwidths / %age - bargraph | ||
− | * SI table parsing (NIT, PMT, PAT, EIT, CAT, etc.) | + | * [[Bitrate]]s (also audio and video separate) |
− | * I-frame gap | + | * Mux distance of audio and video packets |
+ | * SI table parsing (NIT, PMT, PAT, EIT, CAT, etc.) / descriptor parsing | ||
+ | * Detect scrambled content (check scrambling bits 11, 10, optional 01/00) | ||
+ | * [[I-frame]] gap | ||
+ | * Determine [[GOP]] length | ||
+ | * Detect Open/Closed GOP | ||
+ | * Teletext/closed captioning detection | ||
* CRC errors | * CRC errors | ||
* I-frame decoding | * I-frame decoding | ||
Line 12: | Line 24: | ||
* EPG grid | * EPG grid | ||
* PID selection and forwarding to VLC (via UDP stream?) | * PID selection and forwarding to VLC (via UDP stream?) | ||
+ | * Triggers on deviation from set boundaries (mux distance < 500ms, if not then sent trigger eg: sms/e-mail) | ||
+ | * Mention conformance to which standard and link to it if online source is available | ||
+ | |||
+ | == Architecture == | ||
+ | |||
+ | proposal: | ||
+ | * TS Analyser GUI - user interface to browse the MPEG-TS stream content (information gathered is similar to DVBsnoop) | ||
+ | * TS Analyser - real-time MPEG-TS analyser that informs the GUI/TS Monitor of features discovered and various measurements | ||
+ | * TS Monitor - real-time MPEG-TS monitor that triggers on deviations of preferred features in the MPEG-TS stream | ||
+ | <pre> | ||
+ | TS Analyser GUI | ||
+ | | | ||
+ | |||
+ | MPEG-TS --------> RTP/UDP input ---> TS Analyser --> RTP/UDP output | ||
+ | (MPTS/SPTS) | | ||
+ | TS Monitor --> send trigger if deviation detected | ||
+ | </pre> | ||
+ | == License == | ||
+ | |||
+ | * TS Analyser GUI : GPLv2 | ||
+ | * TS Analyser library : LGPLv2.1 | ||
+ | * TS Monitor daemon : GPLv2 | ||
+ | |||
+ | [[Category:Dev Discussions]] |
Latest revision as of 05:02, 16 May 2019
In the Open Source multimedia field there are various choices for multimedia streaming and playback. However analysing and checking validity of MPEG-TS streams is not really possible. DVBsnoop (http://dvbsnoop.sourceforge.net/) is the only application that is only one that comes near this goal, but it is a commandline utility. This doesn't make it easy to be used.
The goal of TS Info is to be an easy to use MPEG-TS (MPTS/SPTS) analyser with all the information, analysis and validation right under you finger tips.
It should also be possible to insert the TS Analyser/TS Monitor in between the client and the server and monitor the stream for the boundaries configured. If the boundaries (or rules) are crossed, then a trigger will be sent to indicate a deviation from the required settings.
Features
- Input from TS/RTP/UDP or TS/UDP
- Possible extension to use linux-dvb device (maybe use dvblast as input)
- PID list and bandwidths / %age - bargraph
- Bitrates (also audio and video separate)
- Mux distance of audio and video packets
- SI table parsing (NIT, PMT, PAT, EIT, CAT, etc.) / descriptor parsing
- Detect scrambled content (check scrambling bits 11, 10, optional 01/00)
- I-frame gap
- Determine GOP length
- Detect Open/Closed GOP
- Teletext/closed captioning detection
- CRC errors
- I-frame decoding
- Discontinuity indication
- Subtitle decoding
- EPG grid
- PID selection and forwarding to VLC (via UDP stream?)
- Triggers on deviation from set boundaries (mux distance < 500ms, if not then sent trigger eg: sms/e-mail)
- Mention conformance to which standard and link to it if online source is available
Architecture
proposal:
- TS Analyser GUI - user interface to browse the MPEG-TS stream content (information gathered is similar to DVBsnoop)
- TS Analyser - real-time MPEG-TS analyser that informs the GUI/TS Monitor of features discovered and various measurements
- TS Monitor - real-time MPEG-TS monitor that triggers on deviations of preferred features in the MPEG-TS stream
TS Analyser GUI | MPEG-TS --------> RTP/UDP input ---> TS Analyser --> RTP/UDP output (MPTS/SPTS) | TS Monitor --> send trigger if deviation detected
License
- TS Analyser GUI : GPLv2
- TS Analyser library : LGPLv2.1
- TS Monitor daemon : GPLv2