The Programs of the Week of the Great American Eclipse
This Week’s Program: Aug 21 - Aug 25
If you’re reading this, that means you managed to get through this week’s total solar eclipse without major damage to your eyes! Today is also my birthday! Happy Birthday to me and the moon.
This week I kept on writing documentation for my GObject Introspection
Racket module, stubbing out more of the functions. Nearly done
there. As I’ve been writing the docs, I’ve noticed that there are some
things that don’t feel quite right to me and I’m scratching my head
about how to improve the library. I made the decision to use the same
identifier names as the racket/class
library, and that decision
sometimes makes sense and then other times doesn’t. Once I have the
documentation complete I guess I’ll see how it reads and how it feels
as I expand the GStreamer module.
e42ad6ac43fe678e857d74dd8691888af8eb6123
I want to keep tabs on the events that are coming through the message
bus
of the broadcast pipeline. To do this, I actually create another
box
called current-bus
that I set alongside the
current-broadcast
. This way, the message bus for the current
broadcast is global, and I can handle events from it in any place I
choose.
6d35e2f76a416d933bdd518337604aaf194c27aa
That duplication of having both a current-bus
and a
current-broadcast
doesn’t feel quite right to me. Here, I create a
simple struct called pipeline
designed to encapsulate both of them,
and be used for synchronization. The idea being that this struct would
hold both the GStreamer pipeline and also the message bus that it
communicates over, and this would be global to the rest of the
program. This still doesn’t feel quite baked, and I think this would
be a good thing to have be a part of the GStreamer module. Will
continue to noodle in this direction next week.
Until next time,
🍰 Mark