1
media-hub (3.0.0+15.04.20150320-0ubuntu1) vivid; urgency=medium
4
* Refactor client-facing interfaces to pull out explicit dependency on hybris-based media layer.
10
* Disconnect playback_status_changed_signal in ~Private() to avoid a
12
* Prevent a 0 position from being reported to the app which happens
13
while seeking. Covers bad behavior that happens from GStreamer. Also
14
expose the about_to_finish signal to the client. Enable playback
15
again after manually seeking all the way to EOS. Also only send
16
VideoDimensionsChanged signal only when necessary.
19
* Add an interface apparmor::ubuntu::RequestAuthenticator that is used
20
to authenticate incoming open uri requests. Add an interface
21
apparmor::ubuntu::RequestContextResolver that is used to resolve a
22
dbus name to an apparmor::ubuntu::Context. Provide an implementation
23
apparmor::ubuntu::ExistingAuthenticator that takes the impl. from
24
player_skeleton.cpp and uses it to implement the interface. Provide
25
an implementation apparmor::ubuntu::RequestContextResolver that
26
reaches out to the dbus daemon to resolve a given bus name to an
27
apparmor profile. Remove obsolete query for the apparmor profile in
28
ServiceSkeleton. Adjust the implementation in media::PlayerSkeleton
29
to rely on Request{Authenticator, ContextResolver}. removed:
30
src/core/media/apparmor.h added: src/core/media/apparmor/
31
src/core/media/apparmor/context.cpp
32
src/core/media/apparmor/context.h src/core/media/apparmor/dbus.h
33
src/core/media/apparmor/ubuntu.cpp src/core/media/apparmor/ubuntu.h
34
* Introduce an interface media::audio::OutputObserver that allows the
35
core classes to observer the state of external audio outputs
36
(headphones/headsets). Provide an implementation of
37
media::audio::OutputObserver that relies on Pulseaudio to monitor
38
the availability of ports on the default sink. Adjust
39
media::ServiceImplementation to use media::audio::OutputObserver,
40
defaulting to media::audio::PulseAudioOutputObserver.
41
* Migrate all Player DBus methods to use transact_method() instead of
42
invoke_method_synchronously(), to prevent bus executor deadlocks.
44
[ Ricardo Salveti de Araujo ]
45
* Add an interface apparmor::ubuntu::RequestAuthenticator that is used
46
to authenticate incoming open uri requests. Add an interface
47
apparmor::ubuntu::RequestContextResolver that is used to resolve a
48
dbus name to an apparmor::ubuntu::Context. Provide an implementation
49
apparmor::ubuntu::ExistingAuthenticator that takes the impl. from
50
player_skeleton.cpp and uses it to implement the interface. Provide
51
an implementation apparmor::ubuntu::RequestContextResolver that
52
reaches out to the dbus daemon to resolve a given bus name to an
53
apparmor profile. Remove obsolete query for the apparmor profile in
54
ServiceSkeleton. Adjust the implementation in media::PlayerSkeleton
55
to rely on Request{Authenticator, ContextResolver}. removed:
56
src/core/media/apparmor.h added: src/core/media/apparmor/
57
src/core/media/apparmor/context.cpp
58
src/core/media/apparmor/context.h src/core/media/apparmor/dbus.h
59
src/core/media/apparmor/ubuntu.cpp src/core/media/apparmor/ubuntu.h
60
* Move src/core/media/call-monitor to src/core/media/telephony.
61
Introduce a proper interface media::telephony::CallMonitor. Slightly
62
adjust existing implementation based on Qt. Adjust
63
media::ServiceImplementation to account for changes in
64
media::telephony::CallMonitor.
67
* Add an interface apparmor::ubuntu::RequestAuthenticator that is used
68
to authenticate incoming open uri requests. Add an interface
69
apparmor::ubuntu::RequestContextResolver that is used to resolve a
70
dbus name to an apparmor::ubuntu::Context. Provide an implementation
71
apparmor::ubuntu::ExistingAuthenticator that takes the impl. from
72
player_skeleton.cpp and uses it to implement the interface. Provide
73
an implementation apparmor::ubuntu::RequestContextResolver that
74
reaches out to the dbus daemon to resolve a given bus name to an
75
apparmor profile. Remove obsolete query for the apparmor profile in
76
ServiceSkeleton. Adjust the implementation in media::PlayerSkeleton
77
to rely on Request{Authenticator, ContextResolver}. removed:
78
src/core/media/apparmor.h added: src/core/media/apparmor/
79
src/core/media/apparmor/context.cpp
80
src/core/media/apparmor/context.h src/core/media/apparmor/dbus.h
81
src/core/media/apparmor/ubuntu.cpp src/core/media/apparmor/ubuntu.h
82
* Add an interface media::ClientDeathObserver that abstracts away
83
receiving key-based death notifications for clients associated to
84
media::Player instances server-side Provide an implementation
85
media::HybrisClientDeathObserver that relies on hybris and
86
ultimately on Android's onBinderDied to receive death notifications.
87
Adjust media::PlayerStub and media::PlayerImplementation to account
88
for the new interface. Adjust the CMake setup for tests to link
89
media-hub-service instead of recompiling large parts of the
90
implementation classes.
91
* Decouple PlayerSkeleton and PlayerImplementation by making
92
PlayerImplementation being able to inherit from arbitrary base
93
classes, as long as they provide the set of properties and signals
94
defined by media::Player.
95
* Decouple the ServiceSkeleton from the ServiceImplementation by
96
introducing a common interface media::KeyedPlayerStore for storing
97
running Player sessions indexed by the Player::Key. Provide a
98
default implementation HashedKeyedPlayerStore relying on a hash map
99
for keeping track of player instances. Adjust implementation to
100
account for ServiceImplementation no longer inheriting from
102
* Introduce a common class media::helper::ExternalHelpers that
103
provides a convenient way to:
104
* Introduce an interface media::RecorderObserver that allows the core
105
classes to monitor the overall state of the system. Provide an
106
implementation of media::RecorderObserver relying on Hybris to
107
interface with the Android side. Adjust the ServiceImplementation to
108
connect to the platform-default media::RecorderObserver.
109
* Introduce an interface media::audio::OutputObserver that allows the
110
core classes to observer the state of external audio outputs
111
(headphones/headsets). Provide an implementation of
112
media::audio::OutputObserver that relies on Pulseaudio to monitor
113
the availability of ports on the default sink. Adjust
114
media::ServiceImplementation to use media::audio::OutputObserver,
115
defaulting to media::audio::PulseAudioOutputObserver.
116
* Introduce an interface media::power::BatteryObserver to monitor the
117
current battery level of the system. The core reacts to low/very low
118
battery levels by pausing all multimedia playback sessions and
119
resumes them whenever the user has been notified of the critical
120
battery level. Provide an implementation of
121
media::power::BatteryObserver using
122
com.canonical.indicator.power.Battery. Adjust
123
media::ServiceImplementation to use media::power::BatteryObserver.
124
* Move gstreamer::Playbin implementation to its own cpp file, thus
125
internalizing the Hybris setup portions. Make sure that media-hub-
127
media::Player::Error::OutOfProcessBufferStreamingNotSupported by
128
linking with media-hub-client.
129
* Move src/core/media/call-monitor to src/core/media/telephony.
130
Introduce a proper interface media::telephony::CallMonitor. Slightly
131
adjust existing implementation based on Qt. Adjust
132
media::ServiceImplementation to account for changes in
133
media::telephony::CallMonitor.
134
* Replace home-grown mask type for the video size with a std::tuple,
135
i.e., media::video::Dimensions. Introduce a simple TaggedInteger
136
class to distinguish between Width, Height and other dimensions.
137
Adjust interfaces of media::Player to rely on the new type. Adjust
138
implementation classes to account for interface changes. Adjust
139
Codec implementation for sending the tagged integer via the bus.
140
Adjust gstreamer::Engine and gstreamer::Playbin to hand out the
143
-- CI Train Bot <ci-train-bot@canonical.com> Fri, 20 Mar 2015 13:16:48 +0000
1
145
media-hub (2.0.0+15.04.20150303-0ubuntu2) vivid; urgency=medium