Skip to content

behaviour/libcec

 
 

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

This library provides support for the Pulse-Eight USB-CEC adapter.

You can find a list of frequently asked questions on the following page:
                    http://libcec.pulse-eight.com/faq

===============================================================================
                                === Linux ===
===============================================================================

libCEC needs the following dependencies in order to work correctly:
* udev v151 or later
* cdc-acm support compiled into the kernel or available as module
* liblockdev 1.0 or later

To compile libCEC on Linux, you'll need the following dependencies:
* autoconf 2.13 or later
* automake 1.11 or later
* libtool
* gcc 4.2 or later
* liblockdev 1.0 development headers

The following dependencies are recommended. Without them, the adapter can not
be auto-detected.
* pkg-config
* udev development headers v151 or later

To compile, execute the following commands:
# autoreconf -vif
# ./configure
# make
# sudo make install

===============================================================================
                                === OS-X ===
===============================================================================

To compile libCEC on OS-X, you'll need the following dependencies:
* autoconf 2.13 or later
* automake 1.11 or later
* pkg-config
* xcode 3.2.6 or later

To compile, execute the following commands (TODO: please verify):
# autoreconf -vif
# ./configure
# make
# sudo make install

# Note: You may need to copy pkg.m4 to your m4 sources directory

===============================================================================
                              === Windows ===
===============================================================================

To compile libCEC on Windows, you'll need Visual C++ 2010 or Visual Studio 2010
The installer needs the Windows DDK (Driver Development Kit) and Nullsoft's
NSIS.

To compile LibCecSharp on Windows, you'll need Visual C++ 2008 or Visual Studio
2008, because it is compiled against .NET 2.0.

To compile libCEC, follow these instructions:
* open /project/libcec.sln with Visual C++ 2010 or Visual Studio 2010.
* build the project.

To build an installer on Windows:
* download and install NSIS.
* go to /project and execute create-installer.bat to create the installer.
* the installer is stored as /build/libCEC-installer.exe

You will need both Visual Studio 2008 and Visual Studio 2010 to build the
installer from the command line. To build with Visual C++ 2008 and 2010,
you will need to manually build libcec with Visual C++ 2010 and then
build LibCecSharp.sln with Visual Studio 2008. See create-installer.bat
for the required steps.

===============================================================================
                           === Raspberry Pi ===
===============================================================================

We've included a script that builds libCEC with support for the Raspberry Pi
in /project/RPi/build.sh. This script pulls in the latest toolchain and
firmware, builds the necessary dependencies, and finally builds libCEC. The
result will be a softfp build.

To build libCEc on your development machine, follow these instructions:
* run '/project/RPi/build.sh /desired/destination/path/for/binaries'
* run 'make install'

To build libCEC on the Pi itself, just follow the instructions for Linux.
The configure script automatically checks whether the required headers and
libraries can be found.

To specify the path of the Raspberry Pi's development headers, use the
following option for 'configure':
--with-rpi-include-path="/path/to/opt/vc/include"

To specify the path of the Raspberry Pi's libraries, use the following option
for 'configure':
--with-rpi-lib-path="/path/to/libbcm_host.so"

===============================================================================
                            === Debugging / Testing ===
===============================================================================

We provide a test client, named cec-client, to debug the device.
To check whether the device can be detected, execute the following command:
* cec-client -l

"cec-client -h" shows a list of commands and options that are available.

===============================================================================
                              === Developers ===
===============================================================================

We provide a C, C++ and .NET CLR interface to the adapter.

C++ developers:
* the API can be found in /include/cec.h
* an example implementation can be found in /src/testclient/main.cpp

C developers:
* the API can be found in /include/cecc.h

.NET developers:
* add a reference to LibCecSharp.dll
* an example can be found in \src\CecSharpTester\CecSharpClient.cs

===============================================================================
                        === Developers Agreement ===
===============================================================================

If you wish to contribute to this project, you must first sign our contributors
agreement. Please see http://www.pulse-eight.net/contributors for more
information.

About

USB CEC Adapter communication Library

Resources

License

Stars

Watchers

Forks

Packages

No packages published