Simple DVB with Gstreamer and GNU Radio

I have had this idea of using my webcam for digital video transmission for quite some time now. Capturing and processing video from UVC webcams has been a routine for a long time and I have had great success with Logitech webcams (the 9000 series) that have great UVC support. I still had a problem though with finding a good way to interface the GNU Radio transmitter and receiver to the video processing pipeline implemented in Gstreamer.

An idea for a DVB setup using a webcam, a laptop with Gstreamer and GNU Radio and the USRP

In my experiment with receiving packet radio from the ISS I used a named pipe to create a real time interface between the GNU Radio receiver and the packet decoder multimon. I decided to try this trick for sending video in to and out of GNU Radio and it works! The following experiments were implemented and executed on the 27th and 28th of July with some minimal preparation on the 26th.

Read more

Gstreamer compositing using the GstvideoMixerPad properties

Few weeks agio I posted my notes about picture-in-picture compositing in Gstreamer using nothing else than the gst-launch command line tool. I also wrote that I could not figure out how to use the xpos, ypos, zorder properties of the GstVideoMixerPad element. I got a comment on this note from Jan Schmidt telling that these properties can not be used with gst-launch but are easily accessible from Python. He also gave a very cool example that shows how to use it.

Read more

More GStreamer Tips: Picture-in-Picture Compositing

In a previous post I gave a few examples showing how simple text overlays can be added to any video stream in GStreamer. Now it’s time to look at compositing between two or more video streams, also called picture in picture. As you’ll see it is still very easy to achieve even when using nothing more than the gst-launch command line tool. First we look at some basic examples, then we finish with a more complex “Live from Pluto” video wall.

Read more

Simple time-lapse video with gtreamer and ffmpeg

I have experienced an unexpected spin-off while fooling around with GStreamer and my Logitech QuickCam Vision Pro 9000 webcam: A simple and easy way to autonomously capture and render time-lapse videos.

One of the advantages of webcams compared to other digital still and video cameras is that it can be controlled from a computer and the captured frames are transfered from the camera to the computer in real-time using the USB interface. This is pretty much the definition of a webcam and this feature is indeed very convenient for capturing time-lapse videos. Unfortunately, the image quality of webcams has not been anywhere near good enough to make nice looking time-lapse videos but this has changed over the last few years and is continuously improving. The results presented in this article are captured using my Logitech QuickCam Vision Pro 9000 – one of the greatest UVC cameras out there.

Read more

A Weekend with GStreamer

Gstreamer LogoThis weekend was dedicated to learning and experimenting with Gstreamer – an open source library and framework for constructing audio and video processing pipelines. Despite the weekend being spoiled by lots of bad luck (power outages, Internet down, etc.) I managed to beat the hell out of Murphy and get some work done!

My hidden agenda is of course finding a good audio/video library to accompany a software defined radio created using GNU Radio and the Universal Software Radio Peripheral (USRP), and to eventually be able to transmit real time high definition video over the air. While GNU Radio and the USRP can take care of everything related to software radio and RF, I am still looking for a good framework for flexible audio/video processing.

Read more

A Weekend with GStreamer

Gstreamer LogoThis weekend was dedicated to learning and experimenting with Gstreamer – an open source library and framework for constructing audio and video processing pipelines. Despite the weekend being spoiled by lots of bad luck (power outages, Internet down, etc.) I managed to beat the hell out of Murphy and get some work done!

My hidden agenda is of course finding a good audio/video library to accompany a software defined radio created using GNU Radio and the Universal Software Radio Peripheral (USRP), and to eventually be able to transmit real time high definition video over the air. While GNU Radio and the USRP can take care of everything related to software radio and RF, I am still looking for a good framework for flexible audio/video processing.

Read more