+2004-10-01 Balamurali Viswanathan <balamurali.viswanathan@wipro.com>
+
+ Reviewed by: Ronald S. Bultje <rbultje@ronald.bitfreak.net>
+
+ * sys/sunaudio/gstsunaudio.c: (gst_sunaudiosink_setparams):
+ Solve #152805.
+ * sys/sunaudio/gstsunmixer.c: (gst_sunaudiomixer_set_mute):
+ Solve 152806.
+
2004-10-01 Ronald S. Bultje <rbultje@ronald.bitfreak.net>
* gst-libs/gst/riff/riff-media.c:
{
audio_info_t ainfo;
int ret;
+ int ports;
+
+ ret = ioctl (sunaudiosink->fd, AUDIO_GETINFO, &ainfo);
+ if (ret == -1) {
+ GST_ELEMENT_ERROR (sunaudiosink, RESOURCE, SETTINGS, (NULL), ("%s",
+ strerror (errno)));
+ return FALSE;
+ }
+
+ ports = ainfo.play.port;
+ if (!(ports & AUDIO_SPEAKER) && (ainfo.play.avail_ports & AUDIO_SPEAKER)) {
+ ports = ports | AUDIO_SPEAKER;
+ }
AUDIO_INITINFO (&ainfo);
ainfo.play.channels = sunaudiosink->channels;
ainfo.play.precision = sunaudiosink->width;
ainfo.play.encoding = AUDIO_ENCODING_LINEAR;
- ainfo.play.port = AUDIO_SPEAKER;
+ ainfo.play.port = ports;
ainfo.play.buffer_size = sunaudiosink->buffer_size;
ainfo.output_muted = 0;
{
gchar *given, *wanted;
}
- cases[] =
- {
+ cases[] = {
{
"Vol ", N_("Volume")}
, {
return;
AUDIO_INITINFO (&audioinfo);
- ioctl (sunaudio->mixer_fd, AUDIO_GETINFO, &audioinfo);
if (mute) {
- audioinfo.play.port = audioinfo.play.avail_ports;
audioinfo.output_muted = 1;
} else {
- audioinfo.play.port = 0;
audioinfo.output_muted = 0;
}