EricBerendsen / dvbinspector

DVB Inspector is an open-source DVB analyzer, written in java
http://www.digitalekabeltelevisie.nl/dvb_inspector/
GNU General Public License v3.0
182 stars 32 forks source link

Suggestion: Enhance the Grid View #72

Open lars18th opened 3 months ago

lars18th commented 3 months ago

Hi @EricBerendsen ,

I have some suggestions for the Grid View:

The objective is to use this "view" to check more visualy if the muxing is done correctly.

I hope you want to consider this. Thank you for this very good project.

EricBerendsen commented 3 months ago

Maybe I do not understand your first point, but is this what you want?

image

For this use the View -> Filter option. The selected PIDs and time range of this filter affect the Bitrate, Bar, Grid and PCR/PTS views.

The second point would make it a completely different view. Now the width is flexible, and adapts to the window size. Then the width would be fixed, need to introduce scroll bars, etc.

Also I do not understand why use "the timestamp of the first PUSI packet of the LINE"? What if there are no packets on that line where payload starts? Why not just the timestamp of the first packet of that line?

lars18th commented 3 months ago

Hi @EricBerendsen ,

Maybe I do not understand your first point, but is this what you want?

Just that! 👍

For this use the View -> Filter option. The selected PIDs and time range of this filter affect the Bitrate, Bar, Grid and PCR/PTS views.

I don't know about this! Nice! However, some comments about the "Filter option window":

The second point would make it a completely different view. Now the width is flexible, and adapts to the window size. Then the width would be fixed, need to introduce scroll bars, etc. Also I do not understand why use "the timestamp of the first PUSI packet of the LINE"? What if there are no packets on that line where payload starts? Why not just the timestamp of the first packet of that line?

After thinking more on it: Yes the idea is to create a new "fixed width table" based on a time scale for each line. And regarding the timestamp, you're right, the best is to print only the calculated PCR based time for the first packet on that line.

Please, think about this idea. Perhaps quite complex to implement it, but it's a good idea... or not?

lars18th commented 3 months ago

Hi @EricBerendsen ,

Another different trouble: The "Show Adaptation Filed", "Show Payload Start" and "Show Error Indicator" visualization is not quite visible. I suggest to add another button to "reduce the colour of non-selected packets". The idea is: when you enable Show Payload Start, then all packets of the same pid without the PUSI flag will be painted with a lower colour. The objective is to increase the visibility of the selected packets.

Do you agree with that?

EricBerendsen commented 3 months ago
  • We can select multiple pids, but the buttons only move one of the selecteds. This is annoying. Thank you, this was a bug in the right panel, left was OK. Fixed in 1.19
  • When we move a pid, the list number is not reordered. This is annoying too. Not sure what you mean, if you mean that when you add a PID again it will be inserted at the end; that is on purpose. The list can be re-ordered so the graphs show PIDs in a custom order. The is no natural place to insert a PID.
  • The option to select all pids of a service will be a must-have. Do you think so?

Considered it, but would have all kinds of edge cases when PIDs are share between services (like teletext, PCR). When services share a PID, removing the service would also remove the PCR for other services.

The second point would make it a completely different view. Now the width is flexible, and adapts to the window size. Then the width would be fixed, need to introduce scroll bars, etc. Also I do not understand why use "the timestamp of the first PUSI packet of the LINE"? What if there are no packets on that line where payload starts? Why not just the timestamp of the first packet of that line?

After thinking more on it: Yes the idea is to create a new "fixed width table" based on a time scale for each line. And regarding the timestamp, you're right, the best is to print only the calculated PCR based time for the first packet on that line.

Just realized, this view is not for a single service, but for the whole stream. So using PCR values does not make sense. Could calculate a time from the start of the stream.

I'll think about this one a bit more

Another different trouble: The "Show Adaptation Filed", "Show Payload Start" and "Show Error Indicator" visualization is not quite visible. I suggest to add another button to "reduce the colour of non-selected packets". The idea is: when you enable Show Payload Start, then all packets of the same pid without the PUSI flag will be painted with a lower colour. The objective is to increase the visibility of the selected packets.

Then packets with the same PID would have different colours, depending on adaptation field and/or Payload start. Bit confusing I think. If the markers are difficult to see select a different zoom level, so the boxes are larger.