-
- if (o->dev->driver && sr_dev_has_hwcap(o->dev, SR_HWCAP_SAMPLERATE)) {
- ctx->samplerate = *((uint64_t *) o->dev->driver->dev_info_get(
- o->dev->driver_index, SR_DI_CUR_SAMPLERATE));
- if (!((samplerate_s = sr_samplerate_string(ctx->samplerate)))) {
- g_string_free(ctx->header, TRUE);
- g_free(ctx);
- return SR_ERR;
+ g_string_append_printf(header, "$comment\n Acquisition with "
+ "%d/%d channels", ctx->num_enabled_channels, num_channels);
+
+ if (ctx->samplerate == 0) {
+ if (sr_config_get(o->sdi->driver, o->sdi, NULL, SR_CONF_SAMPLERATE,
+ &gvar) == SR_OK) {
+ ctx->samplerate = g_variant_get_uint64(gvar);
+ g_variant_unref(gvar);