Can an app in Google TV Honeycomb access remote functions, such as turning on the Television - google-tv

I've got an idea for a tool I would like to make for Google TV once honeycomb + market lands on it, but it would function worlds better if I could also turn on the TV rather than having to make the user do it themselves
My idea is simple: Schedule your favourite shows, tv turns on, activates the STB then tunes to the proper channel when the show starts.
For reference I would be devving this on a Revue, which I know has the IR blaster and such needed to send the remote signals.

Yes, you can do that and more using the Anymote Protocol. For sample code, take a look at the source of the Google TV Remote app: http://code.google.com/p/google-tv-remote/

If you can control the IR device, then turning on the TV should be a snap. Additionally, some newer TVs have an HDMI functionality that lets you turn it on using it; however, not all TVs support this. All TVs do support infrared, though.
You'd want to look for "System Standby" here:
http://en.wikipedia.org/wiki/Hdmi#CEC
The TV would have to technically be in its "sleep" mode for the device to turn it on, similar to how PC monitors work.

Related

Connect CBPeripheral so that macOS MIDI Studio recognises the connection

This is probably in a book but I don't know which.
I'm trying to connect a BLE MIDI CBPeripheral so that it becomes connected on MIDI Studio, i.e. usable as a MIDI source/sink by all the apps in the system. Although I get the indication that it is connected, it doesn't appear so in MIDI Studio or other apps. I know it's possible because Korg's Bluetooth MIDI Connect is able to do it. But it does seem to open the system's 'Bluetooth Configuration' window, so maybe there's no programmatic way of doing it.
I'm creating a CBCentralManager and keeping a reference to it;
When state is poweredOn I do a scanForPeripherals;
When I get a didDiscover:CBPeripheral, I keep the reference to the CBPeripheral and call central.connect(peripheral...);
I get a didConnect:CBPeripheral and keep my app running, but it doesn't appear as connected to anyone else.
I know 'connected' means connected to my app. But I'd really like to have it available for others.
If this is a purposefully Apple-designed limitation, does anyone know what the purpose is?
If not, is there some CoreMIDI API I can use?
Maybe I am missing something, but the apple guide gives you a hint on how to connect a BLE MIDI device to your Mac:
In the Audio MIDI Setup app on your Mac, choose Window > Show MIDI
Studio.
In the MIDI Studio window, click the Configure Bluetooth button in
the toolbar.
Set your Bluetooth MIDI peripheral in pairing mode.
Select the peripheral in the list of devices, then click Connect.
There is no need for custom coding. It should be possible for multiple apps to use the same BLE device, but the apps need to connect to it. BLE devices usually don't show up in the system settings but this might be different for MIDI devices.
For items connected by USB, it does keep the connection information. Once you use the Bluetooth Configuration screen and select the devices, do they appear on the MIDI Studio screen. You may have to create a new External Device.
I think it's like using a new printer. You have to add the new printer using manual methods. However, you can print to it using code.
I have an Objective-C program in the BRossTools directory of the GitHub repository https://github.com/BradleyRoss/ObjectiveC-Examples . If you run the program, it might be interesting to see what happens when you use "Show Configuration" and "Show Sources/Destinations"

Connect(control) Kodi Between Rooms?

Hello I am trying to work out how to set kodi up on my smart TV. My main problem lies with the TV being on the wall in another room too far away from power sources. She has sky installed and that was situated in the other room and with a HDMI lead fed under to floorboards to the other room by a professional someone or other. I am unable to feed another HDMI lead along the line.
Is there a way I could connect kodi by some other means to the TV? I am not really up on these things.
At the moment I have the kodi box in another room and I have to switch the sky lead to the kodi box to use. Also this means you have to be in the other room.
Can anyone suggest a way for me to get kodi working on the tv and be able to operate it via remote control?
I use Kodi on all of my TVs through an amazon fire stick. Most smart TVs have a USB on the back of the TV that can power the fire stick while its plugged into the HDMI so you wouldn't have to worry about power. I have a Sony bravia that will control the fire stick as long as I am on the input the fire stick is plugged into so no need for an additional remote.
To start off this is the wrong place to ask. This is a Q and A platform for programming questions and coding related questions.
To give you an answer though because I'm not a dick the best way to do it would be using a NAS. You would have two Kodi boxes but one media store.
I'm not sure which device do you use.
In my case, I installed Kodi on my Raspberry Pi(RPi) and TV and RPi are connected with HDMI. My TV is Samsung SmartTV, which supports HDMI-CEC. So, RPI can get RCU Key input from TV.
(HDMI-CEC allows devices connected to your TV through HDMI ports to communicate back and forth with your TV. )
In addition, you can customize keymaps for remotes in GUI by using the community Keymap Editor add-on.
https://kodi.wiki/view/Keymap
Check your TV supports HDMI-CEC, first.

Sony QX1 API support for bulb mode - needed for astrophotography

The Sony QX1 camera would be fantastic for astrophotography - it's a very small and lightweight camera, but has a large sensor. However, for astrophoto the camera must be able to perform a few basic functions. One of these is Bulb Mode. Out of the box the QX1 does not seem to support Bulb Mode.
Is there a chance that Bulb Mode could be used via the API? I can't seem to find it in the docs. Even if it's not an "officially supported" setting, even if it voids the warranty. Is there any hack to enable it, at all? Firmware hack? "Magic" memory locations to overwrite to enable some kind of developer mode? Anything?
Another feature required for AP is a decent level of manual control, but that appears to be somewhat supported via API. At least ISO seems tweakable that way - let me know if I'm wrong.
Are you asking about a long exposure? This camera does not support that feature. Unfortunately if the functionality is not supported by the camera there will not be a way to activate this feature through the API.
Do you know if the USB remotes work? There are two types on the other cameras e.g. A6000. First there is USB tehtering to apps like Capture One on Widnows and Mac or RCCDroid on Android. Other thing to try are wire remotes that too plug in the USB socket but use some extension pins that Sony added on their cameras.
I hope some of those work.
If I have to pick one to try I would go ot the USB tethering as it allows setting shutter speed to Bulb on other cameras e.g. A7ii. Also RCCDroid I believe had free version and simple USB cable with OTG will reveal if tethering works for QX1
PS You can do some rudimentary control from computer using gphoto2 over USB. The big drawback is that when you tether the camera it will not save files to SD card
PSS Sony indicate that QX1 is supporting "multi" mode on the USB hence simple wired remotes will work. Only problem is how to set the shutter speed to bulb and Camera Remote API does not allow that I believe.
PSS Does QX1 work without electronic lens? Other cameras require change of settings to enable shutter without lens

Is it possible to build a smartphone app that stream a screen to a TV, while allowing you to remote control it with the phone itself?

Is it possible to build an Iphone/Ipad app (and Android app) that can do two things: stream an interface and the respective content (particularly video) to a TV and then let me use the phone itself as a remote control for this interface?
Basically the idea is, you don’t need a smart TV anymore or some kind of set-top box or other connected device, just the smart phone which you carry around all the time anyway and which is connected to your local wireless connection. Maybe a docking station with a HDMR connection to the TV, so you are not emptying your battery.
Do you know any comparable implementation or use?
If it is theoretically possible, can you anticipate any performance problems, bottlenecks and how those could be resolved?
If this it’s not possible, which links are missing, what technology would have to be developed first?
Thank you for your thoughts on this!
Jacob
The iPhone/iPad would work for this. It allows you to output to a second screen. You can stream video, audio, whatever. A cool example I saw was using the TV as the primary display and the phone as a controller for a game.
There are two ways to do it. You can use an hdmi output or a vga output. There is also a AirPlay, which will let you do it wirelessly. You would need an AirPlay capable device (like an AppleTV) for it to work though.

Google-TV device not found to pair with Google Anymote

In building the Google Android app for Anymote tv control (I've got some Sony Google TVs to work with), I never actually seem to find the TV when I run it - just getting "No Google TV devices found on ". I've tried it on an actual phone (not just the emulator) and have also tried the TV "connect" pairing button, but it never seems to find anything. Both the phone and the TV are on the same WiFi network. Anybody get this to work?
Does the google-tv-remote app work on your sony google tvs? If so then I would check the source for that app, found here. This should allow you to troubleshoot why your device is not found. The process of discovering devices depends on mDns as found here in the docs. So there are several things to check in regards to making sure multicast packets are allowed on your network/device.
As a fallback I would also allow manual ip entry in case a user wasn't able to discover the device on their network, the google-tv-remote allows for this as well, I would take a look at that source to get an idea of how that applications handles different scenarios.
And as always, if it's not working, provide some examples of how you are trying to do the discovery as you haven't provided any information(source, logs, etc) for anyone to look at.
My experience with the sony google tv is that the multicast packets are reliably sent out shortly after the box is started. Paring at all other times is virtually impossible