diff options
author | deva <deva> | 2008-03-17 09:10:42 +0000 |
---|---|---|
committer | deva <deva> | 2008-03-17 09:10:42 +0000 |
commit | 2f10a73cbbe4333e2a41e87a94eda7fb3d442dc5 (patch) | |
tree | cc023927be890bb4880d6c97ddaf055041c512ea /src | |
parent | 6ae128fc80dd8a32ec6f062c7767ced32e9ba495 (diff) |
Major code changes... FFMPEG introduced. Project splitup into subfolders.
Diffstat (limited to 'src')
-rw-r--r-- | src/Makefile.am | 136 | ||||
-rw-r--r-- | src/dv1394.cc | 202 |
2 files changed, 0 insertions, 338 deletions
diff --git a/src/Makefile.am b/src/Makefile.am deleted file mode 100644 index 42f8b63..0000000 --- a/src/Makefile.am +++ /dev/null @@ -1,136 +0,0 @@ -AM_CXXFLAGS := $(CXXFLAGS) $(EXTRA_CXXFLAGS) -I../include $(QT_CXXFLAGS) \ - -DQT_THREAD_SUPPORT \ - -DPIXMAPS=\"$(datadir)/pixmaps\" \ - -DETC=\"$(prefix)/etc/miav\" - -bin_PROGRAMS = miav - -miav_SOURCES = $(shell if [ $QT_CXXFLAGS ] ; then ../tools/MocList cc; fi ) \ - aa_socket.cc \ - aboutwindow.cc \ - audio_encoder.cc \ - camera.cc \ - cprlisten.cc \ - cprquerydialog.cc \ - daemon.cc \ - decoder.cc \ - dv1394.cc \ - dvfile.cc \ - file.cc \ - frame.cc \ - historywidget.cc \ - img_encoder.cc \ - info.cc \ - info_console.cc \ - info_gui.cc \ - info_simple.cc \ - jpeg_mem_dest.cc \ - libfame_wrapper.cc \ - liblame_wrapper.cc \ - libmplex_wrapper.cc \ - mainwindow.cc \ - messagebox.cc \ - miav.cc \ - miav_daemon.cc \ - miav_config.cc \ - mov_encoder.cc \ - mov_encoder_thread.cc \ - mov_encoder_writer.cc \ - multicast.cc \ - multicast_configuration.cc \ - multiplexer.cc \ - mutex.cc \ - network.cc \ - player.cc \ - server.cc \ - server_status.cc \ - semaphore.cc \ - socket.cc \ - thread.cc \ - threadsafe_queue.cc \ - threadsafe_queue_fifo.cc \ - threadsafe_queue_priority.cc \ - encoder.cc \ - util.cc \ - videowidget.cc \ - yuv_draw.cc - -EXTRA_DIST = \ - aa_socket.h \ - aboutwindow.h \ - audio_encoder.h \ - camera.h \ - cprlisten.h \ - cprquerydialog.h \ - daemon.h \ - debug.h \ - decoder.h \ - dv.h \ - dv1394.h \ - dvfile.h \ - file.h \ - font.h \ - frame.h \ - frame_stream.h \ - historywidget.h \ - img_encoder.h \ - info.h \ - info_console.h \ - info_gui.h \ - info_simple.h \ - iso11172-1.h \ - iso11172-2.h \ - iso11172-3.h \ - jpeg_mem_dest.h \ - libfame_wrapper.h \ - liblame_wrapper.h \ - libmplex_wrapper.h \ - mainwindow.h \ - messagebox.h \ - miav.h \ - miav_daemon.h \ - miav_config.h \ - mov_encoder.h \ - mov_encoder_thread.h \ - mov_encoder_writer.h \ - multicast.h \ - multicast_configuration.h \ - multiplexer.h \ - mutex.h \ - network.h \ - package.h \ - player.h \ - queue.h \ - server.h \ - server_status.h \ - semaphore.h \ - socket.h \ - thread.h \ - threadsafe_queue.h \ - threadsafe_queue_fifo.h \ - threadsafe_queue_priority.h \ - encoder.h \ - util.h \ - videowidget.h \ - yuv_draw.h - -miav_LDADD := $(shell if [ $QT_CXXFLAGS ] ; then ../tools/MocList o; fi ) - -miav_MOC = $(shell if [ $QT_CXXFLAGS ] ; then ../tools/MocList cc; fi ) - -BUILT_SOURCES = $(miav_MOC) - -CLEANFILES = $(BUILT_SOURCES) - -%.moc.cc: %.h - $(QTDIR)/bin/$(MOC) -o $@ $< - -%.h: %.ui - $(QTDIR)/bin/$(UIC) -o $@ $< - -%.cc: %.ui - $(QTDIR)/bin/$(UIC) -o $@ -impl $*.h $< - -# command for creating .res file from .rc on Win32 -%.res: %.rc - rc $< diff --git a/src/dv1394.cc b/src/dv1394.cc deleted file mode 100644 index 26953d9..0000000 --- a/src/dv1394.cc +++ /dev/null @@ -1,202 +0,0 @@ -/* -*- Mode: C++; tab-width: 2; indent-tabs-mode: nil; c-basic-offset: 2 -*- */ -/*************************************************************************** - * dv1394.cc - * - * Tue Apr 19 12:10:34 CEST 2005 - * Copyright 2005 Bent Bisballe - * deva@aasimon.org - ****************************************************************************/ - -/* - * This file is part of MIaV. - * - * MIaV is free software; you can redistribute it and/or modify - * it under the terms of the GNU General Public License as published by - * the Free Software Foundation; either version 2 of the License, or - * (at your option) any later version. - * - * MIaV is distributed in the hope that it will be useful, - * but WITHOUT ANY WARRANTY; without even the implied warranty of - * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the - * GNU General Public License for more details. - * - * You should have received a copy of the GNU General Public License - * along with MIaV; if not, write to the Free Software - * Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA. - */ -#include <config.h> -#include "dv1394.h" - -#ifdef USE_GUI - -#include "dv.h" - - -#include <stdlib.h> -#include <memory.h> -#include <stdio.h> -#include <sys/types.h> -#include <sys/stat.h> -#include <fcntl.h> -#include <errno.h> - -/** - * Callback function for the firewire interface. - */ -static raw1394_iso_disposition raw_reader(raw1394handle_t handle, - unsigned char *data, - unsigned int length, - unsigned char channel, - unsigned char tag, - unsigned char sy, - unsigned int cycle, - unsigned int dropped) -{ - static char *framedata = NULL; - - // Only process packets with reasonable length. - if ( length > 16 ) - { - unsigned char * p = ( unsigned char* ) & data[ 8 ]; - int section_type = p[ 0 ] >> 5; // section type is in bits 5 - 7 - int dif_sequence = p[ 1 ] >> 4; // dif sequence number is in bits 4 - 7 - int dif_block = p[ 2 ]; - - if ( section_type == 0 && dif_sequence == 0 ) - { - if ( framedata != NULL ) - { - raw1394_set_userdata(handle, (void *)framedata); - framedata = NULL; - } - } - - if(!framedata) - { - framedata = (char *)malloc(DVPACKAGE_SIZE); // dvframe.h - if(!framedata) - { - // We're fucked - fprintf(stderr, "Framedata allocation error: %s.\n", strerror( errno ) ); fflush(stderr); - exit(1); - } - } - - switch ( section_type ) - { - case 0: // 1 Header block - // p[3] |= 0x80; // hack to force PAL data - memcpy( framedata + dif_sequence * 150 * 80, p, 480 ); - break; - - case 1: // 2 Subcode blocks - memcpy( framedata + dif_sequence * 150 * 80 + ( 1 + dif_block ) * 80, p, 480 ); - break; - - case 2: // 3 VAUX blocks - memcpy( framedata + dif_sequence * 150 * 80 + ( 3 + dif_block ) * 80, p, 480 ); - break; - - case 3: // 9 Audio blocks interleaved with video - memcpy( framedata + dif_sequence * 150 * 80 + ( 6 + dif_block * 16 ) * 80, p, 480 ); - break; - - case 4: // 135 Video blocks interleaved with audio - memcpy( framedata + dif_sequence * 150 * 80 + ( 7 + ( dif_block / 15 ) + dif_block ) * 80, p, 480 ); - break; - - default: // we can't handle any other data - break; - } - } - - return RAW1394_ISO_OK; -} - -dv1394::dv1394(Info *i, int p, int c) -{ - info = i; - port = p; - channel = c; -} - -dv1394::~dv1394() -{ - // Close firewire connection. - if(handle) { - raw1394_iso_shutdown(handle); - raw1394_destroy_handle(handle); - } -} - -bool dv1394::connect() -{ - int n_ports; - struct raw1394_portinfo pinf[ 16 ]; - - // Get handle to firewire channels - handle = raw1394_new_handle(); - if(!handle) { - info->error("raw1394 - failed to get handle: %s.", strerror( errno ) ); - return false; - } - - // how many adapters are hooked in? - if((n_ports = raw1394_get_port_info(handle, pinf, 16)) < 0 ) { - info->error("raw1394 - failed to get port info: %s.", strerror( errno ) ); - raw1394_destroy_handle(handle); - handle = NULL; - return false; - } - - // Tell raw1394 which host adapter to use - if(raw1394_set_port(handle, port) < 0 ) { - info->error("raw1394 - failed to set port: %s.", strerror( errno ) ); - raw1394_destroy_handle(handle); - handle = NULL; - return false; - } - - int res = raw1394_iso_recv_init(handle, - raw_reader, - 488, - 512, // Wonder what this size should actually be!? - channel, - RAW1394_DMA_PACKET_PER_BUFFER,//RAW1394_DMA_DEFAULT, - -1); - if(res == -1) { - fprintf(stderr, "Error in raw1394_iso_recv_init: %s\n", strerror(errno)); - // exit(1); - } - - raw1394_set_userdata( handle, ( void* ) NULL); - - res = raw1394_iso_recv_start(handle, -1, -1, 0); - - if(res == -1) { - fprintf(stderr, "Error in raw1394_iso_recv_start: %s\n", strerror(errno)); - // exit(1); - } - - return true; -} - -unsigned char *dv1394::readFrame() -{ - // Firewire port not correctly opened. - if(!handle) return NULL; - - unsigned char *ptr; - while(1) { - raw1394_loop_iterate(handle); - ptr = (unsigned char *)raw1394_get_userdata(handle); - if(ptr) { - raw1394_set_userdata(handle, NULL); - break; - } - } - - return ptr; -} - -#endif/*USE_GUI*/ |