Commit Graph

111 Commits

Author SHA1 Message Date
Stein Magnus Jodal
d9f53d5da3 gst1: Move all gi imports to a helper module 2016-02-01 23:09:28 +01:00
Stein Magnus Jodal
e68c4668fe audio: Fallback to datetime tag if no date tag 2016-01-31 21:07:17 +01:00
Stein Magnus Jodal
9657004b77 audio: Move date tag from Track to Album
The Track model doesn't have a date attribute.
2016-01-31 21:07:17 +01:00
Stein Magnus Jodal
f877ac0807 audio: Add support for GLib.Date tag values 2016-01-31 21:07:17 +01:00
Stein Magnus Jodal
0fa78b8e39 gst1: Fix datetime tag conversion 2016-01-31 21:07:17 +01:00
Stein Magnus Jodal
df62997186 audio: Decode tags to unicode 2016-01-31 21:07:17 +01:00
Stein Magnus Jodal
31c894030d audio: Move tag helpers to mopidy.audio.tags 2016-01-31 21:07:17 +01:00
Stein Magnus Jodal
7926ef1f12 gst1: Fail if trying to create buffers without audio
Which causes lots of failed assertion messages from GStreamer
2016-01-31 21:07:17 +01:00
Stein Magnus Jodal
ef5281488b gst1: Fix buffer.pts not being set if 0 2016-01-31 21:07:17 +01:00
Stein Magnus Jodal
eb4c742015 gst1: Run gst.init() if needed everywhere using Gst 2016-01-31 21:07:16 +01:00
Stein Magnus Jodal
592f5dec53 gst1: Remove deprecated GObject.threads_init()
Ref https://wiki.gnome.org/Projects/PyGObject/Threading

"The requirement to call GObject.threads_init() has been removed from
PyGObject 3.10.2 when using Python native threads with GI (via the
threading module) as well as with GI repositories which manage their own
threads that may call back into Python (like GStreamer callbacks). The
GObject.threads_init() function will still exist for the entire 3.x
series for compatibility reasons but emits a deprecation warning."
2016-01-31 21:07:16 +01:00
Stein Magnus Jodal
dfaed1e4c2 gst1: Replace STATE_* with State.* 2016-01-31 21:07:14 +01:00
Stein Magnus Jodal
1d269af210 gst1: Call Gst.init() and remove sys.argv hack
GStreamer no longer use sys.argv directly. If you want GStreamer to
handle command line arguments, you must pass them explicitly to
Gst.init().
2016-01-31 21:07:14 +01:00
Stein Magnus Jodal
8c82f4773f gst1: Update imports to use PyGI 2016-01-31 21:07:14 +01:00
Stein Magnus Jodal
28224cef8c audio: Fix tests not exiting normally 2015-12-05 00:34:33 +01:00
Thomas Adamcik
d8986e6cc1 audio: Tell dummy_audio what urls to fail on 2015-09-04 15:28:32 +02:00
Thomas Adamcik
1acc5aa557 audio: Update tests to reflect send_async being gone 2015-09-03 23:01:19 +02:00
Thomas Adamcik
71b04213ff audio: Update dummy and tests to correctly emit stream changed 2015-09-03 21:39:30 +02:00
Thomas Adamcik
e12ea662da Merge branch 'develop' into feature/implement-gapless 2015-09-02 21:03:17 +02:00
Thomas Adamcik
3e75d5cf06 audio: Update missing plugins check in scanner tests 2015-08-19 00:40:46 +02:00
Thomas Adamcik
e77a4afaf4 audio: Make scanner report MIME for missing plugins 2015-08-18 23:56:42 +02:00
Thomas Adamcik
61bb7df64d Merge pull request #1239 from jodal/feature/stream-playlists
stream/audio: Make stream backend parse radio playlists itself
2015-07-26 11:48:19 +02:00
Mikhail Golubev
b596b85571 Add "sortname" field in the Artist model (#940) 2015-07-25 17:25:28 +02:00
Stein Magnus Jodal
bdcfab09f1 playlists: Move detecters and parsers out of audio 2015-07-25 14:47:01 +02:00
Thomas Adamcik
3fe9f7b3a7 Merge branch 'develop' into feature/implement-gapless
Conflicts:
	mopidy/commands.py
	mopidy/core/playback.py
	tests/core/test_playback.py
	tests/local/test_playback.py
2015-07-22 20:00:46 +02:00
Stein Magnus Jodal
d8bcd7f273 Rename mopidy.utils to mopidy.internal 2015-05-07 23:15:56 +02:00
Thomas Adamcik
efad50c253 cleanup: Stop using deprecated copy() 2015-04-17 00:00:58 +02:00
Stein Magnus Jodal
093c4340cd Merge branch 'v1.0.x' into develop
Conflicts:
	mopidy/audio/scan.py
	tests/audio/test_scan.py
2015-04-13 08:19:14 +02:00
Stein Magnus Jodal
f85ea2a39d flake8: Fix new import order warnings
(cherry picked from commit 71ab9733c7)
2015-04-12 23:05:53 +02:00
Stein Magnus Jodal
71ab9733c7 flake8: Fix new import order warnings 2015-04-12 23:03:46 +02:00
Thomas Adamcik
9bc4d8b713 audio: Make scanner handle all media types.
I don't think this makes anything slower, as before we would still decode
anything we came across in the hopes that we find raw audio.
2015-04-11 00:29:07 +02:00
Thomas Adamcik
11c9aa4ad0 Merge branch 'develop' into feature/implement-gapless
Conflicts:
	mopidy/backend.py
	mopidy/commands.py
	mopidy/core/actor.py
	mopidy/core/playback.py
	tests/audio/test_actor.py
	tests/core/test_playback.py
	tests/local/test_playback.py
2015-04-05 19:24:56 +02:00
Stein Magnus Jodal
c4940cbea2 autopep8: Add space after class signature/docstring 2015-04-03 00:05:26 +02:00
Stein Magnus Jodal
2bc63ec027 audio: Skip MP3 tests if missing plugin 2015-04-02 20:53:29 +02:00
Thomas Adamcik
cee73b5501 audio: Add support for checking seekable state in scanner
Return type of scanner changed to a named tuple with (uri, tags, duration,
seekable). This should help with #872 and the related "live" issues.

Tests, local scan and stream metadata lookup have been updated to account for
the changes.
2015-03-12 22:11:50 +01:00
Stein Magnus Jodal
5270aa65e2 audio: Move DummyAudio into tests package 2015-02-13 10:40:21 +01:00
Thomas Adamcik
41d48dc0ec audio: Stop mocking in audio event tests 2015-01-24 00:49:02 +01:00
kingosticks
1e7a4247c6 Add non-ascii utf-8 chars to test playlists 2015-01-04 20:21:10 +00:00
Thomas Adamcik
fa8547c397 tests: Add noqa markers for setUp/tearDown 2014-12-30 00:23:01 +01:00
Thomas Adamcik
935a038405 audio: Only add albums that have a name
Fixes case where we could have an empty album. We could alternatively be more
conservative and only limit to fully empty albums. But I think we only want
ones with names anyway.
2014-12-22 22:45:31 +01:00
Thomas Adamcik
819680e074 audio: Move utils test to tests folder 2014-12-22 22:34:11 +01:00
Thomas Adamcik
9be788b129 audio: Move tags to track conversion to audio utils 2014-12-18 23:36:56 +01:00
Thomas Adamcik
983148a9a4 audio: Start storing the tags we find in audio
Adds a new get_currents_tags method for fetching the full set of current tags.
There are still some untested cases for this, and I also suspect we still want
some API refinements one core starts using this.
2014-12-18 23:28:19 +01:00
Thomas Adamcik
6c62252919 audio: Add tags changed event to audio.
Current version simply emits the keys of the changed tags to the audio
listener. Following change will add support for storing the actual data.
2014-12-18 23:28:19 +01:00
Thomas Adamcik
de6bd63481 audio: Remove min duration code from scanner.
The local scanner now handles this itself by looking at the duration.
2014-12-18 23:28:19 +01:00
Thomas Adamcik
4f8244c499 audio: Convert audio_data_to_track to tags_to_track
The new function only uses tags as input. In other words we now need to set
length, uri and mtime ourselves. Users of scan APIs have been updated.
2014-12-18 23:28:19 +01:00
Thomas Adamcik
4948dee4b9 audio: Make scanner return duration in milliseconds
Also ensures that we normalize unknown duration to None instead of -1.
2014-12-18 23:28:19 +01:00
Thomas Adamcik
d9d501cd98 audio: Update scanner to just return tags+duration
The caller should know what URI we are talking about. Additionally finding the
mtime is never belonged in this class and has been moved out.
2014-12-18 23:28:19 +01:00
Thomas Adamcik
dcaa0f6732 local: Move musicbrainz cover art helper to translator 2014-12-18 23:28:14 +01:00
Thomas Adamcik
671ee5ee6a audio: Switch to using converted taglists instead of raw data. 2014-12-14 22:25:52 +01:00