From 79de8cf95340c4d7f5d2b03510256dd301206a4c Mon Sep 17 00:00:00 2001 From: beveloper Date: Fri, 12 Jul 2002 12:33:57 +0000 Subject: [PATCH] get the legacy.media_addon compiling, even though it wont work git-svn-id: file:///srv/svn/repos/haiku/trunk/current@129 a95241bf-73f2-0310-859d-f6bbb57e9c96 --- src/add-ons/media/media-add-ons/legacy/Jamfile | 16 +++++++++------- .../legacy/LegacyAudioConsumer.cpp | 10 +++------- .../media-add-ons/legacy/LegacyAudioDevice.cpp | 18 +++++++++++------- .../legacy/LegacyAudioProducer.cpp | 2 +- .../media/media-add-ons/legacy/driver_io.h | 12 ++++-------- 5 files changed, 28 insertions(+), 30 deletions(-) diff --git a/src/add-ons/media/media-add-ons/legacy/Jamfile b/src/add-ons/media/media-add-ons/legacy/Jamfile index 56ccfdebf3..58158f7721 100644 --- a/src/add-ons/media/media-add-ons/legacy/Jamfile +++ b/src/add-ons/media/media-add-ons/legacy/Jamfile @@ -1,10 +1,12 @@ SubDir OBOS_TOP src add-ons media media-add-ons legacy ; -#Addon legacy.media_addon : media : -# LegacyAudioConsumer.cpp -# LegacyAudioDevice.cpp -# LegacyAudioProducer.cpp -# LegacyMediaAddOn.cpp -#; +UsePrivateHeaders media ; -#LinkSharedOSLibs legacy.media_addon : media ; +Addon legacy.media_addon : media : + LegacyAudioConsumer.cpp + LegacyAudioDevice.cpp + LegacyAudioProducer.cpp + LegacyMediaAddOn.cpp +; + +LinkSharedOSLibs legacy.media_addon : media ; diff --git a/src/add-ons/media/media-add-ons/legacy/LegacyAudioConsumer.cpp b/src/add-ons/media/media-add-ons/legacy/LegacyAudioConsumer.cpp index dc4c700020..8a9589d994 100644 --- a/src/add-ons/media/media-add-ons/legacy/LegacyAudioConsumer.cpp +++ b/src/add-ons/media/media-add-ons/legacy/LegacyAudioConsumer.cpp @@ -14,12 +14,8 @@ #include #include -#include "driver/audio.h" -#include "driver/sound.h" - -#include "LegacyAudioConsumer.h" - #include "driver_io.h" +#include "LegacyAudioConsumer.h" LegacyAudioConsumer::LegacyAudioConsumer( BMediaAddOn *addon, const char *name, int32 internal_id ) @@ -53,7 +49,7 @@ LegacyAudioConsumer::LegacyAudioConsumer( BMediaAddOn *addon, const char *name, return; } - DRIVER_GET_PLAYBACK_PREFERRED_BUF_SIZE( &mBuffer_size, 0 ); + mBuffer_size = 4096; io_buf1 = malloc( 2 * ( sizeof( audio_buffer_header ) + mBuffer_size ) ); @@ -413,7 +409,7 @@ LegacyAudioConsumer::RunThread() } //send buffer - DRIVER_UNSAFE_WRITE( io_buf, 0 ); + DRIVER_WRITE_BUFFER( io_buf, 0 ); //wait for IO if ( acquire_sem( mBuffer_waitIO ) == B_BAD_SEM_ID ) { diff --git a/src/add-ons/media/media-add-ons/legacy/LegacyAudioDevice.cpp b/src/add-ons/media/media-add-ons/legacy/LegacyAudioDevice.cpp index c4029e4bc8..ddb49cf8bc 100644 --- a/src/add-ons/media/media-add-ons/legacy/LegacyAudioDevice.cpp +++ b/src/add-ons/media/media-add-ons/legacy/LegacyAudioDevice.cpp @@ -2,7 +2,7 @@ #include #include -#include "driver/sound.h" +#include "driver_io.h" #include "LegacyAudioDevice.h" @@ -34,8 +34,9 @@ LegacyAudioDevice::LegacyAudioDevice( const char *name, int32 id ) input_flavor.out_formats = &input_format; //get driver capture buffer size - ioctl( fd, SOUND_GET_CAPTURE_PREFERRED_BUF_SIZE, &buffer_size, 0 ); - ioctl( fd, SOUND_SET_CAPTURE_PREFERRED_BUF_SIZE, buffer_size, 0 ); + //ioctl( fd, SOUND_GET_CAPTURE_PREFERRED_BUF_SIZE, &buffer_size, 0 ); + //ioctl( fd, SOUND_SET_CAPTURE_PREFERRED_BUF_SIZE, buffer_size, 0 ); + buffer_size = 4096; input_format.type = B_MEDIA_RAW_AUDIO; input_format.u.raw_audio.frame_rate = 44100.0; @@ -68,8 +69,9 @@ LegacyAudioDevice::LegacyAudioDevice( const char *name, int32 id ) output_flavor.out_formats = NULL; //get driver playback buffer size - ioctl( fd, SOUND_GET_PLAYBACK_PREFERRED_BUF_SIZE, &buffer_size, 0 ); - ioctl( fd, SOUND_SET_PLAYBACK_PREFERRED_BUF_SIZE, buffer_size, 0 ); + //ioctl( fd, SOUND_GET_PLAYBACK_PREFERRED_BUF_SIZE, &buffer_size, 0 ); + //ioctl( fd, SOUND_SET_PLAYBACK_PREFERRED_BUF_SIZE, buffer_size, 0 ); + buffer_size = 4096; output_format.type = B_MEDIA_RAW_AUDIO; output_format.u.raw_audio.frame_rate = 44100.0; @@ -131,12 +133,14 @@ LegacyAudioDevice::Input_Thread() { while ( 1 ) { /* send IO request */ - ioctl( fd, SOUND_UNSAFE_READ, buffer, sizeof( buffer ) ); + // XXX this is wrong, the buffer needs a header + //ioctl( fd, SOUND_READ_BUFFER, buffer, sizeof( buffer ) ); + /* Wait for IO completion: The only acceptable response is B_OK. Everything else means the thread should quit. */ -_ if ( acquire_sem( in_sem ) != B_OK ) { + if ( acquire_sem( in_sem ) != B_OK ) { break; } diff --git a/src/add-ons/media/media-add-ons/legacy/LegacyAudioProducer.cpp b/src/add-ons/media/media-add-ons/legacy/LegacyAudioProducer.cpp index 1fe67ede3e..83ce054eea 100644 --- a/src/add-ons/media/media-add-ons/legacy/LegacyAudioProducer.cpp +++ b/src/add-ons/media/media-add-ons/legacy/LegacyAudioProducer.cpp @@ -14,7 +14,7 @@ #include #include -#include "driver/sound.h" +#include "driver_io.h" //#include "LegacyAudioProducer.h" diff --git a/src/add-ons/media/media-add-ons/legacy/driver_io.h b/src/add-ons/media/media-add-ons/legacy/driver_io.h index 5f44ae7b73..21cf64964c 100644 --- a/src/add-ons/media/media-add-ons/legacy/driver_io.h +++ b/src/add-ons/media/media-add-ons/legacy/driver_io.h @@ -3,19 +3,15 @@ #include #include - -#include "driver/sound.h" +#include +#include "OldSoundDriver.h" #define DRIVER_GET_PARAMS(x...) ioctl( fd, SOUND_GET_PARAMS, x ) #define DRIVER_SET_PARAMS(x...) ioctl( fd, SOUND_SET_PARAMS, x ) #define DRIVER_SET_PLAYBACK_COMPLETION_SEM(x...) ioctl( fd, SOUND_SET_PLAYBACK_COMPLETION_SEM, x ) #define DRIVER_SET_CAPTURE_COMPLETION_SEM(x...) ioctl( fd, SOUND_SET_CAPTURE_COMPLETION_SEM, x ) -#define DRIVER_UNSAFE_WRITE(x...) ioctl( fd, SOUND_UNSAFE_WRITE, x ) -#define DRIVER_UNSAFE_READ(x...) ioctl( fd, SOUND_UNSAFE_READ, x ) +#define DRIVER_WRITE_BUFFER(x...) ioctl( fd, SOUND_WRITE_BUFFER, x ) +#define DRIVER_READ_BUFFER(x...) ioctl( fd, SOUND_READ_BUFFER, x ) #define DRIVER_LOCK_FOR_DMA(x...) ioctl( fd, SOUND_LOCK_FOR_DMA, x ) -#define DRIVER_SET_CAPTURE_PREFERRED_BUF_SIZE(x...) ioctl( fd, SOUND_SET_CAPTURE_PREFERRED_BUF_SIZE, x ) -#define DRIVER_SET_PLAYBACK_PREFERRED_BUF_SIZE(x...) ioctl( fd, SOUND_SET_PLAYBACK_PREFERRED_BUF_SIZE, x ) -#define DRIVER_GET_CAPTURE_PREFERRED_BUF_SIZE(x...) ioctl( fd, SOUND_GET_CAPTURE_PREFERRED_BUF_SIZE, x ) -#define DRIVER_GET_PLAYBACK_PREFERRED_BUF_SIZE(x...) ioctl( fd, SOUND_GET_PLAYBACK_PREFERRED_BUF_SIZE, x ) #endif