Initial commit

This commit is contained in:
Vincent Bortone
2013-02-11 02:37:54 -05:00
parent b6872deb38
commit 3871861d4e
2 changed files with 125 additions and 0 deletions
+74
View File
@@ -0,0 +1,74 @@
// Tests for Video.js API
/// <reference path="videojs.d.ts" />
_V_("example_video_1").ready(function(){
var myPlayer:VideoJSPlayer = this;
// EXAMPLE: Start playing the video.
myPlayer.play();
myPlayer.pause();
var isPaused: bool = myPlayer.paused();
var isPlaying: bool = !myPlayer.paused();
myPlayer.src("http://www.example.com/path/to/video.mp4");
myPlayer.src({ type: "video/mp4", src: "http://www.example.com/path/to/video.mp4" });
myPlayer.src([
{ type: "video/mp4", src: "http://www.example.com/path/to/video.mp4" },
{ type: "video/webm", src: "http://www.example.com/path/to/video.webm" },
{ type: "video/ogg", src: "http://www.example.com/path/to/video.ogv" }
]);
var whereYouAt: number = myPlayer.currentTime();
myPlayer.currentTime(120); // 2 minutes into the video
var howLongIsThis: number = myPlayer.duration();
var bufferedTimeRange: TimeRanges = myPlayer.buffered();
// Number of different ranges of time have been buffered. Usually 1.
var numberOfRanges: number = bufferedTimeRange.length;
// Time in seconds when the first range starts. Usually 0.
var firstRangeStart: number = bufferedTimeRange.start(0);
// Time in seconds when the first range ends
var firstRangeEnd: number = bufferedTimeRange.end(0);
// Length in seconds of the first time range
var firstRangeLength: number = firstRangeEnd - firstRangeStart;
var howMuchIsDownloaded: number = myPlayer.bufferedPercent();
var howLoudIsIt: number = myPlayer.volume();
myPlayer.volume(0.5); // Set volume to half
var howWideIsIt: number = myPlayer.width();
myPlayer.width(640);
var howTallIsIt: number = myPlayer.height();
myPlayer.height(480);
myPlayer.size(640,480);
myPlayer.requestFullScreen();
myPlayer.cancelFullScreen();
var myFunc = function(){
var myPlayer: VideoJSPlayer = this;
// Do something when the event is fired
};
myPlayer.addEvent("volumechange", myFunc);
myPlayer.removeEvent("volumechange", myFunc);
});
+51
View File
@@ -0,0 +1,51 @@
// Type definitions for Video.js
// The Video.js API allows you to interact with the video through Javascript, whether the browser is playing the video through HTML5 video, Flash, or any other supported playback technologies.
// Project: https://github.com/zencoder/video-js
// Definitions by: Vincent Bortone <https://github.com/vbortone/>
// Definitions: https://github.com/borisyankov/DefinitelyTyped
interface VideoJSOptions {
techOrder?: string[];
html5?: Object;
width?: number;
height?: number;
defaultVolume?: number;
children?: Object;
}
interface VideoJSSource {
type: string;
src: string;
}
interface VideoJSPlayer {
play(): VideoJSPlayer;
pause(): VideoJSPlayer;
paused(): bool;
src(newSource: string): VideoJSPlayer;
src(newSource: VideoJSSource): VideoJSPlayer;
src(newSource: VideoJSSource[]): VideoJSPlayer;
currentTime(seconds: number): VideoJSPlayer;
currentTime(): number;
duration(): number;
buffered(): TimeRanges;
bufferedPercent(): number;
volume(percentAsDecimal: number): TimeRanges;
volume(): number;
width(): number;
width(pixels: number): VideoJSPlayer;
height(): number;
height(pixels: number): VideoJSPlayer;
size(width: number, height: number): VideoJSPlayer;
requestFullScreen(): VideoJSPlayer;
cancelFullScreen(): VideoJSPlayer;
ready(callback: () => void ): void;
addEvent(eventName: string, callback: () => void ): void;
removeEvent(eventName: string, callback: () => void ): void;
}
interface VideoJSStatic {
(id: any, options?: VideoJSOptions, ready?: () => void): VideoJSPlayer;
}
declare var _V_:VideoJSStatic;