Finally fixed sound starting on some videos. Simply used -ao null. Cleaned up formatting of code and changed import order, etc.
This commit is contained in:
parent
ba50123ab9
commit
2aa974137c
Binary file not shown.
Binary file not shown.
|
@ -1,8 +1,8 @@
|
|||
Package: fxwinwrap
|
||||
Package: fxwinwrap64
|
||||
Version: 0.1-3
|
||||
Section: base
|
||||
Priority: optional
|
||||
Architecture: i386
|
||||
Architecture: amd64
|
||||
Depends: openjdk-8-jre (>= 8u45-b14-1), openjfx (>= 8u60-b27-4), ffmpegthumbnailer (>= 2.0.10-0.1), mplayer2 (>=2.0-728-g2c378c7-4), gifsicle (>=1.86-1), nitrogen (>=1.5.2-2)
|
||||
Maintainer: Maxim Stewart 1itdominator@gmail.com
|
||||
Description: A GUI to handle setting XWinWrap options.
|
||||
|
|
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
|
@ -1,4 +1,5 @@
|
|||
import javafx.stage.*;
|
||||
import javafx.stage.Stage;
|
||||
import javafx.stage.DirectoryChooser;
|
||||
import javafx.scene.Scene;
|
||||
import javafx.fxml.FXML;
|
||||
import javafx.scene.image.Image;
|
||||
|
@ -11,12 +12,17 @@ import javafx.scene.input.KeyEvent;
|
|||
import javafx.scene.input.KeyCode;
|
||||
import javafx.scene.input.MouseEvent;
|
||||
import javafx.geometry.Insets;
|
||||
import java.io.*;
|
||||
import javafx.beans.value.ChangeListener;
|
||||
import javafx.beans.value.ObservableValue;
|
||||
import javafx.concurrent.Task;
|
||||
import javafx.application.Platform;
|
||||
|
||||
import java.io.File;
|
||||
import java.io.UncheckedIOException;
|
||||
import java.io.IOException;
|
||||
import java.io.FileWriter;
|
||||
|
||||
import javafx.beans.value.ChangeListener;
|
||||
import javafx.beans.value.ObservableValue;
|
||||
|
||||
|
||||
public class Controller {
|
||||
private DirectoryChooser folderChooser = new DirectoryChooser(); // Selects a dir
|
||||
|
@ -26,9 +32,8 @@ public class Controller {
|
|||
private Image pth = new Image("."); // Path to image
|
||||
private ImageView imgView = new ImageView(pth); // Image view area
|
||||
private Process pb; // Process runner
|
||||
private String tmpPath, resolution, xScreenVal, output,
|
||||
startScrpt = System.getProperty("user.dir") + "/resources/bin/StartXWW.sh", // Gets shell that starts stuff local
|
||||
textAreaPth = "";
|
||||
private String tmpPath, resolution, xScreenVal, output, textAreaPth = "",
|
||||
startScrpt = System.getProperty("user.dir") + "/resources/bin/StartXWW.sh"; // Gets shell that starts stuff local
|
||||
private int applyType = 1;
|
||||
private Stage fileChooserStage;
|
||||
@FXML private ListView<?> selXScreenSvr;
|
||||
|
@ -37,10 +42,8 @@ public class Controller {
|
|||
@FXML private TextField dirPathField, filePathField; // Text fields
|
||||
@FXML private CheckBox useXSvrn; // Check boxes
|
||||
@FXML private ChoiceBox<?> playbackResolution, setMonPosOffset, listSaveLoc; // Choice box fields
|
||||
@FXML private Button applyBttn, closeBttn, fileBttn, clear, // Buttons
|
||||
killBttn, saveBttn;
|
||||
@FXML private Button applyBttn, closeBttn, fileBttn, clear, killBttn, saveBttn; // Buttons
|
||||
|
||||
// This method is called by the FXMLLoader when initialization is complete
|
||||
@FXML void initialize() throws Exception {
|
||||
assert dirPathField != null : "fx:id=\"dirPathField\" was not injected: check your FXML file 'Window.fxml'.";
|
||||
assert clear != null : "fx:id=\"clear\" was not injected: check your FXML file 'Window.fxml'.";
|
||||
|
@ -53,22 +56,15 @@ public class Controller {
|
|||
assert setMonPosOffset != null : "fx:id=\"setMonPosOffset\" was not injected: check your FXML file 'Window.fxml'.";
|
||||
assert playbackResolution != null : "fx:id=\"playbackResolution\" was not injected: check your FXML file 'Window.fxml'.";
|
||||
assert useXSvrn != null : "fx:id=\"useXSvrn\" was not injected: check your FXML file 'Window.fxml'.";
|
||||
// Initialize your logic here: all @FXML variables will have been injected
|
||||
}
|
||||
|
||||
// Handler for TextArea[fx:id="dirPathField"] onKeyReleased
|
||||
@FXML void setNewDir(MouseEvent event) { newDir(); }
|
||||
@FXML void onEnter(KeyEvent event) {
|
||||
if (event.getCode().equals(KeyCode.ENTER)) {
|
||||
textAreaPth = dirPathField.getText();
|
||||
System.out.println(textAreaPth);
|
||||
newDir();
|
||||
}
|
||||
else {}
|
||||
}
|
||||
|
||||
@FXML void test(ActionEvent event) {
|
||||
newDir();
|
||||
} else {}
|
||||
}
|
||||
|
||||
// Scan selected dir
|
||||
|
@ -103,15 +99,14 @@ public class Controller {
|
|||
newDir2();
|
||||
return null;
|
||||
}};
|
||||
|
||||
new Thread(getDir).start();
|
||||
}
|
||||
public void newDir2() {
|
||||
for (int i=0; i<fileList.length; i++) {
|
||||
String path = "" + fileList[i];
|
||||
if (path.toLowerCase().matches("^.*?(mp4|mpeg|mpg|wmv|mkv|flv|webm|avi).*$")) {
|
||||
String movieImg = "ffmpegthumbnailer -w -t='00:30:00' -c png -i " + fileList[i] +
|
||||
" -s 300 -o /tmp/image.png",
|
||||
String path = "" + fileList[i], tmpP = "" + fileList[i];
|
||||
if (tmpP.toLowerCase().matches("^.*?(mp4|mpeg|mpg|wmv|mkv|flv|webm|avi).*$")) {
|
||||
String movieImg = "ffmpegthumbnailer -w -t='00:30:00' -c png -i " +
|
||||
fileList[i] + " -s 300 -o /tmp/image.png",
|
||||
vExec = "mplayer " + fileList[i];
|
||||
try {
|
||||
pb = Runtime.getRuntime().exec(movieImg);
|
||||
|
@ -123,10 +118,9 @@ public class Controller {
|
|||
ImageView view = (ImageView) (tilePane.getChildren().get(i));
|
||||
pth = new Image("file:///tmp/image.png");
|
||||
Platform.runLater(new Runnable() {
|
||||
@Override public void run() {
|
||||
view.setImage(pth);
|
||||
}
|
||||
@Override public void run() { view.setImage(pth); }
|
||||
});
|
||||
|
||||
view.setOnMouseClicked(mouse -> {
|
||||
if (mouse.getClickCount() == 2 && !mouse.isConsumed()) {
|
||||
mouse.consume();
|
||||
|
@ -138,17 +132,16 @@ public class Controller {
|
|||
}
|
||||
filePathField.setText(path);
|
||||
});
|
||||
} else if(path.toLowerCase().matches("^.*?(png|jpg|jpeg|gif).*$")) {
|
||||
String title = "" + fileList[i];
|
||||
pth = new Image("file://" + fileList[i]);
|
||||
} else if(tmpP.toLowerCase().matches("^.*?(png|jpg|jpeg|gif).*$")) {
|
||||
ImageView view = (ImageView) (tilePane.getChildren().get(i));
|
||||
String title = "file://" + fileList[i];
|
||||
pth = new Image(title);
|
||||
|
||||
Platform.runLater(new Runnable() {
|
||||
@Override public void run() {
|
||||
view.setImage(pth);
|
||||
}
|
||||
@Override public void run() { view.setImage(pth); }
|
||||
});
|
||||
final ImageView imgViewPoped = new ImageView("file://" + fileList[i]);
|
||||
|
||||
final ImageView imgViewPoped = new ImageView(title);
|
||||
// image click actions
|
||||
view.setOnMouseClicked(mouse -> {
|
||||
if (mouse.getClickCount() == 2 && !mouse.isConsumed()) {
|
||||
|
@ -157,9 +150,7 @@ public class Controller {
|
|||
}
|
||||
filePathField.setText(path);
|
||||
});
|
||||
} else {
|
||||
System.out.println("Not a video or image file.");
|
||||
}
|
||||
} else { System.out.println("Not a video or image file."); }
|
||||
}
|
||||
}
|
||||
// Open image in new window
|
||||
|
@ -228,7 +219,7 @@ public class Controller {
|
|||
applyType = 2;
|
||||
//VIDEO
|
||||
} else {
|
||||
output = "xwinwrap -ov -g " + resolution + " -st -sp -b -nf -s -ni -- mplayer -wid WID -really-quiet -nosound -loop 0 " + filePathField.getText();
|
||||
output = "xwinwrap -ov -g " + resolution + " -st -sp -b -nf -s -ni -- mplayer -wid WID -really-quiet -ao null -loop 0 " + filePathField.getText();
|
||||
fileWriter.write(output);
|
||||
applyType = 1;
|
||||
}
|
||||
|
|
Loading…
Reference in New Issue