uvch264src: Only broken examples

Alexandru Csete oz9aec at gmail.com
Sun Feb 23 08:25:02 PST 2014

n Sun, Feb 23, 2014 at 3:04 PM, Mark Scudder <mark at markscudder.com> wrote:
> Hi Alexandru,
> I didn't realize you would be the one to reply. Thank you for your examples,
> even If they don't work for me they have helped me understand the gstreamer
> pipeline format
> You're right - I'm in a situation where I need to use gstreamer. Not because
> it's gstreamer, but because nothing else works. I'm in a situation where I
> need to run multiple c920s at once off one computer. So, the only app I have
> that does work - Logitech's Windows app - will not even do that.

That might not be possible using any application on any OS because of
USB bandwidth limitation. While there would be plenty of bandwidth to
run multiple C920 in H.264 the C920 will actually request bandwidth
according to what it would need in raw mode. I have not tried it
myself but I remember seeing forum discussions about this topic some
time ago.

> I'm confused at your comment about how gstreamer is a development tool, not
> an end user tool. I'll write an app if I have to, but isn't the purpose of
> gst-launch to make sure your pipelines work as expected? Will the exact same
> pipeline fail with gst-launch but work in the API? Unless I can make it work
> on gst-launch, I can't conceivably proceed to developing an app.

My comment was only meant as a explanation why the official gstreamer
tutorial is a programming manual. I'm not speaking on behalf of the
project but I don't think gst-launch was ever intended to be more than
a tool for testing and debugging.

> Further, it's hard for me to believe that, with my simple needs, there is
> not yet an app written with gstreamer that does this simple thing. I
> installed and tried both of your suggestions - qv4l2 and guvcview. The
> former seems to record video fine, but shows me a 1280x720 blank window
> while doing so.

In other words, you have two applications (gst pipeline and qv4l2)
that can't show H.264 video on your monitor. Perhaps you need to
install an H.264 decoder? Sometimes, a missing library or binary is
silently ignored.

> The latter seems to record audio and video, but does not use
> the h264 stream from the camera, and cannot encode fast enough in realtime
> to use even one camera, much less two or three. Guvcview's "viewfinder"
> window is also 1280x720 (or whatever the final video size is). Hard to
> monitor multiple cameras.
> Since you are out there I should also mention that I could not install
> gstreamer to my home directory following the instructions on your wiki.
> Although I tried multiple times, and followed your instructions carefully,
> it would always fail running configure on gst-plugins-good, claiming it
> couldn't find gst-plugins-base, even though I built both with
> --prefix=/home/mark/gst/runtime. After trying many times I finally built
> everything and let it install everything in the default locations and I was
> able to build everything.

The reason why I install gstreamer in my home is to keep it isolated
from the rest of the system. If you install in the default location
/usr/local it will most likely conflict with the one installed by your
OS in /usr so that you don't really know which one is being used.
Perhaps that is what's causing you trouble.

> Regarding your comment that the double-speed playback is a "firmware bug,"
> are you saying that my c920s have a fifteen firmware version than yours?

I too have the bug, but it has never annoyed me because I only use the
camera in real time. Assuming that gsatreamer does not alter the H.264
stream (why would it?) and that I get the same behavior using both VLC
and avplay, I concluded that the bug is in the C920 firmware. An
analysis of the H.264 stream would probably confirm it.


More information about the gstreamer-devel mailing list