00001 #ifndef AUDIO1394_H 00002 #define AUDIO1394_H 00003 00004 #include "audiodevice.h" 00005 #include "device1394input.inc" 00006 #include "device1394output.inc" 00007 #include "iec61883input.inc" 00008 #include "iec61883output.inc" 00009 #include "vdevice1394.inc" 00010 00011 00012 00013 #include "libdv.h" 00014 00015 class Audio1394 : public AudioLowLevel 00016 { 00017 public: 00018 Audio1394(AudioDevice *device); 00019 ~Audio1394(); 00020 00021 00022 friend class VDevice1394; 00023 00024 int initialize(); 00025 00026 int open_input(); 00027 int open_output(); 00028 int close_all(); 00029 int read_buffer(char *buffer, int bytes); 00030 int write_buffer(char *buffer, int bytes); 00031 int64_t device_position(); 00032 int flush_device(); 00033 int interrupt_playback(); 00034 00035 00036 private: 00037 Device1394Input *input_thread; 00038 Device1394Output *output_thread; 00039 IEC61883Input *input_iec; 00040 IEC61883Output *output_iec; 00041 int bytes_per_sample; 00042 }; 00043 00044 #endif
1.5.5