Commit graph

70 commits

Author SHA1 Message Date
Sebastian Dröge
3e795c9a19 Implement handling of buffering and clock-lost messages 2012-09-26 10:27:27 +02:00
Sebastian Dröge
a247dddc71 The volume element is needed by playbin2 too 2012-09-24 14:06:15 +02:00
Sebastian Dröge
5d66cfd40f Also link OpenSL ES plugin 2012-09-24 13:50:06 +02:00
Sebastian Dröge
4909c6489d Catch DURATION message and query new duration on the next UI refresh
This makes sure we always show the latest, real duration. Might
help with OGV streaming.
2012-09-24 11:29:39 +02:00
Sebastian Dröge
c375592018 Make the playbin2 pipeline the default 2012-09-24 11:23:40 +02:00
Sebastian Dröge
634bad5edd videofilter plugin is needed for playbin2 too 2012-09-24 10:19:00 +02:00
Xavi Artigas
a11dffbbc1 Better handling of state tracking in the UI. It now tracks what gst does, instead of just guessing from the buttons the user pressed. 2012-09-21 14:29:11 +02:00
Xavi Artigas
81bb469d72 Catch the exception thrown by GStreamer.init() and terminate application. 2012-09-21 10:58:17 +02:00
Xavi Artigas
56697bc5d5 Add some resilience. In many occasions native methods can be called where Gst is not yet initialized or being re-initialized. 2012-09-21 10:57:33 +02:00
Xavi Artigas
d7735e0f6d Reduce the number of gst plugins used, to approach what will be really needed. 2012-09-21 10:56:35 +02:00
Andoni Morales Alastruey
ec83a11e33 android-tutorial-1: update Android.mk with last changes 2012-09-20 12:29:40 +02:00
Xavi Artigas
eb5a50c851 Remove unused constructor 2012-09-20 11:38:35 +02:00
Sebastian Dröge
d685fd9281 Use the WebM video by default 2012-09-20 11:16:12 +02:00
Sebastian Dröge
20ab7db117 It's GStreamer.init(), not Init() 2012-09-20 11:13:36 +02:00
Sebastian Dröge
56e49fac4e Call GStreamer.Init() from onCreate(), otherwise the Context is not set up yet 2012-09-20 11:13:35 +02:00
Xavi Artigas
2baed2a80c Whitespacey 2012-09-20 10:32:49 +02:00
Xavi Artigas
049ac0438b Add a queue to the test pipeline 2012-09-19 17:58:23 +02:00
Xavi Artigas
1fdad2d112 Use the new GStreamer.Init() method to initialize GStreamer. 2012-09-19 16:50:38 +02:00
Xavi Artigas
fa77581edc Remove unnecessary destruction of GSources 2012-09-19 13:16:45 +02:00
Xavi Artigas
9cdcecf4f8 Use custom GMainContext to avoid potential interference with other libraries using GLib 2012-09-19 12:18:41 +02:00
Xavi Artigas
8876ada4ea Remove compiler warning 2012-09-18 16:48:39 +02:00
Xavi Artigas
553978a030 Prevent the C code from notifying Java too many times about GStreamer being initialized 2012-09-18 16:02:43 +02:00
Xavi Artigas
e7d13a9120 Revamp initialization code. Now the library informs java when initialization is complete (pipeline built and native window received). 2012-09-18 14:32:02 +02:00
Xavi Artigas
e35be6e5df Remove unused variable 2012-09-18 13:40:22 +02:00
Xavi Artigas
5e065f2b89 Beautify hardcoded time values 2012-09-18 12:39:39 +02:00
Xavi Artigas
c763636b97 Add a bit of resilience at class initialization 2012-09-18 12:36:17 +02:00
Xavi Artigas
2048b11b90 Rename some methods for clarity 2012-09-18 12:09:49 +02:00
Xavi Artigas
4b7b9e0106 Remove video app sink now that there is a working egl sink. 2012-09-18 11:55:46 +02:00
Xavi Artigas
336a85b928 Add comment regarding previoud rounding. 2012-09-17 18:26:55 +02:00
Xavi Artigas
803622382e Prevent successive orientation changes from moving the clip backwards in time due to gst-nanos / java-millis rounding errors plus seeking to keyframes. 2012-09-17 18:24:00 +02:00
Xavi Artigas
7a8142417c Remove invalid extra unref on the gst bus 2012-09-17 17:35:32 +02:00
Xavi Artigas
e1927aca14 Typo in comment 2012-09-17 17:24:04 +02:00
Xavi Artigas
4874f00144 Start in PAUSED so clip length is shown since the beginning. Allow orientation changes in PAUSED. 2012-09-17 13:48:08 +02:00
Xavi Artigas
392705a913 Do not set the pipeline to NULL on EOS, as parse_launch pipelines are not reusable. 2012-09-17 13:31:24 +02:00
Xavi Artigas
0b6448389a Allow refreshing the ui (the timer, basically) when in PAUSED (when seeking, basically) 2012-09-17 12:59:33 +02:00
Xavi Artigas
425a23ef98 Seeking in PAUSED updates the video 2012-09-17 12:53:53 +02:00
Xavi Artigas
206415b27b Allow seeking from the SeekBar (video does not refresh until you release the SeekBar, though) 2012-09-17 12:31:23 +02:00
Xavi Artigas
ff9ff2c549 Delay seeks if not in the playing state. Verify return value of ANativeWindow_Lock. 2012-09-17 11:54:45 +02:00
Xavi Artigas
1d7c2a6f87 Add hardware decoding capabilities 2012-09-14 17:08:15 +02:00
Xavi Artigas
f780c13852 Add missing fix 2012-09-14 16:08:37 +02:00
Xavi Artigas
f81f2c4347 Send XOverlay messages directly to the sink. Try to resume playing in the place where it stopped. Assorted fixes. 2012-09-14 16:01:07 +02:00
Xavi Artigas
c892f35193 Protect against surfaces being destroyed after the app is killed 2012-09-14 12:45:54 +02:00
Xavi Artigas
63f19c69ab Display video via an appsink. 2012-09-14 12:02:19 +02:00
Xavi Artigas
f15a624e93 Set the targetSDK to 14 (Gingerbread). This uses cooler (more recent) UI elements when available. 2012-09-13 18:29:02 +02:00
Xavi Artigas
3bc044cba4 Add a SeekBar to show current position / duration 2012-09-13 16:35:51 +02:00
Xavi Artigas
8f8258e4b9 Report current position/duration back to the UI. Refactor. 2012-09-13 14:36:06 +02:00
Xavi Artigas
0156029e06 Remove unneeded import 2012-09-13 12:09:22 +02:00
Xavi Artigas
48f9983fbd Formatting 2012-09-13 12:05:43 +02:00
Xavi Artigas
d6c101954b Add missing properties needed while testing 2012-09-12 18:49:06 +02:00
Xavi Artigas
a449e48aea Use a eglglessink (does not work yet) 2012-09-12 18:45:03 +02:00