possibly working GUI, compiling missing

This commit is contained in:
2023-06-03 11:34:39 +02:00
parent 58e114e368
commit bf2931085f
13 changed files with 186 additions and 26 deletions

View File

@@ -1,21 +1,53 @@
const express = require( 'express' );
let app = express();
const path = require( 'path' );
const fs = require( 'fs' );
const dialog = require( 'electron' ).dialog;
const cors = require( 'cors' );
const bodyParser = require( 'body-parser' );
const exec = require( 'child_process' ).exec;
const upscaling = require( './upscalingHandler.js' );
const upscalingHandler = new upscaling();
app.use( bodyParser.urlencoded( { extended: false } ) );
app.use( bodyParser.json() );
app.use( cors() );
function execute(command, callback){
exec(command, function(error, stdout, stderr){ callback(stdout); });
};
app.get( '/api/getEngines', ( request, response ) => {
execute( 'ImageVideoUpscaler-cli -p', out => {
response.send( out );
} );
console.log( 'engines' );
response.send( { 'data': 'not finished yet' } );
} );
app.get( '/api/getInputFile', ( request, response ) => {
response.send( { 'data': dialog.showOpenDialogSync( {
properties: [ 'openFile' ],
title: 'Select an input file to upscale',
filters: [
{ name: 'Images (.jpg, .png)', extensions: ['jpg', 'png'] },
{ name: 'Movies (.mkv, .mp4)', extensions: ['mkv', 'mp4'] },
{ name: 'All Files', extensions: ['*'] }
]
} ) } );
} );
app.get( '/api/getOutputFile', ( request, response ) => {
response.send( { 'data': dialog.showSaveDialogSync( {
properties: [ 'promptToCreate' ],
title: 'Select an output file',
filters: [
{ name: 'Images (.jpg, .png)', extensions: ['jpg', 'png'] },
{ name: 'Movies (.mkv, .mp4)', extensions: ['mkv', 'mp4'] },
{ name: 'All Files', extensions: ['*'] }
]
} ) } );
} );
app.post( '/api/startUpscaling', ( request, response ) => {
if ( upscalingHandler.verifyDataIntegrity( request.body ) ) {
response.send( { 'data': 'upscaling' } );
upscalingHandler.upscale( request.body );
} else {
response.send( { 'data': 'dataIncorrect' } );
}
} );
app.listen( 8081 );