Fixed NukePlugin implementation which was preventing the sound server

from autosuspending. This relates to bug 2844.

Signed-off-by: Michele Calgaro <michele.calgaro@yahoo.it>
pull/1/head
Michele Calgaro 6 years ago
parent 0ff78fd8fa
commit de908386ba

@ -1,5 +1,5 @@
/* /*
this plugin nukes the input data. This plugin nukes the input data and does not play any sound.
Copyright (C) 2000 Martin Vogt Copyright (C) 2000 Martin Vogt
This program is free software; you can redistribute it and/or modify This program is free software; you can redistribute it and/or modify
@ -12,7 +12,6 @@
#include "nukePlugin.h" #include "nukePlugin.h"
#include <iostream> #include <iostream>
using namespace std; using namespace std;
@ -20,12 +19,9 @@ using namespace std;
NukePlugin::NukePlugin() { NukePlugin::NukePlugin() {
} }
NukePlugin::~NukePlugin() { NukePlugin::~NukePlugin() {
} }
void NukePlugin::decoder_loop() { void NukePlugin::decoder_loop() {
if (input == NULL) { if (input == NULL) {
cout << "NukePlugin::decoder_loop input is NULL"<<endl; cout << "NukePlugin::decoder_loop input is NULL"<<endl;
@ -37,10 +33,14 @@ void NukePlugin::decoder_loop() {
} }
char nukeBuffer[8192]; char nukeBuffer[8192];
output->audioInit();
while(runCheck()) { while(runCheck()) {
switch(streamState) { switch(streamState) {
case _STREAM_STATE_FIRST_INIT : case _STREAM_STATE_FIRST_INIT :
output->audioOpen();
output->audioSetup(0,0,0,0,0);
setStreamState(_STREAM_STATE_PLAY);
break;
case _STREAM_STATE_INIT : case _STREAM_STATE_INIT :
case _STREAM_STATE_PLAY : case _STREAM_STATE_PLAY :
input->read(nukeBuffer,8192); input->read(nukeBuffer,8192);
@ -54,6 +54,8 @@ void NukePlugin::decoder_loop() {
cout << "unknown stream state:"<<streamState<<endl; cout << "unknown stream state:"<<streamState<<endl;
} }
} }
output->audioFlush();
output->audioClose();
} }

@ -1,5 +1,5 @@
/* /*
this plugin nukes the input data. This plugin nukes the input data and does not play any sound.
Copyright (C) 2000 Martin Vogt Copyright (C) 2000 Martin Vogt
This program is free software; you can redistribute it and/or modify This program is free software; you can redistribute it and/or modify
@ -28,7 +28,5 @@ class KDE_EXPORT NukePlugin : public DecoderPlugin {
void decoder_loop(); void decoder_loop();
void config(const char* key,const char* value,void* user_data); void config(const char* key,const char* value,void* user_data);
private:
}; };
#endif #endif

Loading…
Cancel
Save