GstPipelineStudio/TODO.md

105 lines
3.1 KiB
Markdown
Raw Normal View History

2022-01-11 19:53:35 +00:00
## 0.1.0
2021-11-17 11:38:28 +00:00
- [x] Fix c.fill issue
- [x] Create Element structure with pads and connections
- [x] Get a list of GStreamer elements in dialog add plugin
- [x] Add plugin details in the element dialog
- [x] Draw element with its pad
- [x] Be able to move the element on Screen
- [x] Create connection between element
- [x] create contextual menu on pad or element
- [x] save/load pipeline
- [x] Run a pipeline with GStreamer
- [x] Run the pipeline with GStreamer
- [x] Control the pipeline with GStreamer
- [x] select nodes/links with a Trait Selectable
- [x] be able to remove a link by selecting it
- [x] Connect the logs to the window
2022-01-11 19:53:35 +00:00
- [x] Define the license
- [x] crash with x11 on contextual menu
- [x] open multiple times dialog (About) prevent to close it.
2022-01-11 19:53:35 +00:00
- [x] remove useless code from graphview
- [x] Move render to a specific module
- [x] Move GST render to a specific module
## 0.2.0
### Graphview
- [x] Remove a port from a node when its possible (Presence support)
- [x] Implement graphview unit test
- [x] Add a css class for pad (presence always or sometimes)
- [x] Add properties to Port to store some specific value (ie Caps)
- [x] Unable to connect a port which is already connected
- [x] Unable to connect port with same directions (in/in, out/out)
### GStreamer:
- [x] Add seek support
- [x] Use of gtk4paintablesink
### app
- [x] Check that a node accepts to create a port on request (input/output)
- [x] Render the parse launch line in a message box
- [x] Prevent to create a pad in an element without the template
- [x] Check the pipeline validity
- [x] Save node position in XML
- [x] Auto-save the graph
- [x] Logger in file/app all over the app
- [x] Property window in the main window
- [x] Connect the GPS status to GST status
- [x] Display position and duration
- [x] Seek to position with slider
- [x] One listbox with elements and one listbox with favorites in the app dashboard
- [x] See the link creation with a dashed line
- [x] Display pad properties with tooltip hover
- [x] Add preferences dialog
- [x] Create a window for the video output
### infra
- [x] Icon install
- [x] Flatpak infrastructure
## 0.2.1
### app
- [x] Can set pad properties to be used during the pipeline generation. See videomixer_alpha.xml
2022-01-11 19:53:35 +00:00
## TODO
### Graphview
- [ ] create a crate for graphview/node/port
### GStreamer:
- [ ] Implement pipeline unit test
### app
2022-01-11 19:53:35 +00:00
- [ ] Control the connection between element
- [ ] unable to connect element with incompatible caps.
- [ ] Add multiple graphviews with tabs.
- [ ] Implement graph dot render/load
- [ ] Implement a command line parser to graph
- [ ] handle the caps setter element
- [ ] Add probes on each pad to monitor the pipeline
2022-01-11 19:53:35 +00:00
- [ ] Render a media file
- [ ] Offer compatible element to a pad (autorender)
- [ ] Display tags/meta/message detected
2022-02-02 09:36:30 +00:00
- [ ] Change TreeView to ListView
- [ ] Implement zoom on the view (https://gitlab.gnome.org/World/obfuscate/-/blob/master/src/widgets/drawing_area.rs)
- [ ] Settings: add a log level selection
- [ ] reopen the last log on prematured exit (crash)
### CI/Infra
- [ ] Create a macos/windows job
2022-01-11 19:53:35 +00:00
## bugs
2022-01-11 19:53:35 +00:00
- [ ] check that element exists before creating it on file load.