git-svn-id: file:///srv/svn/repos/haiku/trunk/current@3586 a95241bf-73f2-0310-859d-f6bbb57e9c96
This commit is contained in:
beveloper
2003-06-20 21:01:09 +00:00
parent 2e9d660756
commit c6f7aae127
2 changed files with 12 additions and 3 deletions
@@ -1,4 +1,5 @@
#include <MediaNode.h> #include <MediaNode.h>
#include <Buffer.h>
#include "MixerCore.h" #include "MixerCore.h"
#include "MixerInput.h" #include "MixerInput.h"
#include "MixerOutput.h" #include "MixerOutput.h"
@@ -50,7 +51,7 @@ MixerCore::RemoveInput(int32 inputID)
{ {
ASSERT_LOCKED(); ASSERT_LOCKED();
MixerInput *input; MixerInput *input;
for (int i = 0; (input = (MixerInput *)fInputs->ItemAt(i)) != 0; i++) { for (int i = 0; (input = Input(i)) != 0; i++) {
if (input->ID() == inputID) { if (input->ID() == inputID) {
fInputs->RemoveItem(i); fInputs->RemoveItem(i);
delete input; delete input;
@@ -96,6 +97,15 @@ void
MixerCore::BufferReceived(BBuffer *buffer, bigtime_t lateness) MixerCore::BufferReceived(BBuffer *buffer, bigtime_t lateness)
{ {
ASSERT_LOCKED(); ASSERT_LOCKED();
MixerInput *input;
int32 id = buffer->Header()->destination;
for (int i = 0; (input = Input(i)) != 0; i++) {
if (input->ID() == id) {
input->BufferReceived(buffer);
return;
}
}
printf("MixerCore::BufferReceived: received buffer for unknown id %ld\n", id);
} }
void void
@@ -109,7 +119,7 @@ MixerCore::OutputFormatChanged(const media_format *format)
{ {
ASSERT_LOCKED(); ASSERT_LOCKED();
void ChangeMixBufferFormat(float samplerate, int32 frames, int32 channelcount, uint32 channel_mask); // void ChangeMixBufferFormat(float samplerate, int32 frames, int32 channelcount, uint32 channel_mask);
} }
@@ -6,7 +6,6 @@
class MixerInput; class MixerInput;
class MixerOutput; class MixerOutput;
class MixerCore class MixerCore
{ {
public: public: