Giter Club home page Giter Club logo

docker-amvd's People

Contributors

jeret15 avatar randomninjaatk avatar steve1977 avatar

Stargazers

 avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar

Watchers

 avatar  avatar  avatar  avatar  avatar

docker-amvd's Issues

Feature Request: save the music video next to the matching track

Is there a way to save the music video next to the matching track with the same name as the music file. The reason I ask is because plex can automatically associate music videos to tracks.

Here is a tip from their support page in this topic:

Tip!: To have the music video associated with the track, it must start with the exact filename of the corresponding music track and must be in the same directory as that track.

Feature Request: "videoformat"

Can we get "videoformat" exposed in the docker environment variables like "amtd"? So we can pick the codec versions we prefer to download?

[SOLVED, I Googled it] Explanation of AMA

In the README file, there is an arguement to point to the AMA container /config. However, there is no explanation of what this AMA is. Is this the docker-AMD? If so, do we have to point it to that docker's /config folder, or the /config folder setup for Lidarr

Can't find JSON-files when artist folder is different from artist's name

I have Lidarr configured with {Artist.CleanName}, which ends up with artist-folders named Ludwig.van.Beethoven.

On a run, I see the following in the logs from the script:

cat: /config/cache/Ludwig.van.Beethoven-1f9df192-a621-4f54-8850-2c5373b7eac9-recordings.json: No such file or directory
cat: /config/cache/Ludwig.van.Beethoven-1f9df192-a621-4f54-8850-2c5373b7eac9-info.json: No such file or directory
cat: /config/cache/Ludwig.van.Beethoven-1f9df192-a621-4f54-8850-2c5373b7eac9-releases.json: No such file or directory
2020-09-08 21:19:59 304 of 314 :: Ludwig van Beethoven :: Processing
2020-09-08 21:19:59 304 of 314 :: Ludwig van Beethoven :: Normalizing MBZDB Release Info (Capitalization)
2020-09-08 21:19:59 304 of 314 :: Ludwig van Beethoven :: MBZDB :: ERROR :: musicbrainz id: 1f9df192-a621-4f54-8850-2c5373b7eac9 is missing IMVDB link, see: "/config/logs/imvdberror.log" for more detail...
cat: /config/cache/Ludwig.van.Beethoven-1f9df192-a621-4f54-8850-2c5373b7eac9-recording-count.json: No such file or directory
2020-09-08 21:19:59 304 of 314 :: Ludwig van Beethoven :: MBZDB :: recordings found...
2020-09-08 21:19:59 304 of 314 :: Ludwig van Beethoven :: MBZDB :: Checking recordings for videos...
2020-09-08 21:19:59 304 of 314 :: Ludwig van Beethoven :: MBZDB :: 0 video recordings found...
2020-09-08 21:19:59 304 of 314 :: Ludwig van Beethoven :: Skipping...

In the cache-folder, I have the following:

$ ll *Beethoven*
-rw-r--r-- 1 root root        0 Sep  7 22:31 'Ludwig van Beethoven-1f9df192-a621-4f54-8850-2c5373b7eac9-cache-complete'
-rw-r--r-- 1 root root    12791 Sep  7 22:28 'Ludwig van Beethoven-1f9df192-a621-4f54-8850-2c5373b7eac9-info.json'
-rw-r--r-- 1 root root      192 Sep  7 22:28 'Ludwig van Beethoven-1f9df192-a621-4f54-8850-2c5373b7eac9-recording-count.json'
-rw-r--r-- 1 root root   495688 Sep  7 22:29 'Ludwig van Beethoven-1f9df192-a621-4f54-8850-2c5373b7eac9-recordings.json'
-rw-r--r-- 1 root root 21714639 Sep  7 22:31 'Ludwig van Beethoven-1f9df192-a621-4f54-8850-2c5373b7eac9-releases.json'

This issue is also present in imvdberror.log, where I'm seeing several artists with confirmed relationships on musicbrainz erroring out because amvd can't find it.

Artist folder

Is there any chance that there is some configuration I could change to add artist folders to the download locations? So the videos could be sorted by artist folders?

Fallback to IMVDb lookup when MusicBrainz doesn't have IMVDb link?

Hey, first off, great project!

It seems we're relying on MusicBrainz actually having the IMVDb link added for an artist.

In my usage of AMVD so far, it seems I have a lot of artists who exist on IMVDb but don't have the link added to their MusicBrains info.

Would it be possible to add a feature, that in the event of MusicBrainz not having the link added to an artist, that we could do an artist lookup on the IMVDb api?

I am aware that IMVDb does rate limiting, so each user would ideally need their own key so as not to max out a shared request pool. Maybe providing your own API credentials could be a configurable option?

I also understand that whenever we are doing a string query against an API, that there is always margin for error when matching against the desired result. However for those of us who might prefer a fully automated experience, it would be nice to be able to enable this fallback to IMVDb lookup in the config, so as not to damage the Out Of Box experience for general users who may not need this feature.

I know that I would much prefer that a IMVDb lookup was performed, rather than having to look up the artist on MusicBrainz, then source and add the link to the relevant IMVDb page there, as I'm having to do currently.

I wouldn't mind if it was just missing one or 2 artists, but it misses a lot of the artists in my collection.

Thanks again for your great work on this project ๐Ÿ‘

Edit: typos

music brain url error

Hello,

Getting this in the logs now, was working fine and it started throwing errors related to musicbrains script.

-------------------------------------
_ ()
| | ___ _ __
| | / __| | | / \
| | \__ \ | | | () |
|_| |___/ |_| \__/


Brought to you by linuxserver.io
-------------------------------------

To support LSIO projects visit:
https://www.linuxserver.io/donate/
-------------------------------------
GID/UID
-------------------------------------

User uid: 99
User gid: 100
-------------------------------------

[cont-init.d] 10-adduser: exited 0.
[cont-init.d] 19-script-setup.bash: executing...
Updating scripts...
Complete...
[cont-init.d] 19-script-setup.bash: exited 0.
[cont-init.d] 99-custom-scripts: executing...
[custom-init] no custom files found exiting...
[cont-init.d] 99-custom-scripts: exited 0.
[cont-init.d] 99-start.bash: executing...
------------------------------------------------------------
|~) _ ._ _| _ ._ _ |\ |o._ o _ |~|_|_|
|~\(_|| |(_|(_)| | || \||| |_|(_||~| | |<
Presenets: amvd
------------------------------------------------------------
Donate: https://github.com/sponsors/RandomNinjaAtk
Project: https://github.com/RandomNinjaAtk/docker-amvd
Support: https://discord.gg/JumQXDc
------------------------------------------------------------
Automatic Start Enabled, starting...
Starting Script....
To kill script, use the following command:

kill -9 249

2021-10-30 10:23:51 To kill script, use the following command:

2021-10-30 10:23:51 kill -9 245

2021-10-30 10:23:51 kill -9 256

2021-10-30 10:23:51
2021-10-30 10:23:51
2021-10-30 10:23:53 ############################################ Automated Music Video Downloader (AMVD)
2021-10-30 10:23:53 ############################################ SCRIPT VERSION 1.1.36

2021-10-30 10:23:53 ############################################ DOCKER VERSION 1.0.7

2021-10-30 10:23:53 ############################################ CONFIGURATION VERIFICATION
2021-10-30 10:23:53 AMVD Script Autostart: ENABLED
2021-10-30 10:23:53 AMVD Script Interval: 15m
2021-10-30 10:23:53 ERROR: Cannot communicate with Musicbrainz

2021-10-30 10:23:53 ERROR: Expected Response "Linkin Park", received response ""

2021-10-30 10:23:53 ERROR: URL might be Invalid: https://musicbrainz.org

2021-10-30 10:23:53 ERROR: Remote Mirror may be throttling connection...

2021-10-30 10:23:53 ERROR: Link used for testing: https://musicbrainz.org/ws/2/artist/f59c5520-5f46-4d2c-b2c4-822eabf53419?fmt=json

2021-10-30 10:23:53 ERROR: Please correct error, consider using official Musicbrainz URL: https://musicbrainz.org

2021-10-30 10:23:53 Music Video Library Location: /downloads-amvd
2021-10-30 10:23:53 Music Video Artist List Source: lidarr
2021-10-30 10:23:53 Music Video Source: Lidarr Connection Valid, version: 0.8.1.2135

2021-10-30 10:23:53 Music Video Country Code: us
2021-10-30 10:23:53 Music Video Require Match: ENABLED
2021-10-30 10:23:53 Music Video Format Set To: --format bestvideo[vcodec*=avc1][ext=mp4]+bestaudio[ext=m4a]
2021-10-30 10:23:53 Music Video Filter: ENABLED (live)
2021-10-30 10:23:53 Music Video Subtitle Language: en
2021-10-30 10:23:53 Music Video NFO Writer: DISABLED
2021-10-30 10:23:53 Music Video Use Folders: ENABLED
2021-10-30 10:23:53 Music Video Foldder Permissions: 766
2021-10-30 10:23:53 Music Video Use Video Folders: DISABLED
2021-10-30 10:23:53 Music Video File Permissions: 777
2021-10-30 10:23:53 Please correct errors before attempting to run script again...
2021-10-30 10:23:53 Exiting...

[enhancement] Filter Lidarr Artists by Tag

With a large Lidarr library, I only want to download videos for some artists. It would be great if I could tag an artist and only grab videos for artists with the that tag.

youtube-dl error with "videoformat"

I wanted to give this a try mostly out of curiosity (cause I personally don't use/watch music video much) and used my standard archival format string for youtube-dl but it seems there is an error. I looked through the source code and duplicated the download section and played with some variables and it works, but amvd still doesn't like it very much.

2021-03-30 18:13:12 =======================START YOUTUBE-DL=========================
ERROR: fixed output name but more than one file to download

Config is:

  amvd:
    image: randomninjaatk/amvd:latest
    container_name: amvd
    volumes:
      - ./config:/config
      - ./mv:/downloads-amvd
    ports:
      - 8500:80
    environment:
      - PUID=1000
      - PGID=1000
      - AUTOSTART=true
      - SCRIPTINTERVAL=12h
      - SOURCE_CONNECTION=lidarr
      - CountryCode=us
      - RequireVideoMatch=true
      - subtitlelanguage=en
      - videofilter=live
      - WriteNFOs=true
      - USEFOLDERS=true
      - USEVIDEOFOLDERS=true
      - FilePermissions=644
      - FolderPermissions=755
      - MBRAINZMIRROR=https://musicbrainz.org
      - MBRATELIMIT=1
      - LidarrUrl=http://10.0.0.0:8686
      - LidarrAPIkey=000000000000000
      - videoformat="--format (bestvideo[vcodec*=vp9]/bestvideo[vcodec*=av1])[height=1080][fps<=30]+bestaudio/(bestvideo[vcodec*=vp9]/bestvideo[vcodec*=av1])[height=720][fps<=30]+bestaudio/bestvideo[height<1080]+bestaudio"

I'm not quite sure what is going on.

container script

Hi ninja.
Im new to all this and have been following all your instructions, I have the docker installed and used your example script inputting all the required information (container created sucsessfully) however when I run the start up script I am getting two errors. one of which its telling me to input country code even though I have added the line -e CountryCode=AU
second is its telling me to specify source connection even though I have put in the line -e SOURCE_CONNECTION=lidarr \ as directed by you. and have put in the lidarr ip in the correct line too. can you help me resolve these two issues please

Recent issue with renaming

Hi,

first: thanks for this great tool.

Unfortunately since a recent update the renaming isnt working here anymore (settings
stayed the same) . In the tmp folder filename is artist and songname but in downloads-amvd it consists only of songname. After that also chmod fails because there is not the expected full filename.

Thanks for looking over it.

script_run_1_2022_05_27_12_01_PM.log

HELP - Videos not downloading

For some reason no videos download.
Lidarr is scanned perfectly, and it appears that it connects to imvdb but it never downloads any videos.

######################################### DOWNLOADING VIDEOS #########################################
2 of 7 :: Linkin Park :: Processing
2 of 7 :: Linkin Park :: Normalizing MBZDB Release Info (Capitalization)
2 of 7 :: Linkin Park :: IMVDB :: Aritst Link Found, using it's database for videos...
2 of 7 :: Linkin Park :: IMVDB :: Aritst Link Found, using it's database for videos...
2 of 7 :: Linkin Park :: MBZDB :: 1740 recordings found...
2 of 7 :: Linkin Park :: MBZDB :: Checking 1740 recordings for videos...
2 of 7 :: Linkin Park :: MBZDB :: 179 video recordings found...
2 of 7 :: Linkin Park :: MBZDB :: Checking 179 video recordings for links...
2 of 7 :: Linkin Park :: MBZDB :: 24 video recordings with links found!
2 of 7 :: Linkin Park :: MBZDB :: Processing 24 video recordings...
2 of 7 :: Linkin Park :: MBZDB :: Checking 1740 recordings for videos...
2 of 7 :: Linkin Park :: MBZDB :: 179 video recordings found...
2 of 7 :: Linkin Park :: MBZDB :: Checking 179 video recordings for links...
2 of 7 :: Linkin Park :: MBZDB :: 24 video recordings with links found!
2 of 7 :: Linkin Park :: MBZDB :: Processing 24 video recordings...
2 of 7 :: Linkin Park :: 0 Videos Downloaded!
2 of 7 :: Linkin Park :: MARKING ARTIST AS COMPLETE
######################################### 0 VIDEOS DOWNLOADED #########################################

Config

######################################### CONFIGURATION VERIFICATION #########################################
Musicbrainz Mirror Valid: https://musicbrainz.org
Musicbrainz Rate Limit: 1 (Queries Per Second)
Music Video Library Location: /mnt/user/Media/MusicVideos
Music Video Country Code: us
Music Video Require Match: DISABLED
Music Video Format Set To: --format bestvideo[vcodec*=avc1]+bestaudio --cookies /cookies/youtube.com_cookies.txt
Music Video Filter: DISABLED
Music Video Subtitle Language: en
Music Video NFO Writer: DISABLED
Music Video File Permissions: 666
Music Video Extension: mkv

NOTE i removed the secondary filter to see if that was issue, (didnt understand its use, no difference with it)

What have i done wrong????

Container script.

Hi ninja.
Im new to all this and have been following all your instructions, I have the docker installed and used your example script inputting all the required information (container created sucsessfully) however when I run the start up script I am getting two errors. one of which its telling me to input country code even though I have added the line -e CountryCode=AU
second is its telling me to specify source connection even though I have put in the line -e SOURCE_CONNECTION=lidarr \ as directed by you. and have put in the lidarr ip in the correct line too. can you help me resolve these two issues please
sorry if this isn't the right place for this. please email me [email protected] with fix

Feature Request: Blacklist / Filter video title terms

I've just set this up and had it run against a small library, awesome tool by the way! I've have noticed that it is pulling down Lyric Videos.
Example Artist: Taylor Swift

Is there a way to have amvd not download the videos with "Lyric" or "Lyric Video" in the title?

Any chance to get full Windows support?

My current utility server setup is a windows server 2016 machine, which does not support docker. Any chance you plan to develop this into a Windows installed service?

Feature Request: Check for duplicates.

If video is already present (sometimes the exact video) the software should not redownload.

This happens when someone already had the videos present for their collection.

Is this supposed to download all videos

So I set the script up to download music videos for my Musiklibrary. It startet reading all artists and then started downloading.
But it also downloadedd video for files I don't have, which messes up my Plex config.
Is it supposed to do that?

download.log

It may be a good idea to rename download.log to download.txt to avoid deletition in start.bash.
Every time download.log is deleted downloaded videos are reloading.

Trouble starting up docker image

same issue as seen here:
RandomNinjaAtk/docker-lidarr-extended#5

Checking portainer, I see the following in the logs:

exec /init: exec format error
exec /init: exec format error
exec /init: exec format error
exec /init: exec format error
exec /init: exec format error
exec /init: exec format error
exec /init: exec format error

at somepoint the docker container restarts, and this cycle repeats.

my docker-compose file

version: "2.1"
services:
  amvd:
    image: randomninjaatk/amvd
    container_name: amvd
    volumes:
      - .config:/config
      - /mnt/music-videos:/downloads-amvd
    environment:
      - PUID=1000
      - PGID=1000
      - AUTOSTART=true
      - SCRIPTINTERVAL=1h
      - SOURCE_CONNECTION=lidarr
      - subtitlelanguage=en
      - videofilter=live
      - USEFOLDERS=true
      - USEVIDEOFOLDERS=false
      - MBRAINZMIRROR=https://musicbrainz.org
      - MBRATELIMIT=1
      - LidarrUrl=http://192.168.0.253:8686
      - LidarrAPIkey=[myLidarrAPIkey]
      - CountryCode=us
    restart: unless-stopped

what am i missing here?

Download fails for some artists (e.g., BTS)

Most artists now work very well. There seems to be an issue with some. For example, artists "BTS" has MV links on imvdb, but download does not get triggered (https://imvdb.com/video/bts). Below error from the log. Maybe related to special characters in URL and imvdb name? https://imvdb.com/video/bts/-blood-sweat-tears

2020-10-31 11:28:29 1 of 1396 :: BTS :: Processing
2020-10-31 11:28:29 1 of 1396 :: BTS :: Normalizing MBZDB Release Info (Capitalization)
2020-10-31 11:28:30 1 of 1396 :: BTS :: IMVDB :: Aritst Link Found, using it's database for videos...
2020-10-31 11:29:02 1 of 1396 :: BTS :: MBZDB :: 304 recordings found...
2020-10-31 11:29:03 1 of 1396 :: BTS :: MBZDB :: Checking 304 recordings for videos...
2020-10-31 11:29:03 1 of 1396 :: BTS :: MBZDB :: 32 video recordings found...
2020-10-31 11:29:03 1 of 1396 :: BTS :: MBZDB :: Checking 32 video recordings for links...
2020-10-31 11:29:03 1 of 1396 :: BTS :: MBZDB :: 0 video recordings with links found!
2020-10-31 11:29:03 1 of 1396 :: BTS :: Skipping...
find: โ€˜โ€™: No such file or directory
2020-10-31 11:29:03 1 of 1396 :: BTS :: 0 Videos Downloaded!
2020-10-31 11:29:03 1 of 1396 :: BTS :: MARKING ARTIST AS COMPLETE

Date metadata in MKV files

I tried adding my music videos folder as an "Other Videos" library in Plex, and noticed that it was actually picking up a reasonable amount of metadata from MP4 files created by AMVD, but not much from MKVs. One thing I was looking for was year information, as Plex seems to categorise and collect the videos according to this (among other things.) However, Plex always shows MKVs from AMVD dated as "2020"

I was trying to work out why this was, as - In the script - I noticed that the date is being stored in the MKV metadata:
-metadata DATE_RELEASE="$year" \

I loaded one of the files into mkvtoolnix, but couldn't find the date info. Though I noticed that, in the Header Editor, it's possible to add a "Date" tag.

mkvtoolnix

With that set, Plex then DOES pick up the year.

Is it possible for AMVD to set this, or would that be beyond the scope as it might be a Plex-specific issue?

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    ๐Ÿ–– Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. ๐Ÿ“Š๐Ÿ“ˆ๐ŸŽ‰

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google โค๏ธ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.