Commit graph

12697 commits

Author SHA1 Message Date
Sebastian Dröge 4966f68512 Fixes to element/elementfactory creation 2012-10-15 16:28:37 +02:00
Sebastian Dröge 32d4d29706 Some bugfixes to the codec scanning code
Also it's not possible to attach a thread after it was
detached once. As such we simply never detach any thread
at all now.
2012-10-15 16:28:37 +02:00
Sebastian Dröge a48d2feae0 Fix some compilation errors 2012-10-15 16:28:37 +02:00
Sebastian Dröge e9dcb1b329 Add important FIXME 2012-10-15 16:28:37 +02:00
Sebastian Dröge 1e73da2941 Add video decoder element 2012-10-15 16:28:37 +02:00
Sebastian Dröge c846605082 Add some more JNI wrapping 2012-10-15 16:28:37 +02:00
Sebastian Dröge a6a34c8f1c Add some missing color format constants 2012-10-15 16:28:37 +02:00
Sebastian Dröge d0ebf261ff Implement basic wrapper around MediaCodec API
Ideally nothing else will be needed from the elements later.
2012-10-15 16:28:37 +02:00
Sebastian Dröge f99214a657 Some more WIP
Scanning all codecs now and have data structures for holding codec
information and codec contexts. Also function declarations for
working with them.
2012-10-15 16:28:36 +02:00
Sebastian Dröge 8f232ea90b Initial commit 2012-10-15 16:28:36 +02:00
Sebastian Dröge 4cbb7b8a99 androidmedia: Add androidmedia plugin 2012-10-15 16:28:36 +02:00
Sebastian Dröge 932c7175d3 hlsdemux: And fix another deadlock caused by the update thread not correctly shutting down
Conflicts:
	gst/hls/gsthlsdemux.c
2012-10-15 11:46:45 +02:00
Sebastian Dröge 477b04a282 hlsdemux: Also hold the mutex before signalling the condition variable
Conflicts:
	gst/hls/gsturidownloader.c
2012-10-15 11:04:06 +02:00
Sebastian Dröge 113ccb1a53 hlsdemux: Also cancel the downloader before stopping the playlist update task 2012-10-15 10:55:12 +02:00
Sebastian Dröge b335f5a68e hlsdemux: Only lock the mutex when it's not locked already
Conflicts:
	gst/hls/gsthlsdemux.c
2012-10-15 10:39:52 +02:00
Sebastian Dröge 443703a08e hlsdemux: Fix another race condition by holding the mutex that the condition variable uses
Conflicts:
	gst/hls/gsthlsdemux.c
2012-10-15 10:38:36 +02:00
Sebastian Dröge e3f00d6252 hlsdemux: Port some things from the last commits 2012-10-15 09:47:35 +02:00
Sebastian Dröge 4df3fad9e4 hlsdemux: Never ever stop a task from the task function
This will deadlock. Also make sure to always post an error message
if required before pausing tasks from the task function.

Should fix another bunch of deadlocks.

Conflicts:
	gst/hls/gsthlsdemux.c
2012-10-15 09:45:14 +02:00
Sebastian Dröge ca57dd81e4 hlsdemux: Fix lots of deadlocks caused by race conditions in the task state handling 2012-10-15 09:44:09 +02:00
Sergey N. Gorshkov 6d0d209a28 rtmpsink: handle RTMP_Write() return value correctly
Error might also be negative (-1). Unclear if 0 should
be fatal as well though.

https://bugzilla.gnome.org/show_bug.cgi?id=681111
https://bugzilla.gnome.org/show_bug.cgi?id=686009
2012-10-12 23:29:53 +01:00
David Régade 65add5533a rtmpsink: fix memory leak from URI verification via RTMP_ParseURL()
In gst_rtmp_sink_uri_set_uri(), a test is performed in order
to be sure uri is correct for librtmp. This test calls
RTMP_ParseURL with 3 AVal pointers as parameters: host,
playpath and app.

AVal is a struct with a char* + int. After RTMP_ParseURL call,
host.av_val and app.av_val both refer a substring of "uri". But
playpath.av_val may be the result of a malloc so it needs to
be freed.

https://bugzilla.gnome.org/show_bug.cgi?id=681459
2012-10-12 23:09:06 +01:00
Mark Nauwelaerts 953e94ac78 mpegdemux: advance stream time when sending GAP event 2012-10-12 22:35:05 +02:00
Mark Nauwelaerts c24eb1db9b mpegdemux: send language info downstream if available
... as extracted from dvd event.
2012-10-12 22:35:05 +02:00
Mark Nauwelaerts f708ab8de9 mpegdemux: remove obsolete struct field 2012-10-12 22:34:56 +02:00
Michael Smith e3a1e489d2 audioparse: Set framesize and properties correctly when taking format
from caps.
2012-10-12 12:29:59 -07:00
Mark Nauwelaerts ba47769823 mpegdemux: tweak flow return aggregation 2012-10-12 17:51:51 +02:00
Mark Nauwelaerts a9c0609ae8 mpegdemux: handle upstream TIME segments 2012-10-12 17:03:38 +02:00
Mark Nauwelaerts 69cfbcbd0b mpegdemux: handle and combine downstream flow return 2012-10-12 17:03:38 +02:00
Mark Nauwelaerts acc0530f33 mpegdemux: handle new style dvd event 2012-10-12 17:03:38 +02:00
Mark Nauwelaerts 61849aad61 mpegdemux: do not add pad after no-more-pads 2012-10-12 17:03:38 +02:00
Mark Nauwelaerts 44583eae90 mpegdemux: clean up segment sending
... to use the src_segment as a basis for the sent segment,
thereby properly conveying accumulated base_time etc.

Also ensure src_segment is only adjusted once, so that
all downstream segments are identical to avoid stream
misalignment.
2012-10-12 17:03:38 +02:00
Mark Nauwelaerts b8312df0a3 mpegdemux: send GAP event rather than segment updates 2012-10-12 17:03:38 +02:00
Mark Nauwelaerts 20cd96f5c3 mpegdemux: refactor segment sending 2012-10-12 17:03:37 +02:00
Mark Nauwelaerts aca6237b3e mpegdemux: refactor init and reset 2012-10-12 17:03:37 +02:00
Mark Nauwelaerts 08d2fff2fd mpegdemux: no more segment closing in 1.0 2012-10-12 16:48:54 +02:00
Mark Nauwelaerts ab337317fa mpegdemux: clean up some debug statements 2012-10-12 16:48:54 +02:00
Mark Nauwelaerts 304cf8e1c5 dtsdec: fix buffer parsing
... to avoid feeding empty buffers to decoder.
2012-10-12 16:48:54 +02:00
Sebastian Dröge e5eceaaa73 mpegtsdemux: First push EOS, then destroy all programs
And also properly remove the program from the subclass
2012-10-12 15:38:44 +02:00
Sebastian Dröge 80a3a014f5 hlsdemux: Fix invalid read 2012-10-12 15:09:07 +02:00
Sreerenj Balachandran 0b5fde7ed8 mpegvideoparse: signal interlacing properly in video caps
The field is called "interlace-mode" mode now and is a string.

https://bugzilla.gnome.org/show_bug.cgi?id=685895
2012-10-10 16:56:38 +01:00
Wim Taymans 380b23af90 replace some playbin2 -> playbin 2012-10-10 14:14:43 +02:00
Mark Nauwelaerts a17b1f4c91 mpeg4videoparse: reset frame parser after parsing caps codec data
... so as to arrange for a proper fresh state upon first frame.
2012-10-10 09:59:46 +02:00
Sebastian Dröge 4eaf72febd common: Update to the right commit again
Was accidentially reverted to an older version in the last commit.
2012-10-10 09:48:58 +02:00
Michael Smith 080677beef audioparse: add a mode where the caps are taken from the sink pad, and thus audioparse
is only performing timestamping.
2012-10-09 23:00:14 -07:00
Michael Smith 2a18cf41a8 mpegvideoparse: reset frame parser after parsing codec_data buffer in caps, to
avoid not correctly parsing the full first frame.
2012-10-09 21:19:15 -07:00
Mark Nauwelaerts 8596e8d5da mpeg4videoparse: properly mark config data presence
... which we allow to start at VisualObjectSequence or
at VideoObject.

Fixes https://bugzilla.gnome.org/show_bug.cgi?id=685709
2012-10-09 13:59:38 +02:00
Sebastian Dröge 12add5d529 fieldanalysis: Fix unitiailized variable compiler warning
And also use the pad's default event function instead
of just pushing to the peerpad. This makes sure any
default handling of events is called.
2012-10-08 12:38:20 +02:00
Sebastian Dröge 4d6fa2e6ec fieldanalysis: Remove from the NONPORTED plugins list
It's supposed to be ported in 1.0.1 already.
2012-10-08 12:23:20 +02:00
Tim-Philipp Müller 4befb6a7fc docs: add 'make upload' target for docs/ for new-release script 2012-10-07 17:06:39 +01:00
Tim-Philipp Müller 7d26d8b227 Back to development (bug fixing) 2012-10-07 17:03:45 +01:00