I have a HD webcam connected to my pandaboard, and I want to do
streaming with vlc. The streaming works, but according to "top", it
consumes 115% cpu (I wonder how that's even possible?), and it seems
the stream drops some frames now and then.
This is the vlm.conf file I use:
--
new camNumber2 broadcast enabled
setup camNumber2 input v4l2:///dev/video2:width=640:height=480
setup camNumber2 output
#transcode{vcodec=mp2v,acodec=none,vb=5000}:standard{access=http,mux=ogg,ds t=0.0.0.0:8080}
control camNumber2 play
---
I reduced the resolution which seems to solve some issues, but cpu
usage is still very high. My webcam is a logitech c525 with native
resolution of 1280x720 (720).
Since the stream is only used on my own network, I want to settle for
higher bandwith use, if I just can get decent image quality without
overloading my cpu all the time.
I'm using the Ubuntu pandaboard image (without the omap-multimedia
extensions). I doubt that those extensions will help me, since they
are for video-decoding, not encoding (right?).
I also used mp4v encoding, but that also occupies a lot of cpu power.
On Sun, May 27, 2012 at 1:04 PM, Jeroen <jeroenjacobs1...@gmail.com> wrote:
> Hi,
> I have a HD webcam connected to my pandaboard, and I want to do
> streaming with vlc. The streaming works, but according to "top", it
> consumes 115% cpu (I wonder how that's even possible?), and it seems
> the stream drops some frames now and then.
without doing anything special, you would be using ARM CPU for
encoding and image processing, so nothing surprising really ;-)
> --
> new camNumber2 broadcast enabled
> setup camNumber2 input v4l2:///dev/video2:width=640:height=480
> setup camNumber2 output
> #transcode{vcodec=mp2v,acodec=none,vb=5000}:standard{access=http,mux=ogg,ds t=0.0.0.0:8080}
> control camNumber2 play
> --
> I reduced the resolution which seems to solve some issues, but cpu
> usage is still very high. My webcam is a logitech c525 with native
> resolution of 1280x720 (720).
> Since the stream is only used on my own network, I want to settle for
> higher bandwith use, if I just can get decent image quality without
> overloading my cpu all the time.
> I'm using the Ubuntu pandaboard image (without the omap-multimedia
> extensions). I doubt that those extensions will help me, since they
> are for video-decoding, not encoding (right?).
no, there is encoder support as well. at least in 11.10, we haven't
pushed encoders in 12.04 yet.
we provide low level user space API (libDCE) to access the codecs, and
we provide Gstreamer plugins that work with these codecs. If you use
an application that is not using Gstreamer (such as VLC), you will
have to plug in libDCE.
however, if you use a USB webcam it is likely that the image format
won't be compatible with what OMAP h/w accelerated codecs need (NV12)
and you will need to make a YUV->NV12 on ARM, before you can use the
codecs, but at least you can get read of the encoding on ARM, get a
high quality stream..
Unfortunately, as Nicolas said, the performance is not the best because
ffmpegcolorspace is required between webcam stream (v4l2src) and
ducatimpeg4enc to convert to the right video format. (ffmpegcolorspace
runs on the arm side)
Regards
Joaquin Castellanos
PS: Check in your client pipeline that the udpsrc caps=" ... " string match
the caps of the server pipeline. See the output log in your terminal.
On Sun, May 27, 2012 at 7:19 PM, Nicolas Dechesne <nde...@gmail.com> wrote:
> On Sun, May 27, 2012 at 1:04 PM, Jeroen <jeroenjacobs1...@gmail.com>
> wrote:
> > Hi,
> > I have a HD webcam connected to my pandaboard, and I want to do
> > streaming with vlc. The streaming works, but according to "top", it
> > consumes 115% cpu (I wonder how that's even possible?), and it seems
> > the stream drops some frames now and then.
> without doing anything special, you would be using ARM CPU for
> encoding and image processing, so nothing surprising really ;-)
> #transcode{vcodec=mp2v,acodec=none,vb=5000}:standard{access=http,mux=ogg,ds t=
> 0.0.0.0:8080}
> > control camNumber2 play
> > --
> > I reduced the resolution which seems to solve some issues, but cpu
> > usage is still very high. My webcam is a logitech c525 with native
> > resolution of 1280x720 (720).
> > Since the stream is only used on my own network, I want to settle for
> > higher bandwith use, if I just can get decent image quality without
> > overloading my cpu all the time.
> > I'm using the Ubuntu pandaboard image (without the omap-multimedia
> > extensions). I doubt that those extensions will help me, since they
> > are for video-decoding, not encoding (right?).
> no, there is encoder support as well. at least in 11.10, we haven't
> pushed encoders in 12.04 yet.
> we provide low level user space API (libDCE) to access the codecs, and
> we provide Gstreamer plugins that work with these codecs. If you use
> an application that is not using Gstreamer (such as VLC), you will
> have to plug in libDCE.
> however, if you use a USB webcam it is likely that the image format
> won't be compatible with what OMAP h/w accelerated codecs need (NV12)
> and you will need to make a YUV->NV12 on ARM, before you can use the
> codecs, but at least you can get read of the encoding on ARM, get a
> high quality stream..
> Unfortunately, as Nicolas said, the performance is not the best because
> ffmpegcolorspace is required between webcam stream (v4l2src) and
> ducatimpeg4enc to convert to the right video format. (ffmpegcolorspace
> runs on the arm side)
And ffmpegcolorspace must be the only piece of SW ever
written that is able to do some color conversion...
I never messed with GStreamer before, and from the looks of it, it seems to have the most counter-intuitive syntax I've ever seen. I'll think I'll stick for VLC a bit longer (even if that means higher cpu use).
Are there any plans to integrate Ducati with VLC too?
> Unfortunately, as Nicolas said, the performance is not the best because > ffmpegcolorspace is required between webcam stream (v4l2src) and > ducatimpeg4enc to convert to the right video format. (ffmpegcolorspace > runs on the arm side)
> Regards > Joaquin Castellanos
> PS: Check in your client pipeline that the udpsrc caps=" ... " string > match the caps of the server pipeline. See the output log in your terminal.
> On Sun, May 27, 2012 at 7:19 PM, Nicolas Dechesne <nde...@gmail.com>wrote:
>> On Sun, May 27, 2012 at 1:04 PM, Jeroen <jeroenjacobs1...@gmail.com> >> wrote: >> > Hi,
>> > I have a HD webcam connected to my pandaboard, and I want to do >> > streaming with vlc. The streaming works, but according to "top", it >> > consumes 115% cpu (I wonder how that's even possible?), and it seems >> > the stream drops some frames now and then.
>> without doing anything special, you would be using ARM CPU for >> encoding and image processing, so nothing surprising really ;-)
>> #transcode{vcodec=mp2v,acodec=none,vb=5000}:standard{access=http,mux=ogg,ds t= >> 0.0.0.0:8080} >> > control camNumber2 play >> > --
>> > I reduced the resolution which seems to solve some issues, but cpu >> > usage is still very high. My webcam is a logitech c525 with native >> > resolution of 1280x720 (720).
>> > Since the stream is only used on my own network, I want to settle for >> > higher bandwith use, if I just can get decent image quality without >> > overloading my cpu all the time.
>> > I'm using the Ubuntu pandaboard image (without the omap-multimedia >> > extensions). I doubt that those extensions will help me, since they >> > are for video-decoding, not encoding (right?).
>> no, there is encoder support as well. at least in 11.10, we haven't >> pushed encoders in 12.04 yet.
>> we provide low level user space API (libDCE) to access the codecs, and >> we provide Gstreamer plugins that work with these codecs. If you use >> an application that is not using Gstreamer (such as VLC), you will >> have to plug in libDCE.
>> however, if you use a USB webcam it is likely that the image format >> won't be compatible with what OMAP h/w accelerated codecs need (NV12) >> and you will need to make a YUV->NV12 on ARM, before you can use the >> codecs, but at least you can get read of the encoding on ARM, get a >> high quality stream..
> I never messed with GStreamer before, and from the looks of it, it seems to have the most counter-intuitive syntax I've
> ever seen. I'll think I'll stick for VLC a bit longer (even if that means higher cpu use).
> Are there any plans to integrate Ducati with VLC too?
none that I know of so far, but also nothing
that I would consider undoable. VLC already
supports TI Codec Engine from Davinci times,
so using that a base for dce might be a good
starting point.
> Unfortunately, as Nicolas said, the performance is not the best because > ffmpegcolorspace is required between webcam stream (v4l2src) and > ducatimpeg4enc to convert to the right video format. (ffmpegcolorspace > runs on the arm side)
> Regards > Joaquin Castellanos
> PS: Check in your client pipeline that the udpsrc caps=" ... " string > match the caps of the server pipeline. See the output log in your terminal.
> On Sun, May 27, 2012 at 7:19 PM, Nicolas Dechesne wrote:
>> On Sun, May 27, 2012 at 1:04 PM, Jeroen wrote: >> > Hi,
>> > I have a HD webcam connected to my pandaboard, and I want to do >> > streaming with vlc. The streaming works, but according to "top", it >> > consumes 115% cpu (I wonder how that's even possible?), and it seems >> > the stream drops some frames now and then.
>> without doing anything special, you would be using ARM CPU for >> encoding and image processing, so nothing surprising really ;-)
>> #transcode{vcodec=mp2v,acodec=none,vb=5000}:standard{access=http,mux=ogg,ds t= >> 0.0.0.0:8080} >> > control camNumber2 play >> > --
>> > I reduced the resolution which seems to solve some issues, but cpu >> > usage is still very high. My webcam is a logitech c525 with native >> > resolution of 1280x720 (720).
>> > Since the stream is only used on my own network, I want to settle for >> > higher bandwith use, if I just can get decent image quality without >> > overloading my cpu all the time.
>> > I'm using the Ubuntu pandaboard image (without the omap-multimedia >> > extensions). I doubt that those extensions will help me, since they >> > are for video-decoding, not encoding (right?).
>> no, there is encoder support as well. at least in 11.10, we haven't >> pushed encoders in 12.04 yet.
>> we provide low level user space API (libDCE) to access the codecs, and >> we provide Gstreamer plugins that work with these codecs. If you use >> an application that is not using Gstreamer (such as VLC), you will >> have to plug in libDCE.
>> however, if you use a USB webcam it is likely that the image format >> won't be compatible with what OMAP h/w accelerated codecs need (NV12) >> and you will need to make a YUV->NV12 on ARM, before you can use the >> codecs, but at least you can get read of the encoding on ARM, get a >> high quality stream..
>> Unfortunately, as Nicolas said, the performance is not the best because
>> ffmpegcolorspace is required between webcam stream (v4l2src) and
>> ducatimpeg4enc to convert to the right video format. (ffmpegcolorspace
>> runs on the arm side)
>> Regards
>> Joaquin Castellanos
>> PS: Check in your client pipeline that the udpsrc caps=" ... " string
>> match the caps of the server pipeline. See the output log in your terminal.
>> On Sun, May 27, 2012 at 7:19 PM, Nicolas Dechesne wrote:
>> On Sun, May 27, 2012 at 1:04 PM, Jeroen wrote:
>>> > Hi,
>>> > I have a HD webcam connected to my pandaboard, and I want to do
>>> > streaming with vlc. The streaming works, but according to "top", it
>>> > consumes 115% cpu (I wonder how that's even possible?), and it seems
>>> > the stream drops some frames now and then.
>>> without doing anything special, you would be using ARM CPU for
>>> encoding and image processing, so nothing surprising really ;-)
>>> > I reduced the resolution which seems to solve some issues, but cpu
>>> > usage is still very high. My webcam is a logitech c525 with native
>>> > resolution of 1280x720 (720).
>>> > Since the stream is only used on my own network, I want to settle for
>>> > higher bandwith use, if I just can get decent image quality without
>>> > overloading my cpu all the time.
>>> > I'm using the Ubuntu pandaboard image (without the omap-multimedia
>>> > extensions). I doubt that those extensions will help me, since they
>>> > are for video-decoding, not encoding (right?).
>>> no, there is encoder support as well. at least in 11.10, we haven't
>>> pushed encoders in 12.04 yet.
>>> we provide low level user space API (libDCE) to access the codecs, and
>>> we provide Gstreamer plugins that work with these codecs. If you use
>>> an application that is not using Gstreamer (such as VLC), you will
>>> have to plug in libDCE.
>>> however, if you use a USB webcam it is likely that the image format
>>> won't be compatible with what OMAP h/w accelerated codecs need (NV12)
>>> and you will need to make a YUV->NV12 on ARM, before you can use the
>>> codecs, but at least you can get read of the encoding on ARM, get a
>>> high quality stream..
Hi, I have the same camera as you but I cannot figure out how to get it to work. When I open Cheese I get an error saying "device not found", but running lsusb shows the camera. Mind teaching me the magic you used to get it to work? :)
On Sunday, May 27, 2012 1:04:34 PM UTC+2, Jeroen wrote:
> Hi,
> I have a HD webcam connected to my pandaboard, and I want to do > streaming with vlc. The streaming works, but according to "top", it > consumes 115% cpu (I wonder how that's even possible?), and it seems > the stream drops some frames now and then.
> #transcode{vcodec=mp2v,acodec=none,vb=5000}:standard{access=http,mux=ogg,ds t= > 0.0.0.0:8080} > control camNumber2 play > ---
> I reduced the resolution which seems to solve some issues, but cpu > usage is still very high. My webcam is a logitech c525 with native > resolution of 1280x720 (720).
> Since the stream is only used on my own network, I want to settle for > higher bandwith use, if I just can get decent image quality without > overloading my cpu all the time.
> I'm using the Ubuntu pandaboard image (without the omap-multimedia > extensions). I doubt that those extensions will help me, since they > are for video-decoding, not encoding (right?).
> I also used mp4v encoding, but that also occupies a lot of cpu power.
did you see your camera mounted ? You could try to find out which one
corresponds to your camera and then select that device in Cheese:
edit>preferences .
On Thu, Aug 2, 2012 at 10:22 AM, <johntores...@gmail.com> wrote:
> Hi, I have the same camera as you but I cannot figure out how to get it to
> work. When I open Cheese I get an error saying "device not found", but
> running lsusb shows the camera. Mind teaching me the magic you used to get
> it to work? :)
> Thanks,
> John
> On Sunday, May 27, 2012 1:04:34 PM UTC+2, Jeroen wrote:
>> Hi,
>> I have a HD webcam connected to my pandaboard, and I want to do
>> streaming with vlc. The streaming works, but according to "top", it
>> consumes 115% cpu (I wonder how that's even possible?), and it seems
>> the stream drops some frames now and then.
>> This is the vlm.conf file I use:
>> --
>> new camNumber2 broadcast enabled
>> setup camNumber2 input v4l2:///dev/video2:width=640:**height=480
>> setup camNumber2 output
>> #transcode{vcodec=mp2v,acodec=**none,vb=5000}:standard{access=**
>> http,mux=ogg,dst=0.0.0.0:8080}
>> control camNumber2 play
>> ---
>> I reduced the resolution which seems to solve some issues, but cpu
>> usage is still very high. My webcam is a logitech c525 with native
>> resolution of 1280x720 (720).
>> Since the stream is only used on my own network, I want to settle for
>> higher bandwith use, if I just can get decent image quality without
>> overloading my cpu all the time.
>> I'm using the Ubuntu pandaboard image (without the omap-multimedia
>> extensions). I doubt that those extensions will help me, since they
>> are for video-decoding, not encoding (right?).
>> I also used mp4v encoding, but that also occupies a lot of cpu power.