gstreamer examples hello-world

something gets opened
This commit is contained in:
efim
2024-07-29 05:14:41 +00:00
parent e77bb5e392
commit e991200a8e
5 changed files with 294 additions and 0 deletions

View File

@@ -33,6 +33,8 @@ $ nix shell nixpkgs#kdePackages.qttools
* the receiving of the signals
* all the different tabs i had
** overall freedesktop portal dbus api docs
https://docs.flatpak.org/en/latest/portal-api-reference.html#gdbus-org.freedesktop.portal.ScreenCast
** searching github for 'get-managed-objects usage
https://github.com/search?q=get-managed-objects&type=code
@@ -125,3 +127,58 @@ https://gitlab.gnome.org/-/snippets/19
** doc about cl bindings to gtk3
https://www.crategus.com/books/cl-gtk/gtk-tutorial.html#example-window-simple-c
** well, i guess i could go and try to read guide on pipewire with C examples
https://docs.pipewire.org/page_tutorial.html
this is tutorial for the system
and here is example program that maybe does similar thing
https://docs.pipewire.org/video-play_8c-example.html
* [2024-07-28 Sun]
** ok, now i'm trying to get frames from the pipewire 'out' node
and one option i'm exploring is gstreamer
which is a framework for creating applications that stream video / audio
with some kind of ability to define \ declare pipeline and then start
and then use api somehow
there's c api, and gobject accessibility layer
so either c to common lisp, or gobject common lisp thingy maybe exist
** reading docs
https://gstreamer.freedesktop.org/documentation/frequently-asked-questions/using.html?gi-language=c
added via
gst_all_1.gstreamer
** more readin
gst-launch-1.0 videotestsrc ! videoconvert ! autovideosink
this is test for how it's installed
needed to add plugins
https://nixos.wiki/wiki/GStreamer
** i guess i can try to go with the tutorials?
https://gstreamer.freedesktop.org/documentation/tutorials/index.html?gi-language=c
but with common lisp over gobject?
i think i'm already using this in the gtk bindings playground? maybe not
https://cl-gtk2.common-lisp.dev/doc/gobject/Creating-GObjects-classes-and-implementing-GInterfaces.html
#+begin_quote
GObject binding at the moment provides only limited scenarios of creating GObject classes.
#+end_quote
** and there's something
https://github.com/BohongHuang/cl-gobject-introspection-wrapper
which is based on older
https://github.com/andy128k/cl-gobject-introspection
https://search.nixos.org/packages?channel=unstable&from=0&size=50&sort=relevance&type=packages&query=gobject
they are packaged in nix, this is just unbelievable how much is done by humanity, omg