From 458663d008e0447f3db0f3a1d3f8750cccc8b62e Mon Sep 17 00:00:00 2001 From: Jules Laplace Date: Tue, 5 Jun 2018 22:43:09 +0200 Subject: pix2pix datasets in full effect --- app/client/actions.js | 4 +-- app/client/common/header.component.js | 1 - app/client/dataset/dataset.loader.js | 4 ++- app/client/dataset/dataset.new.js | 2 +- app/client/dataset/dataset.reducer.js | 15 ++++++++++- app/client/modules/pix2pix/pix2pix.actions.js | 22 +++++++-------- app/client/modules/pix2pix/pix2pix.module.js | 2 +- app/client/modules/pix2pix/pix2pix.reducer.js | 31 +++++----------------- app/client/modules/pix2pix/views/pix2pix.show.js | 1 + app/client/modules/pix2wav/pix2wav.module.js | 2 +- app/client/modules/samplernn/samplernn.actions.js | 17 ++++++------ app/client/modules/samplernn/samplernn.reducer.js | 13 --------- .../modules/samplernn/views/samplernn.show.js | 1 + app/client/system/system.reducer.js | 2 +- app/client/types.js | 1 + 15 files changed, 52 insertions(+), 66 deletions(-) (limited to 'app/client') diff --git a/app/client/actions.js b/app/client/actions.js index 7336eab..ca1ecf1 100644 --- a/app/client/actions.js +++ b/app/client/actions.js @@ -7,7 +7,7 @@ import * as socketActions from './socket/socket.actions' import * as datasetActions from './dataset/dataset.actions' import * as audioPlayerActions from './common/audioPlayer/audioPlayer.actions' -import { dispatch } from './store' +import { store } from './store' export default Object.keys(crudActions) @@ -19,7 +19,7 @@ export default ['dataset', datasetActions], ['audioPlayer', audioPlayerActions], ]) - .map(p => [p[0], bindActionCreators(p[1], dispatch)]) + .map(p => [p[0], bindActionCreators(p[1], store.dispatch)]) .concat([ ['socket', socketActions], ]) diff --git a/app/client/common/header.component.js b/app/client/common/header.component.js index 8a2310f..776fbe4 100644 --- a/app/client/common/header.component.js +++ b/app/client/common/header.component.js @@ -13,7 +13,6 @@ function Header({ site, app, fps, playing, actions }) { return }) const Links = modules[app.tool].links - console.log(app, site, Object.keys(modules)) return (
{site.name} cortex diff --git a/app/client/dataset/dataset.loader.js b/app/client/dataset/dataset.loader.js index 6757593..64185bc 100644 --- a/app/client/dataset/dataset.loader.js +++ b/app/client/dataset/dataset.loader.js @@ -40,11 +40,13 @@ export const getDataset = (module, datasetLookup, name, folder, date) => { } export const load = module => { + console.log(module) return Promise.all([ actions.folder.index({ module }), actions.file.index({ module }), + actions.task.index({ module }), ]).then(res => { - const [folders, files] = res + const [folders, files, tasks] = res let datasetLookup = {} let folderLookup = {} diff --git a/app/client/dataset/dataset.new.js b/app/client/dataset/dataset.new.js index 1705598..617aa90 100644 --- a/app/client/dataset/dataset.new.js +++ b/app/client/dataset/dataset.new.js @@ -23,7 +23,7 @@ function NewDatasetForm (props) { onSave={(name) => { actions.createFolder(module, name) .then(folder => { - window.location.href = '/samplernn/datasets/' + folder.id + '/' + window.location.href = '/' + module.name + '/datasets/' + folder.id + '/' }) }} /> diff --git a/app/client/dataset/dataset.reducer.js b/app/client/dataset/dataset.reducer.js index 287ebb8..d7951d0 100644 --- a/app/client/dataset/dataset.reducer.js +++ b/app/client/dataset/dataset.reducer.js @@ -10,17 +10,30 @@ const datasetInitialState = () => ({ loading: true, error: null, data: null, + folder_id: 0, }) const datasetReducer = (state = datasetInitialState(), action) => { switch(action.type) { + case types.app.load_progress: + return { + ...state, + progress: action.progress + } + case types.dataset.load: return { ...state, loading: false, data: action.data, } - + + case types.dataset.set_folder: + return { + ...state, + folder_id: action.data.folder_id, + } + case types.folder.create: if (action.data.module === 'samplernn') { return { diff --git a/app/client/modules/pix2pix/pix2pix.actions.js b/app/client/modules/pix2pix/pix2pix.actions.js index 5d53136..82311ad 100644 --- a/app/client/modules/pix2pix/pix2pix.actions.js +++ b/app/client/modules/pix2pix/pix2pix.actions.js @@ -9,11 +9,12 @@ import actions from '../../actions' import { allProgress } from '../../util' +import pix2pixModule from './pix2pix.module' + export const load_directories = (id) => (dispatch) => { - const module = 'samplernn' + const module = pix2pixModule.name allProgress([ datasetLoader.load(module), - actions.task.index({ module }), // actions.socket.list_directory({ module, dir: 'datasets' }), // actions.socket.list_directory({ module, dir: 'results' }), // actions.socket.list_directory({ module, dir: 'output' }), @@ -22,8 +23,7 @@ export const load_directories = (id) => (dispatch) => { dispatch({ type: types.app.load_progress, progress: { i, n }}) }).then(res => { // console.log(res) - const [datasetApiReport, tasks] = res //, datasets, results, output, datasetUsage, lossReport] = res - + const [datasetApiReport] = res //, datasets, results, output, datasetUsage, lossReport] = res const { folderLookup, fileLookup, @@ -102,21 +102,21 @@ export const load_directories = (id) => (dispatch) => { fileLookup, datasetLookup, folders, files, - checkpoints, - output, + // checkpoints, + // output, }, }) if (id) { console.log('folder id', id) dispatch({ - type: types.pix2pix.set_folder, - folder_id: id, + type: types.dataset.set_folder, + data: { + folder_id: id, + module + }, }) } }).catch(e => { console.error(e) }) } - -export const set_folder = (folder) => { types.pix2pix.set_folder, folder } - diff --git a/app/client/modules/pix2pix/pix2pix.module.js b/app/client/modules/pix2pix/pix2pix.module.js index 63b1e94..65e173a 100644 --- a/app/client/modules/pix2pix/pix2pix.module.js +++ b/app/client/modules/pix2pix/pix2pix.module.js @@ -1,6 +1,6 @@ const pix2pixModule = { name: 'pix2pix', - datatype: 'audio', + datatype: 'video', } export default pix2pixModule diff --git a/app/client/modules/pix2pix/pix2pix.reducer.js b/app/client/modules/pix2pix/pix2pix.reducer.js index fbd38d1..10135a5 100644 --- a/app/client/modules/pix2pix/pix2pix.reducer.js +++ b/app/client/modules/pix2pix/pix2pix.reducer.js @@ -1,39 +1,20 @@ import types from '../../types' +import datasetReducer from '../../dataset/dataset.reducer' const pix2pixInitialState = { loading: true, + progress: { i: 0, n: 0 }, error: null, - folders: [], folder_id: 0, data: null, - lossReport: null, } const pix2pixReducer = (state = pix2pixInitialState, action) => { - // console.log(action.type) - switch(action.type) { - case types.pix2pix.init: - return { - ...state, - loading: false, - data: action.data, - } - - case types.socket.connect: - return { - ...state, - } - - case types.task.task_begin: - return { - ...state, - } - - case types.task.task_finish: - return { - ...state, - } + if (action.data && action.data.module === 'pix2pix') { + state = datasetReducer(state, action) + } + switch (action.type) { default: return state } diff --git a/app/client/modules/pix2pix/views/pix2pix.show.js b/app/client/modules/pix2pix/views/pix2pix.show.js index b4cdc50..ef4b906 100644 --- a/app/client/modules/pix2pix/views/pix2pix.show.js +++ b/app/client/modules/pix2pix/views/pix2pix.show.js @@ -37,6 +37,7 @@ class Pix2pixShow extends Component { const { pix2pix, match, history } = this.props const { folderLookup } = (pix2pix.data || {}) const folder = (folderLookup || {})[pix2pix.folder_id] || {} + return (
diff --git a/app/client/modules/pix2wav/pix2wav.module.js b/app/client/modules/pix2wav/pix2wav.module.js index c0fe23a..bca268f 100644 --- a/app/client/modules/pix2wav/pix2wav.module.js +++ b/app/client/modules/pix2wav/pix2wav.module.js @@ -1,6 +1,6 @@ const pix2wavModule = { name: 'pix2wav', - datatype: 'audio', + datatype: 'spectrogram', } export default pix2wavModule diff --git a/app/client/modules/samplernn/samplernn.actions.js b/app/client/modules/samplernn/samplernn.actions.js index e9248c0..d0fda31 100644 --- a/app/client/modules/samplernn/samplernn.actions.js +++ b/app/client/modules/samplernn/samplernn.actions.js @@ -9,11 +9,12 @@ import actions from '../../actions' import { allProgress } from '../../util' +import samplernnModule from './samplernn.module' + export const load_directories = (id) => (dispatch) => { - const module = 'samplernn' + const module = samplernnModule.name allProgress([ datasetLoader.load(module), - actions.task.index({ module }), actions.socket.list_directory({ module, dir: 'datasets' }), actions.socket.list_directory({ module, dir: 'results' }), actions.socket.list_directory({ module, dir: 'output' }), @@ -23,7 +24,7 @@ export const load_directories = (id) => (dispatch) => { dispatch({ type: types.app.load_progress, progress: { i, n }}) }).then(res => { // console.log(res) - const [datasetApiReport, tasks, datasets, results, output, datasetUsage, lossReport] = res + const [datasetApiReport, datasets, results, output, datasetUsage, lossReport] = res const { folderLookup, @@ -108,10 +109,12 @@ export const load_directories = (id) => (dispatch) => { }, }) if (id) { - console.log('folder id', id) dispatch({ - type: types.samplernn.set_folder, - folder_id: id, + type: types.dataset.set_folder, + data: { + folder_id: id, + module + }, }) } }).catch(e => { @@ -205,5 +208,3 @@ export const import_files = (state, datasetLookup, fileLookup) => (dispatch) => console.error(e) }) } - -export const set_folder = (folder) => { types.samplernn.set_folder, folder } diff --git a/app/client/modules/samplernn/samplernn.reducer.js b/app/client/modules/samplernn/samplernn.reducer.js index 1efbc90..ce3a549 100644 --- a/app/client/modules/samplernn/samplernn.reducer.js +++ b/app/client/modules/samplernn/samplernn.reducer.js @@ -18,25 +18,12 @@ const samplernnReducer = (state = samplernnInitialState, action) => { } switch(action.type) { - - case types.samplernn.set_folder: - return { - ...state, - folder_id: action.folder_id, - } - case types.samplernn.load_loss: return { ...state, lossReport: action.lossReport, } - case types.app.load_progress: - return { - ...state, - progress: action.progress - } - default: return state } diff --git a/app/client/modules/samplernn/views/samplernn.show.js b/app/client/modules/samplernn/views/samplernn.show.js index 98314f9..f44deda 100644 --- a/app/client/modules/samplernn/views/samplernn.show.js +++ b/app/client/modules/samplernn/views/samplernn.show.js @@ -30,6 +30,7 @@ class SampleRNNShow extends Component { if (id) { if (parseInt(id)) localStorage.setItem('samplernn.last_id', id) if (! samplernn.folder || samplernn.folder.id !== id) { + console.log('looooooooooad', id) actions.load_directories(id) } } diff --git a/app/client/system/system.reducer.js b/app/client/system/system.reducer.js index d83fa21..db071c4 100644 --- a/app/client/system/system.reducer.js +++ b/app/client/system/system.reducer.js @@ -43,7 +43,7 @@ const systemInitialState = { stderr: "", } -import modules from '../modules' +const modules = ['samplernn','pix2pix','pix2wav'].reduce((a,b) => (a[b]=b,a),{}) const systemReducer = (state = systemInitialState, action) => { let processor = null diff --git a/app/client/types.js b/app/client/types.js index eb9fc99..7193c9a 100644 --- a/app/client/types.js +++ b/app/client/types.js @@ -81,6 +81,7 @@ export default { }, dataset: { load: 'DATASET_LOAD', + set_folder: 'DATASET_SET_FOLDER', upload_files: 'DATASET_UPLOAD_FILES', file_progress: 'DATASET_FILE_PROGRESS', file_uploaded: 'DATASET_FILE_UPLOADED', -- cgit v1.2.3-70-g09d2