Skip site navigation (1)Skip section navigation (2)
Date:      Wed, 18 Oct 2006 16:36:11 -0400
From:      Mikhail Teterin <mi+mx@aldan.algebra.com>
To:        Buzz Slye <buzz@gaia.arc.nasa.gov>
Cc:        bms@incunabulum.net, firewire@freebsd.org
Subject:   Re: libraw1394
Message-ID:  <200610181636.12516.mi%2Bmx@aldan.algebra.com>
In-Reply-To: <Pine.GSO.4.62.0610181257200.8352@tioga.arc.nasa.gov>
References:  <Pine.GSO.4.62.0610181257200.8352@tioga.arc.nasa.gov>

next in thread | previous in thread | raw e-mail | index | archive | help
середа 18 жовтень 2006 16:08, Buzz Slye написав:
> I'm not sure if or when I can release the FreeBSD version of libraw1394.
> Since it was written at government expense, it must be cleared through
> NASA Export control.

Wow... Well, if you need a Freedom Of Information request filed for that, let 
me know :-)

> Meanwhile please note the following: 
>
> This library was written to conform to an older version of libdc1394.
> The latest version of libdc1394, I have discovered, has many routine
> name changes so there will require some reallignment and cleanup.

Yeah, I figured that out... It seems, however, you understand how Linux' 
ioctls should be translated to FreeBSD's ioctls and other system calls (read, 
write?). Would you be able to help with the reallignments and cleanups?

> You don't need references to raw1394_iso_recv_init, etc., etc., they
> don't exist.  All the setup stuff is handled by the Firewire Kernel
> module which was written by Kobayashi and Shinokawa (Copyright 1998-2002).

Right, they don't exist. But libraw1394's own little client utilities call 
them, and so, likely, will some other clients of the library. This means, our 
port will need to provide these functions, even if they are going to be 
simple wrappers around system calls...

> I suggest you forget the API and use a simpler makefile, e.g.,
>
>      # Makefile for libraw1394
>      #
>      all: main.o readwrite.o iso.o
>  	rm -f libfraw.a
>  	ar -r libfraw.a main.o readwrite.o iso.o
>  	ranlib libfraw.a
>
>      .c.o:
>  	gcc -c -O2 -Wall $<

Thanks, I'm thinking about it too. My Makefile will be using bsd.lib.mk, of 
course :-)

> This code does not support multiple cameras.

If the Linux code does, and the FreeBSD kernel code does, the port will have 
to as well...

> Asychronous tramsmissions only support quadlet (4 byte) read/write for
> reading and writing camera registers.
>
> Our applications mostly use cameras to take single images at timed
> intervals.  If you will be using stream transfer, you may want to
> change the buffering setup.

Buzz, I have NO IDEA how to do this :-( I can put the port together, but the 
firewire details are not my thing. I just want it to work, so I can:

	a) transfer my own videos from Sony's HDV camera;
	b) get back to porting cinelerra, which uses libraw1394.

This is why I contacted the FreeBSD firewire module authors and this mailing 
list -- looking for help...

Thanks!

	-mi



Want to link to this message? Use this URL: <https://mail-archive.FreeBSD.org/cgi/mid.cgi?200610181636.12516.mi%2Bmx>