Re: video capture driver interlacing question (easycap)

2012-04-29 Thread Ezequiel García
Hi,


 i.e., no, you should not merge fields in the driver, IIRC, you just hand
 them over to the user in separate buffers.


Thanks a lot for your answer. However, in that case I'm a little
confused by the fact that em28xx driver merges both fields by copying
one line from each into a buffer before handing it back to user.

I'd love if someone could clarify this issue.

Thanks a lot again,
Ezequiel.
--
To unsubscribe from this list: send the line unsubscribe linux-media in
the body of a message to majord...@vger.kernel.org
More majordomo info at  http://vger.kernel.org/majordomo-info.html


Re: video capture driver interlacing question (easycap)

2012-04-28 Thread Ezequiel García
On Thu, Apr 26, 2012 at 5:33 PM, Ezequiel García elezegar...@gmail.com wrote:
 Hi everyone,

 As you may know I'm re-writing from scratch the staging/easycap driver.

 Finally, after digging through the labyrinthic staging/easycap code,
 I've reached a point where I'm able to understand isoc packets.
 Despite not having any documentation (I asked several times) from chip vendor,
 I can separate packets in odd and even.

 So, instead of receiving frames the device is sending me fields, right?

 My doubt now is this:
 * Do I have to *merge* this pair of fields for each frame, or can I
 give it to v4l?
 If affirmative: how should I *merge* them?
 * Is this related to multiplanar buffers (should I use vb2_plane_addr)?

 Currently, staging/easycap does some strange and complex conversion,
 from the pair of fields buffers, to get a frame buffer (!) but I'm
 not sure if it's the correct way to do it?

 I guess I can keep staring at em28xx (together with vivi/uvc/pwc) driver,
 but if someone cares to give me a small hint or point me at a small portion
 of code I'll be grateful.

 Thanks,
 Ezequiel.

Anyone?
--
To unsubscribe from this list: send the line unsubscribe linux-media in
the body of a message to majord...@vger.kernel.org
More majordomo info at  http://vger.kernel.org/majordomo-info.html


Re: video capture driver interlacing question (easycap)

2012-04-28 Thread Guennadi Liakhovetski
Hi Ezequiel

On Sat, 28 Apr 2012, Ezequiel García wrote:

 On Thu, Apr 26, 2012 at 5:33 PM, Ezequiel García elezegar...@gmail.com 
 wrote:
  Hi everyone,
 
  As you may know I'm re-writing from scratch the staging/easycap driver.
 
  Finally, after digging through the labyrinthic staging/easycap code,
  I've reached a point where I'm able to understand isoc packets.
  Despite not having any documentation (I asked several times) from chip 
  vendor,
  I can separate packets in odd and even.
 
  So, instead of receiving frames the device is sending me fields, right?
 
  My doubt now is this:
  * Do I have to *merge* this pair of fields for each frame, or can I
  give it to v4l?
  If affirmative: how should I *merge* them?
  * Is this related to multiplanar buffers (should I use vb2_plane_addr)?
 
  Currently, staging/easycap does some strange and complex conversion,
  from the pair of fields buffers, to get a frame buffer (!) but I'm
  not sure if it's the correct way to do it?
 
  I guess I can keep staring at em28xx (together with vivi/uvc/pwc) driver,
  but if someone cares to give me a small hint or point me at a small portion
  of code I'll be grateful.
 
  Thanks,
  Ezequiel.
 
 Anyone?

This might help:

http://linuxtv.org/downloads/v4l-dvb-apis/field-order.html

i.e., no, you should not merge fields in the driver, IIRC, you just hand 
them over to the user in separate buffers.

Thanks
Guennadi
---
Guennadi Liakhovetski, Ph.D.
Freelance Open-Source Software Developer
http://www.open-technology.de/
--
To unsubscribe from this list: send the line unsubscribe linux-media in
the body of a message to majord...@vger.kernel.org
More majordomo info at  http://vger.kernel.org/majordomo-info.html


video capture driver interlacing question (easycap)

2012-04-26 Thread Ezequiel García
Hi everyone,

As you may know I'm re-writing from scratch the staging/easycap driver.

Finally, after digging through the labyrinthic staging/easycap code,
I've reached a point where I'm able to understand isoc packets.
Despite not having any documentation (I asked several times) from chip vendor,
I can separate packets in odd and even.

So, instead of receiving frames the device is sending me fields, right?

My doubt now is this:
* Do I have to *merge* this pair of fields for each frame, or can I
give it to v4l?
If affirmative: how should I *merge* them?
* Is this related to multiplanar buffers (should I use vb2_plane_addr)?

Currently, staging/easycap does some strange and complex conversion,
from the pair of fields buffers, to get a frame buffer (!) but I'm
not sure if it's the correct way to do it?

I guess I can keep staring at em28xx (together with vivi/uvc/pwc) driver,
but if someone cares to give me a small hint or point me at a small portion
of code I'll be grateful.

Thanks,
Ezequiel.
--
To unsubscribe from this list: send the line unsubscribe linux-media in
the body of a message to majord...@vger.kernel.org
More majordomo info at  http://vger.kernel.org/majordomo-info.html