-
-
Notifications
You must be signed in to change notification settings - Fork 79
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
cannot read metadata, file does not exist #67
Comments
Found the problem. Missing slash in input file "data/audiobook" has to be /data/audiobook |
@Arsur I'm also struggling with this error with these newer versions, can you tell me what your alias command is? |
TLDR;
More detailsI guess, that the most important part of this problem is, that you have to mount the local volume into the docker image correctly - otherwise it won't be accessable. If your current directory is
running
The docker image is configured to change into the directory
will work, but
won't work, because the upper directory is not mounted into the image - like described in the notes:
If you would like to use absolute paths, you could to the following:
But i would recommend to just keep the relative part of the directory and use the alias described in the documentation. |
Yeah, I understand that it should be mounting the present working directory
as /mnt in the container. When I don’t remove the container and look at it,
the files are there correctly.
I am using docker inside of an Ubuntu machine with the audiobooks folder on
my NAS mounted to the host machine via samba. Still get this error message
with recent versions. A few months ago when I was processing dozens of
audiobooks it worked perfectly using this method. I was using the kmlucy
docker image instructions, which mounted into the /data folder instead of
/mnt. I think this was prior to v.4
In the meantime I am just not using docker, I instead installed it directly
in Ubuntu and it is working perfectly, same files and command (obviously a
different path).
…On Sun, Jan 19, 2020 at 1:18 AM Andreas ***@***.***> wrote:
I guess, that the most important part of this problem is, that you have to
mount the local volume into the docker image correctly. If your current
directory is /home/sandreas/audiobooks use the following alias command:
alias m4b-tool='docker run -it --rm -u $(id -u):$(id -g) -v "$(pwd)":/mnt m4b-tool'
running m4b-tool resolves to:
docker run -it --rm -u sandreas:sandreas -v "/home/sandreas/audiobooks":/mnt m4b-tool
The docker image is configured to change into the directory /mnt - this
means, that patterns like
m4b-tool merge ../other-audiobooks
Won't work, because the upper directory is not mounted into the image -
like described in the notes:
Note: If you use the alias above, keep in mind that you cannot use
absolute paths (e.g. /tmp/data/audiobooks/harry potter 1) or symlinks. You
must change into the directory and use relative paths (e.g. cd /tmp/data &&
m4b-tool merge "audiobooks/harry potter 1" --output-file harry.m4b)
If you would like to use absolute paths, you could to the following:
docker run -it --rm -u $(id -u):$(id -g) -v "/absolute/path":/mnt m4b-tool merge /mnt/dir/in/absolute/path
But i would recommend to just keep the relative part of the directory and
use the alias described in the documentation.
—
You are receiving this because you commented.
Reply to this email directly, view it on GitHub
<#67?email_source=notifications&email_token=AECUW5M46UERXS5PMBUOXFDQ6PWEPA5CNFSM4KCY6RH2YY3PNVWWK3TUL52HS4DFVREXG43VMVBW63LNMVXHJKTDN5WW2ZLOORPWSZGOEJKKA5A#issuecomment-575971444>,
or unsubscribe
<https://github.com/notifications/unsubscribe-auth/AECUW5LKLE3R7FOBTFIAHW3Q6PWEPANCNFSM4KCY6RHQ>
.
|
Having this problem right now. Nothing I saw above seems to solve it. I want to resolve both of these issues:
Right now I'm in my
So I use sudo to overcome the permissions issue (though I've tried following this to some extent) and run
Is there anything I can do from here @sandreas ? Am I even in the right place to run these relative path commands? Should I be deeper in? |
You have to start the docker daemon - it seems that it is not running
Seems that you did not create the alias ( |
Hmm... running
No, definitely did that. From my command history:
That could definitely be the case. I started with the Ubuntu instructions before I went back and did the docker ones. Going to retry the merge command though now that I've got dockerd going. EDIT: Same errors. EDIT 2: changed the alias command a bit to: This eliminated the first issue and now only leaves the |
I think that there is a permission problem... Running Under the hood the
It might be a problem of |
I didn’t have any docker related stuff on this machine prior to this so I’m willing to bet that there might’ve been something up with that installation. I can’t do (and from the beginning haven’t been able to do) anything with docker without I got docker via I think I’ll try and start over with this docker installation. |
From my install script (no guarantees...):
|
Well, after a reboot things with docker at least seem to be working a bit better. I no longer have to use After ensuring that the docker service was running I then went to check my aliases for this session. The alias from last time was no longer there so I changed directory to
The mp3 files I'm trying to merge into an m4b are all in |
I could never get this working on docker on the newer versions, despite
using it successfully on hundreds of files previously. I ended up just
running it on an ubuntu VM.
…On Sun, Mar 22, 2020 at 12:41 PM tennyson-mccalla ***@***.***> wrote:
Well, after a reboot things with docker at least seem to be working a bit
better. I no longer have to use sudo to get things done. I can call docker
run hello-world without any permissions problems. The group docker comes
up when I run groups.
After ensuring that the docker service was running I then went to check my
aliases for this session. The alias from last time was no longer there so I
changed directory to ~/Downloads, ran alias m4b-tool='docker run -it --rm
-u $(id -u):$(id -g) -v "$(pwd)":/mnt m4b-tool' and tried m4b-tool merge
"Genre/Author/Title/" --output-file="Title.m4b". I got back:
cannot read metadata, file does not exist
The mp3 files I'm trying to merge into an m4b are all in
~/Downloads/Genre/Author/Title/ and I still have no idea what metadata
file it's looking for or what else might be wrong. :-/
—
You are receiving this because you commented.
Reply to this email directly, view it on GitHub
<#67 (comment)>,
or unsubscribe
<https://github.com/notifications/unsubscribe-auth/AECUW5OVLRVVTDFJ342ZRXLRIY5UPANCNFSM4KCY6RHQ>
.
|
@MrTechGadget , yeah I saw your post above and now I'm thinking of just trying the same thing. I've unaliased the m4b-tool command and I tried just running it but I still get the same original errors I was getting when I started.
I feel like I do have libfdk_aac (I don't know how to prove that I do or how to activate it during the process even if I wanted to) and the bigger problem of the metadata file remains. |
Well this seems to be something i should take a look at... I'll reopen the ticket and take a look, unfortunately I'm not able to do this in the next days. |
Thanks @sandreas . And feel free to take your time on this. I’m not going anywhere for a while 😅 |
Ok, this one should be fixed with the latest |
So im running the tool dockerised and its version is I too am getting the My structure is /media/audio_books/BookFolders and i am CDing into /media and running i've tried it without the / in front of audio_books, i've tried running it from with /media/audio_books and dropping that from the merge command as well, i've tried it with ran debug with it and here is the output
would love some input on what im doing wrong. |
Please check with the latest pre-release, it should be fixed there. |
Now i am getting
Current version comes out as In both cases, it is creating a subfolder called |
This is strange. The |
Maybe something to do with this `user@server:~$ sudo apt install ffmpeg mp4v2-utils fdkaac php-cli php-intl php-json php-mbstring php-xml [sudo] password for user: Reading package lists... Done E: Package 'mp4v2-utils' has no installation candidate` I tried the docker version but kept getting hot with some error about time or date on line ninety something. I don't recall exactly but I can reproduce when I'm back at my machine. For now I went with the local install on Ubuntu. Version 20.02 LTS |
So i went ahead and followed some instructions i found here in regards to getting mp4-utils loaded. yermak's instructions and it looks like things are working fine. I will see about reproducing the error i got when trying to run it in docker. |
I am using it in Manjaro from the AUR (without docker). I found that if I use the command
I get the error If I instead use
then there are no errors 😀 |
Nice find. I'll take a look on this, as soon as I am not as busy any more... thank you. |
Possible solution: I was getting the "cannot read metadata, file does not exist" error when running this inside a Ubuntu VM. I had attached the .mp3 files as a shared folder between my host PC and my VM. After I copied the .mp3's to the desktop of my VM, I was able to run the merge command. Seems like it was just having trouble accessing the shared folder. As a side note, is there a size cutoff or a file-count cutoff? The first time I ran m4b-tool to merge 56 .mp3's into a .m4b it only did the first 40 of them. |
Hi,
using "Git for Windows" i used the bash console for downloding/building the container: the definition of the alias was modified (so that it works) to: after cd'ing to the directory "/to/where/I/want" (which has the subfolder "test" of the audiobook that contains the mp3s I get the error below (eventhough
|
I always get the "error cannot read metadata, file does not exist"
I used a docker container from version 0.3.x in the past and now builded a new one with version 0.4.2
The same commands stopped working. Is there a way to see what is mounted in the docker container? (docker exec -it /bin/bash)
m4b-tool --version is working...
The text was updated successfully, but these errors were encountered: