beetbox / beetbox/audioread

gstreamer not getting duration

Open
#31 9 comments 0 reactions 0 assignees View on GitHub
Dominant language
Python
Stars
538
Forks
112
PR merge metrics
No merged PRs in 30d

Description

Hi,

I've installed beets on linux mint 17.3.

I'm trying to get the chroma plugin to work but I got an error during import with every mp3 file saying

'''chroma: fingerprinting of 'music_raw/foo.mp3' failed: audio could not be decoded'''

I tried digging a bit in ipython and got to this point:

```
In [10]: f = gstdec.GstAudioFile("Pearl Jam - I Am Mine.mp3")
---------------------------------------------------------------------------
MetadataMissingError Traceback (most recent call last)
in ()
----> 1 f = gstdec.GstAudioFile("Leona Lewis - Bleeding in Love.mp3")

/usr/local/lib/python2.7/dist-packages/audioread/gstdec.pyc in __init__(self, path)
256 # An error occurred before the stream became ready.
257 self.close(True)
--> 258 raise self.read_exc
259
260 # Gstreamer callbacks.

MetadataMissingError: duration not available
```

I am able to play these files in other music players.

Not sure what information you need to reproduce the error but if you let know I'll post it.

Python libs:

```
$pip freeze
BeautifulSoup==3.2.1
Mako==0.9.1
MarkupSafe==0.18
PAM==0.4.2
Pillow==2.3.0
PyBluez==0.18
PyYAML==3.11
Twisted-Core==13.2.0
Twisted-Names==13.2.0
Twisted-Web==13.2.0
Unidecode==0.04.19
apt-xapian-index==0.45
apturl==0.4.1ubuntu4
argparse==1.2.1
audioread==2.1.2
beets==1.3.17
ccsm==0.9.11.3
chardet==2.0.1
colorama==0.2.5
command-not-found==0.3
compizconfig-python==0.9.11.3
configglue==1.1.2
configobj==4.7.2
debtagshw==0.1
decorator==3.4.0
defer==1.0.6
dirspec==13.10
dnspython==1.11.1
duplicity==0.6.23
enum34==1.1.6
feedparser==5.1.3
html5lib==0.999
httplib2==0.8
iotop==0.6
ipython==1.2.1
jellyfish==0.5.4
lockfile==0.8
lxml==3.3.3
munkres==1.0.7
musicbrainzngs==0.6
mutagen==1.32
oauthlib==0.6.1
oneconf==0.3.7.14.04.1
paramiko==1.10.1
pexpect==3.1
piston-mini-client==0.7.5
protobuf==2.5.0
pyOpenSSL==0.13
pyacoustid==1.1.0
pycrypto==2.6.1
pycups==1.9.66
pycurl==7.19.3
pygobject==3.12.0
pyinotify==0.9.4
pyserial==2.6
pysmbc==1.0.14.1
python-apt==0.9.3.5ubuntu2
python-debian==0.1.21-nmu2ubuntu2
python-xlib==0.14
pyxdg==0.25
reportlab==3.0
requests==2.2.1
sessioninstaller==0.0.0
simplegeneric==0.8.1
simplejson==3.3.1
six==1.5.2
system-service==0.1.6
trimage==1.0.2
uTidylib==0.2
urllib3==1.7.1
vboxapi==1.0
virtualenv==1.11.4
wsgiref==0.1.2
zope.interface==4.0.5
```

Gstreamer version:

```
$gst-play-1.0 --version
gst-play-1.0 version 1.2.4
GStreamer 1.2.4
https://launchpad.net/distros/ubuntu/+source/gst-plugins-base1.0
```

Any help will be appreciated!

Contributor guide

No contributing guide indexed for this repository

Research direction

Start at the gstdec.GstAudioFile entry point shown in the traceback and reproduce the failure with Python 2.7, audioread 2.1.2, and GStreamer 1.2.4. Investigate why duration is unavailable for the reported MP3 files; done means duration is returned and the files can be decoded for chroma fingerprinting.

Written by the indexing model from the issue text.

Assessment

Tech stack
python
Domain
audio-video-rtc
Issue type
Bug
Difficulty
4/5
Estimated time
3-5 days
Activity status
Stale
Clarity
Needs clarification
Newbie friendliness
25/100

Get new issues in your inbox

A short digest of beginner-friendly GitHub issues.