Thomas Adamcik
d6ab78a86c
audio: Re-add improved version of python based scanner.
...
- Unlike the old python version we do not wait for the first audio handoff, we
only progress until the PAUSED state. This ensure we don't block on empty files.
- Instead of using the signal watch and running the main loop we simply poll
the messages from the bus directly allowing for a synchronous code flow.
- Between each file the pipeline is always returned to NULL, this is done as we
found that gst 0.10 will slow down as the uribin does not cleanup the
children it creates for handling each file. This issue is not present in 1.0.
- This also works around a segfault that was likely caused by a race condition
that seems to trigger in the 0.10 version of the pbutils discoverer.
- This version of the scanner also fixes the per track slow down, and works out
to be considerably faster than even the built in discoverer from 1.0.
- Finally this removes the WMA hack as I kan no longer find any evidence of it
being needed.
2013-11-06 19:10:49 +01:00
Stein Magnus Jodal
c2173954c8
audio: Reorder methods
2013-10-09 23:06:18 +02:00
Stein Magnus Jodal
076dd56d6b
audio: Tweak mute docs, fix set_mute() return type if no mixer_track
2013-10-09 23:06:01 +02:00
Stein Magnus Jodal
56b1d6390c
Merge branch 'develop' into feature/audio-mute
2013-10-09 22:57:16 +02:00
Javier Domingo Cansino
7d20f372bd
Following thomas' suggestions, correct mixer mute
2013-10-08 11:51:02 +02:00
Javier Domingo Cansino
4305afb81d
Now it's also prepared for mixer level, thanks adam
2013-10-08 10:19:25 +02:00
Javier Domingo Cansino
623f960552
Improving a little the mute code, but still don't know how to mute at mixer level
2013-10-08 09:20:02 +02:00
Thomas Adamcik
2e1971af89
audio: Handle min=max when scaling volumes ( fixes : #525 )
...
Also add gobject.threads_init() so we can run the audio actor test on its own.
2013-10-06 22:24:36 +02:00
Thomas Adamcik
c235f7259a
audo: Remove stale TODOs
2013-10-06 19:56:03 +02:00
Thomas Adamcik
a5e26f9b54
audio: flake8 fixes
2013-10-06 16:57:32 +02:00
Thomas Adamcik
b1b522694e
audio: Fix lots of playlist issues and add tests.
2013-10-06 15:22:17 +02:00
Thomas Adamcik
4a94433237
audio: Wrap long line, and explain conidtional instalation of icy element.
2013-10-06 14:19:28 +02:00
Thomas Adamcik
9e682d9248
audio: Check for asx/xspf in data before parsing during detection.
2013-10-06 14:18:53 +02:00
Thomas Adamcik
42a05458a0
Merge branch 'develop' into feature/gstreamer-playlists
2013-10-06 14:00:45 +02:00
Javier Domingo Cansino
390194afc3
Adding the possibility to mute at app level mopidy
2013-09-17 12:37:45 +02:00
Pavol Babincak
0098e76dc7
Properly encode localised mixer names before log
2013-08-15 20:54:10 +02:00
Stein Magnus Jodal
404fb00235
Remove pylint remnants
2013-08-08 21:12:42 +02:00
Stein Magnus Jodal
5c7a496dc2
Fix flake8 warnings
2013-08-08 21:09:01 +02:00
Thomas Adamcik
20729eabe3
audio: Add visualiser support and adjust playbin flags
...
Sets up playbin to use just audio, soft_volume and downloading.
2013-07-31 23:55:59 +02:00
Thomas Adamcik
6e942a92b3
audio: Post an error if an urilist expands to another urilist
2013-07-04 17:49:10 +02:00
Thomas Adamcik
f3051c9dd3
audio: Only install icysrc when nothing is already supporting the scheme
2013-06-26 23:34:55 +02:00
Thomas Adamcik
0bcb805cf5
audio: Improve xml playlist handling
2013-06-26 23:31:53 +02:00
Thomas Adamcik
f67aa95c2e
audio: add basic .asx support
2013-06-26 22:29:13 +02:00
Thomas Adamcik
d3f97c128c
audio: Review cleanups
2013-06-02 16:03:29 +02:00
Thomas Adamcik
a112275c25
audio: Add IcySrc.
...
Quick hack that wraps a regular HTTP src in a custom bin that converts icy://
to http:// - this is needed to get for instance http://somafm.com/m3u/groovesalad.m3u
to work.
2013-05-29 00:18:23 +02:00
Thomas Adamcik
a2b95c3a3a
audio: Cleanup playlists elements docs and interace.
2013-05-28 23:54:23 +02:00
Thomas Adamcik
acbaab59e5
audio: A uri list element.
...
This element "simply" takes the list of uris that our other elements have
already converted to simpler format, picks the first uri and play it. This
is done by ensuring that we block the right EOS messages, and all new segment
messages from the original sources. With these events blocked we can inject
our own nested uridecodebin to play the uri and push our own data. The nested
uridecodebin is setup with caps('any') to ensure that we don't suddenly demux
and end up with multiple streams by accident.
2013-05-28 23:35:47 +02:00
Thomas Adamcik
e2f9a3bad6
audio: Add playlist decoders.
...
These elements convert their respective formats to an urilist that we can
handle in a genric way.
2013-05-28 23:35:47 +02:00
Thomas Adamcik
1138ff8793
audui: Add BasePlaylistElement
...
This element is the building block for the "decoders" that will convert
the m3u, pls and xspf files to urilists and also the urilist player.
2013-05-28 23:35:47 +02:00
Thomas Adamcik
0f749702c4
audio: Add simple parsers for m3u, pls, xspf and uri lists.
...
These parsers, and the detectors should probably be moved out at some point,
but for now the simple version of these will do.
2013-05-28 23:35:47 +02:00
Thomas Adamcik
c376ac4183
audio: Start adding playlist typefinder code.
...
This allows gstreamer pipelines to determine when they are getting m3u, pls or
xspf files and distinguish them from text/plain content.
2013-05-28 23:06:12 +02:00
Stein Magnus Jodal
370cf133fa
docs: Remove mixers' module docs
2013-05-01 21:43:40 +02:00
Stein Magnus Jodal
e0b51f9c2c
docs: Specify what event names AudioListener.on_event() will see
2013-04-26 21:10:34 +02:00
Stein Magnus Jodal
3e366efb20
Move NAD mixer to an external extension
2013-04-16 10:46:57 +02:00
Stein Magnus Jodal
bfceb45609
docs: Remove default config from audio class
2013-04-12 01:31:52 +02:00
Stein Magnus Jodal
ee021b7cf0
docs: Use proper headers in mixer docs
2013-04-12 00:27:00 +02:00
Stein Magnus Jodal
18d34d6ffc
docs: Fix typo
2013-04-09 00:27:22 +02:00
Stein Magnus Jodal
09a38d9523
docs: Use :confval: to make config docs linkable
2013-04-09 00:22:24 +02:00
Stein Magnus Jodal
42707f50df
audio: Use new config system
2013-04-07 00:08:40 +02:00
Thomas Adamcik
6f39bde566
config: Start passing dummy config explicitly to audio/backends/frontends.
2013-04-02 19:14:46 +02:00
Stein Magnus Jodal
1ac2fec4a5
docs: Tweak module docs formatting
2013-04-01 23:45:23 +02:00
Stein Magnus Jodal
8a8a5109d6
audio: Remove redundant logging
2013-03-30 14:57:37 +01:00
Stein Magnus Jodal
9e5f0703c7
audio: Fix UnicodeDecodeError when logging errors
...
Fixes #347
2013-03-30 13:16:21 +01:00
Stein Magnus Jodal
02b845bd4b
Revert "Merge pull request #231 from adamcik/feature/end-of-track"
...
This reverts commit 1cf9826f87 , reversing
changes made to 711dbe8738 .
2013-03-19 23:23:14 +01:00
Stein Magnus Jodal
7bad64fccc
audio: Add docstring to DummyAudio
2013-02-25 23:11:41 +01:00
Stein Magnus Jodal
15e6128c2a
audio: Add dummy implementation of the audio actor
2013-02-24 22:28:01 +01:00
Thomas Adamcik
fb8fba243a
audio/core: Rework how we hook up end of track handling.
2013-01-05 23:16:42 +01:00
Thomas Adamcik
6d1f84ad3c
Merge branch 'develop' into feature/end-of-track
...
Conflicts:
mopidy/audio/actor.py
mopidy/backends/spotify/playback.py
2013-01-05 18:47:16 +01:00
Thomas Adamcik
711dbe8738
audio: Create GStreaner connect/disconnect helper.
...
The audio class had to many attributes for simply tracking connected signals in
my opinion. This change adds a helper for adding and removing signals and storing
the tracking data in a common dictionary instead of a ton of instance attributes.
2013-01-05 18:35:43 +01:00
Thomas Adamcik
729bc26c10
Merge pull request #290 from jodal/feature/limit-spotify-data-pushing
...
Limit Spotify audio data pushing
2013-01-05 09:11:26 -08:00