Am 15.02.2013 23:08, schrieb Tanu Kaskinen:
On Fri, 2013-02-15 at 13:42 +0100, David Henningsson wrote:
Currently, this function only reads the monitor name, but could
be extended to read e g supported formats as well.
Signed-off-by: David Henningsson <david.hennings...@canonical.com>
---
src/modules/alsa/alsa-util.c | 55 ++++++++++++++++++++++++++++++++++++++++++
src/modules/alsa/alsa-util.h | 7 ++++++
2 files changed, 62 insertions(+)
diff --git a/src/modules/alsa/alsa-util.c b/src/modules/alsa/alsa-util.c
index 114ab27..7cc9492 100644
--- a/src/modules/alsa/alsa-util.c
+++ b/src/modules/alsa/alsa-util.c
@@ -1574,3 +1574,58 @@ snd_mixer_t *pa_alsa_open_mixer_for_pcm(snd_pcm_t *pcm,
char **ctl_device, snd_h
snd_mixer_close(m);
return NULL;
}
+
+bool pa_alsa_get_hdmi_eld(snd_hctl_t *hctl, int device, pa_hdmi_eld_t *eld) {
+
The function could start with a comment containing a link to a
specification of the ELD data format. I didn't manage to find such
document (it doesn't help that I couldn't even figure out what the
acronym stands for), so I can't check whether the parsing code is
correct.
+ int err;
+ snd_ctl_elem_id_t *id;
+ snd_hctl_elem_t *elem;
+ snd_ctl_elem_info_t *info;
+ snd_ctl_elem_value_t *value;
+ unsigned char *elddata;
Usually uint8_t is used as the type for binary data.
+ unsigned int eldsize, mnl;
+
+ pa_assert(eld != NULL);
+
+ /* See if we can find the ELD control */
+ snd_ctl_elem_id_alloca(&id);
This allocates memory, right? It's never freed.
alloca()-related functions allocate on the stack which is automatically
freed when the function returns. The memory needn't be freed manually.
Best regards.
_______________________________________________
pulseaudio-discuss mailing list
pulseaudio-discuss@lists.freedesktop.org
http://lists.freedesktop.org/mailman/listinfo/pulseaudio-discuss