summaryrefslogtreecommitdiff
Diffstat
-rw-r--r--TvPlay.cpp14
-rw-r--r--TvPlay.h3
-rw-r--r--tv_input.cpp27
3 files changed, 18 insertions, 26 deletions
diff --git a/TvPlay.cpp b/TvPlay.cpp
index 266e264..1d081c3 100644
--- a/TvPlay.cpp
+++ b/TvPlay.cpp
@@ -10,6 +10,7 @@ TvPlay::TvPlay()
mpObserver = NULL;
tvSession = TvClient::connect();
tvSession->setListener(this);
+ mHdmiPorts = getHdmiPorts();
}
TvPlay::~TvPlay()
@@ -120,3 +121,16 @@ int TvPlay::getAllTvDevices(int *devices, int *count)
return 0;
}
+int TvPlay::getHdmiPorts()
+{
+ Parcel p, r;
+ p.writeInt32(GET_HDMI_PORTS);
+ tvSession->processCmd(p, &r);
+
+ return r.readInt32();
+}
+
+int TvPlay::getHdmiPort(tv_source_input_t source_input) {
+ return mHdmiPorts == 0 ? 0 : 0x3 & (mHdmiPorts >> (2* (source_input - SOURCE_HDMI1)));
+}
+