[pulseaudio-discuss] [WIP] Passthrough support
pl bossart
bossart.nospam at gmail.com
Sat Mar 12 13:08:12 PST 2011
Hi Arun,
I looked at the passthrough branch. Looks pretty good. I wrote down some notes:
gstaudioiec61937:
- need to check that frame is valid and synchronized on AC3 header
before pushing iec payload
- no code for mp3 and dts?
pulsesink:
- do we really need two steps for payload and commit? Make
things complicated and creates memory copies
- commit needs to prevent toy resampler (maybe this means the sink
cannot work iwth a live source since no adjustment is possible.
- spec.latency_time = GST_BASE_AUDIO_SINK (psink)->latency_time;
if (!gst_ring_buffer_parse_caps (&spec, caps))
goto out;
Does this work? spec is not initialized?
- change of routing?
- formats
/* FIXME: Eventually, we want the list of supported formats to be set
+ * as properties by the GUI based on what the user says is supported by
+ * the receiver */
+ /* FIXME: How do we figure out supported rates? :( */
+ unsigned int i, rates[] = { 32000, 44100, 48000 };
For HDMI and SPDIF, 32,44.1 and 48 are mandatory. I think you can
query the alsa layer
to give a range of supported frequencies since this is known in
the driver (either hard-coded or obtained with EDID/eld). I remember
seeing some ALSA patches on this for the NVIDIA cards.
sink.c
- how do we notify client that volume is disabled?
I wasn't too clear on the BT support. You mentioned that it was a
different branch and that it stilll nneds my patches to gst-ugly. We'd
need to have the payloader code in gsraudioiec61937 instead? I am also
not sure how we handle the transition from A2DP w/ SBC to A2DP w/ MP3.
In the current code for iec958, there's no need to reconfigure the
link.
Last, I had 3 conflicts with git master that I had to solve by hand.
Thanks
-Pierre
More information about the pulseaudio-discuss
mailing list