Git Product home page Git Product logo

rtpeeker's People

Contributors

falon452 avatar lvala avatar

Stargazers

 avatar  avatar  avatar  avatar

Watchers

 avatar  avatar

rtpeeker's Issues

Main packets window/tab

Design and create the page/tag that shows all of the packets with info about them. The page should allow for sorting, filtering etc. Test the performance with large amounts of packets.

Frontend-backend WebSocket communication

Setup front-end -- back-end communication (sending packets to clients, allow to request client to parse a packet differently (i.e. packet was not parsed, but I know it's RTP, so parse it as RTP and send again). Send all of the previous packets to newly joined client. Create common module and appropriate serializable data structures.

Backend packet sniffing and parsing

Implement packet sniffing functionality on the back-end. Packets should be parsed (L2, L3, L4 without auto-recognition/treat everything as RTP) and stored. Consider used data structures to accommodate for packets analysis.

Command line interface

Implement the command line interface. The interface should allow to choose address/interface and port, chosen .pcap file and the interface from which packets are captured. It also should allow to list network interaces to make it easier to choose the desired one.

RTP packets window

Add new window to GUI with a table that lists RTP packets with corresponding data.

App packaging

Setup app packaging (i.e. via crates.io binary). It should be convenient to download and run (e.g. the WASM assets should be automatically compiled).

RTP Streams window

Add functionality to group RTP packets into streams and calculate some metrics (jitter, packet loss etc.). Add window to GUI that lists the streams and corresponding data.

CI setup

Setup CI (using Github Actions). It should check the formatting, linting, build and test the project (consider that the code is split to more than one directory).

The plot window

Create the plot window. Plot window should allow to see a graph that represents arriving RTP/RTCP packets in time.

Main screen

Create the main WASM/egui app template. The template should contain general elements (e.g. information about connected backend, a ligth/dark mode switch, these are just examples). The template should allow to easily insert buttons/other way to enable pages/tabs/windows (with e.g. tables with packets or plots). This tasks also requires to implement the packet fetching on the client side, as new packets must cause re-render.

QoL improvements

This issue will be updated with minor problems regarding user experience that should be eventually fixed.

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    ๐Ÿ–– Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. ๐Ÿ“Š๐Ÿ“ˆ๐ŸŽ‰

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google โค๏ธ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.