Coder Social home page Coder Social logo

longjohncoder / displayx Goto Github PK

View Code? Open in Web Editor NEW

This project forked from tsoniq/displayx

0.0 0.0 0.0 1.05 MB

Sample Virtual Display Driver for MacOSX

Home Page: http://tsoniq.com

Objective-C 2.39% Shell 3.55% C++ 82.73% C 0.56% Objective-C++ 10.77%

displayx's Introduction

DisplayX Virtual Display Software

Licence

DisplayX may be used freely for research and academic work.

However, the DisplayX software remains the Copyright of tSoniq. DisplayX may not be used in a commercial application without prior approval.

For more information contact [email protected] or visit http://tsoniq.com.

Description

DisplayX is a virtual display driver for MacOSX, offering the following capabilities:

  • dynamic display configuration and control from the application level
  • high performance data capture via Quartz display streaming
  • supports MacOSX 10.6 or later
  • integrated application installer/uninstaller
  • supports multiple display units (via build option)

The sample application provides a window that shows the content of a virtual display in real-time. To test, run the application and click 'Connect' to connect the virtual display and shows its contents. Once connected, the display resolution and arrangement/mirroring can be configured via System Preferences exactly as for a conventional 2nd physical display.

Please note that by default Quartz will select the highest permitted resolution when the display is connected. If this is too high to read successfully (for example, when trying to use System Preferences to set the display resolution), the resolution can be reset to a default level via the 'Reset Resolution' display command.

The c++ class DisplayXFBInterface provides the application interface to the display driver. Please see the doxygen markup for a description of the available methods. Driver configuration and state structures are defined in DisplayXFBShared.h.

Driver Installation and Removal

The demonstration application includes an example installer and uninstaller. It will prompt to install and restart the computer if it contains a newer driver than is currently installed.

To uninstall both driver and application, select "Uninstall..." from the application menu.

Building and Code-signing

The supplied project requires Xcode 5.1 and can be used on MacOSX 10.8 or later.

The "DXDemo" target in the project will build both the kernel extension and the demonstration application.

For earlier OS support the Quartz DisplayStream API used by the demonstration application should be replaced with alternative code that uses direct access to the framebuffer memory. The driver and installation process support MacOSX 10.6 or later.

The kernel extension can be code-signed by entering the SHA1 hash for the appropriate certificate in DisplayX.xcconfig. Without an appropriate certificate the extension will cause security warnings on installation and any system reboot. The application code-signing can be made in the standard way.

The virtual display count and per-display VRAM can also be configured in DisplayX.xcconfig.

About tSoniq

tSoniq is a Barcelona based consultancy specialising in wireless multimdia, hardware and semiconductor design, together with MacOS and iOS application and driver development.

For more information on what we offer, please visit http://tsoniq.com.

displayx's People

Contributors

tsoniq avatar

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    ๐Ÿ–– Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. ๐Ÿ“Š๐Ÿ“ˆ๐ŸŽ‰

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google โค๏ธ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.