Skip to content
Open
Show file tree
Hide file tree
Changes from all commits
Commits
Show all changes
193 commits
Select commit Hold shift + click to select a range
d9eeb67
Merge pull request #2 from afewyards/master
Jul 29, 2013
81c08ba
Merge pull request #2 from zonakusu/master
Jul 31, 2013
1a72a72
filter tests
Jul 31, 2013
2052ac7
refactor and added some basic modules
Jul 31, 2013
ac6793f
Merge pull request #3 from afewyards/master
Aug 2, 2013
bad2cef
end of day
Aug 2, 2013
8bca222
Merge branch 'master' of https://github.com/zonakusu/projecttouch
Aug 5, 2013
66d7ff5
removed idea
Aug 5, 2013
78e7598
added layers
Aug 5, 2013
cf41d2a
fixed preview
Aug 7, 2013
4e2241d
added gitignore
Aug 7, 2013
0097653
gitignore
Aug 7, 2013
a106950
fixed stylesheet
Aug 7, 2013
5cacdaf
Merge pull request #4 from afewyards/master
Aug 7, 2013
74d8496
Added composition.js, which nests the player.js canvas. Adjusted dyna…
micros123 Aug 7, 2013
057b931
Fixed scrolling media list height and disabled test background colors…
micros123 Aug 7, 2013
3f16a12
Merge pull request #5 from micros123/master
Aug 8, 2013
9986a16
refactor of the layer model
Aug 8, 2013
f7f2f24
fix
Aug 8, 2013
9f14ae8
layer / trim fix
Aug 8, 2013
d486106
Merge pull request #6 from afewyards/master
Aug 8, 2013
d774fb8
changed to sass
Aug 8, 2013
465909f
Merge pull request #7 from afewyards/master
Aug 8, 2013
77090d1
panel in seperate file
Aug 8, 2013
b470adc
Merge pull request #8 from afewyards/master
Aug 8, 2013
2022db4
Update readme.md
Aug 9, 2013
a415a13
Renamed media.js to mediaLibraryItem.js and using inline template to …
micros123 Aug 11, 2013
4db8bab
Improved html structure and styling for mediaLibraryItem
micros123 Aug 11, 2013
0a10be0
Changed the pick-file button to a square with a plus, according to de…
micros123 Aug 11, 2013
d95a62c
Renamed all panel views to *Panel and moved them into 'views/panels',…
micros123 Aug 11, 2013
0799063
Moved panel related sass files into a styles/panels folder, to match …
micros123 Aug 11, 2013
a8a4713
Fixed last dependencies on old folder structure and added play button…
micros123 Aug 11, 2013
86c1604
Proof of concept for playing mediaItems inside the mediaLibrary
micros123 Aug 11, 2013
6cec718
Merge pull request #11 from micros123/master
Aug 12, 2013
4bcec88
latest
Aug 12, 2013
c0a8a40
merge
Aug 12, 2013
17cc8f5
refactor
Aug 12, 2013
8cc440a
refactor
Aug 12, 2013
cdf7618
refactir
Aug 12, 2013
372e9e1
deleted css
Aug 12, 2013
88f41d5
sass config
Aug 12, 2013
545e4fe
Merge pull request #12 from afewyards/master
Aug 12, 2013
b8964d7
config.re fix
Aug 12, 2013
bb11e57
Merge pull request #13 from afewyards/master
Aug 12, 2013
b77097f
Delete .txt
Aug 12, 2013
792aa42
Delete .DS_Store
Aug 12, 2013
96631ef
added sprites
Aug 12, 2013
5c06987
Merge pull request #14 from afewyards/master
Aug 12, 2013
2966887
status check fix
Aug 12, 2013
befef36
Merge pull request #15 from afewyards/master
Aug 12, 2013
4ffa356
fixed stop sync
Aug 12, 2013
4d054a0
Merge pull request #16 from afewyards/master
Aug 12, 2013
7d1db74
added panels to the index.html
Aug 13, 2013
af17653
Merge pull request #17 from afewyards/master
Aug 13, 2013
5acea4e
fixed log
Aug 13, 2013
8b964e8
duplicate layer poc
Aug 13, 2013
760c3d9
Merge pull request #18 from afewyards/master
Aug 13, 2013
23b8703
added scale and rotate to layer model
Aug 13, 2013
ea4fe47
Merge pull request #19 from afewyards/master
Aug 13, 2013
ee4b360
altered the player rendering to improve performance
Aug 14, 2013
ff967fa
Merge pull request #20 from afewyards/master
Aug 14, 2013
bf0e772
test with fading
Aug 14, 2013
bc53b9c
fixes
Sep 18, 2013
73dd75c
Merge branch 'master' of https://github.com/projecttouch/projecttouch
Sep 18, 2013
0439199
bam
Sep 19, 2013
19e1543
added timeline zoom
Sep 19, 2013
6908bac
fixed timeline zoom > 25
Sep 19, 2013
0eb2f46
add to gitignore
rupertcda Sep 19, 2013
5dd3aab
Merge branch 'master' of github.com:projecttouch/projecttouch
rupertcda Sep 19, 2013
9e0277e
add effects to side bar
rupertcda Sep 20, 2013
b645aa2
give some feedback on effects
rupertcda Sep 20, 2013
9e88c7e
fixed layout
Sep 20, 2013
e8af745
Merge branch 'master' of https://github.com/projecttouch/projecttouch
Sep 20, 2013
3bf89dc
Allow switching off of filters
rupertcda Sep 20, 2013
aff8290
Merge branch 'master' of github.com:projecttouch/projecttouch
rupertcda Sep 20, 2013
2a93051
Add ability to turn off filters
rupertcda Sep 20, 2013
ca460b0
begin edit video page
rupertcda Sep 23, 2013
12ad03c
remove jquery ui
rupertcda Sep 26, 2013
3b16a1f
improve slider
rupertcda Sep 26, 2013
3882280
css tweak
rupertcda Sep 26, 2013
962cf1d
remove jquery ui for levels
rupertcda Sep 27, 2013
7db1178
log different levels on change
rupertcda Sep 27, 2013
10519d6
latest
Sep 30, 2013
390e17c
Merge branch 'master' of https://github.com/projecttouch/projecttouch
Sep 30, 2013
0a774f1
add back button
rupertrutland Sep 30, 2013
01c9827
merge
Sep 30, 2013
a387b72
select layer to edit
Sep 30, 2013
d2bed67
begin to add image effect feedback to effects panel
rupertrutland Sep 30, 2013
c51967b
Merge branch 'master' of github.com:projecttouch/projecttouch
rupertrutland Sep 30, 2013
41a8adf
changes
Oct 1, 2013
4c5dabb
Merge branch 'master' of https://github.com/projecttouch/projecttouch
Oct 1, 2013
a4553bf
debug image effects
rupertrutland Oct 1, 2013
c8069a8
fix canvas effects on thumbs
rupertrutland Oct 1, 2013
82a5f52
start filters
Oct 1, 2013
728d62a
Merge branch 'master' of https://github.com/projecttouch/projecttouch
Oct 1, 2013
29d3247
update layer attributes on change of levels
rupertrutland Oct 1, 2013
d347ecd
filters adjusted
Oct 1, 2013
d3f7ad9
edit level stuff
rupertrutland Oct 1, 2013
e11cfb9
follow through level changes in model
rupertrutland Oct 1, 2013
9d8b97f
add scrubber to level edit
rupertrutland Oct 1, 2013
0261ab6
add scrubber to level editor
rupertrutland Oct 1, 2013
98bb9bd
quick fix css
rupertrutland Oct 1, 2013
380882c
fix up levels
rupertrutland Oct 1, 2013
df2112a
updated .gitignore for intellij
PaulTondeur Oct 1, 2013
2bef98a
Instead of requiring both backbone and underscore for most libraries,…
PaulTondeur Oct 1, 2013
8cf6d3f
filter
Oct 2, 2013
9d511bf
merge
Oct 2, 2013
4137827
integrate
Oct 2, 2013
b291acd
refactor
rupertrutland Oct 2, 2013
6567143
refactor
rupertrutland Oct 2, 2013
3432344
quick fix
rupertrutland Oct 2, 2013
85b6be5
quick fix css
rupertrutland Oct 2, 2013
d400386
Merge pull request #23 from PaulTondeur/no-redundant-imports
Oct 2, 2013
67876a9
quick fix css and logging
rupertrutland Oct 2, 2013
a70eb82
Merge branch 'master' of github.com:projecttouch/projecttouch
rupertrutland Oct 7, 2013
c5661dc
added options to layers
Oct 7, 2013
490be0c
merge
Oct 7, 2013
352505d
fixed edit.js
Oct 7, 2013
0119ca2
merge
rupertrutland Oct 7, 2013
f25a8b5
end of day
Oct 7, 2013
1461179
begin effect layer stuff
rupertrutland Oct 8, 2013
e53bdab
listen for effects layes in timeline
rupertrutland Oct 8, 2013
ab0d73e
fix up effects section
rupertrutland Oct 8, 2013
03b1796
fix removal of effects
rupertrutland Oct 8, 2013
0188f00
refactor
rupertrutland Oct 8, 2013
7f1754a
merge
Oct 8, 2013
384eae8
refactor for js lint
rupertrutland Oct 8, 2013
f78e645
refactor
rupertrutland Oct 8, 2013
d3012c1
remove unused view
rupertrutland Oct 8, 2013
6d4ccf6
scrub
Oct 8, 2013
2a2ae40
merge
Oct 8, 2013
830aa08
fix retina effect icons
rupertrutland Oct 8, 2013
5d59706
refactor
rupertrutland Oct 8, 2013
f4c36a8
scrubbing basics
afewyards Oct 9, 2013
2223697
merge
afewyards Oct 9, 2013
fe71791
show/hide panel stuff
rupertrutland Oct 9, 2013
ddd16b3
Merge branch 'master' of github.com:projecttouch/projecttouch
rupertrutland Oct 9, 2013
c461127
aff footer hide in
rupertrutland Oct 9, 2013
33400f5
improve title on hide panels
rupertrutland Oct 9, 2013
88d959c
scrubbing improvements
afewyards Oct 9, 2013
b2807ce
Merge branch 'master' of https://github.com/projecttouch/projecttouch
afewyards Oct 9, 2013
b5e89e2
small styling fix in edit mode
rupertrutland Oct 9, 2013
90d274a
Merge branch 'master' of github.com:projecttouch/projecttouch
rupertrutland Oct 9, 2013
d11cdf9
begin touch events for scale and roation
rupertrutland Oct 9, 2013
1fca792
refactoring code
afewyards Oct 10, 2013
660acff
Merge branch 'master' of https://github.com/projecttouch/projecttouch
afewyards Oct 10, 2013
857ab3a
fixed effects panel
afewyards Oct 10, 2013
2714bbd
effects layer add check
afewyards Oct 10, 2013
b3d0ddc
refactoring
afewyards Oct 10, 2013
6a0bd12
begin pinch scale
rupertrutland Oct 10, 2013
d7119ee
merge
rupertrutland Oct 10, 2013
56b67ee
pinch stuff
rupertrutland Oct 10, 2013
995f315
quick fix
rupertrutland Oct 10, 2013
34c7a1e
befgin rotation
rupertrutland Oct 10, 2013
5ecec12
design fixes
afewyards Oct 10, 2013
8eccfec
merge
afewyards Oct 10, 2013
51dddd1
fix hide fullscreen video
rupertrutland Oct 10, 2013
494a9cd
show edit mode after fullscreen
rupertrutland Oct 10, 2013
df14bce
minor stuff
rupertrutland Oct 10, 2013
e41d505
add css scroll
rupertrutland Oct 10, 2013
152e815
bug fixes
afewyards Oct 11, 2013
16d2695
Merge branch 'master' of https://github.com/projecttouch/projecttouch
afewyards Oct 11, 2013
af2d13f
added multiple design fixes
afewyards Oct 11, 2013
22ca5de
removed tap for play toggle
afewyards Oct 14, 2013
5c4b54c
fullscreen adjusts better
afewyards Oct 15, 2013
2db0db2
added commentery and headers
afewyards Oct 15, 2013
9d06b3d
refactoring
afewyards Oct 15, 2013
2241c21
fix
afewyards Oct 15, 2013
29aebb6
begin to normalize rotation
rupertrutland Oct 15, 2013
1023b03
merge
rupertrutland Oct 15, 2013
5eb7291
fixes
afewyards Oct 15, 2013
92e3570
remove debug
rupertrutland Oct 15, 2013
9a63180
merge
afewyards Oct 15, 2013
9a9fb4c
Merge branch 'master' of https://github.com/projecttouch/projecttouch
afewyards Oct 15, 2013
55918bd
player tidy-up
afewyards Oct 15, 2013
973f41c
move roation stuff to edit-level view
rupertrutland Oct 15, 2013
40e0f6f
merge
rupertrutland Oct 15, 2013
e959fd4
fixes
afewyards Oct 15, 2013
338137e
improve rotation
rupertrutland Oct 15, 2013
e7633e2
audio fix
afewyards Oct 15, 2013
66a6048
Merge branch 'master' of https://github.com/projecttouch/projecttouch
afewyards Oct 15, 2013
2fe404e
fix scale
rupertrutland Oct 15, 2013
987afc8
improve scale
rupertrutland Oct 15, 2013
4a99f66
remove debug
rupertrutland Oct 15, 2013
18a017e
rotation
afewyards Oct 15, 2013
9ad6ef3
add model update in view
rupertrutland Oct 15, 2013
305060c
merge
afewyards Oct 15, 2013
e70aac0
Merge branch 'master' of https://github.com/projecttouch/projecttouch
afewyards Oct 15, 2013
1d6202a
g
afewyards Oct 15, 2013
9723041
Update readme.md
afewyards Oct 15, 2013
f73df42
Update readme.md
afewyards Oct 15, 2013
4740d85
Update readme.md
afewyards Oct 15, 2013
e6457b0
Update readme.md
afewyards Oct 15, 2013
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
Binary file removed .DS_Store
Binary file not shown.
27 changes: 27 additions & 0 deletions .gitignore
Original file line number Diff line number Diff line change
@@ -0,0 +1,27 @@
.sass-cache
styles/*.css

# OS generated files #
######################
.DS_Store
.DS_Store?
._*
.Spotlight-V100
.Trashes
Icon?
ehthumbs.db
Thumbs.db

# FRAMEWORKS #
.zfproject.xml

# IDE #
######################
.idea/
netbeans/
nbproject/
.komodoproject/
*.iml

#Node JS#
node_modules/
1 change: 0 additions & 1 deletion .idea/.name

This file was deleted.

9 changes: 0 additions & 9 deletions .idea/cssxfire.xml

This file was deleted.

5 changes: 0 additions & 5 deletions .idea/encodings.xml

This file was deleted.

5 changes: 0 additions & 5 deletions .idea/misc.xml

This file was deleted.

9 changes: 0 additions & 9 deletions .idea/modules.xml

This file was deleted.

9 changes: 0 additions & 9 deletions .idea/projecttouch.iml

This file was deleted.

5 changes: 0 additions & 5 deletions .idea/scopes/scope_settings.xml

This file was deleted.

7 changes: 0 additions & 7 deletions .idea/vcs.xml

This file was deleted.

452 changes: 0 additions & 452 deletions .idea/workspace.xml

This file was deleted.

Binary file removed 1clip.mp4
Binary file not shown.
Binary file removed app/.DS_Store
Binary file not shown.
Empty file removed app/.txt
Empty file.
44 changes: 25 additions & 19 deletions app/collections/library.js
Original file line number Diff line number Diff line change
@@ -1,33 +1,39 @@
/**
* Microsoft Video Editor
*
* @namespace collections
* @name media
* @author Thierry M.P. Kleist <thierry@codedazur.nl>
* @date: 4/24/13
*/
/*global views, console, $, $$, TweenLite, TweenMax, TimelineLite, TimelineMax, Ease, Linear, Power0, Power1, Power2, Power3, Power4, Quad, Cubic, Quart, Strong, Back, Bounce, Circ, Elastic, Expo, Sine, SlowMo */

define(['backbone',
'underscore',
'app/models/media'], function (Backbone, _, Media) {
/* Microsoft Video Editor
* @author: T.M.P. Kleist / Code D'azur <thierry@codedazur.nl>
* ============================================================================== */

/*global views, console, $, define */

define(['app/models/library'], function (Model) {

'use strict';

return Backbone.Collection.extend({

model: Media,

model: Model,

initialize: function () {
this.on('layer', function (model) {

window.App.timeline.collection.add({
type: model.get('type'),
media: model
});


});
},

add: function (model) {
var exist = 0;
_.each(this.models, function (m) {
_.each(this.models, function (m) {
if (model.get('file').name === m.get('file').name && model.get('file').size === m.get('file').size && model.get('file').type === m.get('file').type) {
exist += 1;
// this.trigger('add', m);
// this.trigger('add', m);
}
}, this);
if(exist === 0) {

if (exist === 0) {
Backbone.Collection.prototype.add.apply(this, arguments);
}
}
Expand Down
60 changes: 41 additions & 19 deletions app/collections/timeline.js
Original file line number Diff line number Diff line change
@@ -1,37 +1,59 @@
/**
* Microsoft Video Editor
*
* @namespace collections
* @name media
* @author Thierry M.P. Kleist <thierry@codedazur.nl>
* @date: 4/24/13
*/
/*global views, console, $, $$, TweenLite, TweenMax, TimelineLite, TimelineMax, Ease, Linear, Power0, Power1, Power2, Power3, Power4, Quad, Cubic, Quart, Strong, Back, Bounce, Circ, Elastic, Expo, Sine, SlowMo */

define(['backbone', 'underscore', 'app/models/clip'], function (Backbone, _, Model) {
/* Microsoft Video Editor
* @author: T.M.P. Kleist / Code D'azur <thierry@codedazur.nl>
* ============================================================================== */

/*global views, console, $, define */

define(['app/models/layer', 'app/filters'], function (Model, Filter) {

'use strict';

return Backbone.Collection.extend({

model: Model,
totalFrames: 5000,

initialize: function () {
getActive: function () {

},
var targetModel = [],
position = 99999;

getActive: function () {
_.each(this.where({type:'video'}), function (model) {

var targetModel;
if (model.get('status') === 'playing' || model.get('status') === 'seeking') {

_.each(this.models, function (model) {
if (model.get('status') === 'playing') {
targetModel = model;
}
targetModel.push(model);

}

}, this);

return targetModel;

},

getFilter: function (frame) {
var effects, len, x, trim, offset, endEffect, startEffect;
effects = this.where({type: 'effect'});
len = effects.length;
if (len === 0) {
return null;
}
for (x = 0; x < len; x = x += 1) {

trim = effects[x].get('trim');
offset = effects[x].get('offset');
endEffect = effects[x].get('frames') + offset - trim.end;
startEffect = trim.start + offset;
if (frame >= startEffect && frame <= endEffect) {
return Filter[effects[x].get('name')];
}
if (x === (len - 1)) {
return null;
}

}
return null;
}

});
Expand Down
108 changes: 63 additions & 45 deletions app/controllers/timeline.js
Original file line number Diff line number Diff line change
@@ -1,105 +1,123 @@
/**
* Microsoft Video Editor
*
* @namespace controllers
* @name timeline
* @author Thierry M.P. Kleist <thierry@codedazur.nl>
* @date: 4/24/13
*/
/*global views, console, $, $$, TweenLite, TweenMax, TimelineLite, TimelineMax, Ease, Linear, Power0, Power1, Power2, Power3, Power4, Quad, Cubic, Quart, Strong, Back, Bounce, Circ, Elastic, Expo, Sine, SlowMo */

define(['backbone', 'underscore'], function (Backbone, _) {
/* Microsoft Video Editor
* @author: T.M.P. Kleist / Code D'azur <thierry@codedazur.nl>
* ============================================================================== */

'use strict';
/*global views, console, $, define */

var Timeline = function (collection) {
define(['app/collections/timeline', 'app/filters'], function (Collection, Filter) {

this.initialize(collection);
'use strict';

var Timeline = function () {
this.initialize();
};

Timeline.prototype = {

totalTime: 1000,
seek: 0,
_frame: 0,
playing: false,

initialize: function (collection) {
initialize: function () {

this.layers = [];
this.videos = [];
this.filter = null;
this.collection = collection;
this.collection = new Collection();

this.collection.on('trim:start', function (model) {
window.App.player.setSource([model]);
}, this);

this.collection.on('change:trim', this.seek, this);

_.bindAll(this, 'addEventListeners', 'changeFilter', 'play', 'stop', 'frame');

this.addEventListeners();
},

addEventListeners: function () {

// this.collection.initTime();
this.collection.on('play', this.play);
this.collection.on('stop', this.stop);
// App.Views.interface.effects.on('change', this.changeFilter);

document.querySelector('header').addEventListener('click', this.play);
},

changeFilter: function (filter) {

switch (filter) {
case 'gray':
this.filter = Filters.grayscale;
break;
case 'thres':
this.filter = Filters.threshold;
break;
case 'pixel':
this.filter = Filters.pixelize;
break;
default:
this.filter = null;
case 'gray':
this.filter = Filters.grayscale;
break;
case 'thres':
this.filter = Filters.threshold;
break;
case 'pixel':
this.filter = Filters.pixelize;
break;
default:
this.filter = null;
}

},

play: function () {

if (this.playing) {
this.playing = false;

window.clearInterval(this.timer);
this.collection.trigger('pause');

this.trigger('pause', 'pause');

return;
}

this.trigger('play', 'play');
this.playing = true;
this.timer = window.setInterval(this.frame, 40);

},

/*
* Syncs all the layers and sends the current layer to the Player API
*/

/* Scrubs/Seek to frame
* ---------------------------------------------------------------------- */

seek: function (frame) {
if (this.playing) {
this.stop();
}
this._frame = !isNaN(frame) ? frame : this._frame;
this.collection.trigger('seek', this._frame, this.collection.totalFrames);
window.App.player.setSource(this.collection.getActive());
window.App.filter = window.App.timeline.collection.getFilter(this._frame);
},


/* Syncs all the layers and sends the current layer to the Player API
* ---------------------------------------------------------------------- */

frame: function () {

this.collection.trigger('frame-sync', this.seek);
this.collection.trigger('frame-sync', this._frame, this.collection.totalFrames);
window.App.player.setSource(this.collection.getActive());
//window.App.player.setSource([this.collection.models[0], this.collection.models[1]]);

if (this.seek === this.totalTime) {
this.stopTimeline();
if (this._frame === this.collection.totalFrames) {
this.stop();
} else {
this.seek += 1;
this._frame += 1;
}

window.App.filter = window.App.timeline.collection.getFilter(this._frame);
},

stop: function () {

this.playing = false;
this.trigger('stop', 'stop');

window.clearInterval(this.timer);
window.App.player.setSource();

this.seek = 0;
this.collection.trigger('kill');
this._frame = 0;
this.collection.trigger('kill', 0);

}

Expand Down
Loading