Click here to Skip to main content
15,923,051 members
Please Sign up or sign in to vote.
4.60/5 (12 votes)
See more:
Hi,
I would like to control my Samsung TV from my computer (Windows 7). I´ve got it connected via HDMI (my videocard has direct HDMI-out). On the computer, there´s running a C# program, that plays movies from the computer to TV and automatically switches sound and video output to TV. Now I want to improve the program and I want to automatically turn the TV on and switch TV video input from aerial to HDMI-in, when user press the button "Play movie".

The TV supports Samsung Anynet+ - standard, that supports one remote control for more Samsung devices (You just control your TV, DVD, camera and whatever via one remote control). Maybe it would be useful when the computer would looks like Samsung device - it is given by software that is running on the computer. If it would be some Samsung software, TV would thinks that PC is Samsung device and I would maybe use some anynet+ messages to control my TV. This is just one my suggestion. I would prefer winAPI of course, but I´m not sure if it´s exists.

I could maybe try to send a specific bits to HDMI output...

Please, does anybody know about friendlier solutions than these two suggestions?

Thank you!
Posted
Comments
Sergey Alexandrovich Kryukov 18-Nov-11 14:04pm    
Interesting problem, my 5.
--SA
Addy Tas 22-Nov-11 18:02pm    
I thought this to be really interesting; especially as i'm builing a HTPC. As far as i can tell with the reading i've done so far the answer is: you can't... Or rather not directly. What you are looking for is getting access to the HDMI CEC bus. As far as i could tell the PC HDMI interface does not support direct access to the bus (maybe there are linux drivers that can). There are devices or DIY schemetics that split the HDMI to USB. Using the USB you can send or receive the CEC commands.

I hope someone has a way to directly access the bus from the PC's HDMI.

Regards Addy
El_Codero 5-Mar-12 18:28pm    
Nice Question, Looking forward of possiblities (if possible).
[no name] 21-Nov-12 8:41am    
My 5 too...
Peter Feller 19-May-13 10:47am    
Could you please post an article or tutorial how to play videos on a Samsung TV via C#?
Or could you share your experience?

 
Share this answer
 
Comments
El_Codero 12-Dec-14 12:34pm    
thx for this link, interesting lib
stumbled over your post again (I commented it two years ago).

I have not tried samsung api yet and which TV's are supported (Yours?)
but it looks interesting and meanwhile there are dozens of options to control your TV.

http://developer.samsung.com/samsung-web-api/technical-docs/TV-Control[^]
 
Share this answer
 
Have a look at this page http://wiki.kwikwai.com/index.php?title=Using_C#What_you_need

Or if you want other alternatives see the following
I'm also very interested in this at present link below
https://www.facebook.com/mark.harrington.142892

Hope some of this assist you

Mark
 
Share this answer
 
Hi You will find other articles on this here This gentleman wrote a client side version of this using python Interesting article this as well
http://forum.arduino.cc/index.php?topic=22327.120

Should be quite allot of info for you now I'm just as keen as you are to find out all about this
 
Share this answer
 
Programmatically controlling the HDMI connected TV from a PC requires the TV to support HDMI CEC (Consumer Electronics Control), which you say your Samsung does, but it also requires that your PC hardware supports it.

CEC uses one signal wire on the HDMI cable (plus a ground) for very low speed (by computer standards) signaling to or from (on the same wire) the TV. That wire may or may not be connected or used on your PC video interface. I've found it to be hard to get information on whether or how various PC manufacturers support the CEC connection.
 
Share this answer
 

This content, along with any associated source code and files, is licensed under The Code Project Open License (CPOL)



CodeProject, 20 Bay Street, 11th Floor Toronto, Ontario, Canada M5J 2N8 +1 (416) 849-8900