• Home
  • History
  • Annotate
  • Raw
  • Download
  • only in /asuswrt-rt-n18u-9.0.0.4.380.2695/release/src-rt-6.x.4708/router/ffmpeg/libavdevice/

Lines Matching refs:dv

37 #include "libavformat/dv.h"
59 static int dv1394_reset(struct dv1394_data *dv)
63 init.channel = dv->channel;
68 if (ioctl(dv->fd, DV1394_INIT, &init) < 0)
71 dv->avail = dv->done = 0;
75 static int dv1394_start(struct dv1394_data *dv)
78 if (ioctl(dv->fd, DV1394_START_RECEIVE, 0) < 0) {
87 struct dv1394_data *dv = context->priv_data;
89 dv->dv_demux = dv_init_demux(context);
90 if (!dv->dv_demux)
94 dv->format = DV1394_PAL;
96 dv->format = DV1394_NTSC;
99 dv->channel = ap->channel;
101 dv->channel = DV1394_DEFAULT_CHANNEL;
104 dv->fd = open(context->filename, O_RDONLY);
105 if (dv->fd < 0) {
110 if (dv1394_reset(dv) < 0) {
115 dv->ring = mmap(NULL, DV1394_PAL_FRAME_SIZE * DV1394_RING_FRAMES,
116 PROT_READ, MAP_PRIVATE, dv->fd, 0);
117 if (dv->ring == MAP_FAILED) {
122 if (dv1394_start(dv) < 0)
128 close(dv->fd);
134 struct dv1394_data *dv = context->priv_data;
137 size = dv_get_packet(dv->dv_demux, pkt);
141 if (!dv->avail) {
145 if (dv->done) {
147 if (ioctl(dv->fd, DV1394_RECEIVE_FRAMES, dv->done) < 0) {
154 dv1394_reset(dv);
155 dv1394_start(dv);
157 dv->done = 0;
162 p.fd = dv->fd;
171 if (ioctl(dv->fd, DV1394_GET_STATUS, &s) < 0) {
185 dv->avail = s.n_clear_frames;
186 dv->index = s.first_clear_frame;
187 dv->done = 0;
193 dv1394_reset(dv);
194 dv1394_start(dv);
199 av_log(context, AV_LOG_DEBUG, "index %d, avail %d, done %d\n", dv->index, dv->avail,
200 dv->done);
203 size = dv_produce_packet(dv->dv_demux, pkt,
204 dv->ring + (dv->index * DV1394_PAL_FRAME_SIZE),
206 dv->index = (dv->index + 1) % DV1394_RING_FRAMES;
207 dv->done++; dv->avail--;
214 struct dv1394_data *dv = context->priv_data;
217 if (ioctl(dv->fd, DV1394_SHUTDOWN, 0) < 0)
221 if (munmap(dv->ring, DV1394_NTSC_FRAME_SIZE * DV1394_RING_FRAMES) < 0)
224 close(dv->fd);
225 av_free(dv->dv_demux);