On Tue, 2008-10-14 at 02:29 -0700, Brandon Lewis wrote:
> Willem Ligtenberg wrote:
> > How about adding DV capture support?
> > Is anyone working on that?
> 
> Not really, no. Sarath worked on webcam capture for summer of code. But DV 
> capture is a little different. We haven't thought much about it.

  Have been having some ideas. With the new DeviceProbe and Device
classes, it's relatively easy to add knowledge of new devices... like DV
cameras. We then can use the available gstreamer elements to capture the
feed. At least... for the media handling part.

  For the control (and proper discovery) of the camera (seek, play,
pause, record, eject...) we need to use libavc1394... which has no
python bindings and is limited to very basic AV/C functionalities. Been
looking over that code this weekend.. and libavc1394/librom1394 are
basically just convenience libraries accessing libraw1394. So if we
could get simple python bindings for libraw1394 ... we could do all the
rest in python.

  Just to give you an idea of how libavc1394 is limited.. it doesn't
offer methods for querying whether the connected camera is in DV or HDV
mode (whereas it's just a couple of simple queries away). And we need
that information in order to know which gstreamer source (dv1394src or
hdv1394src) to use to capture the feed.

> 
> > And how do you feel about using dvgrab for that?
> 
> PiTiVi uses gstreamer for all its media handling, and I believe there's an 
> ieee1394 source element for that. It's mostly a UI problem (as is everything 
> with PiTiVi).
>  We need an interface for controlling capture, adding sources to 
> the library, naming said sources.

  This could be extended based on Sarath's initial code, and made (a
lot) more generic.

>  Do we want auto-split-scenes or not?

  Most definitely. For DV it's pretty straightforward to do, since it's
I-frame only with markers for 'new-scenes' and IIRC dv1394src or dvdemux
handles those. I could cook up the proper pipeline for this if you want.
  For HDV ... it's *way* trickier. For starters it's mpeg2video (NOT
I-frame only) in mpeg-ts (muxed container)... so it requires parsing
both the container stream and the contained video/audio packets to
figure out scene boundaries... which isn't native to mpeg2video/mpeg-ts.
But... there are private streams contained within the mpegts stream
which contain HDV specific information (inserted every 1/3 of a second
on average) contain extra information like date-of-capture, camera
settings (aperture, gain, ...) ... and a new-scene boolean. So with a
bit of logic (similar to what dvgrab does but in a smarter fashion) we
could do auto-split for HDV too.

>  Other 
> things to think about would be exporting back to dv

  First thing to do would then be to create ieee1394 sinks which we
don't have in gstreamer yet.

> , managing batch captures, 

  To do batch captures we need AV/C control over the camera, see note at
the top about libavc1394.

> and "reconforming" to different resolutions (where, for example, all the 
> original sources in a project are replaced with high-resolution versions from 
> the same media).
> 
> Seems like it would
> > be fairly easy to just use that to grab the video and store it in a
> > user defined location. Using the auto-split option would greatly help
> > I guess.

  So to sum up... it wouldn't take very long at all to add simple DV/HDV
capture without auto-split (i.e. stored in one big file). We could then
add all the other features as we go.

  But we need to design all these interfaces a bit deeper and review all
capture use-cases to make sure we're not writing code which we'll have
to scrap away a few months down the road.

> > 
> > Just want to get some feedback first.
> > 
> > Cheers,
> > 
> > Willem

    Edward


> > 
> > On Sun, Oct 12, 2008 at 10:16 PM, Brandon Lewis
> > <[EMAIL PROTECTED]> wrote:
> >> I'll second that!
> >>
> >> Edward Hervey wrote:
> >>> Hi,
> >>>
> >>> On Sat, 2008-10-11 at 18:35 +0200, Willem Ligtenberg wrote:
> >>>> What if I wanted to start helping out developing pitivi?
> >>>> I actually just downloaded it today in my hunt to get a decent video
> >>>> editing software package and this is the first one to not crash on me
> >>>> and actually allow me to edit my video files.
> >>>> So good job at that!
> >>>  Phew, at least the first goal we wanted to get right (stability) seems
> >>> to please everybody :)
> >>>
> >>>> But then I noticed that is is written in Python, my programming
> >>>> language of choice and I thought what the hack. If I have some spare
> >>>> time, I would enjoy working on this project.
> >>>> So what is a good place to start reading?
> >>>  Need I say it ? Read the source Luke.. err Willem. Seriously though,
> >>> once the current release is out we've got a big pile of cleaning-up,
> >>> refactoring, design coming up. You can have a look at
> >>> http://www.pitivi.org/wiki/DesignThoughts for the list of things we need
> >>> to change/modify/create.
> >>>
> >>>> And to find which things are top priority to do?
> >>>  They are listed on the roadmap:
> >>> http://www.pitivi.org/wiki/Roadmap
> >>>
> >>>  We will shortly be creating wikipages, bugzilla-entries and
> >>> git-branches for the various items still to be done.
> >>>
> >>>  And if none of those items tempt you, propose an idea or something
> >>> which you think is missing and not in the TODO-list and we can discuss
> >>> on the best way to help you code that.
> >>>
> >>>> Thanks in advance,
> >>>  Thank you !
> >>>
> >>>> Willem Ligtenberg
> >>>>
> >>>> -------------------------------------------------------------------------
> >>>> This SF.Net email is sponsored by the Moblin Your Move Developer's
> >>>> challenge
> >>>> Build the coolest Linux based applications with Moblin SDK & win great
> >>>> prizes
> >>>> Grand prize is a trip for two to an Open Source event anywhere in the
> >>>> world
> >>>> http://moblin-contest.org/redirect.php?banner_id=100&url=/
> >>>> _______________________________________________
> >>>> Pitivi-pitivi mailing list
> >>>> [email protected]
> >>>> https://lists.sourceforge.net/lists/listinfo/pitivi-pitivi
> >>>
> >>> -------------------------------------------------------------------------
> >>> This SF.Net email is sponsored by the Moblin Your Move Developer's
> >>> challenge
> >>> Build the coolest Linux based applications with Moblin SDK & win great
> >>> prizes
> >>> Grand prize is a trip for two to an Open Source event anywhere in the
> >>> world
> >>> http://moblin-contest.org/redirect.php?banner_id=100&url=/
> >>> _______________________________________________
> >>> Pitivi-pitivi mailing list
> >>> [email protected]
> >>> https://lists.sourceforge.net/lists/listinfo/pitivi-pitivi
> >>
> 
> 
> -------------------------------------------------------------------------
> This SF.Net email is sponsored by the Moblin Your Move Developer's challenge
> Build the coolest Linux based applications with Moblin SDK & win great prizes
> Grand prize is a trip for two to an Open Source event anywhere in the world
> http://moblin-contest.org/redirect.php?banner_id=100&url=/
> _______________________________________________
> Pitivi-pitivi mailing list
> [email protected]
> https://lists.sourceforge.net/lists/listinfo/pitivi-pitivi
-- 
Edward Hervey <[EMAIL PROTECTED]>


-------------------------------------------------------------------------
This SF.Net email is sponsored by the Moblin Your Move Developer's challenge
Build the coolest Linux based applications with Moblin SDK & win great prizes
Grand prize is a trip for two to an Open Source event anywhere in the world
http://moblin-contest.org/redirect.php?banner_id=100&url=/
_______________________________________________
Pitivi-pitivi mailing list
[email protected]
https://lists.sourceforge.net/lists/listinfo/pitivi-pitivi

Reply via email to