summaryrefslogtreecommitdiff
path: root/app
diff options
context:
space:
mode:
Diffstat (limited to 'app')
-rw-r--r--app/client/live/live.actions.js12
-rw-r--r--app/client/live/live.reducer.js10
-rw-r--r--app/client/modules/pix2pix/pix2pix.actions.js2
-rw-r--r--app/client/modules/pix2pix/pix2pix.tasks.js7
-rw-r--r--app/client/modules/pix2pix/views/pix2pix.live.js34
-rw-r--r--app/client/socket/socket.live.js23
-rw-r--r--app/client/types.js2
-rw-r--r--app/relay/modules/pix2pix.js2
8 files changed, 53 insertions, 39 deletions
diff --git a/app/client/live/live.actions.js b/app/client/live/live.actions.js
index 0bdd8d7..348b58b 100644
--- a/app/client/live/live.actions.js
+++ b/app/client/live/live.actions.js
@@ -12,18 +12,18 @@ export const set_param = (key, value) => {
return { type: types.player.set_param, key, value, }
}
-export const list_checkpoints = () => {
- socket.live.list_checkpoints()
+export const list_checkpoints = (module) => {
+ socket.live.list_checkpoints(module)
return { type: types.player.loading_checkpoints, }
}
-export const list_epochs = (path) => {
- socket.live.list_epochs(path)
+export const list_epochs = (module, checkpoint) => {
+ socket.live.list_epochs(module, checkpoint)
return { type: types.player.loading_epochs, }
}
-export const list_sequences = () => {
- socket.live.list_sequences()
+export const list_sequences = (module) => {
+ socket.live.list_sequences(module)
return { type: types.player.loading_sequences }
}
diff --git a/app/client/live/live.reducer.js b/app/client/live/live.reducer.js
index e7ef569..83beb03 100644
--- a/app/client/live/live.reducer.js
+++ b/app/client/live/live.reducer.js
@@ -18,7 +18,7 @@ const liveReducer = (state = liveInitialState, action) => {
let results;
switch(action.type) {
- case types.player.load_params:
+ case types.socket.load_params:
if (! action.opt || ! Object.keys(action.opt).length) {
return state
}
@@ -38,22 +38,22 @@ const liveReducer = (state = liveInitialState, action) => {
}
}
- case types.player.list_checkpoints:
+ case types.socket.list_checkpoints:
return {
...state,
checkpoints: action.checkpoints,
epochs: [],
}
- case types.player.list_epochs:
+ case types.socket.list_epochs:
return {
...state,
epochs: (action.epochs || []).map(a => [ a == 'latest' ? Infinity : a, a ])
.sort((a,b) => a[0] - b[0])
.map(a => a[1])
- }
+ }
- case types.player.list_sequences:
+ case types.socket.list_sequences:
return {
...state,
sequences: action.sequences,
diff --git a/app/client/modules/pix2pix/pix2pix.actions.js b/app/client/modules/pix2pix/pix2pix.actions.js
index 778bc64..d8fde65 100644
--- a/app/client/modules/pix2pix/pix2pix.actions.js
+++ b/app/client/modules/pix2pix/pix2pix.actions.js
@@ -50,6 +50,8 @@ export const load_directories = (id) => (dispatch) => {
dataset.hasCheckpoints = true
})
+ console.log(res)
+
// flatDatasets.forEach(file => {
// file.uuid = uuidv1()
// fileLookup[file.uuid] = file
diff --git a/app/client/modules/pix2pix/pix2pix.tasks.js b/app/client/modules/pix2pix/pix2pix.tasks.js
index 9572418..db7d4b1 100644
--- a/app/client/modules/pix2pix/pix2pix.tasks.js
+++ b/app/client/modules/pix2pix/pix2pix.tasks.js
@@ -5,14 +5,15 @@ import types from '../../types'
import actions from '../../actions'
-export const live_task = (dataset, checkpoint, epochs=1) => dispatch => {
+export const live_task = (sequence, checkpoint) => dispatch => {
const task = {
module: 'pix2pix',
activity: 'live',
- dataset: dataset.name,
- checkpoint: checkpoint,
+ dataset: sequence,
+ checkpoint,
}
console.log(task)
+ console.log('add live task')
return actions.queue.add_task(task)
}
diff --git a/app/client/modules/pix2pix/views/pix2pix.live.js b/app/client/modules/pix2pix/views/pix2pix.live.js
index 6f5b1bd..eddcf95 100644
--- a/app/client/modules/pix2pix/views/pix2pix.live.js
+++ b/app/client/modules/pix2pix/views/pix2pix.live.js
@@ -16,13 +16,12 @@ import * as pix2pixActions from '../pix2pix.actions'
class Pix2PixLive extends Component {
constructor(props){
super()
-
if (! props.pix2pix || ! props.pix2pix.data) {
props.pix2pixActions.load_directories()
}
props.actions.get_params()
- // props.actions.list_checkpoints()
- // props.actions.list_sequences()
+ props.actions.list_checkpoints('pix2pix')
+ props.actions.list_sequences('pix2pix')
this.changeCheckpoint = this.changeCheckpoint.bind(this)
this.changeEpoch = this.changeEpoch.bind(this)
this.changeSequence = this.changeSequence.bind(this)
@@ -32,7 +31,7 @@ class Pix2PixLive extends Component {
}
componentWillUpdate(nextProps) {
if (nextProps.opt.checkpoint_name && nextProps.opt.checkpoint_name !== this.props.opt.checkpoint_name) {
- this.props.actions.list_epochs(nextProps.opt.checkpoint_name)
+ this.props.actions.list_epochs('pix2pix', nextProps.opt.checkpoint_name)
}
}
changeCheckpoint(checkpoint_name){
@@ -50,12 +49,20 @@ class Pix2PixLive extends Component {
this.props.actions.seek(frame)
}
start(){
- // pix2pixTasks.live_task()
+ // console.log(this.props)
+ console.log('starting up!')
+ const sequence = this.props.pix2pix.data.sequences[0].name
+ console.log(sequence)
+ const checkpoint = this.props.pix2pix.data.checkpoints[0].name
+ console.log(checkpoint)
+ console.log(sequence, checkpoint)
+ this.props.pix2pixTasks.live_task(sequence, checkpoint)
}
- kill(){
+ interrupt(){
//
}
togglePlaying(){
+ console.log('are we..........', this.props.opt.processing)
if (this.props.opt.processing) {
this.props.actions.pause()
} else {
@@ -71,7 +78,7 @@ class Pix2PixLive extends Component {
}
}
render(){
- console.log(this.props)
+ // console.log(this.props)
if (this.props.pix2pix.loading) {
return <Loading />
}
@@ -93,13 +100,13 @@ class Pix2PixLive extends Component {
<Select
name='sequence_name'
title='sequence'
- options={this.props.pix2pix.data.sequences}
+ options={this.props.pix2pix.data.sequences.map(file => file.name)}
onChange={this.changeSequence}
/>
<Select
name='checkpoint_name'
title='checkpoint'
- options={this.props.pix2pix.data.checkpoints}
+ options={this.props.pix2pix.data.checkpoints.map(file => file.name)}
onChange={this.changeCheckpoint}
/>
<Select
@@ -249,7 +256,7 @@ class Pix2PixLive extends Component {
return (
<Button
title={'GPU Idle'}
- onClick={this.start}
+ onClick={() => this.start()}
>Start</Button>
)
}
@@ -257,8 +264,8 @@ class Pix2PixLive extends Component {
return (
<Button
title={'GPU Busy'}
- onClick={this.kill}
- >Kill</Button>
+ onClick={() => this.interrupt()}
+ >Interrupt</Button>
)
}
if (! this.props.opt.processing) {
@@ -273,7 +280,7 @@ class Pix2PixLive extends Component {
<Button
title={'Processing'}
onClick={this.togglePlaying}
- >Restart</Button>
+ >Pause</Button>
)
}
}
@@ -293,6 +300,7 @@ const mapStateToProps = state => ({
const mapDispatchToProps = (dispatch, ownProps) => ({
actions: bindActionCreators(liveActions, dispatch),
pix2pixActions: bindActionCreators(pix2pixActions, dispatch),
+ pix2pixTasks: bindActionCreators(pix2pixTasks, dispatch),s
})
export default connect(mapStateToProps, mapDispatchToProps)(Pix2PixLive)
diff --git a/app/client/socket/socket.live.js b/app/client/socket/socket.live.js
index a166c5e..ab5878e 100644
--- a/app/client/socket/socket.live.js
+++ b/app/client/socket/socket.live.js
@@ -5,7 +5,7 @@ import * as player from '../live/player'
import { socket } from './socket.connection'
socket.on('res', (data) => {
- console.log('socket:', data.cmd)
+ // console.log('socket:', data.cmd)
switch (data.cmd) {
case 'get_last_frame':
if (data.res !== 'working') {
@@ -26,35 +26,36 @@ socket.on('res', (data) => {
checkpoints: data.res,
})
break
- case 'list_sequences':
- dispatch({
- type: types.socket.list_sequences,
- sequences: data.res,
- })
- break
case 'list_epochs':
dispatch({
type: types.socket.list_epochs,
epochs: data.res,
})
break
+ case 'list_sequences':
+ dispatch({
+ type: types.socket.list_sequences,
+ sequences: data.res,
+ })
+ break
default:
break
}
- console.log(data)
+ // console.log(data)
})
socket.on('frame', player.onFrame)
-export function list_checkpoints() {
+export function list_checkpoints(module) {
socket.emit('cmd', {
cmd: 'list_checkpoints',
+ payload: module,
})
}
-export function list_epochs(checkpoint_name) {
+export function list_epochs(module, checkpoint_name) {
socket.emit('cmd', {
cmd: 'list_epochs',
- payload: checkpoint_name,
+ payload: module + '/' + checkpoint_name,
})
}
export function list_sequences(module) {
diff --git a/app/client/types.js b/app/client/types.js
index d65db3b..f7e9abb 100644
--- a/app/client/types.js
+++ b/app/client/types.js
@@ -54,9 +54,11 @@ export default {
set_param: 'SET_PARAM',
loading_checkpoints: 'LOADING_CHECKPOINTS',
+ loading_checkpoint: 'LOADING_CHECKPOINT',
list_checkpoints: 'LIST_CHECKPOINTS',
loading_sequences: 'LOADING_SEQUENCES',
+ loading_sequence: 'LOADING_SEQUENCE',
load_sequence: 'LOAD_SEQUENCE',
loading_epochs: 'LOADING_EPOCHS',
diff --git a/app/relay/modules/pix2pix.js b/app/relay/modules/pix2pix.js
index aba4312..c590379 100644
--- a/app/relay/modules/pix2pix.js
+++ b/app/relay/modules/pix2pix.js
@@ -47,7 +47,7 @@ const train = {
script: 'train.py',
params: (task) => {
return [
- '--dataroot', './datasets/' + task.dataset,
+ '--dataroot', path.join(process.env.PIX2PIX_CWD, './datasets/', task.dataset),
'--name', task.dataset,
'--model', 'pix2pix',
'--loadSize', opt.load_size || 264,