Coder Social home page Coder Social logo

mindbrix / ios-video-wall Goto Github PK

View Code? Open in Web Editor NEW

This project forked from madefire/ios-video-wall

0.0 3.0 1.0 254 KB

Client, server, and support files for building a video wall with iPads.

License: BSD 3-Clause "New" or "Revised" License

ios-video-wall's Introduction

The code found here was used to power an iPad Video Wall for the Madefire booth
at Comic-Con San Diego. More information can be found in the following blog
post:
    http://engineering.madefire.com/2012/07/12/ipad-video-wall-for-comic-con/

The code is provided as-is. It's not pretty, what would you expect form a day
and a half of hacking around to get it to work, but it got the job done.
Patches/improvements welcomed. 

This code is licensed under the BSD license, see LICENSE in the same directory
as this README

REQUIREMENTS:

avconv is required to cut up videos and ImageMagick's convert is required to
cut up images.

USAGE:

Cutting up Videos:

Cut up your videos using cutup.py

    ./cutup.py --rows=3 --cols=7 input_video.mov \
        vid-wall/vidwall/videos.bundle/out

input_video.mov will be cut up in to 3 rows of 7 cols and the resulting videos
will be in the directory vid-wall/vidwall/videos.bundle with the prefix out,
numbered out-00.mov through out out-26.mov

Server:

To run the manager server you must first edit manager.py and provide it with
the names and durations of your videos. In the case of the above example the
name would be 'out'.

App:

To run the iOS app you must first provide it with videos. They should be cut up
and named according to the pattern in the cutup.py section. They should be
played in to a bundle in the vid-wall/vidwall direction named vidoes.bundle.

Once the app is running on a device or simulator you must enter the ip address
of the server and then select the position of the device in the grid provided.
It will then attempt to connect to the manager server and will join in when the
next video is prepared and played.

Effort has been made to make the system robust to failure and aggresive in
reconnecting. Over 4 and 1/2 days of running at Comic-Con we only had to
restart a device once or twice and the manager ran 24 hours a day.

Currently the app has a 7x3 grid hard-coded in, but it should be possible to
make the grid dynamic, or at least a compile time setting with reasonable
effort, patches welcome :)

Copyright (c) 2012, Madefire Inc.
All rights reserved.

ios-video-wall's People

Contributors

ross avatar

Watchers

 avatar  avatar  avatar

Forkers

ramurc

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.