Capturing Audio Frames From Hdmi In Port
Solution 1:
Short answer: Not possible. The pass-through is completely isolated from android via the Trusted Video Path SOCs. You need to be a certified SOC provider to get anywhere near the signal.
Solution 2:
A HDMI input device should be identified as AUDIO_DEVICE_IN_AUX_DIGITAL
(see audio.h), though I've never come across an Android device with HDMI input so I can't verify that.
Audio routing is handled by the AudioPolicyManager
. There's an AudioPolicyManagerBase
in libhardware_legacy, and then there's typically a platform-specific AudioPolicyManager
implementation which overloads some of the base class' methods. Where this implementation is found depends on the platform. On Qualcomm platforms it's usually found somewhere under hardware/qcom/audio in the source tree.
The AudioPolicyManager
performs high-level routing (like mapping stream types and audio sources to audio devices), and then uses the AudioHardware
implementation and possibly other platform-specific classes to do the low-level routing (manage audio streams at the hardware level, load acoustic tuning parameters, interface with device drivers, etc).
Any HDMI input-related functionality is likely to be vendor specific, so might need the full source code for your Google TV device (i.e. including all patches that the vendor has applied on top of vanilla Android) if you want to be able to look at the code that handles HDMI audio input.
Solution 3:
You will not be able to access either the video or audio input since Google TV implements HDCP. The only way to change that, even on a rooted device, is to change the Google TV code and probably also the SOC HDMI drivers, neither of which have been open sourced by Google.
Post a Comment for "Capturing Audio Frames From Hdmi In Port"