diff --git a/airtime_mvc/application/controllers/PreferenceController.php b/airtime_mvc/application/controllers/PreferenceController.php
index 83bd44748..54a5ef8f4 100644
--- a/airtime_mvc/application/controllers/PreferenceController.php
+++ b/airtime_mvc/application/controllers/PreferenceController.php
@@ -198,6 +198,7 @@ class PreferenceController extends Zend_Controller_Action
}
$values['icecast_vorbis_metadata'] = $form->getValue('icecast_vorbis_metadata');
+ $values['output_sound_device_type'] = $form->getValue('output_sound_device_type');
}
if(!$error){
Application_Model_StreamSetting::setStreamSetting($values);
diff --git a/airtime_mvc/application/forms/StreamSetting.php b/airtime_mvc/application/forms/StreamSetting.php
index c27eea568..afabcd9dd 100644
--- a/airtime_mvc/application/forms/StreamSetting.php
+++ b/airtime_mvc/application/forms/StreamSetting.php
@@ -25,6 +25,17 @@ class Application_Form_StreamSetting extends Zend_Form
$output_sound_device->setAttrib("readonly", true);
}
$this->addElement($output_sound_device);
+
+ $output_types = array("ALSA"=>"ALSA", "AO"=>"AO", "OSS"=>"OSS", "Portaudio"=>"Portaudio", "Pulseaudio"=>"Pulseaudio");
+ $output_type = new Zend_Form_Element_Select('output_sound_device_type');
+ $output_type->setLabel("Output Type")
+ ->setMultiOptions($output_types)
+ ->setValue($setting['output_sound_device_type'])
+ ->setDecorators(array('ViewHelper'));
+ if($setting['output_sound_device'] != "true"){
+ $output_type->setAttrib("disabled", "disabled");
+ }
+ $this->addElement($output_type);
}
$icecast_vorbis_metadata = new Zend_Form_Element_Checkbox('icecast_vorbis_metadata');
@@ -39,7 +50,8 @@ class Application_Form_StreamSetting extends Zend_Form
}
public function isValid($data){
- $this->populate(array("output_sound_device"=>$data['output_sound_device'], "icecast_vorbis_metadata"=>$data['icecast_vorbis_metadata']));
+ $this->populate(array("output_sound_device"=>$data['output_sound_device'], "icecast_vorbis_metadata"=>$data['icecast_vorbis_metadata'],
+ "output_sound_device_type"=>$data['output_sound_device_type']));
return true;
}
}
diff --git a/airtime_mvc/application/forms/StreamSettingSubForm.php b/airtime_mvc/application/forms/StreamSettingSubForm.php
index 96c348775..c004a3bea 100644
--- a/airtime_mvc/application/forms/StreamSettingSubForm.php
+++ b/airtime_mvc/application/forms/StreamSettingSubForm.php
@@ -68,7 +68,6 @@ class Application_Form_StreamSettingSubForm extends Zend_Form_SubForm{
if($disable_all){
$bitrate->setAttrib("disabled", "disabled");
}
- $this->addElement($type);
$this->addElement($bitrate);
$output = new Zend_Form_Element_Select('output');
diff --git a/airtime_mvc/application/views/scripts/preference/stream-setting.phtml b/airtime_mvc/application/views/scripts/preference/stream-setting.phtml
index e2e49af59..9ffabfee2 100644
--- a/airtime_mvc/application/views/scripts/preference/stream-setting.phtml
+++ b/airtime_mvc/application/views/scripts/preference/stream-setting.phtml
@@ -20,6 +20,14 @@
form->getElement('output_sound_device') ?>
+
+
+
+
+ form->getElement('output_sound_device_type') ?>
+