← Back to team overview

desktop-packages team mailing list archive

[Bug 1525776] [NEW] libao pulse plugin does not ignore unsupported options as claimed

 

Public bug reported:

In the documentation for ao_open_live():
https://xiph.org/ao/doc/ao_open_live.html
"Unsupported options are ignored."

However, the pulse plugin does not ignore unsupported options:

int ao_plugin_set_option(ao_device *device, const char *key, const char *value) {
  ao_pulse_internal *internal;
  assert(device && device->internal && key && value);
  internal = (ao_pulse_internal *) device->internal;

  if (!strcmp(key, "server")) {
    free(internal->server);
    internal->server = strdup(value);
  } else if (!strcmp(key, "sink") || !strcmp(key, "dev") || !strcmp(key, "id")) {
    free(internal->sink);
    internal->sink = strdup(value);
  } else
    return 0;
[..]
}

Passing the "buffer_time" option which is needed because of this bug: https://bugzilla.redhat.com/show_bug.cgi?id=1193688
causes libao pulse to fail initialization on Ubuntu contrary to the documentation.

** Affects: libao (Ubuntu)
     Importance: Undecided
         Status: New

** Summary changed:

- ao_open_live() does not ignore unsupported options as claimed
+ libao pulse plugin does not ignore unsupported options as claimed

-- 
You received this bug notification because you are a member of Desktop
Packages, which is subscribed to libao in Ubuntu.
https://bugs.launchpad.net/bugs/1525776

Title:
  libao pulse plugin does not ignore unsupported options as claimed

Status in libao package in Ubuntu:
  New

Bug description:
  In the documentation for ao_open_live():
  https://xiph.org/ao/doc/ao_open_live.html
  "Unsupported options are ignored."

  However, the pulse plugin does not ignore unsupported options:

  int ao_plugin_set_option(ao_device *device, const char *key, const char *value) {
    ao_pulse_internal *internal;
    assert(device && device->internal && key && value);
    internal = (ao_pulse_internal *) device->internal;

    if (!strcmp(key, "server")) {
      free(internal->server);
      internal->server = strdup(value);
    } else if (!strcmp(key, "sink") || !strcmp(key, "dev") || !strcmp(key, "id")) {
      free(internal->sink);
      internal->sink = strdup(value);
    } else
      return 0;
  [..]
  }

  Passing the "buffer_time" option which is needed because of this bug: https://bugzilla.redhat.com/show_bug.cgi?id=1193688
  causes libao pulse to fail initialization on Ubuntu contrary to the documentation.

To manage notifications about this bug go to:
https://bugs.launchpad.net/ubuntu/+source/libao/+bug/1525776/+subscriptions