Skip to content

sfahadshahzad/Joker

 
 

Repository files navigation

Joker

Build Status Build status Coverage Status Coverity Gratipay ![Gitter](https://badges.gitter.im/Join Chat.svg)

This repository hosts the Joker projet components:

  • Applications
    • Joker: The main project.
    • SonyTool: A Sony 9 pin master/slave
    • LTCTool: A LTC generator/reader.
    • MidiTool: A midi timecode (MTC) generator/reader.
  • Libraries
    • PhTools: Common basic utilities.
    • PhCommonUI: Common user interface component.
    • PhStrip: The strip document model.
    • PhGraphic: Basic library for displaying graphical object and texts.
    • PhGraphicStrip: Specific strip related display routine.
    • PhAudio: Basic library for audio playback/recording.
    • PhVideo: Video playback library.
    • PhSync: Generic sync component.
    • PhSony: Sony 9 pin synchronisation interface.
    • PhLtc: LTC synchronisation interface.
    • PhMidi: Midi synchronisation interface.
  • Various test projects for testing the library modules independently or integrated with each others. It contains also unit testing modules in the specs directory.

Compilation information:

In order to compile the project you will need to follow the instructions depending on your system:

The project uses Qt 5.3.1 available here: http://qt-project.org/downloads


Mac Os:

You need to have Mac Os 10.8+ installed to make Joker work on your computer. We also recommand you the 5.3.x Qt version.

Xcode

You need to have Xcode installed and the command line tools to compile on Mac Os using Qt.

Homebrew

Homebrew is a very powerful package installer. Let's install it:

ruby -e "$(curl -fsSL https://raw.github.com/Homebrew/homebrew/go/install)"

The dependencies:

You can install the dependencies automatically or manually:

Automatic installation

Just run the bootstrap script:

./scripts/bootstrap.sh

Manual install

You can install most of the dependencies via brew:

brew install libav portaudio libltc

brew install ffmpeg --with-fdk-aac --with-ffplay --with-freetype --with-frei0r --with-libass --with-libcaca --with-libvo-aacenc --with-libvorbis --with-libvpx --with-openjpeg --with-openssl --with-opus --with-rtmpdump --with-schroedinger --with-speex --with-speex --with-theora --with-tools

The SDL libraries can be installed with a specific script:

./script/install_sdl.sh

The Leap SDK (optionnal)

Before any download or installation, you must know that the leap have been skipped for the moment.

Available here.

You must then define the following global variable in order to compile with the LEAP:

launchctl setenv LEAP_SDK /path/to/sdk/root

Linux:

Coming soon


Windows:

SDL

Download the following SDL libraries:

Then create the following environment variable pointing to the i686-w64-mingw32 subfolder of each folder:

  • SDL_PATH
  • SDL_TTF_PATH

FFMPEG

There is a Windows build of the FFMPEG library here: http://ffmpeg.zeranoe.com/builds/

Download the shared and dev 32 bits library:

Extract it with 7zip in the folder of your choice and set the following environment variable:

  • FFMPEG_DEV_PATH
  • FFMPEG_SHARED_PATH

Portaudio

Download portaudio precompiled library here: https://github.com/adfernandes/precompiled-portaudio-windows

Extract it with 7zip in the folder of your choice and set the following environment variable:

  • PORTAUDIO_PATH

libltc

Download libltc source code from: https://github.com/x42/libltc/releases/download/v1.1.4/libltc-1.1.4.tar.gz

Extract it with 7zip in the folder of your choice. Create the following environment variable pointing to the src subfolder:

  • LTC_PATH

Innosetup

Innosetup is required to build an installer for the release version of Joker. If you do not want to install Innosetup, choose to build the debug version in Qt Creator. Otherwise, download it from: http://www.jrsoftware.org/isdl.php

Add Innosetup installation folder to the PATH environment variable.

Qt

Download a Qt installer for Windows built against MinGW and for OpenGL here: http://qt-project.org/downloads

(MinGW and OpenGL is the only working combination, because Joker uses C++ constructs that are not available in Visual Studio, and OpenGL objects that are not available in Angle.)

Install to the folder of your choice.

Then use Qt Creator to open and build the Joker project app.pro.

Note that you can set all the required environment variables described above directly in the project settings inside Qt Creator.

Test files:

In order to test Joker and its subproject, you'll want to work on an example file: http://www.phonations.com/tmwtga

It contains:

  • A DetX file containing the english transcription
  • A video file
  • An audio file

Talk:

We love talking about this project! I won't let my phone number here but don't hesitate to join our IRC channel: www.phonations.com#joker

About

Digital rythmo band system for dubbing and postsynchronisation purposes.

Resources

License

Stars

Watchers

Forks

Packages

No packages published

Languages

  • C++ 91.3%
  • QMake 5.8%
  • C 1.1%
  • Shell 1.1%
  • Inno Setup 0.4%
  • Prolog 0.2%
  • Other 0.1%