zivavatra / flac2all Goto Github PK
View Code? Open in Web Editor NEWA multi-process batch flac converter. For music lovers with large collections :-)
Home Page: http://flac2all.witheredfire.com/
License: GNU General Public License v3.0
A multi-process batch flac converter. For music lovers with large collections :-)
Home Page: http://flac2all.witheredfire.com/
License: GNU General Public License v3.0
What steps will reproduce the problem?
1. Rip a CD using the excellent DBPowerAmp tool, including the cover art
2. Use flac2all v3.48 or older to convert to mp3
We would expect the mp3 file to contain the important flac tags, but they do
not. They only contain the "genre" tag, because it is set in the code. All
other tags are empty.
I was able to fix the problem by changing the block in which the metaflac
command has to look from 2 to 1. It appears that block 2 contains the coverart
jpg file...
So I replace line 104 in release 48 of the stable code:
flacdata = os.popen("%smetaflac --list --block-number 2 %s" %
with
flacdata = os.popen("%smetaflac --list --block-number 1 %s" %
This solved the problem for me, but I guess this fix will brake functionality
for files without embedded cover art. So a better fix is required for the
general public.
What version of the product are you using? On what operating system?
Release 48 (but problem also occurs on v28 and v38)
Ubuntu server 12.04.3 LTS
Original issue reported on code.google.com by [email protected]
on 26 Jun 2014 at 10:47
hi, thanks for this useful tool.
i have a problem though: after encoding is finished, flac2all
(installed from the pypi release using pipx install
) always crashes. this is the traceback:
UTC~21:31:24: Processing Complete!
UTC~21:31:24: Waiting for all running process to complete.
UTC~21:31:24: Processing run log...
Traceback (most recent call last):
File "/home/wbolster/.local/bin/flac2all", line 8, in <module>
sys.exit(main())
File "/home/wbolster/.local/pipx/venvs/flac2all/lib/python3.8/site-packages/flac2all_pkg/__init__.py", line 440, in main
threaded_encode()
File "/home/wbolster/.local/pipx/venvs/flac2all/lib/python3.8/site-packages/flac2all_pkg/multiprocess_encode.py", line 188, in encode
failures = generate_summary(start_time, end_time, len(files), result_log, opts['outdir'])
TypeError: generate_summary() takes 4 positional arguments but 5 were given
What steps will reproduce the problem?
1. using the program with certain (non-compliant?) flac files e.g.
./flac2all_v3.28.py mp3 flacdir/ -c -o MP3dir
2.
3.
What is the expected output? What do you see instead?
The output files have no tags other than LAME automatic setting the genre tag
to "Other".
What version of the product are you using? On what operating system?
v3.28 on Debian Wheezy
Please provide any additional information below.
The fix for me was to remove the "--block-number 2" argument to metaflac. It
doesn't seem to be causing any other problems that I can see.
Here is the metaflac output for 1 affected file:
$ metaflac --list ../Music/Midge\ Marsden/Burning\ Rain/01.\ Burning\ Rain.flac
METADATA block #0
type: 0 (STREAMINFO)
is last: false
length: 34
minimum blocksize: 1152 samples
maximum blocksize: 1152 samples
minimum framesize: 14 bytes
maximum framesize: 4555 bytes
sample_rate: 44100 Hz
channels: 2
bits-per-sample: 16
total samples: 10054212
MD5 signature: af24d2c3f4afbd0802b723bb4302ed5c
METADATA block #1
type: 4 (VORBIS_COMMENT)
is last: false
length: 219
vendor string: reference libFLAC 1.2.1 20070917
comments: 9
comment[0]: TITLE=Burning Rain
comment[1]: ARTIST=Midge Marsden
comment[2]: ALBUM=Burning Rain
comment[3]: DATE=1991
comment[4]: TRACKNUMBER=01
comment[5]: TRACKTOTAL=18
comment[6]: GENRE=R&B
comment[7]: METADATAPROVIDER=User
comment[8]: graphic_front_cover+=
METADATA block #2
type: 1 (PADDING)
is last: true
length: 210
Original issue reported on code.google.com by [email protected]
on 24 Sep 2013 at 4:04
Enhancement request.
Right now flac2all copies the directory structure one level under input dir, I
would like it to also create the top-level directory itself.
When I:
1. Want to copy Artist/Album directory structure with multiple albums, I would
like it when de Artist directory is created in the output folder, with Album
directories underneath (with Artist as input dir)
2. Want to copy a single Album directory: create the Album dir, with files in
it.
I'm no programmer, but this modification of 3.71 seems to work for me.
606c606
< outdirFinal = opts['outdir'] + os.path.split(current_file_local)[0]
---
> outdirFinal = opts['outdir'] + os.path.split(opts['dirpath'])[1] +
os.path.split(current_file_local)[0]
PS.
Nice tool! Was searching for something like it for a while.
Original issue reported on code.google.com by [email protected]
on 4 Mar 2015 at 7:57
Please refer to this discussion this discussion and this discussion.
I am working on a possible fix.
I get an exception all the time, the files are fine though:
Exception in thread Thread-118:
Traceback (most recent call last):
File "/usr/local/lib/python2.7/threading.py", line 808, in __bootstrap_inner
self.run()
File "/usr/local/lib/python2.7/threading.py", line 761, in run
self.__target(*self.__args, **self.__kwargs)
File "/usr/local/sbin/flac2all", line 595, in encode_thread
mp3Class.mp3convert(opts['lameopts'],current_file,outfile)
File "/usr/local/sbin/flac2all", line 509, in mp3convert
decoder.flush() #if there is any data left in the buffer, clear it
IOError: [Errno 9] Bad file descriptor
This can be fixed by changing
decoder = os.popen(flacpath + "flac -d -s -c " + shell().parseEscapechars(infile),'rb',1024)
to
decoder = os.popen(flacpath + "flac -d -s -c " + shell().parseEscapechars(infile),'w+b',1024)
Original issue reported on code.google.com by [email protected]
on 8 Feb 2014 at 4:06
Investigate use of mutagen tagging library for better tag support (including
embedded graphics) in flac2all
* If good for our needs, to be implemented in v4
* http://mutagen.readthedocs.org/en/latest/
Original issue reported on code.google.com by [email protected]
on 13 Jan 2015 at 4:22
What steps will reproduce the problem?
1. Convert flac file with lyrics to mp3
What is the expected output? What do you see instead?
Expected output: lyrics present in mp3 file.
Real output: lyrics not present in mp3 file
What version of the product are you using? On what operating system?
v3.51
Please provide any additional information below.
I added an example file as attachment, but really any flac file with lyrics
will do as far as I saw with my music.
Original issue reported on code.google.com by [email protected]
on 20 Feb 2015 at 6:21
Attachments:
I think the best aac for linux is NOT faad but neroaacenc available from the
following link: http://www.nero.com/eng/technologies-aac-codec.html
Original issue reported on code.google.com by [email protected]
on 10 Mar 2012 at 7:19
Greetings,
In the latest version 5.1 the copy function is broken due to string
being called rather than str
in shell.py. This causes flac2all to hang once all music files have been processed. This happens the first time it comes across a file it intends to copy.
The specific error can be seen when trying to copy cover art as it processes it's first album:
UTC~19:52:18: Folder vorbis already exists, reusing...
UTC~19:52:19: We have 1487 flac files to convert
UTC~19:52:19: We have 191 non-flac files to copy across
UTC~19:52:19: Spawning execution process
UTC~19:52:19: Spawning execution process
UTC~19:52:19: Spawning execution process
UTC~19:52:19: Spawning execution process
UTC~19:52:19: Spawning execution process
UTC~19:52:19: Spawning execution process
UTC~19:52:19: Spawning execution process
UTC~19:52:19: Spawning execution process
UTC~19:52:19: Spawning execution process
UTC~19:52:19: Spawning execution process
UTC~19:52:19: Spawning execution process
UTC~19:52:19: Spawning execution process
UTC~19:52:19: Spawning execution process
UTC~19:52:19: Spawning execution process
UTC~19:52:19: Spawning execution process
UTC~19:52:19: Spawning execution process
UTC~19:52:19: Processing: 17-velvet.flac target: vorbis
UTC~19:52:19: Processing: 18-forever-not-yours.flac target: vorbis
UTC~19:52:20: Processing: 19-lifelines.flac target: vorbis
UTC~19:52:20: Processing: 17-here-is-the-news-(elo-style-radio-edit).flac target: vorbis
UTC~19:52:20: Processing: 01-prologue.flac target: vorbis
UTC~19:52:20: Processing: 02-the-sun-also-rises.flac target: vorbis
UTC~19:52:20: Processing: 03-binary.flac target: vorbis
UTC~19:52:20: Processing: 04-mercury.flac target: vorbis
UTC~19:52:20: Processing: 05-enamel.flac target: vorbis
UTC~19:52:20: Processing: 06-anastasia.flac target: vorbis
UTC~19:52:20: Processing: 07-titan.flac target: vorbis
UTC~19:52:20: Processing: 08-gemini.flac target: vorbis
UTC~19:52:20: Processing: 09-estrella.flac target: vorbis
UTC~19:52:20: Processing: 10-heart-still-beats.flac target: vorbis
UTC~19:52:20: Processing: 12-i-fell-away.flac target: vorbis
UTC~19:52:20: Processing: 11-babies-breath.flac target: vorbis
Traceback (most recent call last):
File "/bin/flac2all", line 11, in <module>
load_entry_point('flac2all==5.0', 'console_scripts', 'flac2all')()
File "/usr/lib/python3.8/site-packages/flac2all_pkg/__init__.py", line 427, in main
threaded_encode()
File "/usr/lib/python3.8/site-packages/flac2all_pkg/multiprocess_encode.py", line 128, in encode
outdir = sh.generateoutdir(srcfile, os.path.join(dest, encformat), srcroot)
File "/usr/lib/python3.8/site-packages/flac2all_pkg/shell.py", line 45, in generateoutdir
if (string.find(os.path.split(indir)[0], dirpath) != -1):
Changing line 45 from:
if (string.find(os.path.split(indir)[0], dirpath) != -1):
to:
if (str.find(os.path.split(indir)[0], dirpath) != -1):
fixes flac2all and copy functions as it should.
This was tested on an up-to-date Arch Linux system with the latest package from AUR.
I am packaging this for Arch Linux. I took the dependencies from your README but perhaps I missed one? Any thoughts are welcomed.
% flac2all -h
Traceback (most recent call last):
File "/usr/bin/flac2all", line 11, in <module>
load_entry_point('flac2all==4.3', 'console_scripts', 'flac2all')()
File "/usr/lib/python3.8/site-packages/pkg_resources/__init__.py", line 489, in load_entry_point
return get_distribution(dist).load_entry_point(group, name)
File "/usr/lib/python3.8/site-packages/pkg_resources/__init__.py", line 2852, in load_entry_point
return ep.load()
File "/usr/lib/python3.8/site-packages/pkg_resources/__init__.py", line 2443, in load
return self.resolve()
File "/usr/lib/python3.8/site-packages/pkg_resources/__init__.py", line 2449, in resolve
module = __import__(self.module_name, fromlist=['__name__'], level=0)
File "/usr/lib/python3.8/site-packages/flac2all_pkg/__init__.py", line 32, in <module>
from shell import shell
ModuleNotFoundError: No module named 'shell'
The script appears to struggle with files that contain the dollar symbol in
their name, for example:
- 3OH!3 feat. Ke$ha - My First Kiss.flac
When flac2all is given a folder that contains a track with this character in
the name, you get this:
- ERROR: Cannot open input file "/mnt/store/Music/3OH!3/Streets of Gold/03 3OH!3 feat. Ke - My First Kiss.flac": No such file or directory
Just to confirm, I gave it the folder to process, not that file specifically so
it won't be an issue with Bash parsing it from the command I gave it.
Original issue reported on code.google.com by [email protected]
on 7 Nov 2012 at 10:36
This is more of a feature request:
Can you include an option to skip defined files?
I can try to add this option myself, if I get somewhere I’ll upload the
script here.
Original issue reported on code.google.com by [email protected]
on 8 Nov 2012 at 7:27
What steps will reproduce the problem?
1. Start some conversion
2. hit ctrl-c
What is the expected output? What do you see instead?
The program should stop, maybe do some cleanup (delete tmp files or not fully
converted files). Instead nothing happens (conversion of files continues). I
can still kill the program if I hold down ctrl-c for some time.
versions: flac2all 3.71 on Arch Linux 4.0.1
Original issue reported on code.google.com by [email protected]
on 6 May 2015 at 1:09
I have files with colons (:) and questions marks which are valid on one file
system but not another (mainly fat/vfat).
It would be great if we could specify a substitute character or characters, eg
-s : - -s ? --
could substitute a colon with a dash and substitute a question mark with
nothing (-- symbolizes nothing in this case)
If the above makes things too complex then perhaps just a single substitution
character may be sufficient.
Original issue reported on code.google.com by [email protected]
on 7 Feb 2013 at 11:06
Not so much because there's an exception (these things happen, I don't care too much) but I would love to know which of the 400 files being converted was the target when the exception occurred on so I can evaluate the situation later.
The exception, for reference:
Exception in thread Thread-50:
Traceback (most recent call last):
File "/usr/lib/python2.7/threading.py", line 801, in __bootstrap_inner
self.run()
File "/usr/lib/python2.7/threading.py", line 754, in run
self.__target(_self.__args, *_self.__kwargs)
File "/root/scriptbin/flac2all.py", line 678, in encode_thread
mp3Class.mp3convert(opts['lameopts'],current_file,outfile)
File "/root/scriptbin/flac2all.py", line 577, in mp3convert
encoder.write(line) #write it to the encoders buffer
IOError: [Errno 32] Broken pipe
I seem to be at a loss with this issue, I've been using this utility for quite a while now when converting my flac files to vorbis and lately I've been experimenting with transcoding my stuff into opus. The program itself runs as it should, it seems, but after it goes through all of the files it just hangs there for hours and never terminates. I've looked at htop to see whether there's something off but to me it seems that the process is just idle and are not doing anything.
These are the options that I used:
./flac2all/flac2all_pkg/init.py opus -o ./outdir/ --opus-options="bitrate 64" ./indir/
I'm also using the issue45 branch of the program but I have also tested this on a separate machine using the version5 branch and both just does this odd behavior.
Any help is appreciated, thanks!
$ flac2all mp3 ~/Music/flac/downloads/redtopia/Eagles\ -\ On\ The\ Border\ \[1974\]\ \[FLAC\]\ \{7E-1004-2\,\ 243\ 005\}/ -n -l '-replaygain-accurate:V 0' -o ~/Music/mp3/eagles
Flac2all python script, v3 . Copyright 2006-2015 Ziva-Vatra.com.
Licensed under the GPLv3 .
Project website: https://github.com/ZivaVatra/flac2all
/bin/sh: line 0: type: opusenc: not found
There are 17 files, of which 10 are convertable FLAC files
We are running 8 simultaneous transcodes
converting file #1 to mp3
converting file #2 to mp3
converting file #4 to mp3
converting file #6 to mp3
converting file #5 to mp3
converting file #7 to mp3
converting file #8 to mp3
02 - You Never Cry Like A Lover.flac: ERROR initializing decoder
init status = FLAC__STREAM_DECODER_INIT_STATUS_ERROR_OPENING_FILE
An error occurred opening the input file; it is likely that it does not exist
or is not readable.
02 - You Never Cry Like A Lover.flac: ERROR initializing decoder
init status = FLAC__STREAM_DECODER_INIT_STATUS_ERROR_OPENING_FILE
An error occurred opening the input file; it is likely that it does not exist
or is not readable.
10 - The Best Of My Love.flac: ERROR initializing decoder
init status = FLAC__STREAM_DECODER_INIT_STATUS_ERROR_OPENING_FILE
An error occurred opening the input file; it is likely that it does not exist
or is not readable.
10 - The Best Of My Love.flac: ERROR initializing decoder
init status = FLAC__STREAM_DECODER_INIT_STATUS_ERROR_OPENING_FILE
An error occurred opening the input file; it is likely that it does not exist
or is not readable.
07 - Ol' 55.flac: ERROR initializing decoder
init status = FLAC__STREAM_DECODER_INIT_STATUS_ERROR_OPENING_FILE
An error occurred opening the input file; it is likely that it does not exist
or is not readable.
07 - Ol' 55.flac: ERROR initializing decoder
init status = FLAC__STREAM_DECODER_INIT_STATUS_ERROR_OPENING_FILE
An error occurred opening the input file; it is likely that it does not exist
or is not readable.
06 - James Dean.flac: ERROR initializing decoder
init status = FLAC__STREAM_DECODER_INIT_STATUS_ERROR_OPENING_FILE
An error occurred opening the input file; it is likely that it does not exist
or is not readable.
06 - James Dean.flac: ERROR initializing decoder
init status = FLAC__STREAM_DECODER_INIT_STATUS_ERROR_OPENING_FILE
An error occurred opening the input file; it is likely that it does not exist
or is not readable.
03 - Midnight Flyer.flac: ERROR initializing decoder
init status = FLAC__STREAM_DECODER_INIT_STATUS_ERROR_OPENING_FILE
An error occurred opening the input file; it is likely that it does not exist
or is not readable.
03 - Midnight Flyer.flac: ERROR initializing decoder
init status = FLAC__STREAM_DECODER_INIT_STATUS_ERROR_OPENING_FILE
An error occurred opening the input file; it is likely that it does not exist or is not readable.
04 - My Man.flac: ERROR initializing decoder
init status = FLAC__STREAM_DECODER_INIT_STATUS_ERROR_OPENING_FILE
An error occurred opening the input file; it is likely that it does not exist
or is not readable.
04 - My Man.flac: ERROR initializing decoder
init status = FLAC__STREAM_DECODER_INIT_STATUS_ERROR_OPENING_FILE
An error occurred opening the input file; it is likely that it does not exist
or is not readable.
Warning: unsupported audio format
Can't init infile '-'
01 - Already Gone.flac: ERROR initializing decoder
init status = FLAC__STREAM_DECODER_INIT_STATUS_ERROR_OPENING_FILE
An error occurred opening the input file; it is likely that it does not exist
or is not readable.
01 - Already Gone.flac: ERROR initializing decoder
init status = FLAC__STREAM_DECODER_INIT_STATUS_ERROR_OPENING_FILE
An error occurred opening the input file; it is likely that it does not exist
or is not readable.
Warning: unsupported audio format
Can't init infile '-'
Warning: unsupported audio format
Can't init infile '-'
Warning: unsupported audio format
Can't init infile '-'
Warning: unsupported audio format
Can't init infile '-'
Warning: unsupported audio format
Can't init infile '-'
Warning: unsupported audio format
Can't init infile '-'
converting file #11 to mp3
converting file #12 to mp3
converting file #13 to mp3
05 - On The Border.flac: ERROR initializing decoder
init status = FLAC__STREAM_DECODER_INIT_STATUS_ERROR_OPENING_FILE
An error occurred opening the input file; it is likely that it does not exist
or is not readable.
05 - On The Border.flac: ERROR initializing decoder
init status = FLAC__STREAM_DECODER_INIT_STATUS_ERROR_OPENING_FILE
An error occurred opening the input file; it is likely that it does not exist
or is not readable.
09 - Good Day In Hell.flac: ERROR initializing decoder
init status = FLAC__STREAM_DECODER_INIT_STATUS_ERROR_OPENING_FILE
An error occurred opening the input file; it is likely that it does not exist
or is not readable.
09 - Good Day In Hell.flac: ERROR initializing decoder
init status = FLAC__STREAM_DECODER_INIT_STATUS_ERROR_OPENING_FILE
An error occurred opening the input file; it is likely that it does not exist
or is not readable.
08 - Is It True.flac: ERROR initializing decoder
init status = FLAC__STREAM_DECODER_INIT_STATUS_ERROR_OPENING_FILE
An error occurred opening the input file; it is likely that it does not exist
or is not readable.
08 - Is It True.flac: ERROR initializing decoder
init status = FLAC__STREAM_DECODER_INIT_STATUS_ERROR_OPENING_FILE
An error occurred opening the input file; it is likely that it does not exist
or is not readable.
Warning: unsupported audio format
Can't init infile '-'
Warning: unsupported audio format
Can't init infile '-'
Warning: unsupported audio format
Can't init infile '-'
See
http://superuser.com/questions/502500/preserve-embedded-album-art-when-convertin
g-from-flac-to-ogg for the problem.
Original issue reported on code.google.com by [email protected]
on 8 Nov 2012 at 7:20
What steps will reproduce the problem?
1. using the program with flac files that have a : in the track title e.g.
./flac2all_v3.28.py mp3 flacdir/ -c -o MP3dir
2.
3.
What is the expected output? What do you see instead?
Track titles truncated at the first colon
What version of the product are you using? On what operating system?
v3.28 on Debian Wheezy
Please provide any additional information below.
The fix is in getflacmeta, by replacing:
datalist.append(string.split(data,":"))
with
datalist.append(string.split(data,":",1))
This will ensure the comment data parser only splits off up to the first colon.
Check out the track title in this metaflac dump, where the MP3 file title ended
up being "4" instead of "4:39am ...."
$ metaflac --list ../Music/Roger\ Waters/The\ Pros\ and\ Cons\ of\ Hitch\
Hiking/04.\ 4\:39am\ \(For\ The\ First\ Time\ Today\,\ Part\ 2\).flac
METADATA block #0
type: 0 (STREAMINFO)
is last: false
length: 34
minimum blocksize: 4608 samples
maximum blocksize: 4608 samples
minimum framesize: 6453 bytes
maximum framesize: 15346 bytes
sample_rate: 44100 Hz
channels: 2
bits-per-sample: 16
total samples: 5404896
MD5 signature: f1bbdeb84c6991f240cf2e22df51a40e
METADATA block #1
type: 3 (SEEKTABLE)
is last: false
length: 216
seek points: 12
point 0: sample_number=0, stream_offset=0, frame_samples=4608
point 1: sample_number=446976, stream_offset=836197, frame_samples=4608
point 2: sample_number=898560, stream_offset=1635784, frame_samples=4608
point 3: sample_number=1350144, stream_offset=2647529, frame_samples=4608
point 4: sample_number=1797120, stream_offset=3856226, frame_samples=4608
point 5: sample_number=2248704, stream_offset=4978619, frame_samples=4608
point 6: sample_number=2700288, stream_offset=6210121, frame_samples=4608
point 7: sample_number=3151872, stream_offset=7483671, frame_samples=4608
point 8: sample_number=3598848, stream_offset=8439309, frame_samples=4608
point 9: sample_number=4050432, stream_offset=9423708, frame_samples=4608
point 10: sample_number=4502016, stream_offset=10441031, frame_samples=4608
point 11: sample_number=4953600, stream_offset=11447905, frame_samples=4608
METADATA block #2
type: 4 (VORBIS_COMMENT)
is last: false
length: 225
vendor string: reference libFLAC 1.1.2 20050205
comments: 7
comment[0]: TITLE=4:39am (For The First Time Today, Part 2)
comment[1]: ARTIST=Roger Waters
comment[2]: ALBUM=The Pros and Cons of Hitch Hiking
comment[3]: DATE=1983
comment[4]: TRACKNUMBER=04
comment[5]: TRACKTOTAL=12
comment[6]: GENRE=Soundtrack
METADATA block #3
type: 1 (PADDING)
is last: true
length: 4078
Great program BTW! Very useful for making MP3s for the car stereo.
Original issue reported on code.google.com by [email protected]
on 24 Sep 2013 at 4:12
Enhancement request.
Given the multithread logic is already in place, how about an option to run
miltithreaded testing of all FLAC files in a given directory structure?
Original issue reported on code.google.com by [email protected]
on 13 Jul 2014 at 5:18
I am trying to use less parallel threads than the reported number of
hyperthreads on my computer. Therefore, I call flac2all like this:
>python ~/Downloads/flac2all_v3.38.py vorbis . --outdir=../ogg --threads=3
My python version is 2.7 (Ubuntu 12.04). The command crashes and the output is:
==========
Flac2all python script, v3 . Copyright 2006-2012 Ziva-Vatra.com.
Licensed under the GPLv2 (http://www.ziva-vatra.com).
Project website: http://code.google.com/p/flac2all/
There are 4048 files, of which 4004 are convertable FLAC files
Traceback (most recent call last):
File "~/Downloads/flac2all_v3.38.py", line 758, in <module>
print "We are running %d simultaneous transcodes" % (opts['threads'])
TypeError: %d format: a number is required, not str
==========
I replaced "%d" by "%s" and it works now. But I am not a python person, so I
can't suggest a real fix.
Original issue reported on code.google.com by [email protected]
on 2 Feb 2014 at 7:28
Without installing opus-tools from my Arch Repository, flac2all will produce the following error
/bin/sh: line 0: type: opusenc: not found
sh: opusenc: command not found
Traceback (most recent call last):
File "/usr/bin/flac2all", line 834, in
opusClass = opus()
File "/usr/bin/flac2all", line 109, in init
data = re.search("\d.\d.\d",data).group(0)
AttributeError: 'NoneType' object has no attribute 'group'
I listed it as a problem on the forums and was told to let you know
https://bbs.archlinux.org/viewtopic.php?id=206993
Hope this was useful. It works once I install the package.
Thank you for your work, I enjoy using your script 👍
What steps will reproduce the problem?
1. flac2all -t 8
What is the expected output?
There are 19 files, of which 17 are convertable FLAC files
We are running 8 simultaneous transcodes
What do you see instead?
There are 19 files, of which 17 are convertable FLAC files
Traceback (most recent call last):
File "flac2all_v3.38.py", line 758, in <module>
print "We are running %d simultaneous transcodes" % opts['threads']
TypeError: %d format: a number is required, not str
What version of the product are you using? On what operating system?
3.38 from google code
Please provide any additional information below.
see attached patch
Original issue reported on code.google.com by [email protected]
on 11 Dec 2014 at 10:21
Attachments:
Neither the build from master or the origin/version5 branch will run on my Mac running Catalina 10.15.7. It looks like the code is using a python feature (_sem._semlock._get_value()) that isn't implemented on the Mac. The same command line works fine on a Linux system.
Here's the command I am using and the stacktrace.
> flac2all mp3 -n d -o DISC\ 1 DISC\ 1
UTC~00:31:49: Folder mp3 already exists, reusing...
UTC~00:31:50: We have 0 flac files to convert
Traceback (most recent call last):
File "/usr/local/bin/flac2all", line 33, in <module>
sys.exit(load_entry_point('flac2all==5.5', 'console_scripts', 'flac2all')())
File "/usr/local/lib/python3.9/site-packages/flac2all_pkg/__init__.py", line 440, in main
threaded_encode()
File "/usr/local/lib/python3.9/site-packages/flac2all_pkg/multiprocess_encode.py", line 98, in encode
log.info("We have %d non-flac files to copy across" % cQ.qsize())
File "/usr/local/Cellar/[email protected]/3.9.1_3/Frameworks/Python.framework/Versions/3.9/lib/python3.9/multiprocessing/queues.py", line 126, in qsize
return self._maxsize - self._sem._semlock._get_value()
NotImplementedError
I found a workaround for a different package, but I didn't have time to dive in your queue code to see if it can be done here...
keras-team/autokeras#368
What steps will reproduce the problem?
1. Try to convert flac files with unsupported genre to mp3
What is the expected output? What do you see instead?
Expected: Flac file converted to mp3 with correct tagging (and "Other" for the
genre when it was not supported)
What happens:The flac files with unsupported genre are not tagged properly, all
fields are set to "unknown", except for genre, which is set to "Other".
What version of the product are you using? On what operating system?
3.38 on Ubuntu 14.04
Please provide any additional information below.
Original issue reported on code.google.com by [email protected]
on 9 Oct 2014 at 4:38
% flac2all vorbis,mp3,test --vorbis-options='quality=2' -o ./fromFlac ./files
Traceback (most recent call last):
File "/usr/bin/flac2all", line 33, in <module>
sys.exit(load_entry_point('flac2all==5.5', 'console_scripts', 'flac2all')())
File "/usr/lib/python3.9/site-packages/flac2all_pkg/__init__.py", line 439, in main
clustered_encode(localworkers=True)
File "/usr/lib/python3.9/site-packages/flac2all_pkg/__init__.py", line 101, in clustered_encode
tsock.bind("tcp://*:2019")
File "/usr/lib/python3.9/site-packages/zmq/sugar/socket.py", line 208, in bind
super().bind(addr)
File "zmq/backend/cython/socket.pyx", line 540, in zmq.backend.cython.socket.Socket.bind
File "zmq/backend/cython/checkrc.pxd", line 28, in zmq.backend.cython.checkrc._check_rc
zmq.error.ZMQError: Address already in use
Or just:
% flac2all f:libfdk_aac .
Traceback (most recent call last):
File "/usr/bin/flac2all", line 33, in <module>
sys.exit(load_entry_point('flac2all==5.5', 'console_scripts', 'flac2all')())
File "/usr/lib/python3.9/site-packages/flac2all_pkg/__init__.py", line 439, in main
clustered_encode(localworkers=True)
File "/usr/lib/python3.9/site-packages/flac2all_pkg/__init__.py", line 101, in clustered_encode
tsock.bind("tcp://*:2019")
File "/usr/lib/python3.9/site-packages/zmq/sugar/socket.py", line 208, in bind
super().bind(addr)
File "zmq/backend/cython/socket.pyx", line 540, in zmq.backend.cython.socket.Socket.bind
File "zmq/backend/cython/checkrc.pxd", line 28, in zmq.backend.cython.checkrc._check_rc
zmq.error.ZMQError: Address already in use
The check for existing file endings does not seem to work correctly in all cases. If I run the script with "vorbis" as an encoder mode, it does not skip existing files. Specifically, the line
if os.path.exists(outfile + "." + mode):
seems to be the culprit, as it will look for "filename.vorbis" instead of "filename.ogg".
This tool is great for making a smaller (more portable) mirror of my flac files! I recently fixed up a bunch of tags in some of my source files, which flac2all hasn't copied over to my ogg mirror. I was wondering if you could add an option to overwrite the outfile if source mtime is newer than outfile mtime in order to to detect changes?
https://wiki.hydrogenaud.io/index.php?title=Musepack
Musepack is still a competitive lossy codec. It would be great to add it to flac2all since there's no native support to transfer tags with the CLI command (mpcenc).
Exception in thread Thread 4:
Traceback (most recent call last):
File "/usr/lib/python2.7/threading.py", line 801, in __bootstrap_inner
self.run()
File "/usr/lib/python2.7/site-packages/flac2all_pkg/__init__.py", line 112, in run
encoder = opus(opts['opusencopts'])
File "/usr/lib/python2.7/site-packages/flac2all_pkg/opus.py", line 30, in __init__
data = re.search("\d\.\d\.\d", data).group(0)
AttributeError: 'NoneType' object has no attribute 'group'
opusenc version
opusenc opus-tools 0.2 (using libopus 1.3)
Copyright (C) 2008-2018 Xiph.Org Foundation
Using -n gives
Traceback (most recent call last):
File "/usr/lib/python2.7/threading.py", line 810, in __bootstrap_inner
self.run()
File "/usr/lib/python2.7/threading.py", line 763, in run
self.__target(*self.__args, **self.__kwargs)
File "/usr/bin/flac2all", line 542, in encode_thread
outfile = os.path.join(outdirFinal,os.path.split(current_file_local)[1])
UnboundLocalError: local variable 'outdirFinal' referenced before assignment
Original issue reported on code.google.com by [email protected]
on 17 Dec 2013 at 9:03
Run flac2all (v3.38) with the option -t1
Traceback (most recent call last):
File "./flac2all_v3.38.py", line 758, in <module>
print "We are running %d simultaneous transcodes" % opts['threads']
TypeError: %d format: a number is required, not str
Add this line to fix it:
opts['threads'] = int(opts['threads'])
Original issue reported on code.google.com by [email protected]
on 23 Feb 2014 at 6:08
UTC~01:41:29: Processing Complete!
UTC~01:41:29: Waiting for all running process to complete.
UTC~01:41:29: Processing run log...
Traceback (most recent call last):
File "/home/user/.pyenv/versions/3-8-3/bin/flac2all", line 11, in <module>
load_entry_point('flac2all==5.1', 'console_scripts', 'flac2all')()
File "/home/user/.pyenv/versions/3.8.3/envs/3-8-3/lib/python3.8/site-packages/flac2all-5.1-py3.8.egg/flac2all_pkg/__init__.py", line 440, in main
threaded_encode()
File "/home/user/.pyenv/versions/3.8.3/envs/3-8-3/lib/python3.8/site-packages/flac2all-5.1-py3.8.egg/flac2all_pkg/multiprocess_encode.py", line 188, in encod
e
failures = generate_summary(start_time, end_time, len(files), result_log, opts['outdir'])
TypeError: generate_summary() takes 4 positional arguments but 5 were given
Command executed was flac2all mp3 -t 8 -o ./mp3_tracks ./
What steps will reproduce the problem?
1. Run flac2all on input directory with flac and non-flac files, with copy
option, ala "./flac2all.py vorbis Library -c -v ... -o Portable".
2. Repeat step 1.
What is the expected output? What do you see instead?
flac2all will skip copying/converting files that have already been converted
from flac, but will re-copy and overwrite originally non-flac files. On large
input folders this wastes significant time and I/O.
What version of the product are you using? On what operating system?
v3.71 on Linux.
Please provide any additional information below.
An option flag to change this behaviour is fine if people want it that way. Or
maybe a file hash check to detect differences would be preferable?
Original issue reported on code.google.com by [email protected]
on 25 Mar 2015 at 10:00
The current flac2all package is not installable via pip3 and yields the following output:
$ pip3 install --user flac2all
Collecting flac2all
Using cached https://files.pythonhosted.org/packages/93/9e/246405a84106f7d5073388d83c3cf65e95298379c56082ec181a5c18313e/flac2all-4.3.tar.gz
Complete output from command python setup.py egg_info:
Traceback (most recent call last):
File "<string>", line 1, in <module>
File "/tmp/pip-build-rm5nnfdn/flac2all/setup.py", line 17, in <module>
with open("./flac2all_pkg/version", 'r') as fd:
FileNotFoundError: [Errno 2] No such file or directory: './flac2all_pkg/version'
----------------------------------------
Command "python setup.py egg_info" failed with error code 1 in /tmp/pip-build-rm5nnfdn/flac2all/
What steps will reproduce the problem?
1. try to convert a flac file with tags in metadata block 1
2.
3.
What is the expected output? What do you see instead?
tags present in metadata block 1 should be copied in mp3 file
What version of the product are you using? On what operating system?
v3.38.py on fedora 19
Please provide any additional information below.
example of flac file with data on metadata block 1
[bernard@localhost Test]$ metaflac --list "01 - Track 1.flac"
METADATA block #0
type: 0 (STREAMINFO)
is last: false
length: 34
minimum blocksize: 4608 samples
maximum blocksize: 4608 samples
minimum framesize: 14 bytes
maximum framesize: 10943 bytes
sample_rate: 44100 Hz
channels: 2
bits-per-sample: 16
total samples: 24784200
MD5 signature: 7d12bc221cef253fbfd9e750e5c75486
METADATA block #1
type: 4 (VORBIS_COMMENT)
is last: false
length: 568
vendor string: GStreamer encoded vorbiscomment
comments: 16
comment[0]: playcount:[email protected]=2
comment[1]: compilation=0
comment[2]: musicbrainz_discid=ZYzLf7n1gb9dJs3TbhvooCODBQk-
comment[3]: genre=Classical
comment[4]: replaygain_track_peak=0.000000
comment[5]: album=Daniel Barenboim 50 years of performance
comment[6]: replaygain_album_gain=0.000000
comment[7]: discid=8310af09
comment[8]: title=Piano Sonata No.8 "Pathétique" Grave: Allegro di molto e con brio
comment[9]: artist=Ludwig Van Beethoven
comment[10]: replaygain_track_gain=0.000000
comment[11]: artistsort=Beethoven Ludwig Van
comment[12]: replaygain_album_peak=0.000000
comment[13]: tracknumber=1
comment[14]: tracktotal=9
comment[15]: discnumber=2
METADATA block #2
type: 1 (PADDING)
is last: true
length: 4016
Original issue reported on code.google.com by [email protected]
on 24 Jun 2014 at 9:17
What steps will reproduce the problem?
1. run flac2all without opusenc
2.
3.
What is the expected output? What do you see instead?
% flac2all mp3 -l V4 "/mp3/blues/bb_king/B.B. King - Live At The Regal (1965)
[SACD] (2011 SHM-SACD PCM Stereo)"
Flac2all python script, v3 . Copyright 2006-2015 Ziva-Vatra.com.
Licensed under the GPLv3 .
Project website: http://code.google.com/p/flac2all/
Traceback (most recent call last):
File "/data/home/danno/bin/flac2all", line 811, in <module>
opusClass = opus()
File "/data/home/danno/bin/flac2all", line 99, in __init__
data = re.search("\d\.\d\.\d",data).group(0)
AttributeError: 'NoneType' object has no attribute 'group'
What version of the product are you using? On what operating system?
downloaded august 1 2015. running on centos6.
Please provide any additional information below.
I tried faking it with a one-liner shell script so opusenc would at least exist
- no luck, same crash.
Everything works fine once I comment out all the "opus" stuff in the script.
thanks for making this available. keeping up with all the metadata options was
a pain in the ass.
Original issue reported on code.google.com by [email protected]
on 1 Aug 2015 at 6:43
What steps will reproduce the problem?
1. Enable to copy non flac files
2. Have two btsync shares running both on the flac and the converted media
folder
3. The program then copies the .sync folder and ruins the share
Would it be possible for you to just to make it possible to define the
extensions that we want to have copied? For example, only copy .jpg files
(covers), so it does not mess with non-music related folders?
Original issue reported on code.google.com by [email protected]
on 19 Jan 2015 at 6:00
I ran into an issue where flac2all is crashing on some flac files where the comments have a name but no value. It looks like the issue in this case is a UFID tag that is missing a '=' sign (see comment 13 below). I'm assuming this is a badly tagged file, but flac2all should probably attempt to handle this rather than dump a stacktrace.
comments: 14
comment[0]: album=FAIRY TAIL ORIGINAL SOUND COLLECTION [Disc 1]
comment[1]: ALBUMARTIST=Yasuharu Takanashi
comment[2]: artist=Yasuharu Takanashi
comment[3]: date=2015
comment[4]: discnumber=1
comment[5]: Encoding Params=vers
comment[6]: genre=Soundtrack
comment[7]: iTunes_CDDB_IDs=22++
comment[8]: tempo=00000 BPM
comment[9]: title=FAIRY TAIL Main Theme 2014
comment[10]: DISCTOTAL=2
comment[11]: TRACKTOTAL=22
comment[12]: tracknumber=1
comment[13]: UFIDhttp://www.cddb.com/id3/taginfo1.html=3CD3N30Q524865463V5808B951FEAA8BFAD5602311A264C49335P1
Here's a stacktrace:
Traceback (most recent call last):
File "/usr/lib/python3.8/multiprocessing/process.py", line 315, in _bootstrap
self.run()
File "/usr/lib/python3.8/multiprocessing/process.py", line 108, in run
self._target(*self._args, **self._kwargs)
File "/usr/local/lib/python3.8/dist-packages/flac2all-5.5-py3.8.egg/flac2all_pkg/flac2all_worker.py", line 44, in worker_process
sys.exit(eworker.run())
File "/usr/local/lib/python3.8/dist-packages/flac2all-5.5-py3.8.egg/flac2all_pkg/core.py", line 404, in run
raise(e)
File "/usr/local/lib/python3.8/dist-packages/flac2all-5.5-py3.8.egg/flac2all_pkg/core.py", line 394, in run
result = self.encode(infile, mode, opts)
File "/usr/local/lib/python3.8/dist-packages/flac2all-5.5-py3.8.egg/flac2all_pkg/core.py", line 317, in encode
return encf(infile, outfile)
File "/usr/local/lib/python3.8/dist-packages/flac2all-5.5-py3.8.egg/flac2all_pkg/mp3.py", line 83, in convert
inmetadata = flac().getflacmeta(infile)
File "/usr/local/lib/python3.8/dist-packages/flac2all-5.5-py3.8.egg/flac2all_pkg/flac.py", line 123, in getflacmeta
comment[1] = comment[1].strip()
IndexError: list index out of range
I threw a quick workaround in place so I could convert files (this is against the origin/version5 branch):
diff --git a/flac2all_pkg/flac.py b/flac2all_pkg/flac.py
index 1b0a805..66414dd 100644
--- a/flac2all_pkg/flac.py
+++ b/flac2all_pkg/flac.py
@@ -117,7 +117,10 @@ class flac(object):
# split according to [NAME]=[VALUE] structure
comment = data[1].split('=')
comment[0] = comment[0].strip()
- comment[1] = comment[1].strip()
+ if len(comment) > 1:
+ comment[1] = comment[1].strip()
+ else:
+ comment.append("")
# convert to upper case
# we want the key values to always be the same case, we decided on
Hi, This is an excellent tool by the way:
I am running:
flac2all opus -o outdir MusDir
currently, it creates outdir/opus
and puts all the files in there, with no way to change that subdirectory path or way to opt out. Would it be possible to have an option to suppress the automatic codec dir creation? so that the music would go straight to outdir
. with multiple codecs they could all be mixed. obviously the current behavior should be the default, but i would like to have this as an option. thanks.
It seems like nodirs
is supposed to do this, but the option doesn't look like it does anything. Was it perhaps overlooked?
When pointing flac2all at a directory that contains a mix of flac and mp3 files, the flac files are converted but the existing mp3 files are not copied.
$ flac2all mp3 ~/tmp/mix -o ~/tmp/mp3 -c
It looks like flac2all will only attempt to copy files destination file exists and the -f
flag isn't used. The second condition makes sense, but the first does not. If the destination file already existed, I wouldn't need flac2all to copy it over!
At the moment flac2all does not like genres that don't map to ID3v1 genre IDs when converting to MP3. Couldn't ID3v2 support solve htis?
I'm having a rough time getting anything going with flac2all in Ubuntu 18.04.
I have albums of .flac files made by whipper, I have setup a python3 venv to run flac2all in, I'm trying to transcode to mp3 with the command: flac2all mp3 --lame-options='v b 192' .
, but I get the following results, and I'm not sure where to go from here:
(flac2all_env) mike@NUC7i5Upstairs:~/output/album/R.E.M. - Automatic for the People$ flac2all mp3 --lame-options='v b 192' .
UTC~15:29:09: We have 12 flac files to convert
UTC~15:29:09: We have 0 non-flac files to copy across
UTC~15:29:09: Spawning execution process
UTC~15:29:09: Spawning execution process
UTC~15:29:09: Processing: 02. R.E.M. - Try Not to Breathe.flac target: mp3
UTC~15:29:09: Spawning execution process
UTC~15:29:09: Processing: 06. R.E.M. - Sweetness Follows.flac target: mp3
UTC~15:29:09: Spawning execution process
UTC~15:29:09: Processing: 03. R.E.M. - The Sidewinder Sleeps Tonite.flac target: mp3
UTC~15:29:09: Processing: 10. R.E.M. - Man on the Moon.flac target: mp3
Exception in thread Thread 4:
Traceback (most recent call last):
File "/usr/lib/python3.6/threading.py", line 916, in _bootstrap_inner
self.run()
File "/home/mike/environments/flac2all_env/lib/python3.6/site-packages/flac2all_pkg/core.py", line 402, in run
self.logq.put(self.encode(infile, mode, self.opts), timeout=10)
File "/home/mike/environments/flac2all_env/lib/python3.6/site-packages/flac2all_pkg/core.py", line 287, in encode
return encf(infile, outfile)
File "/home/mike/environments/flac2all_env/lib/python3.6/site-packages/flac2all_pkg/mp3.py", line 88, in convert
inmetadata = flac().getflacmeta(infile)
File "/home/mike/environments/flac2all_env/lib/python3.6/site-packages/flac2all_pkg/flac.py", line 98, in getflacmeta
flacfile
File "/usr/lib/python3.6/subprocess.py", line 356, in check_output
**kwargs).stdout
File "/usr/lib/python3.6/subprocess.py", line 423, in run
with Popen(*popenargs, **kwargs) as process:
File "/usr/lib/python3.6/subprocess.py", line 729, in __init__
restore_signals, start_new_session)
File "/usr/lib/python3.6/subprocess.py", line 1364, in _execute_child
raise child_exception_type(errno_num, err_msg, err_filename)
FileNotFoundError: [Errno 2] No such file or directory: 'metaflac': 'metaflac'
Exception in thread Thread 4:
Traceback (most recent call last):
File "/usr/lib/python3.6/threading.py", line 916, in _bootstrap_inner
self.run()
File "/home/mike/environments/flac2all_env/lib/python3.6/site-packages/flac2all_pkg/core.py", line 402, in run
self.logq.put(self.encode(infile, mode, self.opts), timeout=10)
File "/home/mike/environments/flac2all_env/lib/python3.6/site-packages/flac2all_pkg/core.py", line 287, in encode
return encf(infile, outfile)
File "/home/mike/environments/flac2all_env/lib/python3.6/site-packages/flac2all_pkg/mp3.py", line 88, in convert
inmetadata = flac().getflacmeta(infile)
File "/home/mike/environments/flac2all_env/lib/python3.6/site-packages/flac2all_pkg/flac.py", line 98, in getflacmeta
flacfile
File "/usr/lib/python3.6/subprocess.py", line 356, in check_output
**kwargs).stdout
File "/usr/lib/python3.6/subprocess.py", line 423, in run
with Popen(*popenargs, **kwargs) as process:
File "/usr/lib/python3.6/subprocess.py", line 729, in __init__
restore_signals, start_new_session)
File "/usr/lib/python3.6/subprocess.py", line 1364, in _execute_child
raise child_exception_type(errno_num, err_msg, err_filename)
FileNotFoundError: [Errno 2] No such file or directory: 'metaflac': 'metaflac'
Exception in thread Thread 4:
Traceback (most recent call last):
File "/usr/lib/python3.6/threading.py", line 916, in _bootstrap_inner
self.run()
File "/home/mike/environments/flac2all_env/lib/python3.6/site-packages/flac2all_pkg/core.py", line 402, in run
self.logq.put(self.encode(infile, mode, self.opts), timeout=10)
File "/home/mike/environments/flac2all_env/lib/python3.6/site-packages/flac2all_pkg/core.py", line 287, in encode
return encf(infile, outfile)
File "/home/mike/environments/flac2all_env/lib/python3.6/site-packages/flac2all_pkg/mp3.py", line 88, in convert
inmetadata = flac().getflacmeta(infile)
File "/home/mike/environments/flac2all_env/lib/python3.6/site-packages/flac2all_pkg/flac.py", line 98, in getflacmeta
flacfile
File "/usr/lib/python3.6/subprocess.py", line 356, in check_output
**kwargs).stdout
File "/usr/lib/python3.6/subprocess.py", line 423, in run
with Popen(*popenargs, **kwargs) as process:
File "/usr/lib/python3.6/subprocess.py", line 729, in __init__
restore_signals, start_new_session)
File "/usr/lib/python3.6/subprocess.py", line 1364, in _execute_child
raise child_exception_type(errno_num, err_msg, err_filename)
FileNotFoundError: [Errno 2] No such file or directory: 'metaflac': 'metaflac'
Exception in thread Thread 4:
Traceback (most recent call last):
File "/usr/lib/python3.6/threading.py", line 916, in _bootstrap_inner
self.run()
File "/home/mike/environments/flac2all_env/lib/python3.6/site-packages/flac2all_pkg/core.py", line 402, in run
self.logq.put(self.encode(infile, mode, self.opts), timeout=10)
File "/home/mike/environments/flac2all_env/lib/python3.6/site-packages/flac2all_pkg/core.py", line 287, in encode
return encf(infile, outfile)
File "/home/mike/environments/flac2all_env/lib/python3.6/site-packages/flac2all_pkg/mp3.py", line 88, in convert
inmetadata = flac().getflacmeta(infile)
File "/home/mike/environments/flac2all_env/lib/python3.6/site-packages/flac2all_pkg/flac.py", line 98, in getflacmeta
flacfile
File "/usr/lib/python3.6/subprocess.py", line 356, in check_output
**kwargs).stdout
File "/usr/lib/python3.6/subprocess.py", line 423, in run
with Popen(*popenargs, **kwargs) as process:
File "/usr/lib/python3.6/subprocess.py", line 729, in __init__
restore_signals, start_new_session)
File "/usr/lib/python3.6/subprocess.py", line 1364, in _execute_child
raise child_exception_type(errno_num, err_msg, err_filename)
FileNotFoundError: [Errno 2] No such file or directory: 'metaflac': 'metaflac'
UTC~15:29:20: Spawning execution process
UTC~15:29:20: Spawning execution process
UTC~15:29:20: Spawning execution process
UTC~15:29:20: Spawning execution process
UTC~15:29:20: Processing: 08. R.E.M. - Ignoreland.flac target: mp3
UTC~15:29:20: Processing: 12. R.E.M. - Find the River.flac target: mp3
UTC~15:29:20: Processing: 04. R.E.M. - Everybody Hurts.flac target: mp3
UTC~15:29:20: Processing: 07. R.E.M. - Monty Got a Raw Deal.flac target: mp3
Exception in thread Thread 4:
Traceback (most recent call last):
File "/usr/lib/python3.6/threading.py", line 916, in _bootstrap_inner
self.run()
File "/home/mike/environments/flac2all_env/lib/python3.6/site-packages/flac2all_pkg/core.py", line 402, in run
self.logq.put(self.encode(infile, mode, self.opts), timeout=10)
File "/home/mike/environments/flac2all_env/lib/python3.6/site-packages/flac2all_pkg/core.py", line 287, in encode
return encf(infile, outfile)
File "/home/mike/environments/flac2all_env/lib/python3.6/site-packages/flac2all_pkg/mp3.py", line 88, in convert
inmetadata = flac().getflacmeta(infile)
File "/home/mike/environments/flac2all_env/lib/python3.6/site-packages/flac2all_pkg/flac.py", line 98, in getflacmeta
flacfile
File "/usr/lib/python3.6/subprocess.py", line 356, in check_output
**kwargs).stdout
File "/usr/lib/python3.6/subprocess.py", line 423, in run
with Popen(*popenargs, **kwargs) as process:
File "/usr/lib/python3.6/subprocess.py", line 729, in __init__
restore_signals, start_new_session)
File "/usr/lib/python3.6/subprocess.py", line 1364, in _execute_child
raise child_exception_type(errno_num, err_msg, err_filename)
FileNotFoundError: [Errno 2] No such file or directory: 'metaflac': 'metaflac'
Exception in thread Thread 4:
Traceback (most recent call last):
File "/usr/lib/python3.6/threading.py", line 916, in _bootstrap_inner
self.run()
File "/home/mike/environments/flac2all_env/lib/python3.6/site-packages/flac2all_pkg/core.py", line 402, in run
self.logq.put(self.encode(infile, mode, self.opts), timeout=10)
File "/home/mike/environments/flac2all_env/lib/python3.6/site-packages/flac2all_pkg/core.py", line 287, in encode
return encf(infile, outfile)
File "/home/mike/environments/flac2all_env/lib/python3.6/site-packages/flac2all_pkg/mp3.py", line 88, in convert
inmetadata = flac().getflacmeta(infile)
File "/home/mike/environments/flac2all_env/lib/python3.6/site-packages/flac2all_pkg/flac.py", line 98, in getflacmeta
flacfile
File "/usr/lib/python3.6/subprocess.py", line 356, in check_output
**kwargs).stdout
File "/usr/lib/python3.6/subprocess.py", line 423, in run
with Popen(*popenargs, **kwargs) as process:
File "/usr/lib/python3.6/subprocess.py", line 729, in __init__
restore_signals, start_new_session)
File "/usr/lib/python3.6/subprocess.py", line 1364, in _execute_child
raise child_exception_type(errno_num, err_msg, err_filename)
FileNotFoundError: [Errno 2] No such file or directory: 'metaflac': 'metaflac'
Exception in thread Thread 4:
Traceback (most recent call last):
File "/usr/lib/python3.6/threading.py", line 916, in _bootstrap_inner
self.run()
File "/home/mike/environments/flac2all_env/lib/python3.6/site-packages/flac2all_pkg/core.py", line 402, in run
self.logq.put(self.encode(infile, mode, self.opts), timeout=10)
File "/home/mike/environments/flac2all_env/lib/python3.6/site-packages/flac2all_pkg/core.py", line 287, in encode
return encf(infile, outfile)
File "/home/mike/environments/flac2all_env/lib/python3.6/site-packages/flac2all_pkg/mp3.py", line 88, in convert
inmetadata = flac().getflacmeta(infile)
File "/home/mike/environments/flac2all_env/lib/python3.6/site-packages/flac2all_pkg/flac.py", line 98, in getflacmeta
flacfile
File "/usr/lib/python3.6/subprocess.py", line 356, in check_output
**kwargs).stdout
File "/usr/lib/python3.6/subprocess.py", line 423, in run
with Popen(*popenargs, **kwargs) as process:
File "/usr/lib/python3.6/subprocess.py", line 729, in __init__
restore_signals, start_new_session)
File "/usr/lib/python3.6/subprocess.py", line 1364, in _execute_child
raise child_exception_type(errno_num, err_msg, err_filename)
FileNotFoundError: [Errno 2] No such file or directory: 'metaflac': 'metaflac'
Exception in thread Thread 4:
Traceback (most recent call last):
File "/usr/lib/python3.6/threading.py", line 916, in _bootstrap_inner
self.run()
File "/home/mike/environments/flac2all_env/lib/python3.6/site-packages/flac2all_pkg/core.py", line 402, in run
self.logq.put(self.encode(infile, mode, self.opts), timeout=10)
File "/home/mike/environments/flac2all_env/lib/python3.6/site-packages/flac2all_pkg/core.py", line 287, in encode
return encf(infile, outfile)
File "/home/mike/environments/flac2all_env/lib/python3.6/site-packages/flac2all_pkg/mp3.py", line 88, in convert
inmetadata = flac().getflacmeta(infile)
File "/home/mike/environments/flac2all_env/lib/python3.6/site-packages/flac2all_pkg/flac.py", line 98, in getflacmeta
flacfile
File "/usr/lib/python3.6/subprocess.py", line 356, in check_output
**kwargs).stdout
File "/usr/lib/python3.6/subprocess.py", line 423, in run
with Popen(*popenargs, **kwargs) as process:
File "/usr/lib/python3.6/subprocess.py", line 729, in __init__
restore_signals, start_new_session)
File "/usr/lib/python3.6/subprocess.py", line 1364, in _execute_child
raise child_exception_type(errno_num, err_msg, err_filename)
FileNotFoundError: [Errno 2] No such file or directory: 'metaflac': 'metaflac'
UTC~15:29:30: Spawning execution process
UTC~15:29:30: Spawning execution process
UTC~15:29:30: Spawning execution process
UTC~15:29:30: Spawning execution process
UTC~15:29:30: Processing: 11. R.E.M. - Nightswimming.flac target: mp3
UTC~15:29:30: Processing: 09. R.E.M. - Star Me Kitten.flac target: mp3
UTC~15:29:30: Processing: 05. R.E.M. - New Orleans Instrumental No. 1.flac target: mp3
Exception in thread Thread 4:
Traceback (most recent call last):
File "/usr/lib/python3.6/threading.py", line 916, in _bootstrap_inner
self.run()
File "/home/mike/environments/flac2all_env/lib/python3.6/site-packages/flac2all_pkg/core.py", line 402, in run
self.logq.put(self.encode(infile, mode, self.opts), timeout=10)
File "/home/mike/environments/flac2all_env/lib/python3.6/site-packages/flac2all_pkg/core.py", line 287, in encode
return encf(infile, outfile)
File "/home/mike/environments/flac2all_env/lib/python3.6/site-packages/flac2all_pkg/mp3.py", line 88, in convert
inmetadata = flac().getflacmeta(infile)
File "/home/mike/environments/flac2all_env/lib/python3.6/site-packages/flac2all_pkg/flac.py", line 98, in getflacmeta
flacfile
File "/usr/lib/python3.6/subprocess.py", line 356, in check_output
**kwargs).stdout
File "/usr/lib/python3.6/subprocess.py", line 423, in run
with Popen(*popenargs, **kwargs) as process:
File "/usr/lib/python3.6/subprocess.py", line 729, in __init__
restore_signals, start_new_session)
File "/usr/lib/python3.6/subprocess.py", line 1364, in _execute_child
raise child_exception_type(errno_num, err_msg, err_filename)
FileNotFoundError: [Errno 2] No such file or directory: 'metaflac': 'metaflac'
UTC~15:29:30: Processing: 01. R.E.M. - Drive.flac target: mp3
Exception in thread Thread 4:
Traceback (most recent call last):
File "/usr/lib/python3.6/threading.py", line 916, in _bootstrap_inner
self.run()
File "/home/mike/environments/flac2all_env/lib/python3.6/site-packages/flac2all_pkg/core.py", line 402, in run
self.logq.put(self.encode(infile, mode, self.opts), timeout=10)
File "/home/mike/environments/flac2all_env/lib/python3.6/site-packages/flac2all_pkg/core.py", line 287, in encode
return encf(infile, outfile)
File "/home/mike/environments/flac2all_env/lib/python3.6/site-packages/flac2all_pkg/mp3.py", line 88, in convert
inmetadata = flac().getflacmeta(infile)
File "/home/mike/environments/flac2all_env/lib/python3.6/site-packages/flac2all_pkg/flac.py", line 98, in getflacmeta
flacfile
File "/usr/lib/python3.6/subprocess.py", line 356, in check_output
**kwargs).stdout
File "/usr/lib/python3.6/subprocess.py", line 423, in run
with Popen(*popenargs, **kwargs) as process:
File "/usr/lib/python3.6/subprocess.py", line 729, in __init__
restore_signals, start_new_session)
File "/usr/lib/python3.6/subprocess.py", line 1364, in _execute_child
raise child_exception_type(errno_num, err_msg, err_filename)
FileNotFoundError: [Errno 2] No such file or directory: 'metaflac': 'metaflac'
Exception in thread Thread 4:
Traceback (most recent call last):
File "/usr/lib/python3.6/threading.py", line 916, in _bootstrap_inner
self.run()
File "/home/mike/environments/flac2all_env/lib/python3.6/site-packages/flac2all_pkg/core.py", line 402, in run
self.logq.put(self.encode(infile, mode, self.opts), timeout=10)
File "/home/mike/environments/flac2all_env/lib/python3.6/site-packages/flac2all_pkg/core.py", line 287, in encode
return encf(infile, outfile)
File "/home/mike/environments/flac2all_env/lib/python3.6/site-packages/flac2all_pkg/mp3.py", line 88, in convert
inmetadata = flac().getflacmeta(infile)
File "/home/mike/environments/flac2all_env/lib/python3.6/site-packages/flac2all_pkg/flac.py", line 98, in getflacmeta
flacfile
File "/usr/lib/python3.6/subprocess.py", line 356, in check_output
**kwargs).stdout
File "/usr/lib/python3.6/subprocess.py", line 423, in run
with Popen(*popenargs, **kwargs) as process:
File "/usr/lib/python3.6/subprocess.py", line 729, in __init__
restore_signals, start_new_session)
File "/usr/lib/python3.6/subprocess.py", line 1364, in _execute_child
raise child_exception_type(errno_num, err_msg, err_filename)
FileNotFoundError: [Errno 2] No such file or directory: 'metaflac': 'metaflac'
Exception in thread Thread 4:
Traceback (most recent call last):
File "/usr/lib/python3.6/threading.py", line 916, in _bootstrap_inner
self.run()
File "/home/mike/environments/flac2all_env/lib/python3.6/site-packages/flac2all_pkg/core.py", line 402, in run
self.logq.put(self.encode(infile, mode, self.opts), timeout=10)
File "/home/mike/environments/flac2all_env/lib/python3.6/site-packages/flac2all_pkg/core.py", line 287, in encode
return encf(infile, outfile)
File "/home/mike/environments/flac2all_env/lib/python3.6/site-packages/flac2all_pkg/mp3.py", line 88, in convert
inmetadata = flac().getflacmeta(infile)
File "/home/mike/environments/flac2all_env/lib/python3.6/site-packages/flac2all_pkg/flac.py", line 98, in getflacmeta
flacfile
File "/usr/lib/python3.6/subprocess.py", line 356, in check_output
**kwargs).stdout
File "/usr/lib/python3.6/subprocess.py", line 423, in run
with Popen(*popenargs, **kwargs) as process:
File "/usr/lib/python3.6/subprocess.py", line 729, in __init__
restore_signals, start_new_session)
File "/usr/lib/python3.6/subprocess.py", line 1364, in _execute_child
raise child_exception_type(errno_num, err_msg, err_filename)
FileNotFoundError: [Errno 2] No such file or directory: 'metaflac': 'metaflac'
UTC~15:29:41: Process queue finished.
UTC~15:29:51: Processing Complete!
UTC~15:29:51: Waiting for all running process to complete.
UTC~15:29:51: Processing run log...
Traceback (most recent call last):
File "/home/mike/environments/flac2all_env/bin/flac2all", line 11, in <module>
sys.exit(main())
File "/home/mike/environments/flac2all_env/lib/python3.6/site-packages/flac2all_pkg/__init__.py", line 440, in main
threaded_encode()
File "/home/mike/environments/flac2all_env/lib/python3.6/site-packages/flac2all_pkg/multiprocess_encode.py", line 188, in encode
failures = generate_summary(start_time, end_time, len(files), result_log, opts['outdir'])
TypeError: generate_summary() takes 4 positional arguments but 5 were given
(flac2all_env) mike@NUC7i5Upstairs:~/output/album/R.E.M. - Automatic for the People$
flac2all detects < 0.1.7 although 0.1.10 is installed.
WARNING: Opus version prior to 0.1.7 detected, NO TAGGING SUPPORT
$ opusenc --version
opusenc opus-tools 0.1.10 (using libopus 1.1.2)
Add support for the new IETF audio codec, opus, with encoder support from
opusenc.
Original issue reported on code.google.com by [email protected]
on 30 Oct 2012 at 2:02
I just tried to run flac2all but ran into the following issue:
opusenc ist /usr/bin/opusenc
Traceback (most recent call last):
File "/usr/bin/flac2all", line 839, in
opusClass = opus()
File "/usr/bin/flac2all", line 110, in init
data = re.search("\d.\d.\d",data).group(0)
AttributeError: 'NoneType' object has no attribute 'group'
Looking at previous issues reported, it seems this would be an issue with opusenc not being installed properly. However, the script reports the existence of opusenc correctly - as seen above - and I confirmed it through my package manager and by going to the location of the binary myself.
Once I commented all the code relating to opus out of the script it ran correctly and converted my files (to mp3). Upon further investigation I've found that explicitly defining the path for my opusenc binary as the script recommends solves the issue. I still feel like this is a bug though, since the error from above clearly output the path to the binary correctly, but I'll leave that for someone more knowledgeable to determine.
I'm running the following software:
Arch Linux, kernel 4.19.4
opusenc opus-tools 0.2 (using libopus 1.3)
flac2all v3 (top of script) v2.75-4 (AUR)
python 2.7.15
Easy for you to add support for fdkaac?
What steps will reproduce the problem?
1. Take file with a tag containing some accent (for example é)
2. convert it to mp3
What is the expected output? What do you see instead?
expected output: Tags preserved
real output: example: "Biréli Lagrène" becomes "Bir", "Gérard" becomes "G"
What version of the product are you using? On what operating system?
v3.51
Original issue reported on code.google.com by [email protected]
on 20 Feb 2015 at 6:26
A declarative, efficient, and flexible JavaScript library for building user interfaces.
🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.
TypeScript is a superset of JavaScript that compiles to clean JavaScript output.
An Open Source Machine Learning Framework for Everyone
The Web framework for perfectionists with deadlines.
A PHP framework for web artisans
Bring data to life with SVG, Canvas and HTML. 📊📈🎉
JavaScript (JS) is a lightweight interpreted programming language with first-class functions.
Some thing interesting about web. New door for the world.
A server is a program made to process requests and deliver data to clients.
Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.
Some thing interesting about visualization, use data art
Some thing interesting about game, make everyone happy.
We are working to build community through open source technology. NB: members must have two-factor auth.
Open source projects and samples from Microsoft.
Google ❤️ Open Source for everyone.
Alibaba Open Source for everyone
Data-Driven Documents codes.
China tencent open source team.