allejok96 / jw-scripts

Index or download videos and sound recordings from jw.org.
GNU General Public License v3.0
49 stars 10 forks source link

jw-scripts 2.0 survey (I want your brain) #39

Open allejok96 opened 3 years ago

allejok96 commented 3 years ago

Sup all ye watchers! :dog:

I've been doing a few changes which will break compatibility :facepalm: (don't worry, it's just some flags). So I figured: why not go all in and make a 2.0? Now before I go and do something stupid, I'd like to hear your stories! Don't be shy. Right now I'm just looking for some reasonable defaults for the program.

How do you use jw-scripts?

:tv: Tell me your use-case, operating system, example commands...

:confused: Was something hard to setup or figure out?

:hammer: Did you need to do any tweaks to Plex etc?

:cartwheeling: Do you do some extra "post-processing"?

:bulb: Other suggestions?

Even if you do nothing special, just drop a comment with a example, just so I get an idea.

roffikk commented 3 years ago

jwb-index -X --mode filesystem --download --lang=P --limit-rate 0

This is my command. Linux Mint 20.1 MATE edition. I had to modify output.py file in order for it to work. After upgrading my distro, udisks2 package has version 2.8.4. This implies the default option to mount a NTFS drive is with safe filenames. No polish diacritics. Without -X flag I could download every new video, but on most of them jw-index threw out an error: "Could not create symlink. If you are on Windows 10, try enabling developer mode." Without my modifications, just with -X flag, the symlinks were completely messed up. I don't know if it's something you should fix, but it took me long before I realized what's wrong. So, downloading jw-broadcasting (to be honest, any file) onto NTFS drive under Linux is rather bad idea. I should format it to ext for example. In udisks2 version 2.9.0 there is an option to change default mounting options.

As for my process of watching videos, there is nothing special. I run the command, then append new files to VLC playlist. When I watch it, I remove it from the list. Simple.

allejok96 commented 3 years ago

Thanks @roffikk! This is good to know. I never thought of that scenario! Maybe there is no good solution, but at least it should be made clear somewhere in the docs that this is not possible... Now I wonder if network mounts suffer from the same issue.

If I may guess --mode filesystem might not be needed in your case, since it sounds like you don't use links. If you update to version 1.8 or newer here is my special recommendation for you:

Initial run (no download since you already have the videos):

jwb-index -l P -m m3u --sort newest /mnt/ntfs_disk/video_folder/vlc_playlist.m3u

Daily update:

jwb-index -d --limit-rate 0 -l P -m m3u --update --since $(date -d yesterday '+%Y-%m-%d') /mnt/ntfs_disk/video_folder/vlc_playlist.m3u

The new --mode m3u will create a single VLC playlist for you. The special hack using --update and --since will make it possible for you to delete old videos from your playlist, without the script re-adding them. But new videos will be added. This requires that the update is done every day. If that is not possible, just skip the --since flag.

Of course, I have not actually verified this, it's all just theory.

roffikk commented 3 years ago

Oh, I definitely use links:) I open the main folder, type e.g. one distinctive word from the video title and then drag the correct file onto VLC. I use links, because I sometimes look for a file by categories, and if I understand correctly, using --friendly flag without --mode flag would just give a long list of all files in one folder, right?

Thanks for those commands, but I like to keep things simple. There was some time in my life when I wanted to optimize everything. Nowadays, I just want things to work the simplest way possible. Life is too short to focus just on that kind of things, if you know what I mean. I have to care for my wife physically and spiritually, and also for the congregation. There is no time or strength to do everything we are capable of, at least in these days.

allejok96 commented 3 years ago

You're absolutely right, do it in the way that works for you :)

darkace1998 commented 3 years ago

I am running it on a Synology DS 819+ in Docker.

It downloads it directly in to my Emby/Plex Libery folder for post-processing to H256 and mp4.

it was and is a pain to update/install the docker because jw-scripts has no repository in docker hub.

Maybe a beter wiki for the commands ?

For Emby/Plex i had to search for a way to get te correct meta data now it kinda works :)

Total size JW Folder is 5 TB tis helps so much with naming and meta data.

Thanks for the great work.

dfellow commented 3 years ago

First, thank you for sharing your scripts.  Excellent work!

I have been using your scripts for a little project that allows viewing the Original Music on Samsung TVs running Tizen OS.  Also works on some other platforms.  https://msx.benzac.de/info/ https://msx.benzac.de/?start=content:https://jwmsx.azurewebsites.net/msx/originalmusic.json Above is a link as an example.  I did have to make some code changes by adding a MSX media output type. I can share those changes, though I don't claim they are all that well coded. :) Just wanted to share usage based on your inquiry.

CeeBeeEh commented 1 year ago

I've been using the script mostly for downloading kids videos to have them loaded into Jellyfin. Playing the videos from the website can be cumbersome as my 18mo old will lose interest very quickly if the next video doesn't play within a few seconds. And I can accomplish that with Jellyfin and local files.

My desktop OS is EndeavourOS and my server is Debian 11.

Not personally, but I am a developer.

I use Jellyfin. And one thing that I needed to do was extract the thumbnails from the video files into jpg files with the same name so that Jellyfin would pick those up as the artwork for each video. Ideally this is something that Jellyfin would do automatically, but it doesn't seem to be a priority for them as they focus on more commercial/popular media like movies and TV shows which can have their metadata pulled from online sources.

Just the extraction of thumbnails.

It might be over the top, but since the script is already build in python it might be nice to build a basic UI using something like Tkinter to make it a bit easier to use. I'm very comfortable with the terminal, but for things I don't run daily or semi-daily I always have to reference the docs to know which command to run. So in those cases even a very basic UI helps a great deal.

Another thing I think would be helpful is to expand beyond video and audio. I like to keep an offline copy of all the literature, so having a system to manage that process would be excellent, but I don't expect any of that. It's just a thought.

Thanks for making this script. It's simplified this process greatly!