Giter Club home page Giter Club logo

lidarr-flac2mp3's People

Contributors

thecaptain989 avatar youegraillot 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

Watchers

 avatar

lidarr-flac2mp3's Issues

VBR wrapper outputs 128 kbit mp3

The VBR wrapper script seems to suddenly output 128 kbit mp3 instead of -V0 VBR?
Think this started with the additional codec support being added. But can't seem to find where the logic is broken in the code.

Cue/Flac split

Hi, this script works really well for Releases with individual flac files for each track. There are however albums that consist of just one flac and a cue file.

A method to automatically split these into individual tracks would be the perfect addition to this project.

Lidarr has no current method of splitting these, so you might not be able to fix this in your script.

Add images for ARM architecture

Currently the dockerhub images are amd64 only. Using buildx would allow multi-architecture builds.

For example, I was able to clone this repo and run

docker buildx build --platform linux/arm/v7,linux/arm64/v8,linux/amd64 --tag patrickjmcd/lidarr:latest --push .

to build a multi-arch image

Error warning for something that it's not an error.

I have just delpoyed https://github.com/RandomNinjaAtk/docker-lidarr-extended which is a standard Lidarr + AMD/AMVD scripts included to download via Deemix/Youtube. I've added flac2mp3 and it just works fine. Nevertheless lidarr-extended log says:

[Error] flac2mp3-debug-2.sh: Debug|Enabling debug logging level 2. Starting AlbumDownload run. [Info] RefreshArtistService: Updating Info for Sam Sparro [Info] RefreshAlbumService: Updating Info for Return To Paradise [Info] RefreshAlbumService: Updating Info for Sam Sparro [Error] flac2mp3-debug-2.sh: Warn|Lidarr job ID 171387 timed out or failed.

and flac2mp3.txt says
https://pastebin.com/kdVuSJW0

but it works. I just wanted to notify about this weird error message for something that doesn't look as an error. I'm not sure whether this issue is from lidarr side or your script side. FLACs are normally downloaded, compressed to MP3-320 and moved to recycle. No half-baked tracks, everything's fine. Just this apparently bogus error warning.

Implement Lidarr API feedback to scan converted audio files

After script processing, the resulting audio files will have the same name base name, but different extensions. This currently results in a mismatch between what Lidarr shows in the UI and what is actually stored on disk.

The thought here is to call the API and tell Lidarr to rescan the directory. Will require research into the Lidarr API, getting the key from config.xml, etc.

Script not triggered on Manual import

I would expect that custom scripts would be triggered from either an automated or manual import. Currently, will all versions of Lidarr up to v0.7.1.1381, if you perform a Wanted->Manual import my script is not triggered.

I'm unsure if this is something that I can even fix, or if the lidarr project must fix this.

Options for convert destination path and keep source files

Hi, thank you for this awesome Lidarr docker mod !

Made a custom wrapper for flac2alac as mentioned here on the repo and it's working very well :)

I plan to use this mod in my workflow to keep source .flac files intact in the Lidarr-managed library, and just "mirror" imported files in their own ALAC library for iTunes (using its own Automatically Add to iTunes folder for import upon next opening, but that's outside the scope here).

One improvement I would love to see to this script is to be able keep original files as well as specifying a different target location for converted files (ie. --target and --keep options ?).

Here are the impacts I see with such new options :

  • target option not set would still default to source directory
  • keep option not set would still default to current behaviour with Lidarr's Recycle Bin
  • if both options are set, I guess Lidarr API scan call can be skipped (?)

What would you think about it ?
Thank you

Script just never converts, creates a 0KB file

Hi, getting an issue with this where after enabling and running, it creates a 0KB file for the first item it tries to convert and then just stops. Used debug-2 as the script and got this result (can provide more if needed):

22-6-20 00:57:31.1|[442]Info|Lidarr event: AlbumDownload, Artist: Beck (12), Album: Beck (2757), Export bitrate: 320k, Track(s): /music/Beck/Beck (2000)/01 - Arabian Nights.flac|/music/Beck/Beck (2000)/02 - Dirty Dirty.flac|/music/Beck/Beck (2000)/03 - Midnite Vultures.flac|/music/Beck/Beck (2000)/04 - Mixed Bizness (The Latin Mix by Scatter-Shot Theory).flac|/music/Beck/Beck (2000)/05 - Mixed Bizness (Hardmixn by Jake Kozel, aka Socket 7).flac|/music/Beck/Beck (2000)/06 - Salt in the Wound.flac|/music/Beck/Beck (2000)/07 - Sexx Laws (Malibu remix).flac|/music/Beck/Beck (2000)/08 - Zatyricon.flac 22-6-20 00:57:31.1|[442]Debug|Using constant bitrate of 320k 22-6-20 00:57:31.1|[442]Info|Writing: /music/Beck/Beck (2000)/01 - Arabian Nights.mp3 22-6-20 00:57:31.1|[442]Debug|Executing: nice /usr/bin/ffmpeg -loglevel error -i "/music/Beck/Beck (2000)/01 - Arabian Nights.flac" -c:v copy -map 0 -y -acodec libmp3lame -b:a 320k -write_id3v1 1 -id3v2_version 3 "/music/Beck/Beck (2000)/01 - Arabian Nights.mp3" 22-6-20 00:57:31.5|[442] 22-6-20 00:57:31.5|[442]Enter command: <target>|all <time>|-1 <command>[ <argument>]

Option to use -v0 instead of CBR

Would be nice to have the option of using lame -v0 instead of static 320 CBR... Quality ends up the same with alot smaller file size.

sqlite3: command not found

Noticed recently that I get the following error in my event log in Lidarr:

/usr/local/bin/flac2mp3.sh: line 32: sqlite3: command not found

It doesn't stop the conversion from happening, so not a big deal, but thought I'd bring it up.

Looking at the script, I wonder if it the setup script needs to check for the dependency and install it if missing. I tried recreating my Lidarr image with the plugin but it made no difference.

lidarr api url building is not correct

Hi,
I'm using this script as docker_mod attached to the lidarr cointainer and I've noticed that in my library flac files weren't deleted after conversion to mp3 anymore (but I don't know when this problem came out).

I've enabled debug and found out that api lidarr url was created with an additional "/" between port and urlbase:

24-1-14 18:22:30.5|[20104]Debug|Getting Lidarr version. Calling Lidarr API using GET and URL 'http://localhost:8686//lidarr/api/v1/system/status' 24-1-14 18:22:30.5|[20104]Debug|API returned: 24-1-14 18:22:30.5|[20104]Debug|Detected Lidarr version 24-1-14 18:22:30.5|[20104]Debug|Getting track file info for album id 5766. Calling Lidarr API using GET and URL 'http://localhost:8686//lidarr/api/v1/trackFile?albumId=5766' 24-1-14 18:22:30.5|[20104]Debug|API returned:

The result is that calls to API return nothing and files are not deleted.

This is the current expression for building the url:

# Build URL to Lidarr API flac2mp3_api_url="http://$flac2mp3_bindaddress:$flac2mp3_port${flac2mp3_urlbase:+/$flac2mp3_urlbase}/api/v1"

So I tried to change myself the url expression removing the "/" after the "+" sign and everything started to work again, but I don't know if it's a fix that works for every case (for example when urlbase is not used).

Anyway please fix this bug and add a docker environment variable to override the url and permitting the user to specify it.

Thanks and congratulations for the excellent work

Compensate for Lidarr adding disc number “1” to all tracks

On some albums with a single disc, Lidarr will update the metadata to set the disc number to “1”. This causes some music managers, like iTunes to prefix a “1-“ to the file name of all tracks.

It would be better to leave the disc number blank for single disc albums.

Unsure if this script should compensate for Lidarr here, since this may be desirable behavior for some.

Converts only first 4 tracks

Hi @TheCaptain989
I managed to get this script working, as I didn't need to save the flac files.

However this only convert the first 4 tracks and left everthing else as flac. If you need any logs please let me know.

Use Recycle Bin

Use the Lidarr Recycle Bin if configured and move the original audio files there instead of deleting them.

FLAC files not being deleted in 2.2

After updating to the latest release, 2.2, I've found the FLAC files are no longer deleted after conversion.

Here's the output for an album using 2.2:

22-12-5 17:23:17.5|[8930]Info|Lidarr event: AlbumDownload, Artist: Eric Johnson (881), Album: EJ (20072), Advanced options: '-vn -c:a libopus -b:a 128k', File extension: .opus, Matching regex: '\.(flac|wav)$', Track(s): /music/Eric Johnson/EJ/01-01 Mrs. Robinson.flac|/music/Eric Johnson/EJ/01-02 Water Under the Bridge.flac|/music/Eric Johnson/EJ/01-03 Wonder.flac|/music/Eric Johnson/EJ/01-04 Wrapped in a Cloud.flac|/music/Eric Johnson/EJ/01-05 Once Upon a Time in Texas.flac|/music/Eric Johnson/EJ/01-06 One Rainy Wish.flac|/music/Eric Johnson/EJ/01-07 Serinidad.flac|/music/Eric Johnson/EJ/01-08 Fatherly Downs.flac|/music/Eric Johnson/EJ/01-09 The World Is Waiting for the Sunrise.flac|/music/Eric Johnson/EJ/01-10 November.flac|/music/Eric Johnson/EJ/01-11 All Things You Are.flac|/music/Eric Johnson/EJ/01-12 Scarborough Fair+Canticle.flac|/music/Eric Johnson/EJ/01-13 Song for Irene.flac
22-12-5 17:23:17.6|[8930]Info|Writing: /music/Eric Johnson/EJ/01-01 Mrs. Robinson.opus
22-12-5 17:23:25.2|[8930]Error|Exit code 1 setting permissions and/or recycling on "/music/Eric Johnson/EJ/01-01 Mrs. Robinson.opus"
22-12-5 17:23:25.2|[8930]Info|Writing: /music/Eric Johnson/EJ/01-02 Water Under the Bridge.opus
22-12-5 17:23:30.1|[8930]Error|Exit code 1 setting permissions and/or recycling on "/music/Eric Johnson/EJ/01-02 Water Under the Bridge.opus"
22-12-5 17:23:30.1|[8930]Info|Writing: /music/Eric Johnson/EJ/01-03 Wonder.opus
22-12-5 17:23:36.0|[8930]Error|Exit code 1 setting permissions and/or recycling on "/music/Eric Johnson/EJ/01-03 Wonder.opus"
22-12-5 17:23:36.0|[8930]Info|Writing: /music/Eric Johnson/EJ/01-04 Wrapped in a Cloud.opus
22-12-5 17:23:46.0|[8930]Error|Exit code 1 setting permissions and/or recycling on "/music/Eric Johnson/EJ/01-04 Wrapped in a Cloud.opus"
22-12-5 17:23:46.0|[8930]Info|Writing: /music/Eric Johnson/EJ/01-05 Once Upon a Time in Texas.opus
22-12-5 17:23:52.3|[8930]Error|Exit code 1 setting permissions and/or recycling on "/music/Eric Johnson/EJ/01-05 Once Upon a Time in Texas.opus"
22-12-5 17:23:52.3|[8930]Info|Writing: /music/Eric Johnson/EJ/01-06 One Rainy Wish.opus
22-12-5 17:24:00.1|[8930]Error|Exit code 1 setting permissions and/or recycling on "/music/Eric Johnson/EJ/01-06 One Rainy Wish.opus"
22-12-5 17:24:00.1|[8930]Info|Writing: /music/Eric Johnson/EJ/01-07 Serinidad.opus
22-12-5 17:24:04.3|[8930]Error|Exit code 1 setting permissions and/or recycling on "/music/Eric Johnson/EJ/01-07 Serinidad.opus"
22-12-5 17:24:04.3|[8930]Info|Writing: /music/Eric Johnson/EJ/01-08 Fatherly Downs.opus
22-12-5 17:24:11.3|[8930]Error|Exit code 1 setting permissions and/or recycling on "/music/Eric Johnson/EJ/01-08 Fatherly Downs.opus"
22-12-5 17:24:11.3|[8930]Info|Writing: /music/Eric Johnson/EJ/01-09 The World Is Waiting for the Sunrise.opus
22-12-5 17:24:16.3|[8930]Error|Exit code 1 setting permissions and/or recycling on "/music/Eric Johnson/EJ/01-09 The World Is Waiting for the Sunrise.opus"
22-12-5 17:24:16.3|[8930]Info|Writing: /music/Eric Johnson/EJ/01-10 November.opus
22-12-5 17:24:26.4|[8930]Error|Exit code 1 setting permissions and/or recycling on "/music/Eric Johnson/EJ/01-10 November.opus"
22-12-5 17:24:26.5|[8930]Info|Writing: /music/Eric Johnson/EJ/01-11 All Things You Are.opus
22-12-5 17:24:35.1|[8930]Error|Exit code 1 setting permissions and/or recycling on "/music/Eric Johnson/EJ/01-11 All Things You Are.opus"
22-12-5 17:24:35.1|[8930]Info|Writing: /music/Eric Johnson/EJ/01-12 Scarborough Fair+Canticle.opus
22-12-5 17:24:43.3|[8930]Error|Exit code 1 setting permissions and/or recycling on "/music/Eric Johnson/EJ/01-12 Scarborough Fair+Canticle.opus"
22-12-5 17:24:43.4|[8930]Info|Writing: /music/Eric Johnson/EJ/01-13 Song for Irene.opus
22-12-5 17:24:48.9|[8930]Error|Exit code 1 setting permissions and/or recycling on "/music/Eric Johnson/EJ/01-13 Song for Irene.opus"
22-12-5 17:24:48.9|[8930]Info|Calling Lidarr API to rescan artist
22-12-5 17:25:03.8|[8930]Info|Completed in 1m 48s

And here's the output for the next album, using 2.1 by pinning it with the Docker Hub tag:

22-12-5 18:06:16.7|[310]Info|Lidarr event: AlbumDownload, Artist: Eric Johnson (881), Album: The Book of Making (20070), Advanced options: '-vn -c:a libopus -b:a 128k', File extension: .opus, Matching regex: '\.(flac|wav)$', Track(s): /music/Eric Johnson/The Book of Making/01-01 Soundtrack Life.flac|/music/Eric Johnson/The Book of Making/01-02 Floating Through This World.flac|/music/Eric Johnson/The Book of Making/01-03 Love Will Never Say Goodbye.flac|/music/Eric Johnson/The Book of Making/01-04 Bigger Than My Life.flac|/music/Eric Johnson/The Book of Making/01-05 Just To Be With You.flac|/music/Eric Johnson/The Book of Making/01-06 To Be Alive.flac|/music/Eric Johnson/The Book of Making/01-07 Another One Like You.flac|/music/Eric Johnson/The Book of Making/01-08 My Faith In You.flac|/music/Eric Johnson/The Book of Making/01-09 A Thousand Miles.flac
22-12-5 18:06:16.8|[310]Info|Writing: /music/Eric Johnson/The Book of Making/01-01 Soundtrack Life.opus
22-12-5 18:06:24.3|[310]Info|Writing: /music/Eric Johnson/The Book of Making/01-02 Floating Through This World.opus
22-12-5 18:06:29.3|[310]Info|Writing: /music/Eric Johnson/The Book of Making/01-03 Love Will Never Say Goodbye.opus
22-12-5 18:06:36.3|[310]Info|Writing: /music/Eric Johnson/The Book of Making/01-04 Bigger Than My Life.opus
22-12-5 18:06:40.6|[310]Info|Writing: /music/Eric Johnson/The Book of Making/01-05 Just To Be With You.opus
22-12-5 18:06:45.8|[310]Info|Writing: /music/Eric Johnson/The Book of Making/01-06 To Be Alive.opus
22-12-5 18:06:53.8|[310]Info|Writing: /music/Eric Johnson/The Book of Making/01-07 Another One Like You.opus
22-12-5 18:07:00.8|[310]Info|Writing: /music/Eric Johnson/The Book of Making/01-08 My Faith In You.opus
22-12-5 18:07:07.7|[310]Info|Writing: /music/Eric Johnson/The Book of Making/01-09 A Thousand Miles.opus
22-12-5 18:07:11.6|[310]Info|Calling Lidarr API to rescan artist
22-12-5 18:07:26.3|[310]Info|Completed in 1m 11s

Feature request: flag to prevent rescan

First the obligatory: this is amazing, and I sincerely appreciate all your hard work!

Next the request: It seems Lidarr scan ALL the files every time the script calls for a re-scan, and with tens of thousands of files, it takes quite a long time. As I'm currently rebuilding my library, I have dozens and dozens of re-scans queued up in Lidarr, and it's spending much more time re-scanning already-imported/converted files than importing/converting more. Would it be possible to implement a flag to run the script (and still delete FLAC files after conversion) but not tell Lidarr to scan afterwards? Just to be used until my library is back at steady-state then I could set it back to normal behaviour. For now I've commented out the section of the script that tells the API to scan, but that's not ideal if the container is recreated.

How to add cover art to converted opus file?

Hello,

This is not an issue but I didn't know where else I could ask about it.

I used the custom script flac2opus.sh and it works perfectly fine, but I would like it to save the cover art in the file, as it was there for the original .flac. I'm using the default command ". /usr/local/bin/flac2mp3.sh -a "-vn -c:a libopus -b:a 192k" -e .opus"

I checked the syntax, and the options/arguments, but I can't see a clear way to specify this. I blindly tried adding "-map 0" to the command because it felt like this could be the option, but nothing changed.

Could you help me? Thank you!

How to Remove/Uninstall

I tried using Portainer by removing the ENV variable and then re-deploying the container, but it just comes right back.

This is an awesome mod but I decided to upgrade all my albums to FLAC instead of converting to MP3.

I couldn't find any removal instructions. Sorry to bother you

[enhancement] additional codecs possible?

Since this project uses ffmpeg would it be possible to convert to Opus instead of mp3, or even other codecs?

Official support for other codecs would be cool but I'm also going to try to modify the scripts to do this on my own. However this will be my first time using docker mods so we'll see how that goes.

If allowing other codecs is something this project is open to then I would be happy to propose a pull request if I get something working.

I'm going to focus on Opus first.

Format option "ALAC"

Hi. Could you add support for flac2alac please?

ffmpeg -i input.flac -c:v copy -c:a alac output.m4a

Is it possible to batch convert like in your Sonarr/Radarr script?

linuxserver/lidarr:preview

I am not seeing the script in linuxserver/lidarr:preview. I tried mounting /usr/local/bin with the downloaded script files there and /usr/bin/ffmpeg as local volumes. I updated the location in the script for ffmpeg to be /usr/bin/ffmpeg/bin/ffmpeg. I also created wrapper.sh in /usr/local/bin/. I don't seem to be having any luck. Is there something else I am missing?

I see "20-8-17 08:14:20.6|/bin/sh: 1: /usr/bin/ffmpeg/bin/ffmpeg: not found" in the log file, but the path looks correct to me.

image

docker create --name=lidarr -e TZ=America/Chicago -p 8686:8686 -e PUID=0 -e PGID=0 \
-v C:\Users\user\Documents\Docker\lidarr\config:/config/ \
-v C:\Users\user\Downloads\:/downloads/ \
-v C:\Users\user\Documents\Docker\lidarr\ffmpeg:/usr/bin/ffmpeg \
-v C:\Users\user\Documents\Docker\lidarr\bin:/usr/local/bin \
-v xbmcmusic:/music/  linuxserver/lidarr:preview

Question, not issue: how to update?

Hi, I've been using your script for a few months. Today I decided to check your github and saw you updated several times.
How do I update it? Or does it update by itself? I'm on Docker and I can see from Portainer if a container as been updated by Watchtower in the Image list on left panel, but flac2mp3 is a script, not a container, so I don't know what version I have.

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.