Wireshark-dev: [Wireshark-dev] RTP player redesign in 2.x makes it worse than the legacy one

From: "Peter Budny" <pbudny@xxxxxxxxxx>
Date: Thu, 22 Dec 2016 14:43:34 -0500
Hello,

I admit that this is only my opinion, but as someone who uses the RTP Player
in
Wireshare very regularly in my job, I hope you'll give it some
consideration:
The UI of the redesigned RTP Player in Wireshark 2.x *sucks*, and its
usability
is much worse than the old one that's now in Wireshark Legacy. To wit:

- The RTP Player (and other RTP windows) permanently take focus. Whichever
one
on top is the *only* window that's allowed to have focus, and you can't go
to
another window; you *must* close the window on top. This is baffling, since
the
RTP Player says you can press "G" to go to the packet under the cursor, but
in
fact you can't because you have to close the RTP Player and the other
windows
you used to get there in order to look at a packet!

- When playing 2 audio streams, they both play out of the center channel,
rather than one from Left and one from Right. Maybe that's better for some
users, but it's a lot worse for me. I often need to hear both halves of a
conversation simultaneously, in a way that I can hear what audio is coming
from which side (e.g., trying to diagnose problems with echo cancellation
settings). Playing both streams through the center channel is much worse.

- You can no longer choose which streams to play from the RTP Player.
There's a
table of streams, and you can select one stream in the table to highlight it
in
the waveform graph (a feature of dubious utility), but regardless of what's
selected in that table, it always plays all streams. The only way to play a
single stream is to close the Player and the Stream Analysis, and open them
back up with only a single stream selected.

- Almost everything about the new waveform view is a mess. I can be brief
and
say "make the graph work like the legacy RTP Player, or like Audacity", but
if
you want my detailed complaints about it, here we go:

    - With multiple streams, their waveforms are displayed overlapping each
    other in the same graph, but each centered around its own 0 y-axis. If
they
    all had the same 0 y-axis, that would make sense mathematically/
    scientifically, although I wouldn't like it because one waveform will
    inevitably obscure another one. If they were on separate graphs, as in
the
    legacy Player, that would make sense and be useful and easy to
understand.
    The weird compromise that the new RTP Player chose is nonsensical, with
no
    basis that I can see in audio engineering (compare Audacity) or any
other
    kind of mathematical graph.

    - The waveform seems to be scaled to fit 100% height of its y-axis,
    separately for each stream. That change is *extremely* harmful. When I'm
    analyzing audio with the RTP Player, it's crucial to know on an absolute
    scale how strong the signal is. Very often this is exactly the data I
need
    to get: is the signal very soft (mic volume is too low), or moderate, or
    too strong (mic volume is too high)? Is it louder or softer than the
other
    RTP stream? You can't tell that when there's no y-axis displayed, *and*
    the y-axis isn't displayed or labeled!

    - Zooming horizontally (into time) makes sense; that's actually a nice
new
    feature. Zooming vertically (into amplitude) *could* make sense, but not
    the way it's implemented now. Without any y-axis labels, there's no
context
    for how much you're zoomed. This goes right back to the last point, that
    scaling the waveform to fit but not displaying a y-axis to indicate the
    scale is harmful. Moreover, zooming vertically doesn't scale each
waveform
    while keeping the 0 points of their respective y-axes in the same place;
    it just zooms the entire graph, as though it were a picture rather than
a
    mathematical graph.

    - The ability to drag the waveform graph left and right is fine, since
you
    can zoom in on it. (It only affects the display, which is non-ideal: you
    still can't select where to start playback from.) Dragging it up and
down
    makes no sense. Again, it's like someone thought this was a picture and
not
    a graph.

It's frustrating that, whatever other technical improvements may have been
made
in Wireshark 2.x, the redesigned RTP Player is hampering my ability to work,
and forcing me to go back to Wireshark Legacy whenever I need to examine RTP
data.

I'm willing to help address these problems, although I don't know how much
I'll
be able to help. (I am a programmer, but I do embedded firmware and C, not
Qt
and C++ and GUIs.) But seriously, I'm willing to work with people, whether
it's
just giving user feedback and participating in discussions for a
re-redesign, or
testing changes, or even getting my hands dirty with the code (preferably
with
some assistance from regular contributors).

P.S. I figured wireshark-dev would get the most visibility and discussion
going, but please redirect me if I should open a bug report instead or share
this somewhere else.

Cheers,
~ Peter Budny