zhaan 0.5-1
A UPnP Control Point based on GUPnP
Zhaan is a UPnP Control Point based on GUPnP
bindings and GObject Introspection and PyGI
Features:
+Browse MediaServers for Content
+Play Content on a MediaRenderer with a Playlist
+Change Volume on a Renderer
+Pause/Play/Stop on a Renderer
+Next/Previous on a Renderer
+Show Renderer Status (Playing, paused etc.)
+Show currently rendered media item information
(artis, album, title etc.)
+Seeking within media
Section:
user/multimedia
Repository:
Depends:
python (>= 2.5), python-hildon, python-gobject, python-simplejson, python-gtk2, python-gobject-pygi, pygi, libgupnp-gi-1.0-3, gir1.0-gssdp-1.0, gir1.0-gupnp-1.0, libgupnp-av-gi-1.0-2, python-central (>= 0.6.11), gobject-introspection, gir1.0-soup-2.4, gir1.0-glib-2.0, gir-repository-dev, libgirepository1.0-0, gir1.0-freedesktop, gir1.0-gupnp-av-1.0
Size:
26300 bytes
MD5sum:
e21eef37cd3d3798a2fb45925fa70dc6
File:
Source:
Status:
Package promoted
Bugtracker:
QA Quarantine ends:
ENDED 2010-06-13 15:45
Changes
| Tester | Karma | Timestamp |
| Attila Csipa (Tester) (1430) | 2010-08-16 00:00 UTC | |
| Philipp Zabel (439) | 2010-08-07 12:06 UTC | |
| Harald Schmitt (Tester) (785) | 2010-07-24 12:29 UTC | |
| Ian Stirling (Tester) (512) | 2010-07-01 21:15 UTC | |
| Martin Grimme (1317) | 2010-06-27 13:54 UTC | |
| Zachary Goldberg (Maintainer) (108) | 2010-06-13 17:18 UTC |
Package events
| Event type | User | Timestamp |
| Package promoted | Zachary Goldberg | 2010-08-16 02:20 UTC |
| Promotion unlocked | System | 2010-08-16 00:08 UTC |
| Package is in testing | System | 2010-06-03 15:45 UTC |

Comments:
Any relaxation of the polling interval will effect user experience in the control view. I guess one alternative is to just "assume" monotonically increasing time (one second and a time) and poll every 5 or 10 seconds to make sure we're still accurate. This could cause the progress bar to jump a bit though (poor UX).
I figure since we're on wifi anyway while doing this (a requirement) actually using the wifi once a second probably isn't so bad? If thats not reasonable let me know and we can continue to think of ways to mitigate the polling.
While it does not particularly affect battery life, it does poll at second intervals.
(strace -
ioctl(4, FIONREAD, [0]) = 0 gettimeofday({1278018980, 282657}, NULL) = 0 clock_gettime(CLOCK_MONOTONIC, {109956, 97679048}) = 0 poll([{fd=4, events=POLLIN}, {fd=3, events=POLLIN}, {fd=8, events=POLLIN}, {fd=7, events=POLLIN}, {fd=9, events=POLLIN}, {fd=12, events=POLLIN}, {fd=13, events=POLLIN}, {fd=15, events=POLLIN}, {fd=14, events=POLLIN}], 9, 993) = 0 (Timeout) gettimeofday({1278018981, 283439}, NULL) = 0 clock_gettime(CLOCK_MONOTONIC, {109957, 99161697}) = 0 futex(0x12c418, FUTEX_WAKE, 1) = 0 read(9, 0xbe80bf2f, 1) = -1 EAGAIN (Resource temporarily unavailable) futex(0x12c418, FUTEX_WAKE, 1) = 0 futex(0x17f8e0, FUTEX_WAKE, 1) = 0 futex(0x12c418, FUTEX_WAKE, 1) = 0 futex(0x12c418, FUTEX_WAKE, 1) = 0 futex(0x17f8e0, FUTEX_WAKE, 1) = 0 ioctl(4, FIONREAD, [0]) = 0
)
Is once a second really needed, or could it be relaxed to say 10.
Works perfectly for me. And it's fast, too. +1
Comments:
You must be logged in to make comments.