video transfer (grab digital YUV, encode, send, decode)

Anything not related to a specific project.

video transfer (grab digital YUV, encode, send, decode)

Postby arhi » Sat Jan 05, 2013 11:54 am

Hi guy's, I need to make some video transfer application ASAP where I will have
- video camera (some small sony that exports YUV digital signal)
- that need to go into some h264 encoder
- then I need to do something with that h264 stream on the mcu
- then modified stream need to go into some RF (I have some solution here already, but 4-5Mbps stream)
- then to be accepted on receiving end with RF and then h264 need to be decoded and displayed

Now, I have some ideas but what I want to know is if anyone ever tried something similar or know any dev kit that can help develop this (for e.g. some arm7 or arm9 with h264 decoder like DM368) ...
User avatar
arhi
Hero Member
Hero Member
 
Posts: 2109
Joined: Thu Jun 24, 2010 11:41 am
Location: Belgrade, Serbia

Re: video transfer (grab digital YUV, encode, send, decode)

Postby Bertho » Sat Jan 05, 2013 2:45 pm

My guess is that your biggest problem will be the h264 encoder. Many devices have hardware assisted decoders, but the encoder is another ballgame.

I have been involved in real-time streaming some time ago, in which we took a (raw) 20..30mbit/s stream onto wired Ethernet and multicast it encoded, which could be picked up by f.x. mplayer or VLC on the local network. However, we used a multi-core server to do the encoding due to the required processing power (with ffmpeg).

I guess that you can use WiFi for streaming at that level too, but there are no guarantees of delivery, unless you stream at the tcp level, which then requires significant buffering to smooth out hiccups.
User avatar
Bertho
Sr. Member
Sr. Member
 
Posts: 347
Joined: Mon Sep 19, 2011 4:34 pm
Location: Somewhere in the vicinity of Betelgeuse

Re: video transfer (grab digital YUV, encode, send, decode)

Postby arhi » Sat Jan 05, 2013 2:51 pm

no I can't do that, I need a camera that need to be equipped with this device that will stream compressed & modified stream. DM368 or DM365 work for me (ARM9 with hw H264 coder will compress the YUV directly into h264 and then have enough juice to apply modification on that stream since ARM9 is powerful) problem is dev kit with this chip is min 700eur .. I'm looking for another solution for comparison
User avatar
arhi
Hero Member
Hero Member
 
Posts: 2109
Joined: Thu Jun 24, 2010 11:41 am
Location: Belgrade, Serbia

Re: video transfer (grab digital YUV, encode, send, decode)

Postby Bertho » Sat Jan 05, 2013 3:05 pm

arhi wrote:DM368 or DM365 work for me (ARM9 with hw H264 coder will compress the YUV directly into h264 and then have enough juice to apply modification on that stream since ARM9 is powerful) problem is dev kit with this chip is min 700eur .. I'm looking for another solution for comparison

Yes, I see, that are powerful chips. But the devkit part I do not understand. The linux devkit for is free and should do all you need. What am I missing here?

Edit: maybe way off, but why not use a Pandaboard?
Last edited by Bertho on Sat Jan 05, 2013 3:11 pm, edited 1 time in total.
User avatar
Bertho
Sr. Member
Sr. Member
 
Posts: 347
Joined: Mon Sep 19, 2011 4:34 pm
Location: Somewhere in the vicinity of Betelgeuse

Re: video transfer (grab digital YUV, encode, send, decode)

Postby arhi » Sat Jan 05, 2013 3:10 pm

dev kit != software

it is a BGA chip so getting chip ain't gonna help me at all ... I need a dev kit / evaluation kit to test stuff, wire up some tests so I can design a board that I will manufacture ... I can't just read datasheet and order boards to be made :D
User avatar
arhi
Hero Member
Hero Member
 
Posts: 2109
Joined: Thu Jun 24, 2010 11:41 am
Location: Belgrade, Serbia

Re: video transfer (grab digital YUV, encode, send, decode)

Postby Bertho » Sat Jan 05, 2013 3:18 pm

arhi wrote:dev kit != software

Sure.

arhi wrote:it is a BGA chip so getting chip ain't gonna help me at all ... I need a dev kit / evaluation kit to test stuff, wire up some tests so I can design a board that I will manufacture ... I can't just read datasheet and order boards to be made :D


Well, the 328 balls are something of a hassle (ahum). Actually, all these complex systems need dedicated support chips and that usually prevents "ASAP" usage and requires quite a bit of engineering to make it work.

I did make an edit in my previous post; why not use a Pandaboard or a Gumstix? Is it a requirement to have a dedicated design or are you space-constrained in a way that you need a custom build? My guess is that it would be quite expensive to make a board from scratch.
User avatar
Bertho
Sr. Member
Sr. Member
 
Posts: 347
Joined: Mon Sep 19, 2011 4:34 pm
Location: Somewhere in the vicinity of Betelgeuse

Re: video transfer (grab digital YUV, encode, send, decode)

Postby arhi » Sat Jan 05, 2013 3:41 pm

very constrained by space so has to be custom design. I do not need to have finished product asap but I need to have decision on what to use yesterday + I need soon to have a working design with eval board that then can be re-engineered into custom solution.

As for the gymstix, panda, rpi, olimex board based on A1x etc etc I do not have space nor electricity for a whole computer, nor I need it, I just need to get 10pin YUV (8bit data + HV + clock) into some encoder and get raw data (8bit data + clock) out of the encoder into some mcu/cpu for some heavy processing (high cpu usage here) and I'll handle it from there ... ARM9+h264 sounds ok .. I can survive with MJPEG instead of h264 and some lower quality chip then this DM365 since I am getting video from PAL camera (768x546 or something like that, or maybe even only 640x480) ... anyhow, maybe gumstix can be used! need to check out the schematic of that board .. thanks for the hint, never seen that board before
User avatar
arhi
Hero Member
Hero Member
 
Posts: 2109
Joined: Thu Jun 24, 2010 11:41 am
Location: Belgrade, Serbia

Re: video transfer (grab digital YUV, encode, send, decode)

Postby Bertho » Sat Jan 05, 2013 4:45 pm

arhi wrote:very constrained by space so has to be custom design. I do not need to have finished product asap but I need to have decision on what to use yesterday + I need soon to have a working design with eval board that then can be re-engineered into custom solution.


Ah, proof-of-concept stage. The hack-funny stage of a project ;-)

arhi wrote:As for the gymstix, panda, rpi, olimex board based on A1x etc etc I do not have space nor electricity for a whole computer, nor I need it, I just need to get 10pin YUV (8bit data + HV + clock) into some encoder and get raw data (8bit data + clock) out of the encoder into some mcu/cpu for some heavy processing (high cpu usage here) and I'll handle it from there ... ARM9+h264 sounds ok .. I can survive with MJPEG instead of h264 and some lower quality chip then this DM365 since I am getting video from PAL camera (768x546 or something like that, or maybe even only 640x480) ..


My guess is that you have a "standard" parallel camera interface coming from the camera. At least, that is what those small (phone-)cameras have these days. The resolution is low enough to do some processing.

arhi wrote:anyhow, maybe gumstix can be used! need to check out the schematic of that board .. thanks for the hint, never seen that board before


The Gumstix (http://www.gumstix.com) is a great board. You cannot beat that size (58x17mm) when making it yourself. It even comes with bluetooth and WiFi on the same board, and, it has a parallel camera interface. I have used it before (using a web-cam on usb). The omap processor includes DSP for lifting the encoder duties.

I do not believe that they provide the schematics of the processor board, but from my usage it seems that it is largely straight forward copied from the omap documentation. The base- and add-on-boards come with full schematics. The software stack (a full linux distro) is available from git and takes a couple of hours to compile (bitbake based env).
User avatar
Bertho
Sr. Member
Sr. Member
 
Posts: 347
Joined: Mon Sep 19, 2011 4:34 pm
Location: Somewhere in the vicinity of Betelgeuse

Re: video transfer (grab digital YUV, encode, send, decode)

Postby arhi » Sat Jan 05, 2013 5:02 pm

Thanks mate, sounds like a good starting point. I'm not limited to h264 but I'm limited with bandwidth (as after processing the stream it need to go trough air to another station) so I might be able to hack some software encoding .. will report on the progress :D
User avatar
arhi
Hero Member
Hero Member
 
Posts: 2109
Joined: Thu Jun 24, 2010 11:41 am
Location: Belgrade, Serbia

Re: video transfer (grab digital YUV, encode, send, decode)

Postby Sleepwalker3 » Sun Jan 06, 2013 2:04 am

Arhi, I haven't read this post in any great detail, so I might be way off with what you were after, but these things may perhaps be of some interest - If not, sorry to waste your time. They are powerful and cheap and they say "Open Development Platform". Not sure how open it is, but they say they will publish full schematics 31 Jan.

This one's amazing for the price, Quad Core ARM A9 1.7GHz - $89
http://www.hardkernel.com/renewal_2011/products/prdt_info.php?g_code=G135341370451
(Shove over Pi, this is half the size, Quad Core and 1.7GHZ!)

and this Quad Core ARM A9 1.7GHz for $135
http://www.hardkernel.com/renewal_2011/products/prdt_info.php?g_code=G135235611947

or the full tablet version Dev board with the Quad Core ARM A9 1.6GHz and just about every device, gadget, human interface and connectivity feature conceivable and even comes with a Debug board $856
http://www.hardkernel.com/renewal_2011/products/prdt_info.php?g_code=G135278861948
User avatar
Sleepwalker3
Hero Member
Hero Member
 
Posts: 539
Joined: Mon Jan 16, 2012 4:12 am
Location: Down Under

Re: video transfer (grab digital YUV, encode, send, decode)

Postby arhi » Sun Jan 06, 2013 8:50 am

thanks but it's too expensive for what I want to do ..
User avatar
arhi
Hero Member
Hero Member
 
Posts: 2109
Joined: Thu Jun 24, 2010 11:41 am
Location: Belgrade, Serbia


Return to General discussion