Merge lp://qastaging/~thomas-voss/media-hub/refactor-video-sink-interface-to-not-rely-on-hybris-types into lp://qastaging/media-hub

Proposed by Thomas Voß
Status: Work in progress
Proposed branch: lp://qastaging/~thomas-voss/media-hub/refactor-video-sink-interface-to-not-rely-on-hybris-types
Merge into: lp://qastaging/media-hub
Diff against target: 3244 lines (+1829/-681)
38 files modified
CMakeLists.txt (+10/-2)
debian/changelog (+6/-0)
debian/control (+5/-5)
debian/libmedia-hub-common3.symbols (+1/-1)
include/core/media/player.h (+15/-15)
include/core/media/video/dimensions.h (+115/-0)
include/core/media/video/sink.h (+145/-0)
src/core/media/CMakeLists.txt (+15/-1)
src/core/media/client_death_observer.cpp (+42/-0)
src/core/media/client_death_observer.h (+62/-0)
src/core/media/codec.h (+40/-0)
src/core/media/engine.h (+3/-1)
src/core/media/gstreamer/engine.cpp (+6/-7)
src/core/media/gstreamer/engine.h (+1/-1)
src/core/media/gstreamer/playbin.cpp (+501/-0)
src/core/media/gstreamer/playbin.h (+47/-445)
src/core/media/hybris_client_death_observer.cpp (+84/-0)
src/core/media/hybris_client_death_observer.h (+63/-0)
src/core/media/hybris_recorder_observer.cpp (+99/-0)
src/core/media/hybris_recorder_observer.h (+52/-0)
src/core/media/mpris/player.h (+16/-1)
src/core/media/player.cpp (+5/-0)
src/core/media/player_implementation.cpp (+19/-39)
src/core/media/player_implementation.h (+2/-4)
src/core/media/player_skeleton.cpp (+28/-7)
src/core/media/player_skeleton.h (+2/-2)
src/core/media/player_stub.cpp (+19/-95)
src/core/media/player_stub.h (+4/-7)
src/core/media/recorder_observer.cpp (+28/-0)
src/core/media/recorder_observer.h (+64/-0)
src/core/media/server/server.cpp (+24/-4)
src/core/media/service_implementation.cpp (+10/-17)
src/core/media/video/hybris_gl_sink.cpp (+116/-0)
src/core/media/video/hybris_gl_sink.h (+67/-0)
src/core/media/video/platform_default_sink.cpp (+67/-0)
src/core/media/video/platform_default_sink.h (+41/-0)
tests/unit-tests/CMakeLists.txt (+5/-1)
tests/unit-tests/libmedia-mock.cpp (+0/-26)
To merge this branch: bzr merge lp://qastaging/~thomas-voss/media-hub/refactor-video-sink-interface-to-not-rely-on-hybris-types
Reviewer Review Type Date Requested Status
Jim Hodapp (community) code Needs Fixing
Review via email: mp+241435@code.qastaging.launchpad.net

Commit message

Refactor client-facing interfaces to pull out explicit dependency on hybris-based media layer.

Description of the change

Refactor client-facing interfaces to pull out explicit dependency on hybris-based media layer.

To post a comment you must log in.
95. By Thomas Voß

Split out playbin impl to its own file.
Make sure that buffer streaming is only enabled on platforms supporting it.

96. By Thomas Voß

[ Ubuntu daily release ]
* New rebuild forced
[ Justin McPherson ]
* #1239432 Music fails to pause on incoming/outgoing calls (LP:
  #1239432)
[ thomas-voss ]
* Bump build dependency on dbus-cpp to pull in exception safe dtor.
  (LP: #1390618)

97. By Thomas Voß

Make video::Dimensions use tagged integer types to clearly distinguish width and height at compile time.

98. By Thomas Voß

Adjust naming of signal in gstreamer::Playbin and remove cached queries for video width and video height.

99. By Thomas Voß

Make video sink creation throw an exception and report the error to clients if the platform does not support zero-copy buffer streaming over process boundaries.

100. By Thomas Voß

Make the player stub throw an exception if video sink creation failed on the service side.

101. By Thomas Voß

Remove unneeded libmedia-mock.cpp file.

102. By Thomas Voß

Consider a full-blown 4x4 transformation matrix.

103. By Thomas Voß

Only compile the hybris gl sink if hybris is actually available.

104. By Thomas Voß

Factor out common RecorderObserver interface and provide a hybris-based implementation.

Revision history for this message
Jim Hodapp (jhodapp) wrote :

Looking good so far. I'd like to see unit tests for HybrisGlSink and a lot of the functionality surrounding it. See my comments inline below.

review: Needs Fixing (code)
Revision history for this message
Thomas Voß (thomas-voss) :
105. By Thomas Voß

Address reviewer comments.

106. By Thomas Voß

[ Jim Hodapp ]
* Pause playback when a headphone is unplugged or an A2DP device is
  unpaired (LP: #1368300)
[ Ricardo Mendoza ]
* Pause playback when a headphone is unplugged or an A2DP device is
  unpaired (LP: #1368300)

107. By Thomas Voß

Move installation/symbol files in debian symbol to account for version bump.

108. By Thomas Voß

Address remaining reviewer comment.

Unmerged revisions

108. By Thomas Voß

Address remaining reviewer comment.

107. By Thomas Voß

Move installation/symbol files in debian symbol to account for version bump.

106. By Thomas Voß

[ Jim Hodapp ]
* Pause playback when a headphone is unplugged or an A2DP device is
  unpaired (LP: #1368300)
[ Ricardo Mendoza ]
* Pause playback when a headphone is unplugged or an A2DP device is
  unpaired (LP: #1368300)

105. By Thomas Voß

Address reviewer comments.

104. By Thomas Voß

Factor out common RecorderObserver interface and provide a hybris-based implementation.

103. By Thomas Voß

Only compile the hybris gl sink if hybris is actually available.

102. By Thomas Voß

Consider a full-blown 4x4 transformation matrix.

101. By Thomas Voß

Remove unneeded libmedia-mock.cpp file.

100. By Thomas Voß

Make the player stub throw an exception if video sink creation failed on the service side.

99. By Thomas Voß

Make video sink creation throw an exception and report the error to clients if the platform does not support zero-copy buffer streaming over process boundaries.

Preview Diff

[H/L] Next/Prev Comment, [J/K] Next/Prev File, [N/P] Next/Prev Hunk
The diff is not available at this time. You can reload the page or download it.

Subscribers

People subscribed via source and target branches