Mercurial > mplayer.hg
view libmpdemux/rtp.h @ 10743:3d1eab0d9c5a
* Add multi device support.
For the moment up to 16 cards are supported.
More can be added easily by changing 2 defines.
This makes 90% of the patch (mostly stupid s/$var/card->$var/)
The different devices can be accessed by different minor
numbers (0-15):
mknod /dev/mga_vid0 c 178 0
mknod /dev/mga_vid1 c 178 1
mknod /dev/mga_vid2 c 178 2
mknod /dev/mga_vid3 c 178 3
...
ln -s mga_vid /dev/mga_vid
* Change the devfs code to let the kernel assign us
a major and a minor number (what is the sense behind
using devfs anyways if we dont do that ?)
Subdevices for the different cards are created.
mga_vid uses the first card (for compatibility)
* Fix a possible error when mmap() is called before
the card is configured by a ioctl().
author | attila |
---|---|
date | Sun, 31 Aug 2003 20:57:34 +0000 |
parents | 54bcbf28698a |
children | befb79b0232e |
line wrap: on
line source
#ifndef _RTP_H #define _RTP_H #include "config.h" #ifndef HAVE_WINSOCK2 #include <sys/socket.h> #else #include <winsock2.h> #endif struct rtpbits { unsigned int v:2; /* version: 2 */ unsigned int p:1; /* is there padding appended: 0 */ unsigned int x:1; /* number of extension headers: 0 */ unsigned int cc:4; /* number of CSRC identifiers: 0 */ unsigned int m:1; /* marker: 0 */ unsigned int pt:7; /* payload type: 33 for MPEG2 TS - RFC 1890 */ unsigned int sequence:16; /* sequence number: random */ }; struct rtpheader { /* in network byte order */ struct rtpbits b; int timestamp; /* start: random */ int ssrc; /* random */ }; void initrtp(struct rtpheader *foo); /* fill in the MPEG-2 TS deefaults */ int sendrtp(int fd, struct sockaddr_in *sSockAddr, struct rtpheader *foo, char *data, int len); int getrtp2(int fd, struct rtpheader *rh, char** data, int* lengthData); int sendrtp2(int fd, struct sockaddr_in *sSockAddr, struct rtpheader *foo, char *data, int len); int getrtp(int fd, struct rtpheader *rh, char** data, int* lengthData); int makesocket(char *szAddr,unsigned short port,int TTL,struct sockaddr_in *sSockAddr); int makeclientsocket(char *szAddr,unsigned short port,int TTL,struct sockaddr_in *sSockAddr); #endif