diff --git a/src/shared/bass.c b/src/shared/bass.c
index 76287cf..9ee13bf 100644
--- a/src/shared/bass.c
+++ b/src/shared/bass.c
return false;
}
+
+int bt_bass_set_enc(struct bt_bcast_src *bcast_src, uint8_t enc)
+{
+ struct iovec *iov;
+
+ if (!bcast_src)
+ return -EINVAL;
+
+ if (bcast_src->enc == enc)
+ return 0;
+
+ bcast_src->enc = enc;
+
+ iov = bass_parse_bcast_src(bcast_src);
+ if (!iov)
+ return -ENOMEM;
+
+ bt_bass_notify_all(bcast_src->attr, iov);
+
+ free(iov->iov_base);
+ free(iov);
+
+ return 0;
+}
diff --git a/src/shared/bass.h b/src/shared/bass.h
index b21256e..d256b92 100644
--- a/src/shared/bass.h
+++ b/src/shared/bass.h
int bt_bass_set_bis_sync(struct bt_bcast_src *bcast_src, uint8_t bis);
int bt_bass_clear_bis_sync(struct bt_bcast_src *bcast_src, uint8_t bis);
bool bt_bass_check_bis(struct bt_bcast_src *bcast_src, uint8_t bis);
+int bt_bass_set_enc(struct bt_bcast_src *bcast_src, uint8_t enc);