Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Version 6 initial release #362

Merged
merged 47 commits into from
Dec 29, 2021
Merged
Show file tree
Hide file tree
Changes from 1 commit
Commits
Show all changes
47 commits
Select commit Hold shift + click to select a range
42cec03
Mac OS Build
yermak Oct 29, 2021
d041e26
Merge branch 'issues/312_m4b_optimisatin' into macos
yermak Dec 13, 2021
1e8adde
Merge branch 'feature/318_force_reencoding' into macos
yermak Dec 13, 2021
4148a0c
moved os dependand tools and Dev plugs into Environment
yermak Dec 13, 2021
4608538
Merge branch 'development' into macos
yermak Dec 20, 2021
d7a7259
merge fixes
yermak Dec 20, 2021
e3172b7
fixed macos/windows environment issues
yermak Dec 20, 2021
eef4f07
fixed macos/windows environment issues
yermak Dec 20, 2021
bd62c63
fixed macos/windows environment issues
yermak Dec 20, 2021
1b0ba8f
Merge pull request #341 from yermak/macos
yermak Dec 20, 2021
6e1fd64
fixed version hack
yermak Dec 20, 2021
fd5d7bc
fixed version hack
yermak Dec 20, 2021
fa6300c
clean-up
yermak Dec 20, 2021
7177de8
clean-up
yermak Dec 20, 2021
344c18a
Merge pull request #342 from yermak/clean-up
yermak Dec 20, 2021
fa13b0f
fixed potential image name clash in temp files
yermak Dec 22, 2021
f85a14d
Merge pull request #344 from yermak/issue/343_artwork_conflict
yermak Dec 22, 2021
9dc738d
Fixed random io bug on iOS while searching artwork on samba network d…
yermak Dec 23, 2021
3e003a5
Fixed combining Parts
yermak Dec 23, 2021
f03f61c
Fixed splitting chapters
yermak Dec 23, 2021
843e697
Merge pull request #346 from yermak/issue/345_split_combine
yermak Dec 23, 2021
16af7b6
added Xodus database instead of property file, Moved genres to database
yermak Dec 24, 2021
2b9b105
moved presets to database
yermak Dec 24, 2021
5e63bf1
propperties moved to database
yermak Dec 24, 2021
62ec7e2
renamed properties into settings
yermak Dec 24, 2021
e6f2923
fixed NPE in loading properties from settings db
yermak Dec 25, 2021
6249091
adding lazy reencoding option and fixing optimisation error
yermak Dec 27, 2021
49d81b2
adding lazy reencoding option and fixing optimisation error
yermak Dec 27, 2021
7e7ad8b
Merge pull request #348
yermak Dec 27, 2021
b705e98
Merge pull request #350 from yermak/features/206_avoid_reencoding
yermak Dec 27, 2021
24572e2
adding progress for artwork and optimisation, fixed force reencoding
yermak Dec 28, 2021
0923da5
Merge pull request #351 from yermak/features/332_progress_for_art_wor…
yermak Dec 28, 2021
25be3d3
fixed preset saving behaviour
yermak Dec 28, 2021
5d83963
fixed preset saving behaviour
yermak Dec 28, 2021
955fb44
fixed preset saving behaviour
yermak Dec 28, 2021
622a381
fixed preset saving behaviour
yermak Dec 28, 2021
97922cf
Merge pull request #354 from yermak/issue/347_app_settings
yermak Dec 28, 2021
c59aea2
fixed #269
yermak Dec 28, 2021
61a88d7
Merge pull request #355 from yermak/issues/269_subtracks_single_file
yermak Dec 28, 2021
82c62bf
packaging jdk for xodus
yermak Dec 28, 2021
9c30da0
Merge pull request #356
yermak Dec 28, 2021
3fb7ad5
division by zero fix
yermak Dec 28, 2021
3e04887
Merge pull request #357
yermak Dec 28, 2021
db10c17
fixed optimsation issue with jpg art added as binary data
yermak Dec 29, 2021
bac8f37
Merge pull request #360
yermak Dec 29, 2021
cd3f709
version bump
yermak Dec 29, 2021
0208959
Merge pull request #361
yermak Dec 29, 2021
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
Prev Previous commit
Next Next commit
renamed properties into settings
  • Loading branch information
yermak committed Dec 24, 2021
commit 62ec7e2944656f06b34bebdd8fb8de335bfa86dd
Original file line number Diff line number Diff line change
Expand Up @@ -2,7 +2,6 @@

import javafx.collections.FXCollections;
import javafx.collections.ObservableList;
import jetbrains.exodus.ByteIterable;
import jetbrains.exodus.bindings.StringBinding;
import jetbrains.exodus.entitystore.Entity;
import jetbrains.exodus.entitystore.EntityIterable;
Expand All @@ -19,7 +18,7 @@
import java.util.*;
import java.util.stream.StreamSupport;

public class AppProperties {
public class AppSetting {
final static Logger logger = LoggerFactory.getLogger(MethodHandles.lookup().lookupClass());
public static final File APP_DIR = new File(System.getProperty("APP_HOME"));
public static final String PRESET_ENTITY = "Preset";
Expand Down
12 changes: 5 additions & 7 deletions src/main/java/uk/yermak/audiobookconverter/Preset.java
Original file line number Diff line number Diff line change
@@ -1,7 +1,5 @@
package uk.yermak.audiobookconverter;

import com.google.gson.Gson;

import java.util.*;

public class Preset extends OutputParameters {
Expand Down Expand Up @@ -29,13 +27,13 @@ public String toString() {


public static List<Preset> loadPresets() {
List<Preset> presets = AppProperties.loadPresets();
List<Preset> presets = AppSetting.loadPresets();
ArrayList<Preset> toStore = new ArrayList<>(defaultValues);
toStore.removeAll(presets);
for (Preset preset : toStore) {
AppProperties.savePreset(preset);
AppSetting.savePreset(preset);
}
return AppProperties.loadPresets();
return AppSetting.loadPresets();

}

Expand Down Expand Up @@ -63,14 +61,14 @@ public static Preset copy(String presetName, Preset copy) {
}

public static Preset instance(String presetName) {
Preset preset = AppProperties.loadPreset(presetName);
Preset preset = AppSetting.loadPreset(presetName);
if (preset != null) return preset;

return new Preset(presetName, new OutputParameters());
}

private void savePreset() {
AppProperties.savePreset(this);
AppSetting.savePreset(this);
}


Expand Down
12 changes: 6 additions & 6 deletions src/main/java/uk/yermak/audiobookconverter/Utils.java
Original file line number Diff line number Diff line change
Expand Up @@ -45,7 +45,7 @@ public static void closeSilently(Process process) {
}

public static String renderChapter(Chapter chapter, Map<String, Function<Chapter, Object>> context) {
String chapterFormat = AppProperties.getProperty("chapter_format");
String chapterFormat = AppSetting.getProperty("chapter_format");
if (chapterFormat == null) {
chapterFormat = "<if(BOOK_NUMBER)><BOOK_NUMBER>. <endif>" +
"<if(BOOK_TITLE)><BOOK_TITLE>. <endif>" +
Expand All @@ -54,7 +54,7 @@ public static String renderChapter(Chapter chapter, Map<String, Function<Chapter
"<if(TAG)><TAG> <endif>" +
"<if(CUSTOM_TITLE)><CUSTOM_TITLE> <endif>" +
"<if(DURATION)> - <DURATION; format=\"%02d:%02d:%02d\"><endif>";
AppProperties.setProperty("chapter_format", chapterFormat);
AppSetting.setProperty("chapter_format", chapterFormat);
}
STGroup g = new STGroupString("");
g.registerRenderer(Number.class, new NumberRenderer());
Expand All @@ -73,10 +73,10 @@ public static String renderChapter(Chapter chapter, Map<String, Function<Chapter


public static String getOuputFilenameSuggestion(AudioBookInfo bookInfo) {
String filenameFormat = AppProperties.getProperty("filename_format");
String filenameFormat = AppSetting.getProperty("filename_format");
if (filenameFormat == null) {
filenameFormat = "<WRITER> <if(SERIES)> - [<SERIES><if(BOOK_NUMBER)> - <BOOK_NUMBER; format=\"%,02d\"><endif>] <endif> - <TITLE><if(NARRATOR)> (<NARRATOR>)<endif>";
AppProperties.setProperty("filename_format", filenameFormat);
AppSetting.setProperty("filename_format", filenameFormat);
}

STGroup g = new STGroupString("");
Expand Down Expand Up @@ -146,15 +146,15 @@ public static String tempCopy(String fileName) {
}

public static String renderPart(Part part, Map<String, Function<Part, Object>> context) {
String partFormat = AppProperties.getProperty("part_format");
String partFormat = AppSetting.getProperty("part_format");
if (partFormat == null) {
partFormat = "<if(WRITER)><WRITER> <endif>" +
"<if(SERIES)>- [<SERIES><if(BOOK_NUMBER)> -<BOOK_NUMBER><endif>] - <endif>" +
"<if(TITLE)><TITLE><endif>" +
"<if(NARRATOR)> (<NARRATOR>)<endif>" +
"<if(YEAR)>-<YEAR><endif>" +
"<if(PART)>, Part <PART; format=\"%,03d\"><endif>";
AppProperties.setProperty("part_format", partFormat);
AppSetting.setProperty("part_format", partFormat);
}

STGroup g = new STGroupString("");
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -44,7 +44,7 @@ private void initialize() {
@FXML
private void addImage(ActionEvent actionEvent) {
FileChooser fileChooser = new FileChooser();
String sourceFolder = AppProperties.getProperty("source.folder");
String sourceFolder = AppSetting.getProperty("source.folder");
fileChooser.setInitialDirectory(Platform.getInitialDirecotory(sourceFolder));
fileChooser.setTitle("Select JPG or PNG file");
fileChooser.getExtensionFilters().addAll(
Expand Down
Original file line number Diff line number Diff line change
@@ -1,8 +1,6 @@
package uk.yermak.audiobookconverter.fx;

import javafx.application.Platform;
import javafx.beans.InvalidationListener;
import javafx.beans.Observable;
import javafx.collections.ListChangeListener;
import javafx.collections.ObservableList;
import javafx.fxml.FXML;
Expand All @@ -13,7 +11,7 @@
import javafx.scene.control.MenuItem;
import javafx.scene.control.TextField;
import org.apache.commons.lang3.StringUtils;
import uk.yermak.audiobookconverter.AppProperties;
import uk.yermak.audiobookconverter.AppSetting;
import uk.yermak.audiobookconverter.AudioBookInfo;
import uk.yermak.audiobookconverter.AudiobookConverter;
import uk.yermak.audiobookconverter.MediaInfo;
Expand Down Expand Up @@ -48,13 +46,13 @@ private void initialize() {

MenuItem menuItem = new MenuItem("Remove");

genre.setItems(AppProperties.loadGenres());
genre.setItems(AppSetting.loadGenres());
menuItem.setOnAction(event -> {
String remove = genre.getItems().get(genre.getSelectionModel().getSelectedIndex());
AppProperties.removeGenre(remove);
genre.setItems(AppProperties.loadGenres());
AppSetting.removeGenre(remove);
genre.setItems(AppSetting.loadGenres());
});
AudiobookConverter.getContext().addContextDetachListener(observable -> genre.setItems(AppProperties.loadGenres()));
AudiobookConverter.getContext().addContextDetachListener(observable -> genre.setItems(AppSetting.loadGenres()));

ContextMenu contextMenu = new ContextMenu(menuItem);

Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -93,7 +93,7 @@ public ConversionGroup detach() {
conversionGroup.setBookInfo(bookInfo.get());
conversionGroup.setOutputParameters(new OutputParameters(outputParameters.get()));
conversionGroup.setDetached(true);
AppProperties.saveGenres(bookInfo.get().genre().get());
AppSetting.saveGenres(bookInfo.get().genre().get());

ConversionGroup newConversionGroup = new ConversionGroup();
conversionGroupHolder.set(newConversionGroup);
Expand Down
12 changes: 6 additions & 6 deletions src/main/java/uk/yermak/audiobookconverter/fx/DialogHelper.java
Original file line number Diff line number Diff line change
Expand Up @@ -32,7 +32,7 @@ static String selectOutputFile(AudioBookInfo audioBookInfo) {
JfxEnv env = AudiobookConverter.getEnv();

final FileChooser fileChooser = new FileChooser();
String outputFolder = AppProperties.getProperty("output.folder");
String outputFolder = AppSetting.getProperty("output.folder");
fileChooser.setInitialDirectory(Platform.getInitialDirecotory(outputFolder));
fileChooser.setInitialFileName(Utils.getOuputFilenameSuggestion(audioBookInfo));
fileChooser.setTitle("Save AudioBook");
Expand All @@ -42,14 +42,14 @@ static String selectOutputFile(AudioBookInfo audioBookInfo) {
File file = fileChooser.showSaveDialog(env.getWindow());
if (file == null) return null;
File parentFolder = file.getParentFile();
AppProperties.setProperty("output.folder", parentFolder.getAbsolutePath());
AppSetting.setProperty("output.folder", parentFolder.getAbsolutePath());
return file.getPath();
}

public static List<String> selectFilesDialog() {
Window window = AudiobookConverter.getEnv().getWindow();
final FileChooser fileChooser = new FileChooser();
String sourceFolder = AppProperties.getProperty("source.folder");
String sourceFolder = AppSetting.getProperty("source.folder");
fileChooser.setInitialDirectory(Platform.getInitialDirecotory(sourceFolder));
StringJoiner filetypes = new StringJoiner("/");

Expand All @@ -65,15 +65,15 @@ public static List<String> selectFilesDialog() {
if (!files.isEmpty()) {
File firstFile = files.get(0);
File parentFile = firstFile.getParentFile();
AppProperties.setProperty("source.folder", parentFile.getAbsolutePath());
AppSetting.setProperty("source.folder", parentFile.getAbsolutePath());
}
return collectFiles(files);
}

public static List<String> selectFolderDialog() {
Window window = AudiobookConverter.getEnv().getWindow();
DirectoryChooser directoryChooser = new DirectoryChooser();
String sourceFolder = AppProperties.getProperty("source.folder");
String sourceFolder = AppSetting.getProperty("source.folder");
directoryChooser.setInitialDirectory(Platform.getInitialDirecotory(sourceFolder));

StringJoiner filetypes = new StringJoiner("/");
Expand All @@ -84,7 +84,7 @@ public static List<String> selectFolderDialog() {
File selectedDirectory = directoryChooser.showDialog(window);

if (selectedDirectory == null) return null;
AppProperties.setProperty("source.folder", selectedDirectory.getAbsolutePath());
AppSetting.setProperty("source.folder", selectedDirectory.getAbsolutePath());

return collectFiles(Collections.singleton(selectedDirectory));
}
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -2,8 +2,6 @@

import javafx.application.Platform;
import javafx.beans.InvalidationListener;
import javafx.beans.value.ChangeListener;
import javafx.beans.value.ObservableValue;
import javafx.collections.ObservableList;
import javafx.event.ActionEvent;
import javafx.fxml.FXML;
Expand Down Expand Up @@ -119,11 +117,11 @@ private void initialize() {
if (!presetBox.getItems().contains(newValue)) {
presetBox.getItems().add(newValue);
Preset preset = Preset.copy(newValue, Preset.instance(oldValue));
AppProperties.savePreset(preset);
AppSetting.savePreset(preset);
AudiobookConverter.getContext().setOutputParameters(preset);
} else {
Preset preset = Preset.instance(newValue);
AppProperties.savePreset(preset);
AppSetting.savePreset(preset);
AudiobookConverter.getContext().setOutputParameters(preset);
}
});
Expand Down