Main Page | Data Structures | File List | Data Fields | Globals

iec68113.h

Go to the documentation of this file.
00001 /*
00002  * Copyright (c) 1998-2001 Katsushi Kobayashi and Hidetoshi Shimokawa
00003  * All rights reserved.
00004  *
00005  * Redistribution and use in source and binary forms, with or without
00006  * modification, are permitted provided that the following conditions
00007  * are met:
00008  * 1. Redistributions of source code must retain the above copyright
00009  *    notice, this list of conditions and the following disclaimer.
00010  * 2. Redistributions in binary form must reproduce the above copyright
00011  *    notice, this list of conditions and the following disclaimer in the
00012  *    documentation and/or other materials provided with the distribution.
00013  * 3. All advertising materials mentioning features or use of this software
00014  *    must display the acknowledgement as bellow:
00015  *
00016  *    This product includes software developed by K. Kobayashi and H. Shimokawa
00017  *
00018  * 4. The name of the author may not be used to endorse or promote products
00019  *    derived from this software without specific prior written permission.
00020  *
00021  * THIS SOFTWARE IS PROVIDED BY THE AUTHOR ``AS IS'' AND ANY EXPRESS OR
00022  * IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED
00023  * WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE
00024  * DISCLAIMED.  IN NO EVENT SHALL THE AUTHOR BE LIABLE FOR ANY DIRECT,
00025  * INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES
00026  * (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR
00027  * SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION)
00028  * HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT,
00029  * STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN
00030  * ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE
00031  * POSSIBILITY OF SUCH DAMAGE.
00032  * 
00033  * $FreeBSD: src/sys/dev/firewire/iec68113.h,v 1.2 2003/01/13 15:08:48 simokawa Exp $
00034  *
00035  */
00036 struct ciphdr {
00037         u_int8_t src:6,
00038                  form0:1,       /* 0 */
00039                  eoh0:1;        /* 0 */
00040         u_int8_t len;
00041         u_int8_t :2,
00042                  sph:1,
00043                  qpc:3,
00044                  fn:1;
00045         u_int8_t dbc;
00046         u_int8_t fmt:6,
00047 #define CIP_FMT_DVCR    0
00048 #define CIP_FMT_MPEG    (1<<5)
00049                  form1:1,       /* 0 */
00050                  eoh1:1;        /* 1 */
00051         union {
00052                 struct {
00053                         u_int8_t  :2,
00054                                 stype:5,
00055 #define CIP_STYPE_SD    0
00056 #define CIP_STYPE_SDL   1
00057 #define CIP_STYPE_HD    2
00058                                 fs:1;           /* 50/60 field system
00059                                                                 NTSC/PAL */
00060                         u_int16_t cyc:16;       /* take care of byte order! */
00061                 } __attribute__ ((packed)) dv;
00062                 u_int8_t bytes[3];
00063         } fdf;
00064 
00065 };
00066 struct dvdbc{
00067         u_int8_t arb:4,         /* Arbitrary bit */
00068                  :1,            /* Reserved */
00069                  sct:3;         /* Section type */
00070 #define DV_SCT_HEADER   0
00071 #define DV_SCT_SUBCODE  1
00072 #define DV_SCT_VAUX     2
00073 #define DV_SCT_AUDIO    3
00074 #define DV_SCT_VIDEO    4
00075         u_int8_t :3,
00076                  fsc:1,         /* ID of a DIF block in each channel */
00077                  dseq:4;        /* DIF sequence number */
00078         u_int8_t dbn;           /* DIF block number */
00079         u_int8_t payload[77];
00080 #define DV_DSF_12       0x80    /* PAL: payload[0] in Header DIF */
00081 };

Generated on Mon Apr 5 16:35:08 2004 for dvsend by doxygen 1.3.5