Merge lp:~phablet-team/media-hub/reset-tracklist-open_uri into lp:media-hub

Proposed by Jim Hodapp
Status: Merged
Approved by: Ricardo Mendoza
Approved revision: 137
Merged at revision: 135
Proposed branch: lp:~phablet-team/media-hub/reset-tracklist-open_uri
Merge into: lp:media-hub
Diff against target: 67 lines (+9/-8)
4 files modified
src/core/media/gstreamer/meta_data_extractor.h (+1/-1)
src/core/media/player_implementation.cpp (+1/-0)
src/core/media/service_skeleton.cpp (+0/-4)
src/core/media/track_list_implementation.cpp (+7/-3)
To merge this branch: bzr merge lp:~phablet-team/media-hub/reset-tracklist-open_uri
Reviewer Review Type Date Requested Status
Ricardo Mendoza (community) Approve
PS Jenkins bot continuous-integration Approve
Review via email: mp+257580@code.launchpad.net

Commit message

Reset the tracklist everytime a client app calls open_uri() and disabling mpris interface by default (LP: #1449213)

Description of the change

Reset the tracklist everytime a client app calls open_uri().

To post a comment you must log in.
136. By Jim Hodapp

Don't export the MPRIS2 interface since the indicator-sound is not working yet.

Revision history for this message
PS Jenkins bot (ps-jenkins) wrote :
review: Approve (continuous-integration)
137. By Ricardo Mendoza

Dont throw player impl if meta data is unretrievable

Revision history for this message
Ricardo Mendoza (ricmm) :
review: Approve

Preview Diff

[H/L] Next/Prev Comment, [J/K] Next/Prev File, [N/P] Next/Prev Hunk
1=== modified file 'src/core/media/gstreamer/meta_data_extractor.h'
2--- src/core/media/gstreamer/meta_data_extractor.h 2015-03-27 19:58:35 +0000
3+++ src/core/media/gstreamer/meta_data_extractor.h 2015-04-27 23:02:03 +0000
4@@ -191,7 +191,7 @@
5 g_object_set(decoder, "uri", uri.c_str(), NULL);
6 gst_element_set_state(pipe, GST_STATE_PAUSED);
7
8- if (std::future_status::ready != future.wait_for(std::chrono::seconds(2)))
9+ if (std::future_status::ready != future.wait_for(std::chrono::seconds(4)))
10 {
11 gst_element_set_state(pipe, GST_STATE_NULL);
12 throw std::runtime_error("Problem extracting meta data for track");
13
14=== modified file 'src/core/media/player_implementation.cpp'
15--- src/core/media/player_implementation.cpp 2015-04-20 17:56:05 +0000
16+++ src/core/media/player_implementation.cpp 2015-04-27 23:02:03 +0000
17@@ -573,6 +573,7 @@
18 template<typename Parent>
19 bool media::PlayerImplementation<Parent>::open_uri(const Track::UriType& uri)
20 {
21+ d->track_list->reset();
22 // Set new track as the current track to play
23 d->track_list->add_track_with_uri_at(uri, media::TrackList::after_empty_track(), true);
24 return true;
25
26=== modified file 'src/core/media/service_skeleton.cpp'
27--- src/core/media/service_skeleton.cpp 2015-04-20 17:56:05 +0000
28+++ src/core/media/service_skeleton.cpp 2015-04-27 23:02:03 +0000
29@@ -476,7 +476,6 @@
30
31 static std::string service_name()
32 {
33-#if 0
34 static const bool export_to_indicator_sound_via_mpris
35 {
36 core::posix::this_process::env::get("UBUNTU_MEDIA_HUB_EXPORT_TO_INDICATOR_VIA_MPRIS", "0") == "1"
37@@ -484,9 +483,6 @@
38
39 return export_to_indicator_sound_via_mpris ? "org.mpris.MediaPlayer2.MediaHub" :
40 "hidden.org.mpris.MediaPlayer2.MediaHub";
41-#else
42- return "org.mpris.MediaPlayer2.MediaHub";
43-#endif
44 }
45
46 explicit Exported(const dbus::Bus::Ptr& bus, const media::CoverArtResolver& cover_art_resolver)
47
48=== modified file 'src/core/media/track_list_implementation.cpp'
49--- src/core/media/track_list_implementation.cpp 2015-04-20 17:48:48 +0000
50+++ src/core/media/track_list_implementation.cpp 2015-04-27 23:02:03 +0000
51@@ -99,9 +99,13 @@
52 {
53 if (d->meta_data_cache.count(id) == 0)
54 {
55- d->meta_data_cache[id] = std::make_tuple(
56- uri,
57- d->extractor->meta_data_for_track_with_uri(uri));
58+ try {
59+ d->meta_data_cache[id] = std::make_tuple(
60+ uri,
61+ d->extractor->meta_data_for_track_with_uri(uri));
62+ } catch (const std::runtime_error &e) {
63+ std::cerr << "Failed to retrieve metadata for track '" << uri << "' (" << e.what() << ")" << std::endl;
64+ }
65 } else
66 {
67 std::get<0>(d->meta_data_cache[id]) = uri;

Subscribers

People subscribed via source and target branches

to all changes: