POSTBUCKET - where random posts in unrelated topics go
Re: [Anime] Convert Absolute to SxE numbers
Re: [JDownloader] Setup for Windows, Linux and Mac OS X
Code: Select all
var script = JD_HOME + '/jdownloader-postprocess.cmd'
var path = package.getDownloadFolder()
var name = package.getName()
var label = package.getComment() ? package.getComment() : 'N/A'
var links = package.getDownloadLinks() ? package.getDownloadLinks() : []
function isReallyFinished() {
for (var i = 0; i < links.length; i++) {
if (links[i].getArchive() != null && links[i].getExtractionStatus() != "SUCCESSFUL" || !package.isFinished()) {
return false
}
}
return true
}
while (!isReallyFinished()) {}
var command = [script, path, name, label, 'PACKAGE_FINISHED']
log(command)
log(callSync(command))-
Kopernikus
- Posts: 34
- Joined: 03 Feb 2019, 20:07
Re: Plex Naming Schemes
If I use:
Code: Select all
{plex.derive {" [$vf.$vc.$ac]"}}
Code: Select all
/volume1/video/Movies/xXx (2002)/xXx (2002) [480p.x264.AC3].mkvCode: Select all
/volume1/video/Movies/xXx (2002) [480p.x264.AC3]/xXx (2002) [480p.x264.AC3].mkv
Code: Select all
/volume1/video/Movies/xXx (2002) [480p.x264.AC3]/xXx (2002).mkvThx
Re: Plex Naming Schemes
You'll either have to
(A) write your own custom format without using the {plex} binding at all, or
(B) write your own custom format using bits and pieces of the {plex} binding as necessary.
e.g.
Code: Select all
Movies/{plex[1]}{" [$vf.$vc.$ac]"}/{plex[2]}{" [$vf.$vc.$ac]"}Re: [DEB] Debian package
Code: Select all
# bash -xu <<< "$(curl -fsSL https://raw.githubusercontent.com/filebot/plugins/master/installer/deb.sh)"
+ curl -fsSL https://raw.githubusercontent.com/filebot/plugins/master/gpg/maintainer.pub
+ sudo apt-key add -
OK
+ echo 'deb [arch=amd64] https://get.filebot.net/deb/ stable main'
+ sudo tee /etc/apt/sources.list.d/filebot.list
deb [arch=amd64] https://get.filebot.net/deb/ stable main
+ sudo apt-get update
Ign:1 https://get.filebot.net/deb stable InRelease
Hit:2 http://ftp.ca.debian.org/debian buster InRelease
Hit:3 https://get.filebot.net/deb stable Release
Hit:4 http://security.debian.org/debian-security buster/updates InRelease
Hit:5 http://ppa.launchpad.net/papirus/papirus/ubuntu bionic InRelease
Err:6 https://get.filebot.net/deb stable Release.gpg
Signed file isn't valid, got 'NODATA' (does the network require authentication?)
Reading package lists... Done
W: An error occurred during the signature verification. The repository is not updated and the previous index files will be used. GPG error: https://get.filebot.net/deb stable Release: Signed file isn't valid, got 'NODATA' (does the network require authentication?)
W: Failed to fetch https://get.filebot.net/deb/dists/stable/Release.gpg Signed file isn't valid, got 'NODATA' (does the network require authentication?)
W: Some index files failed to download. They have been ignored, or old ones used instead.
+ sudo apt-get install filebot
Reading package lists... Done
Building dependency tree
Reading state information... Done
0 upgraded, 0 newly installed, 0 to remove and 0 not upgraded.Re: [DEB] Debian package
https://get.filebot.net/deb/dists/
Re: [DEB] Debian package
Thanks!
Re: [DEB] Debian package
viewtopic.php?f=6&t=9535
Re: [TAR] How to install FileBot on Linux / FreeBSD / Solaris / any Unix OS
Re: [TAR] How to install FileBot on Linux / FreeBSD / Solaris / any Unix OS
Why would you wrestle with Java 11 when Java 8 is recommended and easily available?
Re: [SNAP] Grant access to /media or /mnt
I have NFS shares automounted to "/mount/servername/films" via NFS.
The "/mount" directory does not even show in the "Load" listing of directories.
I have enabled the removable-media and dev options. No luck.
I have has filebot installed for years. I think this used to work.
Any suggestions?
Re: [SNAP] Grant access to /media or /mnt
viewtopic.php?f=11&t=6028
-
rollingdye
- Posts: 1
- Joined: 20 Feb 2019, 11:20
Re: [SNAP] Grant access to /media or /mnt
The flags seem to be correct though since snap list shows them here:
filebot 4.8.5 22 edge filebot devmode
When clicking "Rename" I still get "AccessDeniedException: /mnt/Media/....".
Edit: Fixed it. The problem was that the mounted directory's ownership was set to root. After changing the owner to my username it works now.
Re: Choose Java Swing Look-and-Feel (e.g. Dark Mode)
Re: Choose Java Swing Look-and-Feel (e.g. Dark Mode)
- Open Start Menu and search for Set Environment Variables
- Click on New
Name:Value:Code: Select all
FILEBOT_OPTSCode: Select all
-Dnet.filebot.theme=Darcula - Click OK and then relaunch FileBot.
Re: Choose Java Swing Look-and-Feel (e.g. Dark Mode)
-
shreyas1122
- Posts: 2
- Joined: 19 Apr 2017, 01:31
Re: MediaInfo Inspector
i tried printing the framerate on the gui and then comparing as float num and string, but it always returns a 'false' : {video[0].frameRate > 1.0 }
Any help ??
Thanks (Y)
Re: MediaInfo Inspector
Code: Select all
video[0].frameRate.toFloat() > 1.0Re: [SNAP] Grant access to /media or /mnt
ie. Downloads, Picture, Videos ...... everything has been assigned to /Server/Download, /Server/Pictures, /Server/Videos etc
All the directories can be seen by filebot but all the files are greyed out and the /Server directory cannot be seen.
Filebot 4.7.9 still works fine and I'm not after a refund as I have used your program for years so I'm happy to pay.
Re: [SNAP] Grant access to /media or /mnt
viewtopic.php?f=11&t=6028
Re: Q&A for n00bs
I am currently switching to transmission with openvpn in a docker container on my Synology (DSM 6).
Before I used the Synology default download station and used the amc script to take care of completed downloads. That worked really well.
I tried to setup transmission in the same way, but I don't think transmission is currently able to run the filebot script at all. I can see in the transmission log file that the script is called after a download is completed, but the script is not actually running successfully.
I tried to set the right permissions for the script and changed the location of the script to the docker container, but that did not resolve my issue. When I tried to run a command inside the docker container I noticed that filebot command cannot be found: "bash: filebot: command not found".
As I am pretty new to all things regarding docker, could you guide me in any way to let the docker container access filebot? Do I have to alter the $Path settings?
Thanks and kind regards
Re: Q&A for n00bs
It sounds like you didn't install FileBot in this particular image.
Re: Q&A for n00bs
So can I install filebot as a package into my existing docker container, or do I have to create a new docker image with filebot as a dependency?
Re: Q&A for n00bs
Re: Discord / Slack / IRC Channel
Is it still active?
Re: Discord / Slack / IRC Channel
-
JustOneOfMany
- Posts: 4
- Joined: 09 Apr 2019, 10:02
Change from Upper case to Lower Case a part of s00e00
I am new to Filebot and I am trying to figure out how to manipulate the output:
my preset is {n} {y} {s00e00} {t} which gives me the following output
MyName 2019 S01E01 First Try
but I would like to have the resulting output
MyName 2019 S01e01 First Try
Tried lower() etc to no avail. I am certainly missing something.
What is the fastest way of obtaining S01e01 instead of S01E01
Thank you in advance
Re: Presets
Code: Select all
s00e00.replace('E', 'e')Re: Discord / Slack / IRC Channel
-
GrEaTwArRiOr
- Posts: 4
- Joined: 07 Sep 2017, 05:15
Re: [JDownloader] Setup for Windows, Linux and Mac OS X
i am a purchased user
here is my log below
Code: Select all
Locking C:\Users\WAVE111\AppData\Roaming\FileBot\logs\amc.log
Run script [fn:amc] at [Sun Apr 14 14:08:00 AEST 2019]
Parameter: skipExtract = y
Parameter: unsorted = y
Parameter: music = n
Parameter: artwork = n
Parameter: excludeList = excludes.txt
Parameter: ut_dir =
Parameter: ut_kind = multi
Parameter: ut_title =
Parameter: ut_label =
Argument[0]: D:\jDownload\extracted\test
Use excludes: D:\test\excludes.txt
Input: D:\jDownload\extracted\test\tests.mp4
xattr: [test.mp4] => [WWW - 2019x123 - April 2, 2019]
Group: [Series:test] => [test.mp4]
Rename episodes using [TheTVDB]please advise
thanks and regards,
Gr
Re: [JDownloader] Setup for Windows, Linux and Mac OS X
-
GrEaTwArRiOr
- Posts: 4
- Joined: 07 Sep 2017, 05:15
Re: [JDownloader] Setup for Windows, Linux and Mac OS X
-
GrEaTwArRiOr
- Posts: 4
- Joined: 07 Sep 2017, 05:15
Re: [JDownloader] Setup for Windows, Linux and Mac OS X
Re: [JDownloader] Setup for Windows, Linux and Mac OS X
Re: Exclude Blacklist & Series-Mappings
Thank you
Re: Exclude Blacklist & Series-Mappings
Please post file paths (and logs or screenshots) of files you're having trouble with.
-
Vartikanshi579
- Posts: 1
- Joined: 02 May 2019, 11:51
Re: [Anime] Convert Absolute to SxE numbers
Re: Q&A for n00bs
Is there an amc script command that works with just checking a download folder on schedule and running the renames to output to another folder - then running again 5 min later? Most of the routines posted seem to be focused on torrent scripting, but since I'm running my deluge in a docker those wouldn't work, not passing any commands. I just need a watcher.
Just have filebot installed to Ubuntu as normal. Would something like this, run on a schedule work? Are there any issues with it not completing in time before the next scheduled run - I'm doing local > local copies.
Code: Select all
filebot -script fn:amc --output "\download" --action copy -non-strict "\renamed" --log-file amc.logRe: Q&A for n00bs
Linux is very powerful. There are many ways to schedule commands. There might even be GUI apps that make it especially easy. Google will help.
The general universal answer is to just use cron:
https://help.ubuntu.com/community/CronHowto
If you run this script automatically in intervals every hour or every day, then you must set --def excludeList or you will get banned.rednoah wrote: 01 Aug 2012, 13:04 If you run this script automatically in intervals every hour or every day, then you must set --def excludeList or you will get banned.
I recommend getting started with the example in the documentation:
Code: Select all
filebot -script fn:amc --output "/path/to/output" --action duplicate -non-strict "/path/to/input" --log-file amc.log --def excludeList=amc.txt2.
The filebot-watcher docker container might be what you're looking for:
https://hub.docker.com/r/rednoah/filebot/
e.g.
Code: Select all
docker run -it -v /path/to/my/folder:/volume1 -v data:/data rednoah/filebot:watcher /volume1/input --output /volume1/output --action duplicate -non-strict --log-file /volume1/amc.log --def excludeList=/volume1/amc.excludesRe: [RPM] Fedora package
Code: Select all
- nothing provides java-1.8.0-openjdk-openjfx needed by filebot-4.8.5-universal.jdk8.noarch
the .deb packages only recommends openjfx.
Im searching for 2 hours for a CentOS 7 Repo which provide the "java-1.8.0-openjdk-openjfx" as package - i give up.
Re: [DEB] Debian package
Code: Select all
W: GPG error: https://get.filebot.net/deb universal Release: Detached signature file '/var/lib/apt/lists/partial/get.filebot.net_deb_dists_universal_Release.gpg' is in unsupported binary format
Failed > deb https://get.filebot.net/deb/ universal main
Failed > deb [arch=amd64] https://get.filebot.net/deb/ stable main
they key is installed
Code: Select all
root@debian:/etc/apt# apt-key adv --fetch-keys https://get.filebot.net/filebot/KEYS
Executing: /tmp/apt-key-gpghome.3sjEk5Kz9e/gpg.1.sh --fetch-keys https://get.filebot.net/filebot/KEYS
gpg: requesting key from 'https://get.filebot.net/filebot/KEYS'
gpg: key 4E402EBF7C3C6A71: 4 signatures not checked due to missing keys
gpg: key 4E402EBF7C3C6A71: "Reinhard Pointner <[email protected]>" not changed
gpg: Total number processed: 1
gpg: unchanged: 1
Re: [RPM] Fedora package
Since some of these dependency are optional, or can be provided by the user manually, Requires is not ideal, but since there's no Recommends AFAIK, this is what we've got:
Code: Select all
Requires: java-1.8.0-openjdk
Requires: java-1.8.0-openjdk-openjfx
Requires: jna
Requires: mediainfo
Requires: p7zip
Requires: p7zip-pluginsEDIT:
I've found some other key words in some other docs. I guess Recommends is possible. Will use Recommends for upcoming builds.
Re: [RPM] Fedora package
*edit*
yes, this works, thank you!
Re: [DEB] Debian package
Code: Select all
Hit:4 https://get.filebot.net/deb stable Release
Reading package lists... Done
Building dependency tree
Reading state information... DoneEDIT:
There seems to be a recent change that requires ascii-armoured signature files.
Re: [Anime] Convert Absolute to SxE numbers
Re: [EVAL] Split code into external *.groovy script files
I had resorted to mustache templates (here) and they may still be useful for some cases (secret variables, credentials etc.) but this is definitely simpler.
-
christhirteen13
- Posts: 1
- Joined: 29 May 2019, 23:00
Re: [JDownloader] Setup for Windows, Linux and Mac OS X
Code: Select all
Run script [fn:amc] at [Thu May 30 13:53:06 CEST 2019]
Parameter: skipExtract = y
Parameter: unsorted = y
Parameter: music = y
Parameter: artwork = y
Parameter: excludeList = excludes.txt
Parameter: ut_dir = D:\Downloads\suitsDEBDTE302
Parameter: ut_kind = multi
Parameter: ut_title = suitsDEBDTE302
Parameter: ut_label = N/A
Use excludes: C:\Users\caserv01-media\Media\excludes.txt
No files selected for processing
Done ¯\_(ツ)_/¯Re: [JDownloader] Setup for Windows, Linux and Mac OS X
Have you tried the usual amc script troubleshooting?
viewtopic.php?f=4&t=215
-
absoluthamburg
- Posts: 1
- Joined: 30 May 2019, 13:07
Re: [Mac] Folder Action with Automator
just a small question regarding the quick action "rename with filebot". It works great overall but how I can change the language of the pulled title. In filebot it self I pull the German name but via the quick action it pulls the English name.
It is possible to change the language of the quick action?
Re: [Mac] Folder Action with Automator
Re: [DOCS] FileBot Groovy Expression References
They're a real eye opener, for example I had no idea String.match() could accept a map.
Re: [DOCS] FileBot Groovy Expression References
-
redbull666
- Donor
- Posts: 58
- Joined: 08 Jan 2014, 20:45
Re: MediaInfo Inspector
Example 1 (OK): https://paste.gg/p/anonymous/f8d52f198a ... d6402ffae3 (seen in the BluRay-1080p tag)
Example 2 (not OK) https://paste.gg/p/anonymous/8691f9399e ... 949c3ebbf2 (see the -2160p tag)
I wonder why 1 works, and not 2. What is different exactly?
I updated Mediainfo to the repo provided by Mediainfo, but that was after, not sure that helps.
Re: MediaInfo Inspector
-
redbull666
- Donor
- Posts: 58
- Joined: 08 Jan 2014, 20:45
Re: MediaInfo Inspector
Aaah ok, still I did not get a valid source from the release with this filename:rednoah wrote: 09 Jun 2019, 07:37 {source} is not a MediaInfo binding. {source} is based primary on the filename, i.e. if the filename contains BluRay then {source} will be BluRay, if the filename is abc.mp4 then {source} will be undefined.
Django Unchained (2012) (1080p BluRay x265 HEVC 10bit AAC 5.1 Silence)
Re: MediaInfo Inspector
Code: Select all
$ filebot -mediainfo . --format "[{source}] {fn}"
[BluRay] Django Unchained (2012) (1080p BluRay x265 HEVC 10bit AAC 5.1 Silence)-
redbull666
- Donor
- Posts: 58
- Joined: 08 Jan 2014, 20:45
Re: MediaInfo Inspector
Right, I should have looked closer in the log...rednoah wrote: 10 Jun 2019, 15:50 {source} does work for this one:Code: Select all
$ filebot -mediainfo . --format "[{source}] {fn}" [BluRay] Django Unchained (2012) (1080p BluRay x265 HEVC 10bit AAC 5.1 Silence)
Some shitty Featurettes messed with this one...Auto-detect movie from context: [/mnt/slow/torrents/media_downloads/Django Unchained (2012) (1080p BluRay x265 HEVC 10bit AAC 5.1 Silence)/Featurettes/The Costume Designs of Sharen Davis.mkv]
[HARDLINK] from [/mnt/slow/torrents/media_downloads/Django Unchained (2012) (1080p BluRay x265 HEVC 10bit AAC 5.1 Silence)/Django Unchained (2012) (1080p BluRay x265 Silence).mkv] to [/mnt/slow/media/Movies/Django Unchained (2012)/Django Unchained (2012) [x265, Blu-ray-1080p, AAC-5.1, KRaLiMaRKo].mkv]
[HARDLINK] from [/mnt/slow/torrents/media_downloads/Django Unchained (2012) (1080p BluRay x265 HEVC 10bit AAC 5.1 Silence)/Featurettes/Reimagining the Spaghetti - Western The Horses And Stunts of Django Unchained.mkv] to [/mnt/slow/media/Movies/Django Unchained (2012)/Django Unchained (2012) [x265, -1080p, AAC-2.0, ].mkv]
[OVERRIDE] Delete [/mnt/slow/media/Movies/Django Unchained (2012)/Django Unchained (2012) [x265, -1080p, AAC-2.0, ].mkv]
Thanks for the help!
Re: [JDownloader] Setup for Windows, Linux and Mac OS X
after some hours of troubleshooting I have a question and would appreciate your help.
My setup is a OMV Host that runs a jdownloader docker instance. Filebot is installed on the OMV host.
The filebot script itself runs fine. I needed a way to call the filebot script, so I came up with a sshpass script from the docker instance which logs into the OMV instance to start the filebot script.
The only thing that is currently not working is calling the script from jdownloader, it always gives error code 2: file or directory not found.
After searching I ruled out the most obvious mistakes:
- The script, filebotrun.sh has chmod 777 and executable
- Has unix EOL encoding
- Within the jdownloader docker instance on bash, I can execute the shell script successfully but not from jdownloader itself (path is varied from jdownloader GUI, i can see the filebotrun.sh, so in theory file level access is given
Can you think of any reason why the docker jdownloader instance cannot access the shell script?
Thank you in advance for your help
Code: Select all
var script = JD_HOME + '/filebotrun.sh'
var path = package.getDownloadFolder()
var name = package.getName()
var label = package.getComment() ? package.getComment() : 'N/A'
var links = package.getDownloadLinks() ? package.getDownloadLinks() : []
function isReallyFinished() {
for (var i = 0; i < links.length; i++) {
if (links[i].getArchive() != null && links[i].getExtractionStatus() != "SUCCESSFUL" || !package.isFinished()) {
return false
}
}
return true
}
if (isReallyFinished()) {
var command = [script, path, name, label, 'PACKAGE_FINISHED']
log(command)
log(callSync(command))
}Shell script filebotrun.sh:
Code: Select all
#!/bin/bash
LOG="/sharedfolders/Storage/logs/amc.log"
EXC="/sharedfolders/Storage/logs/amc.txt"
SERIEN="/sharedfolders/plexroot/{plex}"
FILME="/sharedfolders/plexroot/{plex}"
USERNAME=root
HOSTS="172.17.0.1"
SCRIPT="filebot -script fn:amc --output "/sharedfolders/plexroot" --def movieformat="/sharedfolders/plexroot/{plex}" --def seriesformat="/sharedfolders/plexroot/{plex}" --action move --conflict auto -non-strict --log-file $LOG --def skipExtract=y unsorted=n music=n artwork=y --def storeReport=y --def clean=y --def plex=192.168.78.58:42Y97c6VATxkqyiNScD7 "
for HOSTNAME in ${HOSTS} ; do
sshpass -p "pwd" ssh -o StrictHostKeyChecking=no -l ${USERNAME} ${HOSTNAME} "${SCRIPT}"
doneRe: [JDownloader] Setup for Windows, Linux and Mac OS X
If you're stuck with docker confinement, then i recommend using JD docker and FileBot Node docker.
Then you can create a scheduled task in the FileBot Node docker and execute it via curl from the JD docker.
That'll decoupling everything, making it easy to spot and fix issues.
2.
Is your *.sh script ever called by JD at all? If no, what does the JD log say? If yes, what does the output say?
Re: [JDownloader] Setup for Windows, Linux and Mac OS X
I'll will check the Filebot node docker, thank you.
Below is the error from the log, even when I validate the script in the jdownloader GUI it says no file or directory but I rly dont get it.
Code: Select all
net.sourceforge.htmlunit.corejs.javascript.WrappedException: Wrapped org.jdownloader.extensions.eventscripter.EnvironmentException: Line 20
java.io.IOException: Cannot run program "/config/filebotrun.sh": error=2, No such file or directory
at java.lang.ProcessBuilder.start(ProcessBuilder.java:1048)
at org.appwork.utils.processes.ProcessBuilderFactory.runCommand(ProcessBuilderFactory.java:215)
at org.appwork.utils.processes.ProcessBuilderFactory.runCommand(ProcessBuilderFactory.java:201)
at org.appwork.utils.processes.ProcessBuilderFactory.runCommand(ProcessBuilderFactory.java:196)
at org.jdownloader.extensions.eventscripter.sandboxobjects.ScriptEnvironment.callSync(ScriptEnvironment.java:263)
at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
at sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:62)
at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43)
at java.lang.reflect.Method.invoke(Method.java:498)
at net.sourceforge.htmlunit.corejs.javascript.MemberBox.invoke(MemberBox.java:120)
at net.sourceforge.htmlunit.corejs.javascript.NativeJavaMethod.call(NativeJavaMethod.java:213)
at net.sourceforge.htmlunit.corejs.javascript.Interpreter.interpretLoop(Interpreter.java:1531)
at script(:20)
at net.sourceforge.htmlunit.corejs.javascript.Interpreter.interpret(Interpreter.java:798)
at net.sourceforge.htmlunit.corejs.javascript.InterpretedFunction.call(InterpretedFunction.java:105)
at net.sourceforge.htmlunit.corejs.javascript.ContextFactory.doTopCall(ContextFactory.java:411)
at org.jdownloader.scripting.JSHtmlUnitPermissionRestricter$SandboxContextFactory.doTopCall(JSHtmlUnitPermissionRestricter.java:119)
at net.sourceforge.htmlunit.corejs.javascript.ScriptRuntime.doTopCall(ScriptRuntime.java:3057)
at net.sourceforge.htmlunit.corejs.javascript.InterpretedFunction.exec(InterpretedFunction.java:115)
at net.sourceforge.htmlunit.corejs.javascript.Context.evaluateString(Context.java:1212)
at org.jdownloader.extensions.eventscripter.ScriptThread.evalUNtrusted(ScriptThread.java:275)
at org.jdownloader.extensions.eventscripter.ScriptThread.executeScipt(ScriptThread.java:167)
at org.jdownloader.extensions.eventscripter.ScriptThread.run(ScriptThread.java:147)
Caused by: java.io.IOException: error=2, No such file or directory
at java.lang.UNIXProcess.forkAndExec(Native Method)
at java.lang.UNIXProcess.<init>(UNIXProcess.java:247)
at java.lang.ProcessImpl.start(ProcessImpl.java:134)
at java.lang.ProcessBuilder.start(ProcessBuilder.java:1029)
... 21 more
(#20)
at net.sourceforge.htmlunit.corejs.javascript.Context.throwAsScriptRuntimeEx(Context.java:1907)
at net.sourceforge.htmlunit.corejs.javascript.MemberBox.invoke(MemberBox.java:146)
at net.sourceforge.htmlunit.corejs.javascript.NativeJavaMethod.call(NativeJavaMethod.java:213)
at net.sourceforge.htmlunit.corejs.javascript.Interpreter.interpretLoop(Interpreter.java:1531)
at net.sourceforge.htmlunit.corejs.javascript.Interpreter.interpret(Interpreter.java:798)
at net.sourceforge.htmlunit.corejs.javascript.InterpretedFunction.call(InterpretedFunction.java:105)
at net.sourceforge.htmlunit.corejs.javascript.ContextFactory.doTopCall(ContextFactory.java:411)
at org.jdownloader.scripting.JSHtmlUnitPermissionRestricter$SandboxContextFactory.doTopCall(JSHtmlUnitPermissionRestricter.java:119)
at net.sourceforge.htmlunit.corejs.javascript.ScriptRuntime.doTopCall(ScriptRuntime.java:3057)
at net.sourceforge.htmlunit.corejs.javascript.InterpretedFunction.exec(InterpretedFunction.java:115)
at net.sourceforge.htmlunit.corejs.javascript.Context.evaluateString(Context.java:1212)
at org.jdownloader.extensions.eventscripter.ScriptThread.evalUNtrusted(ScriptThread.java:275)
at org.jdownloader.extensions.eventscripter.ScriptThread.executeScipt(ScriptThread.java:167)
at org.jdownloader.extensions.eventscripter.ScriptThread.run(ScriptThread.java:147)
Caused by: org.jdownloader.extensions.eventscripter.EnvironmentException: Line 20
java.io.IOException: Cannot run program "/config/filebotrun.sh": error=2, No such file or directory
at java.lang.ProcessBuilder.start(ProcessBuilder.java:1048)
at org.appwork.utils.processes.ProcessBuilderFactory.runCommand(ProcessBuilderFactory.java:215)
at org.appwork.utils.processes.ProcessBuilderFactory.runCommand(ProcessBuilderFactory.java:201)
at org.appwork.utils.processes.ProcessBuilderFactory.runCommand(ProcessBuilderFactory.java:196)
at org.jdownloader.extensions.eventscripter.sandboxobjects.ScriptEnvironment.callSync(ScriptEnvironment.java:263)
at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
at sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:62)
at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43)
at java.lang.reflect.Method.invoke(Method.java:498)
at net.sourceforge.htmlunit.corejs.javascript.MemberBox.invoke(MemberBox.java:120)
at net.sourceforge.htmlunit.corejs.javascript.NativeJavaMethod.call(NativeJavaMethod.java:213)
at net.sourceforge.htmlunit.corejs.javascript.Interpreter.interpretLoop(Interpreter.java:1531)
at net.sourceforge.htmlunit.corejs.javascript.Interpreter.interpret(Interpreter.java:798)
at net.sourceforge.htmlunit.corejs.javascript.InterpretedFunction.call(InterpretedFunction.java:105)
at net.sourceforge.htmlunit.corejs.javascript.ContextFactory.doTopCall(ContextFactory.java:411)
at org.jdownloader.scripting.JSHtmlUnitPermissionRestricter$SandboxContextFactory.doTopCall(JSHtmlUnitPermissionRestricter.java:119)
at net.sourceforge.htmlunit.corejs.javascript.ScriptRuntime.doTopCall(ScriptRuntime.java:3057)
at net.sourceforge.htmlunit.corejs.javascript.InterpretedFunction.exec(InterpretedFunction.java:115)
at net.sourceforge.htmlunit.corejs.javascript.Context.evaluateString(Context.java:1212)
at org.jdownloader.extensions.eventscripter.ScriptThread.evalUNtrusted(ScriptThread.java:275)
at org.jdownloader.extensions.eventscripter.ScriptThread.executeScipt(ScriptThread.java:167)
at org.jdownloader.extensions.eventscripter.ScriptThread.run(ScriptThread.java:147)
Caused by: java.io.IOException: error=2, No such file or directory
at java.lang.UNIXProcess.forkAndExec(Native Method)
at java.lang.UNIXProcess.<init>(UNIXProcess.java:247)
at java.lang.ProcessImpl.start(ProcessImpl.java:134)
at java.lang.ProcessBuilder.start(ProcessBuilder.java:1029)
... 21 more
at org.jdownloader.extensions.eventscripter.sandboxobjects.ScriptEnvironment.callSync(ScriptEnvironment.java:266)
at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
at sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:62)
at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43)
at java.lang.reflect.Method.invoke(Method.java:498)
at net.sourceforge.htmlunit.corejs.javascript.MemberBox.invoke(MemberBox.java:120)
... 12 more
Caused by: java.io.IOException: Cannot run program "/config/filebotrun.sh": error=2, No such file or directory
at java.lang.ProcessBuilder.start(ProcessBuilder.java:1048)
at org.appwork.utils.processes.ProcessBuilderFactory.runCommand(ProcessBuilderFactory.java:215)
at org.appwork.utils.processes.ProcessBuilderFactory.runCommand(ProcessBuilderFactory.java:201)
at org.appwork.utils.processes.ProcessBuilderFactory.runCommand(ProcessBuilderFactory.java:196)
at org.jdownloader.extensions.eventscripter.sandboxobjects.ScriptEnvironment.callSync(ScriptEnvironment.java:263)
... 17 more
Caused by: java.io.IOException: error=2, No such file or directory
at java.lang.UNIXProcess.forkAndExec(Native Method)
at java.lang.UNIXProcess.<init>(UNIXProcess.java:247)
at java.lang.ProcessImpl.start(ProcessImpl.java:134)
at java.lang.ProcessBuilder.start(ProcessBuilder.java:1029)
... 21 moreRe: [JDownloader] Setup for Windows, Linux and Mac OS X
after looking at Filebot node, I would just use the filebot watcher to monitor my jdownloader extraction destination folders and go via amc from there.
That is way easier than I thought in comparison to my sshpass approach between containers lool
Impressive work btw, thank you for the tools mate!
Re: FileBot on the Mac App Store
I have the MAS version, and previously I had install the Homebrew version installed as well in order to run scripts. However I had to uninstall/reinstall Homebrew, but now the Homebrew version wants a license. Has there been a change in the license policy?
Re: FileBot on the Mac App Store
viewtopic.php?f=9&t=6265
You can request a complimentary license if you need to work around Apple limitations:
viewtopic.php?f=8&t=9517
-
OutrageousGem
- Posts: 11
- Joined: 12 Apr 2019, 06:20
Re: [JDownloader] Setup for Windows, Linux and Mac OS X
I ended up with the same idea in my own download setup. But when I try to schedule a task in FileBot Node docker I just get arednoah wrote: 12 Jun 2019, 06:57 1.
If you're stuck with docker confinement, then i recommend using JD docker and FileBot Node docker.
Then you can create a scheduled task in the FileBot Node docker and execute it via curl from the JD docker.
That'll decoupling everything, making it easy to spot and fix issues.
Code: Select all
{"success":false,"error":"NOT IMPLEMENTED"}Re: [JDownloader] Setup for Windows, Linux and Mac OS X
-
OutrageousGem
- Posts: 11
- Joined: 12 Apr 2019, 06:20
Re: [JDownloader] Setup for Windows, Linux and Mac OS X
Re: [JDownloader] Setup for Windows, Linux and Mac OS X
-
OutrageousGem
- Posts: 11
- Joined: 12 Apr 2019, 06:20
Re: [JDownloader] Setup for Windows, Linux and Mac OS X
1, Is it possible to somehow un-schedule a task? Can not find that option.
2, Is there any way to also schedule it to run at a specified time? Currently only a API call seems possible.
Re: [JDownloader] Setup for Windows, Linux and Mac OS X
Yes, but only by directly modifying the FileBot Node application data files, which are stored in /data/.filebot-node (container-point-of-view).
2.
FileBot Node does not include a scheduler. The scheduling of commands is best done with the built-in facilities of the platform, i.e. cron if you're using a generic Linux system.
-
OutrageousGem
- Posts: 11
- Joined: 12 Apr 2019, 06:20
Re: [JDownloader] Setup for Windows, Linux and Mac OS X
2, Just because Node makes it much more convenient to rapidly test different iterations of a command and schedule it when it finally does the right thing. (I am just bad at writing shell scripts. Always some typo / unescaped character / etc....
Re: [JDownloader] Setup for Windows, Linux and Mac OS X
I see. Yes, FileBot Node certainly has value in generating CLI commands. You could always use the WebUI to generate commands and the copy & paste that into your scheduled shell script.OutrageousGem wrote: 17 Jun 2019, 09:37 Just because Node makes it much more convenient to rapidly test different iterations of a command and schedule it when it finally does the right thing. (I am just bad at writing shell scripts. Always some typo / unescaped character / etc....). The API Is all I currently really need.
Re: Exclude Blacklist & Series-Mappings
I missed youre Post and now i have no file paths or logs because of new installation of my system.
Next time, I will send the information as well.
-
nothinghere
- Posts: 8
- Joined: 13 Jul 2014, 18:10
Re: [EVAL] Split code into external *.groovy script files
test.groovy=>
{n}
and then doing movieFormat="{include 'test.groovy'}"
also tested movieFormat="{evaluate('test.groovy' as File)}"
results in an empty name..am I missing something? I may not have understood what should be in the groovy file, but from what I can see it should just be the same expression as we can already use in a one liner format?
*edit 2* updated to 4.8.6, but still getting empty file name
Re: [EVAL] Split code into external *.groovy script files
Code: Select all
nYES:
Code: Select all
{evaluate 'n'}NO:
Code: Select all
{evaluate '{n}'}-
nothinghere
- Posts: 8
- Joined: 13 Jul 2014, 18:10
Re: [EVAL] Split code into external *.groovy script files
Yeah, getting results now. Thanks!
Re: [EVAL] Split code into external *.groovy script files
-
nothinghere
- Posts: 8
- Joined: 13 Jul 2014, 18:10
Re: [EVAL] Split code into external *.groovy script files
However:
Trying to break out certain helpers as separate scripts it seems that there is an issue with loading external scripts unless everything is placed and run from the filebot portable folder (which I'd like to avoid since I have all my scripts backuped to a gdrive synced folder).
If I have a
tags.groovy file that grabs my preferred tag format, I can't seem to get it to load.
I've tried:
include 'getEditions.groovy' // this works fine if I place my groovy files in the lib, but if I run it from where I actually have my files it tries to load it from $CWD
After googling the recommended way is to do:
Code: Select all
def scriptDir = getClass().protectionDomain.codeSource.location.path
include '$scriptDir/getEditions.groovy'Code: Select all
AccessControlException: access denied ("java.lang.RuntimePermission" "getProtectionDomain")Even doing:
Code: Select all
grant {
permission java.security.AllPermission;
};Is there some additional arguments I can give filebot to figure out which path to load files from, or is it all handled by the JVM?
Re: [EVAL] Split code into external *.groovy script files
Your code just doesn't do what you think it does:
Code: Select all
def x = 1
println '$x = 1' // $x = 1
println "$x = 1" // 1 = 12.
I'd use environment variables if I wanted to pass in some common folder paths for use in custom scripts:
Code: Select all
export FILEBOT_FORMAT_D="$HOME/.gdrive/FileBot Formats"Code: Select all
_environment.FILEBOT_FORMAT_DCode: Select all
filebot ... --def FormatFolder="$FILEBOT_FORMAT_D"Code: Select all
{defines.FormatFolder}Re: [EVAL] Split code into external *.groovy script files
-
nothinghere
- Posts: 8
- Joined: 13 Jul 2014, 18:10
Re: [EVAL] Split code into external *.groovy script files
Great!rednoah wrote: 22 Jun 2019, 04:56 FileBot r6524 will now resolve include("files.groovy") relatively to the current script file by default.
Thanks for pointing out that string interpolation thing, completely missed the single quotes difference (still threw the security exception but that's irrelevant now I guess).
The --def was exactly what I was thinking of as a workaround.
Thanks for the help!
Re: Metadata and Extended Attributes
is there any option to add filebot xattr to already sorted files?
eg, i have multiple series where on some seasons the xattr from filebot are missing, so ne the " filebot missing script" does not work correct and think the season is missing.
Re: Metadata and Extended Attributes
You can find files without xattr metadata like so:
Code: Select all
filebot -mediainfo . --filter '!f.metadata' --format {f}Re: Metadata and Extended Attributes
thats the first thing i did, but filebot says "Skipped, already exists".
Re: Metadata and Extended Attributes
You can move all untagged files elsewhere first:
Code: Select all
filebot -mediainfo . --filter '!f.metadata' -exec mv -v {f} /path/to/untagged/files/{f.name}2.
However, the general smart approach is to never touch files in your Media folder, and only ever move files there via FileBot. That way you can ensure that everything is always in perfect order.
i.e. just process all your files into a new folder, and then remove the old one if you're happy with the new one
Code: Select all
--format /path/to/new/folder/{plex}Re: [BTC] Purchase FileBot with Crypto Currency
-
eggsplorer
- Posts: 12
- Joined: 21 Jun 2019, 23:05
Re: [JDownloader] Setup for Windows, Linux and Mac OS X
How can I get filebot to create files/folders with correct permissions?
On my Media Drive all my files have:
Owner: 1000
Group: 100
Permissions: 775
Files renamed and moved from Filebot have:
Owner: 0
Group: 0
Permissions: 775
Re: [JDownloader] Setup for Windows, Linux and Mac OS X
The amc script does have the --def exec option though, which allows you to run your own post-processing commands on newly processed files:
Code: Select all
--def "exec=chmod -R 775 {quote folder} && chown -R admin:administrators {quote folder}"-
9000aalborg
- Posts: 1
- Joined: 26 Aug 2019, 22:48
Re: How about sharing our format expressions?
Major noob here :-/
I am trying to use nothinghere's script.
And I am too new to the forums to write nothinghere a personal message
But I would use the script, BUT without the period between the words in the name ( for example "in.the.name.of the.rose). I would rather have "In the name of the rose"
Can anyone help me to change that in the movie and tv-episode scripts ?
Thanks.
\Lars (major noob from Denmark)
nothinghere wrote: 13 Jul 2014, 18:57 The ones I am using. Major thanks to Ithiel and Rednoah for some of the parts.
Movies:
I am using the original title if it the alphabet used is latin based. If the original title is not the same as the english title, and the first spoken language is not Swedish, Norwegian or Danish I will add the English title as part of the filename. This way I can keep the original titles which I prefer, but still have a chance to find them/connect them to the English titles most commonly used when talking to people. The Nordic stuff is because I live there so I know which movies they are.Code: Select all
{norm={it.upperInitial().lowerTrail().replaceTrailingBrackets().replaceAll(/\u0022/, '\'').replaceAll(/[:|]/, '.').replaceAll(/\?/, '!').replaceAll(/[*\s\.,]+/, '.').replaceAll(/\b[IiVvXx]+\b/, { it.upper() }).replaceAll(/[0-9](th|nd|rd)/, { it.lower() })};isLatin = {java.text.Normalizer.normalize(it, java.text.Normalizer.Form.NFD).replaceAll(/\p{InCombiningDiacriticalMarks}+/, '') ==~ /^\p{InBasicLatin}+$/}; isLatin(info.OriginalName) ? norm(info.OriginalName) : norm(primaryTitle) }.({y}){if(isLatin(info.OriginalName) && info.OriginalName != primaryTitle && !(info.SpokenLanguages[0] ==~ /(sv|da|no)/)) '.'+ norm(primaryTitle) }{'.'+vf}{'.'+source}{fn.contains('3D') || fn.contains('3-D') ? '.3D':''}{'.'+fn.replace(/(?i)\.DC\./, '.directors.cut.').replaceAll(/director\'?s|theatrical|ultimate/,'$0.Cut').matchAll(/UNCENSORED|UNRATED|REMASTERED|EXTENDED|UNCUT|DIRECTOR\'?S.CUT|THEATRICAL.CUT|ULTIMATE.CUT|FINAL.CUT|SPECIAL.EDITION/)*.upperInitial()*.lowerTrail().sort().join('.')}{'.'+fn.matchAll(/PROPER|REPACK/)*.upper().sort().join('.')}{'.'+vc.replace('Microsoft', 'VC-1')}{'.'+ac.replace('MPEG Audio', 'MP3')}{audio.FormatProfile =~ /MA Core/ ? '-HD.MA' : ''}{audio.FormatProfile =~ /ES/ ? '-ES' : ''}{audio.FormatProfile =~ /Pro/ ? '-Pro' : ''}{'.'+af.replace('8 6ch', '7.1').replace('7 6ch', '6.1').replace('6ch', '5.1').replace('3ch', '2.1').replace('2ch','2.0').replace('1ch','1.0')}{def g = c{group}; def m = c{fn.match(/(?:(?<=[-])[a-z0-9]+$)|(?:^[a-z0-9]+(?=[-]))/)}; if(g==null && m!=null) return '-'+m.replace(/^tpz$/, 'TOPAZ'); if(g!=null && m!=null && m.lower()!=g.lower()) return '-'+m.replace(/^tpz$/, 'TOPAZ'); if(g!=null) return '-'+g;}
If you want to use the format but don't want the special hack for Nordic stuff remove the text: "&& !(info.SpokenLanguages[0] ==~ /(sv|da|no)/)"
The audio/movie codecs are hacked a bit to be named by their real/common names instead of the ones defined by mediainfo. I.e. DTS-HD MA, MP3, VC-1 instead of DTS MA Core, MPEG Audio and Microsoft respectively.
Examples:I would have loved to figure out how to keep the transliterated names, but using {transliterate(info.OriginalTitle)}did not work perfectly, which meant a bunch of titles missed when doing searched.Kôkaku.Kidôtai.2.0.(2008).Ghost.In.The.Shell.2.0.720p.REPACK.x264.DTS.5.1-timeshift.mkv // Latin characters but added english name
Jagten.(2012).1080p.BluRay.x264.DTS-HD.MA-GRYM.mkv // Original name only, primary language is Danish
My.Sassy.Girl.(2001).720p.BluRay.x264.AC3.5.1-EbP.mkv // Actual name is 엽기적인 그녀, or transliterated to Yeopgijeogin Geunyeo
For my sassy girl the transliteration was something like Yeobgi-jeogin Geunyeo or the like, which is really close, but far away to miss some lookups.
NOTE: I do not care for multipart files so I do not support them. I rip my movies as single files without any splits.
Series is a bit simpler as I only care about the name we get from TheTVDB (I have long since abandoned any hope that they'll change their mind and structure series as they were intended instead of simply how they where broadcasted):
NOTE: I do not pad the season numbering (i.e. I use Season 1, Season 2 instead of Season 01, Season 02).Code: Select all
{n}/{episode.special ? 'Specials' : 'Season '+s}/{norm={it.upperInitial().lowerTrail().replaceTrailingBrackets().replaceAll(/\u0022/, '\'').replaceAll(/[:|]/, '.').replaceAll(/\?/, '!').replaceAll(/[*\s\.]+/, '.').replaceAll(/\b[IiVvXx]+\b/, { it.upper() }).replaceAll(/[0-9](th|nd|rd)/, { it.lower() })};norm(n) }.{episode.special ? 'S00E'+special.pad(2) : s00e00}.{norm(t)}{'.'+vf}{'.'+source}{'.'+fn.matchAll(/PROPER|REPACK/)*.upper().sort().join('.')}{'.'+vc.replace('Microsoft', 'VC-1')}{'.'+ac.replace('MPEG Audio', 'MP3')}{audio.FormatProfile =~ /MA Core/ ? '-HD.MA' : ''}{audio.FormatProfile =~ /ES/ ? '-ES' : ''}{audio.FormatProfile =~ /Pro/ ? '-Pro' : ''}{'.'+af.replace('8 6ch', '7.1').replace('7 6ch', '6.1').replace('6ch', '5.1').replace('3ch', '2.1').replace('2ch','2.0').replace('1ch','1.0')}{def g = c{group}; def m = c{fn.match(/(?:(?<=[-])[a-z0-9]+$)|(?:^[a-z0-9]+(?=[-]))/)}; if(g==null && m!=null) return '-'+m.replace(/^tpz$/, 'TOPAZ'); if(g!=null && m!=null && m.lower()!=g.lower()) return '-'+m.replace(/^tpz$/, 'TOPAZ'); if(g!=null) return '-'+g;}
Specials end up in a /Specials folder instead. Same thing for video/audio as movies have.
Examples:Coupling\Season 1\Coupling.S01E01.Flushed.360p.DVDRip.x264.AAC.mkv
Doctor Horrible's Sing-Along Blog\Season 1\Doctor.Horrible's.Sing-Along.Blog.S01E01.Act.I.1080p.BluRay.x264.DTS-DIMENSION.mkv
If anyone wants to copy my thing entirely the script I use to sort everything is:NOTE: Remember to update the paths to your series/movies and downloads.Code: Select all
filebot -script fn:amc "x:/downloads" --log-file d:\amc-run.log --output "//nas/" --action move --conflict skip -non-strict --def clean=y --def "movieFormat=Movies/{norm={it.upperInitial().lowerTrail().replaceTrailingBrackets().replaceAll(/\u0022/, '\'').replaceAll(/[:|]/, '.').replaceAll(/\?/, '!').replaceAll(/[*\s\.,]+/, '.').replaceAll(/\b[IiVvXx]+\b/, { it.upper() }).replaceAll(/[0-9](th|nd|rd)/, { it.lower() })};isLatin = {java.text.Normalizer.normalize(it, java.text.Normalizer.Form.NFD).replaceAll(/\p{InCombiningDiacriticalMarks}+/, '') ==~ /^\p{InBasicLatin}+$/}; isLatin(info.OriginalName) ? norm(info.OriginalName) : norm(primaryTitle) }.({y}){if(isLatin(info.OriginalName) && info.OriginalName != primaryTitle && !(info.SpokenLanguages[0] ==~ /(sv|da|no)/)) '.'+ norm(primaryTitle) }{'.'+vf}{'.'+source}{fn.contains('3D') || fn.contains('3-D') ? '.3D':''}{'.'+fn.replace(/(?i)\.DC\./, '.directors.cut.').replaceAll(/director\'?s|theatrical|ultimate/,'$0.Cut').matchAll(/UNCENSORED|UNRATED|REMASTERED|EXTENDED|UNCUT|DIRECTOR\'?S.CUT|THEATRICAL.CUT|ULTIMATE.CUT|FINAL.CUT|SPECIAL.EDITION/)*.upperInitial()*.lowerTrail().sort().join('.')}{'.'+fn.matchAll(/PROPER|REPACK/)*.upper().sort().join('.')}{'.'+vc.replace('Microsoft', 'VC-1')}{'.'+ac.replace('MPEG Audio', 'MP3')}{audio.FormatProfile =~ /MA Core/ ? '-HD.MA' : ''}{audio.FormatProfile =~ /ES/ ? '-ES' : ''}{audio.FormatProfile =~ /Pro/ ? '-Pro' : ''}{'.'+af.replace('8 6ch', '7.1').replace('7 6ch', '6.1').replace('6ch', '5.1').replace('3ch', '2.1').replace('2ch','2.0').replace('1ch','1.0')}{def g = c{group}; def m = c{fn.match(/(?:(?<=[-])[a-z0-9]+$)|(?:^[a-z0-9]+(?=[-]))/)}; if(g==null && m!=null) return '-'+m.replace(/^tpz$/, 'TOPAZ'); if(g!=null && m!=null && m.lower()!=g.lower()) return '-'+m.replace(/^tpz$/, 'TOPAZ'); if(g!=null) return '-'+g;}" --def "seriesFormat=TV Shows/{n}/{episode.special ? 'Specials' : 'Season '+s}/{norm={it.upperInitial().lowerTrail().replaceTrailingBrackets().replaceAll(/\u0022/, '\'').replaceAll(/[:|]/, '.').replaceAll(/\?/, '!').replaceAll(/[*\s\.]+/, '.').replaceAll(/\b[IiVvXx]+\b/, { it.upper() }).replaceAll(/[0-9](th|nd|rd)/, { it.lower() })};norm(n) }.{episode.special ? 'S00E'+special.pad(2) : s00e00}.{norm(t)}{'.'+vf}{'.'+source}{'.'+fn.matchAll(/PROPER|REPACK/)*.upper().sort().join('.')}{'.'+vc.replace('Microsoft', 'VC-1')}{'.'+ac.replace('MPEG Audio', 'MP3')}{audio.FormatProfile =~ /MA Core/ ? '-HD.MA' : ''}{audio.FormatProfile =~ /ES/ ? '-ES' : ''}{audio.FormatProfile =~ /Pro/ ? '-Pro' : ''}{'.'+af.replace('8 6ch', '7.1').replace('7 6ch', '6.1').replace('6ch', '5.1').replace('3ch', '2.1').replace('2ch','2.0').replace('1ch','1.0')}{def g = c{group}; def m = c{fn.match(/(?:(?<=[-])[a-z0-9]+$)|(?:^[a-z0-9]+(?=[-]))/)}; if(g==null && m!=null) return '-'+m.replace(/^tpz$/, 'TOPAZ'); if(g!=null && m!=null && m.lower()!=g.lower()) return '-'+m.replace(/^tpz$/, 'TOPAZ'); if(g!=null) return '-'+g;}"
Paste everything into a file called amc.cmd or something and double click it to run it.
-
ZeroByDivide
- Posts: 172
- Joined: 16 Dec 2014, 01:39
Re: [DOCS] Use --mapper expressions for AniDB / TheTVDB cross-entity matching
Re: [DOCS] Use --mapper expressions for AniDB / TheTVDB cross-entity matching
4.8.6 has not been released yet. It's ready when it's ready. Probably sometime in September. You can help speed things up by trying the latest beta and providing feedback.
Re: Choose Java Swing Look-and-Feel (e.g. Dark Mode)
This works great. Any chance of this being an option within the application? Maybe under Preferences?rednoah wrote: 25 Feb 2019, 19:23
- Open Start Menu and search for Set Environment Variables
- Click on New
Name:Value:Code: Select all
FILEBOT_OPTSCode: Select all
-Dnet.filebot.theme=Darcula- Click OK and then relaunch FileBot.
Note that you'll need the latest revision (i.e. r6135 or higher) for any of this to work. The FileBot (platform) launcher is using the Darcula theme by default now as well.
-
Liquidbings
- Posts: 6
- Joined: 05 Aug 2019, 21:13
Re: How about sharing our format expressions?
1. replace x265 or hevc with (X265)
2. replace x264 with (X264)
with what I have there it works sometimes and other times I have x265 and (X265) also on the same line
Re: How about sharing our format expressions?
Code: Select all
space + call{fn.matches(/(?i).+\bhevc.+?\b.+/) ? '(x265)' : ' '}+
space + call{fn.matches(/(?i).+\bx265\b.+/) ? '(x265)' : ' '}+
space + call{fn.matches(/(?i).+\b264\b.+/) ? '(x264)' : ' '}+try something like this:
Code: Select all
{'(' + any{vc.match(/x26[45]/)}{vc} + ')'}Re: [DOCS] --apply post-processing features
any future plans to ?
where is this in the Docs ?
https://www.filebot.net/docs/api/
what does this use to fetch stuff ?
Re: [DOCS] --apply post-processing features
Not at all. It's just a variety of frequently requested features that more or less fall under the same umbrella. The future plan is to add selected post-processing features to the GUI and allow users to apply some of them as part of the rename process.
A public API is not planned. It doesn't do anything that isn't already implemented in the htpc.groovy script or otherwise commonly handled via -exec calls.
It's doing more or less the same as the artwork.* scripts, using TheMovieDB / TheTVDB / FanartTV as the source of image files.
Re: [User Study] Take a screen recording and earn yourself a free license
My feedback
1) places like Horrible subs which I use for anime, many times filebot doesn't pick the names. Reason could be two fold, a) many anime series names are in Japanese, out of those some names are easy to pick may be ones like Naruto, Megalobox, however longer names e.g. "Dungeon ni deai motomeru no wa machigatteiru darou ka" or a name that mixed up could be an issue. There I use things like BulkFileRenamer to rename bit of names of a batch of files to immediately convert the Japanese name of all files to English version. And then Filebot picks up the English name of the anime series quickly. So some bulk renaming option that could rename bits of batch file collection would be a great help. B) many of anime uploaded would put their name in front e.g. At horriblesubs all files are called (horriblesubs)Naruto - 245 (720p).mkv these sort of files at times also need BulkFile. It just helps me remove first 14 spaces of filenames and that solves the issue and FileBot picks it quickly and renaming entire batch is perfect.
2) same happens on tv/movie or music. So I use BulkFile and FileBot in tandem for things I wish to keep. For Music mp3tags or MediaMonkey I prefer more as their metadata I find much more easily. So if more metadate like how those two use it, can make FileBot for me 1 stop for all three.
3) this is more of a feedback the episode list part actually at times has picked up some things which the automatic matching doesn't. However, I explored that bit quite late, almost for the first time this year.
4) I don't know much of this is possible, but if FileBot has an extension like a library of all entertainment that person has over the Hard disks, could it even play/stream/connect to smart devices as it eliminates many other softwares that we all keep jumping to/from.
Hope this somewhere helps. Thanks.
Re: [User Study] Take a screen recording and earn yourself a free license
FileBot does support file-based renaming so you can do any kind of pre-processing even if the files don't match any databases:
viewtopic.php?t=2072
1b.
FileBot will generally ignore group names, especially when in parenthesis. So that should work.
2.
You should be able to access any ID3 tags generically via the MediaInfo bindings:
viewtopic.php?t=4285
3.
IDK. I'd need to see screenshots to have a guess at what's happening. If it's a reproducible problem, please post the file paths. You can copy & paste debug info from the Rename panel by pressing the F7 key.
4.
FileBot can certainly copy selected files to selected media devices, but any capability that resembles an DLNA media server is not currently planned.
viewtopic.php?t=10969
Re: [PLEX] FileBot Xattr Metadata Scanners & Plug-ins
Re: [PLEX] FileBot Xattr Metadata Scanners & Plug-ins
https://support.plex.tv/articles/202915 ... y-located/
Plex might pick them up from different locations though. Maybe your plug-in directory will work too.