Thibault Saunier
5555b5fa9d
mpeg4videoparse: Properly handle profile and level in caps
...
Fix #660234
2011-11-28 21:25:34 -03:00
Thibault Saunier
48ad76e538
mpeg4videoparse: Port to the new mpeg4parser library
2011-11-28 21:25:34 -03:00
Thibault Saunier
db4d4979ab
mpeg4videoparse: Move to the videoparsers plugin
...
Rename a few variables to use the same convention as others elements in this
plugin
Conflicts:
gst/videoparsers/gstmpeg4videoparse.c
2011-11-28 21:25:34 -03:00
Tim-Philipp Müller
f585848d4b
Merge remote-tracking branch 'origin/master' into 0.11
2011-11-28 23:20:58 +00:00
Thiago Santos
9364d13c02
camerabin2: viewfinderbin: use faster cast macro
...
Use cast macro without type checks when we know it should work.
2011-11-28 18:48:52 -03:00
Thiago Santos
b5f97fd033
camerabin2: viewfinderbin: Link elements directly to use faster version
...
ffmpegcolorspace and videoscale should always link successfully, use
the fast pad linking version instead of calling the generic helper
function.
2011-11-28 18:48:52 -03:00
Thiago Santos
f6d47a4206
camerabin2: micro optimize linking some more
2011-11-28 18:48:51 -03:00
Vincent Penquerc'h
4735a7554b
mpeg4videoparse: fix number of bytes read for fixed time increment
...
The spec I found says "16 bits".
The existing code used log2(somevalue)+1.
ffmpeg uses log2(somevalue-1)+1.
The code now uses log2(somevalue-1)+1, and this makes it work with
some sample video without breaking another sample.
Now, I'm far from certain I've got the right spec, I found it by
searching the internet, so...
https://bugzilla.gnome.org/show_bug.cgi?id=654666
2011-11-28 15:22:56 +00:00
Vincent Penquerc'h
f1a4791f74
mpegdemux: Try to add all streams early
...
This will allow us to signal no-more-pads to avoid hitting
the decodebin2 overrun.
2011-11-28 15:10:47 +00:00
Vincent Penquerc'h
fb66b3c2ac
mpegtsdemux: handle pads with no data
...
Some streams declare PIDs but will not send data for them.
Ensure we time out on those, and both send new segments to
keep their time synchronized with the rest, and do not wait
forever before deciding to signal no-more-pads.
https://bugzilla.gnome.org/show_bug.cgi?id=659924
2011-11-28 15:08:13 +00:00
Vincent Penquerc'h
f909c57546
mpegtsdemux: signal no-more-pads when appropriate
...
We track streams for which a data callback is set (and for which
pads will be added only when data is received), and signal
no-more-pads when the last pad is added.
https://bugzilla.gnome.org/show_bug.cgi?id=659924
2011-11-28 15:08:06 +00:00
Vincent Penquerc'h
9715fc3189
mpegdemux: take into account offset of first buffer
...
This fixes playback when the source starts later than the playback
pipeline, and when a source drops for a while then restarts.
https://bugzilla.gnome.org/show_bug.cgi?id=657794
2011-11-28 14:01:43 +00:00
Vincent Penquerc'h
918d2e710f
mpegdemux: fix some more video freezing
...
There was a second threshold, which apparently needs to be smaller
than the first, though I'm not certain of it as I don't understand
yet this nest of wtf that is the mpeg demuxer timing logic.
Fixes video freezing on one (corrupted) MPEG sample. It would
previously never think it was out of the discontinuity, and would
push buffers with no timestamp.
Now this took me more than a day's poking at the thing, for just
one constant change, and I'm scared to have to touch this again :S
https://bugzilla.gnome.org/show_bug.cgi?id=655804
2011-11-28 13:57:42 +00:00
Vincent Penquerc'h
7960280afb
mpegdemux: catch smaller PTS dicontinuities
...
In a test stream, I get one buffer with a PTS of about 15 seconds
in the future compared to the previous one, and next buffers with
timestamps continuing where the original ones left off.
This caused the sink to wait 15 seconds to display the frame while
more frames queued up, and then dump all the subsequent frames as
they "arrived too late".
Maybe that threshold should be made configurable, but for now,
make it more smaller to catch more of these.
https://bugzilla.gnome.org/show_bug.cgi?id=655804
Non AV streams keep using the larger threshold (10 minutes), as
subtitles may arrive only every so often.
2011-11-28 13:57:29 +00:00
Vincent Penquerc'h
7521b597f4
various: fix pad template ref leaks
...
https://bugzilla.gnome.org/show_bug.cgi?id=662664
2011-11-28 13:08:27 +00:00
Matej Knopp
f949930621
videoparsers: fix format warnings
...
https://bugzilla.gnome.org/show_bug.cgi?id=662618
2011-11-28 00:04:16 +00:00
Tim-Philipp Müller
025ce3e6ca
Merge remote-tracking branch 'origin/master' into 0.11
2011-11-27 23:33:45 +00:00
Tim-Philipp Müller
98b9d602c1
aiffparse: extract ID3 tags embedded in ID3 chunks
...
https://bugzilla.gnome.org/show_bug.cgi?id=664725
2011-11-27 23:19:49 +00:00
Edward Hervey
b78b980d72
Merge remote-tracking branch 'origin/master' into 0.11
...
Conflicts:
ext/faac/gstfaac.c
ext/opus/gstopusdec.c
ext/opus/gstopusenc.c
gst/audiovisualizers/gstspacescope.c
gst/colorspace/colorspace.c
2011-11-25 12:48:58 +01:00
Stefan Sauer
c61f85da82
audiovisualizers: add aa-line code and user for wave/space-scope
2011-11-24 19:04:17 +01:00
René Stadler
e6df0b672f
videoparsers: port to 0.11
...
Unit tests missing for now.
2011-11-24 12:08:55 +01:00
Vincent Penquerc'h
1d0f770545
colorspace: fix width/height mismatches
...
https://bugzilla.gnome.org/show_bug.cgi?id=663238
2011-11-24 10:49:16 +01:00
Sebastian Dröge
ca6ae54d5f
mpeg4videoparse: Use the sinkpad template caps as a fallback, not the srcpad ones
2011-11-24 10:26:25 +01:00
Sebastian Dröge
dc2c61faf5
mpegvideoparse: Implement ::get_sink_caps vfunc to propagate downstream caps constraints upstream
2011-11-24 10:14:06 +01:00
Sebastian Dröge
61fad46dca
h263parse: Implement ::get_sink_caps vfunc to propagate downstream caps constraints upstream
2011-11-24 10:09:59 +01:00
Sebastian Dröge
b10c1f277f
diracparse: Implement ::get_sink_caps vfunc to propagate downstream caps constraints upstream
2011-11-24 10:08:27 +01:00
Sebastian Dröge
e7cd086970
mpeg4videoparse: Implement ::get_sink_caps vfunc to propagate downstream caps constraints upstream
2011-11-24 10:05:30 +01:00
Tim-Philipp Müller
bd92bc966f
sdpdemux: update for gstrtpbin -> rtpbin renaming
2011-11-24 00:56:45 +00:00
Matej Knopp
9d0bdcf6d7
Fix printf format compiler warnings on OS X / 64 bit
...
https://bugzilla.gnome.org/show_bug.cgi?id=662618
2011-11-23 23:43:15 +00:00
Tim-Philipp Müller
da43e59aab
smooth: fix printf format compiler warning in debug message
...
https://bugzilla.gnome.org/show_bug.cgi?id=664631
2011-11-23 16:03:15 +00:00
René Stadler
461f1971dd
frei0r: normalize boolean property default values to TRUE/FALSE
...
Glib barks at us with a warning when we pass e.g. 4.
2011-11-23 12:43:48 +01:00
Stefan Sauer
03f1f0214e
audiovisualizers: update README and TODO comments
2011-11-23 11:31:44 +01:00
Stefan Sauer
3ba8b3c0ad
spacescope: use the drawhelpers and add a draw-style property
...
Like in wavescope support drawing dots and lines.
2011-11-23 11:21:15 +01:00
Wim Taymans
0a9387c43c
Merge branch 'master' into 0.11
...
Conflicts:
ext/opus/gstopusdec.c
ext/opus/gstopusenc.c
ext/opus/gstopusparse.c
gst/audiovisualizers/gstwavescope.c
gst/filter/Makefile.am
gst/filter/gstfilter.c
gst/filter/gstiir.c
gst/playondemand/gstplayondemand.c
2011-11-23 11:08:39 +01:00
Stefan Sauer
e3d1a50c0d
audiovisualizers: add some simple drawing helpers for reuse
...
Add a (uninstalled) header with simple drawing macros
2011-11-23 08:42:01 +01:00
Stefan Sauer
b9c9540735
smoothwave: remove element unported from 0.8
...
The wavescope element does achieve the same effect.
2011-11-23 08:42:01 +01:00
Stefan Sauer
85aba22118
wavescope: add a style property for drawing modes
...
Add a style enum of { dots, lines}. Now this elements is a superset of smoothwave.
2011-11-23 08:42:01 +01:00
Sebastian Pölsterl
9759d66407
mpegtsparse: support more character set encodings
...
Support UTF-16BE, EUC-KR (KSX1001), GB2312 and ISO-10646/UTF8 text
encoding and fixed new line for multibyte encoding
https://bugzilla.gnome.org/show_bug.cgi?id=664257
2011-11-22 11:35:00 +00:00
Stefan Sauer
aa4b5b3bf5
playondemand: remove unported plugin from 0.8
...
These days one would do the effect e.g. using gnonlin.
2011-11-22 09:11:35 +01:00
Stefan Sauer
bae725ed1f
speed: tiny doc blob clarification
2011-11-22 09:10:57 +01:00
Stefan Sauer
bf7c118c3c
freeverb: add a freeverb port
...
Freeverb is a public domain reverb implementation. Port it as a gstreamer
element and make use of gstreamer specific features (gap aware, disconts,
controller, ...).
2011-11-22 09:10:57 +01:00
Wim Taymans
e813abf631
update for activation changes
2011-11-21 13:37:20 +01:00
Stefan Sauer
143bcd974b
smooth: port to 0.10
...
Port from GstElement to GstVideoFilter. Fix FIXMEs. Cleanup naming. Expose left
out property (kuma-only).
2011-11-21 08:27:19 +01:00
Stefan Sauer
cc210b8ff6
passthrough: remove obsolete element
...
It is not built by default. We have identity for some of the needs and otherwise
audio/videofilter base classes.
2011-11-20 20:16:03 +01:00
Stefan Sauer
931f7b2c59
filter: remove filter plugin
...
We don't build it anyway and we have audioiirfilter in good.
2011-11-20 20:10:49 +01:00
Stefan Sauer
d1578f042a
inter: fix leftover boilerplace comments
2011-11-20 20:10:49 +01:00
Thiago Santos
524c478fa1
camerabin2: Also reset video/audio filters before capturing
...
Video and audio custom filter element should also be reset before
starting a new capture, otherwise we get wrong-state errors
2011-11-19 16:22:29 -03:00
Wim Taymans
567032b5f5
update for new scheduling query
2011-11-18 17:59:47 +01:00
Mark Nauwelaerts
1f3b4ad574
h264parse: remove redundant code
...
... now that what should not be needed is really not needed anymore to cover
up bogus stuff that has been FIXMEd.
2011-11-18 17:20:10 +01:00
Mark Nauwelaerts
7fae33a661
h264parse: fix up AU collection processing
...
On the one hand, no need to collect nal if processing last one.
On the other hand, ensure AU collection processing to have sufficient
next NAL data in normal cases.
Fixes #663180 .
2011-11-18 17:20:08 +01:00
Mark Nauwelaerts
66543b3dd9
h264parse: mind to-be-skipped data in subsequent re-used offsets
2011-11-18 17:20:06 +01:00
Mark Nauwelaerts
e12044c359
h264parse: avoid additional NAL parsing if no AU collection is needed
2011-11-18 17:20:03 +01:00
Mark Nauwelaerts
9db239e1ec
h264parse: some more get_caps tweaking
...
... by having it use sink template rather than src template, and not
passing an downstream parsed(=true) to upstream.
2011-11-18 17:20:00 +01:00
Wim Taymans
b948769e6e
add parent to activate functions
2011-11-18 13:58:41 +01:00
Wim Taymans
bc6ed0bf97
Merge branch 'master' into 0.11
...
Conflicts:
ext/celt/gstceltdec.c
ext/opus/gstopusdec.c
ext/opus/gstopusdec.h
ext/opus/gstopusenc.c
ext/opus/gstopusenc.h
ext/opus/gstopusparse.c
2011-11-17 17:32:42 +01:00
Wim Taymans
940de5b195
add parent to pad functions
2011-11-17 15:53:42 +01:00
Stefan Sauer
d2f2955f18
collectpads: port API changes
2011-11-17 08:53:23 +01:00
Sebastian Dröge
d746cd7d67
mpeg4videoparse: Change rank to PRIMARY+1
2011-11-16 10:57:55 -08:00
Sebastian Dröge
ec089662de
mpeg4videoparse: Don't require parsed=false on the sinkpad caps
2011-11-16 10:57:24 -08:00
Sebastian Dröge
f3f9e4b978
h264parse: Implement ::sink_get_caps to allow stream-format conversion again
...
Just proxying the downstream caps will prevent h264parse from
accepting a different stream-format than what is supported
downstream, although it could convert to a different stream-format.
2011-11-16 10:39:40 -08:00
Wim Taymans
6d92ecac75
add parent to query function
2011-11-16 17:30:38 +01:00
Edward Hervey
e500ec524c
tsdemux: Add notes on synchronization and scheduling
2011-11-16 12:47:58 +01:00
Wim Taymans
37e081fc61
update for renamed flags
...
Use the _check_reconfigure method instead of checking flags.
2011-11-16 12:42:24 +01:00
Jonas Larsson
5099ff23af
h264parse: outgoing byte stream prefix always has size 4
...
Fixes #664123 .
2011-11-16 10:57:30 +01:00
Wim Taymans
85afc77dea
_query_peer_*() -> _peer_query_*()
2011-11-15 17:55:50 +01:00
Wim Taymans
5231ae7252
_peer_get_caps() -> _peer_query_caps()
2011-11-15 17:24:07 +01:00
Wim Taymans
03713e5045
change getcaps to query
2011-11-15 16:34:13 +01:00
David King
92f07e3898
camerabin: Document requirement for PLAYING state
...
As described in GNOME bug 663998, the element must be in the PLAYING
state before calling capture-start.
https://bugzilla.gnome.org/show_bug.cgi?id=664048
2011-11-14 23:28:29 -03:00
Thiago Santos
1d5b324e7d
camerabin2: Also reset audio elements when video capture finishes
...
Audio elements also need to be reset after each capture, do it
together with the video elements' reset
2011-11-14 17:48:52 -03:00
Thiago Santos
aab3a73ccd
camerabin2: Add one debug line about camerabin2 being idle
2011-11-14 13:06:29 -03:00
Thiago Santos
54351a0129
camerabin2: Remove video elements' state clearing from start-capture
...
Reduce start-capture workload by moving the elements' state reseting to the
finishing steps of the capture. This reduces the time start-capture takes to
actually start a capture and return to its caller, improving user experience.
As the elements' state reset is now triggered from the message handling
function, it needs to spawn a new thread, changing state from the pad's
task would cause a deadlock.
2011-11-14 13:06:29 -03:00
Thiago Santos
c635e4bc3b
camerabin2: keep track of video recording state
...
Adds a new variable to keep track of the state of the video
recording in camerabin2. This allows start-capture to reject
new video recording requests when one is already ongoing. This
fixes one of check tests.
2011-11-14 13:06:28 -03:00
Tim-Philipp Müller
357d7bdfed
Update for GstURIHandler get_protocols() changes
2011-11-13 23:55:56 +00:00
Wim Taymans
d3f42035fe
Merge branch 'master' into 0.11
2011-11-11 10:39:17 +01:00
Matej Knopp
a08b3bfa23
mpegvideoparse: add support for progressive frames
...
https://bugzilla.gnome.org/show_bug.cgi?id=663782
2011-11-10 19:58:13 -03:00
Stefan Sauer
f8abc7e734
audiovisualizer: port to 0.11
2011-11-10 23:20:32 +02:00
Wim Taymans
59b4bcd27e
Merge branch 'master' into 0.11
2011-11-10 12:14:19 +01:00
Wim Taymans
8546951222
chain up in set_clock
2011-11-10 12:11:21 +01:00
Thiago Santos
c7db5db632
camerabin2: protect image location list with mutex
...
Rename the image taglists' mutex into image capture mutex and
use it also for the image capture list to prevent concurrent
access from different threads (application and capture threads).
2011-11-09 12:30:58 -03:00
Thiago Santos
27e01e02a4
camerabin2: Handle null taglists for images
...
Add NULL and check for them to the image capture taglist list, representing
that a capture has no application tags set.
2011-11-09 12:30:58 -03:00
Thiago Santos
9ab6406f23
camerabin2: Don't store preview location if preview isn't requested
...
Do not store preview location is post-previews is false, this would
mess up preview naming in case application switches between enabling
and disabling previews
2011-11-09 12:30:33 -03:00
Lasse Laukkanen
5ca3c9477e
camerabin2: Avoid blocking in start-capture and send application tags later
...
Tags are currently sent from start-capture, which is run in the
application thread. For images we can delay the tags pushing to the
buffer probe and push the tags with the location event and reduce
start-capture time.
2011-11-09 11:45:55 -03:00
Wim Taymans
dbdaa23742
Merge branch 'master' into 0.11
...
Conflicts:
gst/colorspace/colorspace.c
2011-11-09 12:19:04 +01:00
Thijs Vermeir
8529526c54
dtmf: fix compiler warning for uninitialized values
2011-11-09 11:56:07 +01:00
Wim Taymans
0d0444e0fa
remove query types
2011-11-09 11:55:14 +01:00
Olivier Crête
d937da4c0c
dtmfsrc: Reject start/stop requests that come out of order
2011-11-08 17:45:48 -05:00
Olivier Crête
d15d524fec
dtmf: Post messages when starting to send/receive DTMF
...
This way, the UI can display the DTMF events as they as being sent.
2011-11-08 17:45:48 -05:00
Thiago Santos
74df06d8c6
camerabin2: Decrement processing counter when message handling finishes
...
Some messages might be interesting to applications, so we can only
decrement the processing counter and send the idle notification
when those messages are posted on the pipline's bus
2011-11-08 08:13:20 -03:00
Lasse Laukkanen
ad1ddaf53a
camerabin2: change post-previews property default value as false
...
Generating and posting preview image always comes with a performance
penalty so set default value as false. The preview-caps property that
defines the preview image format is also NULL by default, so instead
of generating preview image of unspecified format by default explicit
action from application should be required for enabling preview image
posting feature.
Application also has to add custom code to be able
to handle preview messages on its message handling function anyway.
2011-11-08 07:09:41 -03:00
Vincent Penquerc'h
d0443cfb65
colorspace: fix r210 writing only half a scanline
...
https://bugzilla.gnome.org/show_bug.cgi?id=663203
2011-11-07 17:15:14 +00:00
Vincent Penquerc'h
0ff703b520
adpcm: add more consts, espcially for static const data
2011-11-07 16:41:42 +00:00
Vincent Penquerc'h
9674c5aefa
autoconvert: merge caps instead of using union
...
It's a lot faster, and preserves caps ordering.
https://bugzilla.gnome.org/show_bug.cgi?id=663346
2011-11-07 12:16:37 +00:00
Vincent Penquerc'h
4275a70cb5
mpegdemux: catch section lengths extending past the buffer length
...
This is probably the cause for an occasional crash while streaming
MPEG. Blind fix after staring at the code and following logic, so
may or may not fix the issue, I cannot test.
2011-11-07 11:59:12 +00:00
Vincent Penquerc'h
b3d751667d
mpegpsdemux: fix zero length packet handling
...
https://bugzilla.gnome.org/show_bug.cgi?id=631416
2011-11-07 11:17:00 +00:00
Wim Taymans
62544179e2
Merge branch 'master' into 0.11
2011-11-07 10:02:00 +01:00
Reynaldo H. Verdejo Pinochet
506f97a975
Fix missing sources on bayer's buildsystem androgenizer call
2011-11-04 18:06:51 -03:00
Stefan Sauer
9f73890892
controller: port to new controller location and api
2011-11-04 20:14:01 +01:00
Wim Taymans
8ec6da7797
more template fixes
2011-11-04 16:41:44 +01:00
Wim Taymans
eaad7e58b0
more template fixes
2011-11-04 12:31:19 +01:00
Wim Taymans
c8adc4f8c8
make request pads take _%u
2011-11-04 12:22:37 +01:00
Wim Taymans
ac27b5bcc8
tag: update for tag API removal
2011-11-02 12:10:03 +01:00
Wim Taymans
769a9791a4
Merge branch 'master' into 0.11
2011-11-02 10:31:24 +01:00
Wim Taymans
17a982fe31
structure: fix for api update
2011-11-02 09:08:23 +01:00
Wim Taymans
e14fbcc070
caps: update for new API
2011-11-02 09:08:23 +01:00
Thiago Santos
d4105d4b56
camerabin2: On capture error, skip previews
...
When the camera source fails to do some capture, skip the next
preview and decrement processing counter.
2011-11-01 11:49:17 -03:00
Lasse Laukkanen
37aa6a9c71
camerabin2: track also preview images with processing counter
...
Makes camerabin2 only signal that it is idle after all previews have
been generated, images are captured and saved, and videos have
been finished properly.
2011-11-01 11:49:17 -03:00
Tim-Philipp Müller
10d31a588d
Update for pad API changes
...
GstProbeType, GstProbeReturn and GstActivateMode -> GstPad*
2011-11-01 00:45:25 +00:00
Robert Swain
e3b7cb8899
fieldanalysis: Don't reset the context on DISCONT
...
On discont, the queue of frames was being cleared, but also the
context reset. We only need to clear the queue.
2011-10-31 18:20:32 +01:00
Tim-Philipp Müller
c186b74296
kate, bayer, tsdemux: update for caps and taglist API changes
2011-10-31 14:51:01 +00:00
Wim Taymans
9ca3734e52
make elements compile again
2011-10-28 15:16:43 +02:00
Wim Taymans
a54cf2ccac
mpegtsdemux: fix compilation
2011-10-27 16:23:26 +02:00
Wim Taymans
ce41348f78
Merge branch 'master' into 0.11
2011-10-27 16:13:56 +02:00
Stefan Sauer
69f8921e2c
interfaces: clean up the use of iface and class/klass
2011-10-21 15:04:05 +02:00
Tim-Philipp Müller
4060056ce6
assrender, nuvdemux: unref buffers with gst_buffer_unref()
2011-10-18 14:41:48 +01:00
Wim Taymans
effab293cb
Merge branch 'master' into 0.11
2011-10-18 14:32:05 +02:00
Sreerenj Balachandran
f8239ff692
h264parse: correct debug message and remove some dead code
...
See #661113 .
2011-10-17 11:17:50 +02:00
Sreerenj Balachandran
0a478db7dd
h264parse: correct parsing of "numberOfPictureParameterSets"
...
See #661113 .
2011-10-17 11:17:47 +02:00
Edward Hervey
d6d26e9f6e
bayer2rgb: Fix pad template caps
2011-10-17 10:19:20 +02:00
Wim Taymans
4a3dbe3d42
y4m: port to 0.11
2011-10-16 17:41:45 +02:00
Wim Taymans
0806e5cbb9
bayer: port to 0.11
2011-10-16 16:28:58 +02:00
Wim Taymans
7f851794d6
Merge branch 'master' into 0.11
2011-10-16 15:28:31 +02:00
Edward Hervey
9712fe8a54
tsdemux: Use gst_buffer_join instead of bufferlists
...
This is *really* inefficient. We should track list of GstMemory
instead.
2011-10-13 16:57:31 +02:00
Edward Hervey
a74c02bf23
tsdemux: Plug more leaks
2011-10-13 16:57:17 +02:00
Edward Hervey
db0633918a
mpegtsbase: Refactor scan loop
...
Avoids ending up leaking packets when we got one and res was different
from GST_FLOW_OK.
It also looks more comprehensible
2011-10-13 16:55:54 +02:00
Edward Hervey
e4b7967c9d
mpegtsbase: Don't leak upstream events
2011-10-13 16:55:40 +02:00
Edward Hervey
0c80f63c5b
mpegtsbase: Refactor code to cope with g_hash_table_foreach_remove()
2011-10-13 16:55:05 +02:00
Edward Hervey
6abe2134bf
tsdemux/tsparse: Port to 0.11
...
This is a naive port that somewhat works but is inefficient.
I need to rethink how to make the best out of GstMemory/GstBuffer
2011-10-12 18:06:16 +02:00
Thiago Santos
61a7e6bf38
camerabin2: Check before acessing preview location list
...
Only access the preview location if it exists, to avoid acessing
a NULL variable. If the preview location list doesn't exist, it is
likely because the source has posted a preview message after camerabin2
has been put to READY.
2011-10-12 12:19:13 -03:00
Thiago Santos
e90e041e52
camerabin2: Add a mutex to avoid concurrent access of preview filename lists
...
The preview filename list is acessed whenever a new capture is started, when
camera-source posts a new preview message or on state changes. All of those can
occur simultaneously, so add a mutex to prevent concurrent access.
2011-10-11 23:13:00 -03:00
Thiago Santos
17a00123a4
camerabin: Reset audiosrc timestamping
...
Reset audiosrc's timestamping data by setting
it to NULL to reset the ringbuffer and then re-seting
the clock that camerabin might not redistribute
2011-10-11 18:48:07 -03:00
Thiago Santos
0f99118141
camerabin: Prevent audio source from providing clock
...
camerabin's audio source might be put to NULL during its
use, so the clock would be lost. Better not allow it to
provide a clock at all.
2011-10-11 16:27:07 -03:00
Wim Taymans
5de9be0fdd
dvbsuboverlay: port to 0.11
2011-10-10 10:15:05 +02:00
Wim Taymans
11a7e26fd8
dvdspu: port to 0.11
2011-10-08 15:16:25 +02:00
Wim Taymans
c16cc4698a
Merge branch 'master' into 0.11
2011-10-08 11:17:11 +02:00
Wim Taymans
3267a38e37
dvdspu: beginning of port to 0.11
2011-10-06 17:56:35 +02:00
Thibault Saunier
f94236078c
h264parse: Make proper use of the h264parser lib in parse_chain
...
Minor debugging logs fixes
2011-10-06 12:49:19 -03:00
Wim Taymans
e83fb140d5
Merge branch 'master' into 0.11
2011-10-06 14:05:42 +02:00
Wim Taymans
e82262969c
mpeg4videoparse: port to 0.11
2011-10-06 14:03:29 +02:00
Mark Nauwelaerts
9c221f492d
h264parse: properly interpret baseparse draining state
...
... which means the input data has reached the end, but need not exclude
many separate frames may still need parsing.
Fixes merging NALs into AU.
2011-10-06 12:26:23 +02:00
Sreerenj Balachandran
3129ea29b1
h264parse: correct the size argument of gst_h264_parser_identify_nalu_avc()
2011-10-06 11:59:41 +02:00
Sreerenj Balachandran
bbc30f3644
h264parse: minimum size of parsable avcC data should be 8
2011-10-06 11:59:38 +02:00
Wim Taymans
c94c332578
jpegformat: port to 0.11
2011-10-05 20:06:20 +02:00
Wim Taymans
bd0b3f0761
dataurisrc: port to 0.11
2011-10-04 18:38:50 +02:00
Wim Taymans
a7d614b963
Merge branch 'master' into 0.11
2011-10-04 13:29:21 +02:00
Sebastian Dröge
8e2c5833f1
videoparsers: Only fail to initialize the plugin if all parsers can't be registered
2011-10-04 12:31:05 +02:00
Sebastian Dröge
24241b809e
rtpvp8pay: Fix typo
2011-10-03 12:06:27 +02:00
Youness Alaoui
f5abb2c647
rtpvp8: Update the pay/depay to the ietf-draft-01 spec
2011-10-03 11:32:46 +02:00
Wim Taymans
d26f7319e9
Merge branch 'master' into 0.11
2011-10-03 11:24:04 +02:00
Vincent Penquerc'h
e4856a2965
mpegtsdemux: fix scanning stopping too early
...
https://bugzilla.gnome.org/show_bug.cgi?id=648245
2011-10-03 11:15:16 +02:00
Vincent Penquerc'h
46dd7941f3
mpegpsdemux: take into account SCR offset when seeking
...
Since the seeking byte offset is chosen by linear interpolation
from SCR values, we need to take that first SCR into account
to end up near the correct offset. Otherwise, as the code does
a linear search after that first seek, it will take a LOOOOOONG
time to get there for streams which don't start at zero.
https://bugzilla.gnome.org/show_bug.cgi?id=659485
2011-09-30 15:15:06 +01:00
Vincent Penquerc'h
49d1121101
mpegdemux: answer position query with a stream time position
...
https://bugzilla.gnome.org/show_bug.cgi?id=659485
2011-09-30 15:11:12 +01:00
Vincent Penquerc'h
71f28c44a0
mpegpsdemux: remove unused field
...
https://bugzilla.gnome.org/show_bug.cgi?id=659485
2011-09-30 15:05:31 +01:00
Thiago Santos
379670e036
camerabin2: add location to preview image messages
...
Makes camerabin2 intercept preview-image messages and add
the filename corresponding to the message structure in the
'location' field.
Makes easier for applications to track preview images
2011-09-29 18:21:06 -03:00
Robert Swain
6446cc4ae9
camerabin2: Fix potential loss of EOS event
...
Setting the audio source to NULL just after pushing the EOS event
on it could potentially cause loss of said EOS event. Instead, we
can set the audio source to NULL when ready-for-capture is
signalled and the boolean value is true as this indicates we are
not currently capturing video.
2011-09-29 16:22:00 +02:00
Wim Taymans
7f4cf50496
Merge branch 'master' into 0.11
2011-09-26 22:31:17 +02:00
Wim Taymans
6a44e54b09
sdpdemux: port to 0.11
2011-09-26 22:30:13 +02:00
Robert Swain
f4e744ff49
camerabin2: Stop the audio source between captures
...
Move the audio source setting of state to NULL to _stop_capture () to
avoid the audio source running between captures.
2011-09-26 17:23:41 +02:00
Thibault Saunier
2c928aba19
codecparsers: Declare the new APIs as unstable for the time being
2011-09-26 08:11:45 -03:00
Vincent Penquerc'h
38cdb54112
mpegtsdemux: keep CRC table in .rodata
...
https://bugzilla.gnome.org/show_bug.cgi?id=660118
2011-09-26 13:00:03 +02:00
Mark Nauwelaerts
e615cf15a9
irtspparse: add Interleaved RTSP parser element
2011-09-26 12:20:35 +02:00
Tim-Philipp Müller
ad1883f54d
psmux: fix writing of system header, which makes VLC not skip the adjacent PSM and play embedded H.264 streams
...
header_length contains the length in bytes after the header_length
field, excluding the 6 byte start code and header_length field.
H.264 streams and some other formats need to be announced in the PSM.
VLC wouldn't play files created with mpegpsmux containing H.264 because
we claim the system header is larger than it actually is, which makes
VLC skip the program stream map which follows the system header, which
in turn makes it not recognise our H.264 video stream.
2011-09-22 20:11:21 +01:00
Mark Nauwelaerts
b142663ca5
h263parse: bring debug statements up to desired specs
2011-09-19 14:55:12 +02:00
Mark Nauwelaerts
66f644cfcc
h264parse: bring debug statements up to desired specs
2011-09-19 14:55:09 +02:00
Vincent Penquerc'h
837500af07
rtpvp8: fix bitstream parsing using the wrong kind of bitreader
...
VP8 uses a probabilistic bool coder, not a straight bit coder.
This fixes parsing when error-resilient is set.
This commit includes a copy of libvpx's bool coder, BSD licensed.
https://bugzilla.gnome.org/show_bug.cgi?id=652694
2011-09-19 11:33:34 +02:00
Thiago Santos
b8f9c3b39d
camerabin2: Adding 2 more log messages
2011-09-16 00:52:53 -03:00
Vincent Penquerc'h
25c3ce9a7a
camerabin2: replace deprecated g_atomic_int_exchange_and_add
...
It was replaced by g_atomic_int_add, which now returns the
old value.
https://bugzilla.gnome.org/show_bug.cgi?id=659061
2011-09-16 00:52:53 -03:00
Thiago Santos
cc27a7fe3a
camerabin2: Reset last state change result on state-locked elements
...
An element stores the result for the last state change it did and
GstBin's state change handler will use this last result for state
locked elements to decide if its state change was successfull or not.
In camerabin2, the filesinks have their state locked and when they
fail switching states, this last failure will be used if the application
tries to change camerabin2's state, causing any state change to fail.
This patch makes camerabin2 reset this last change failure, avoiding
that camerabin2 fails on its next state changes.
2011-09-16 00:52:53 -03:00
Thibault Saunier
df551c0af4
mpegvideoparse: Handle properly frame detection
...
Handle the case where we have buffers containing no startcode
in the middle of a frame properly.
2011-09-14 12:13:19 -03:00
Mark Nauwelaerts
a31d541f07
mpegvideoparse: send a video-codec tag
...
https://bugzilla.gnome.org/show_bug.cgi?id=569305
2011-09-14 16:14:54 +02:00
Thiago Santos
00e635e786
camerabin2: Check zoom notify callback from camera-source
...
Camerabin2 has a zoom property that is simply proxied to its
internal camera-source element. This patch makes camerabin2 listen
to 'notify' signals from it so it can update its zoom property value
when camera-source changes its zoom as a side-effect of another operation
or because the user set the zoom directly to it, instead of doing
it from camerabin2.
2011-09-12 17:49:25 -03:00
Alessandro Decina
6e9873038b
mpegvideoparse: fix compiler warnings
2011-09-12 10:23:36 +02:00
Thibault Saunier
404c18ab18
h264parse: Make use of the h264_nal_parser_free function
2011-09-09 15:02:35 -03:00
Sebastian Dröge
24517ba784
hlsdemux: Fix merge mistake from last commit
2011-09-09 12:27:57 +02:00
Youness Alaoui
55e4206159
hlsdemux: Report the correct timestamp for live streams
...
Buffers would always start with timestamp 0 and we'd start streaming
from the first buffer, but live streams always start streaming from
the last fragment - 3 fragments in the playlist, which makes its
timestamp, as returned by get_next_fragment, be whatever position
they had in the playlist. This makes sure the position correctly
reports the position of the buffer in the playlist, and added a shifting
variable to allow seeking in the middle of fragments.
2011-09-09 12:21:36 +02:00
Youness Alaoui
894ac8f493
hlsdemux/tsdemux: Add HP copyright on work done on HLS
2011-09-09 12:12:12 +02:00
Youness Alaoui
609bdd6642
hlsdemux: set playlist to NULL after unreffing it to avoid a double-unref in the dispose
2011-09-09 12:11:42 +02:00
Youness Alaoui
84e67767a3
hlsdemux: Do not lock the mutex of the fetcher during EOS
...
The fetch_location might call stop_fetcher which could generate an EOS
and cause a deadlock
2011-09-09 12:10:56 +02:00
Youness Alaoui
baf875b928
hlsdemux: Do not join the task from the task's thread itself. join it only in the state change
2011-09-07 22:26:47 +02:00
Vincent Penquerc'h
1a6dbe1e27
mpegvideoparse: make this build with older glib
...
g_list_free_full is a new convenience function.
Replace it with g_list_foreach and g_list_free.
https://bugzilla.gnome.org/show_bug.cgi?id=658450
2011-09-07 14:34:33 +02:00
Sebastian Dröge
724d7a3def
videoparsers: Make the h263 and (new) mpeg video parser autopluggable
2011-09-07 13:47:51 +02:00
George Kiagiadakis
ddf32e2c49
h264parse: Fix IDR position marking when the IDR is split into several NALs
2011-09-07 13:36:12 +03:00
Sebastian Dröge
e86e66e86c
h263parse: Add all always present fields to the src template caps
2011-09-07 11:29:37 +02:00
Sebastian Dröge
89aa5dae9d
diracparse: Add all fields to the src template caps
2011-09-07 11:29:37 +02:00
Sebastian Dröge
2adf76eb52
videoparsers: Allow parsed streams to be passed through the parsers
2011-09-07 11:29:37 +02:00
Sebastian Dröge
d4147a2798
h264parse: Put stream-format and alignment into the src template caps
...
Also remove the parsed field from the sink template caps.
2011-09-07 11:29:37 +02:00
Sebastian Dröge
456335eab4
h264parse: Change rank to PRIMARY+1 to have h264parse autoplugged
2011-09-07 11:29:36 +02:00
Sebastian Dröge
29a358e8cd
diracparse: Constify some arrays
2011-09-07 11:29:36 +02:00
Wim Taymans
d4590a1959
Merge branch 'master' into 0.11
2011-09-06 16:13:28 +02:00
Sebastian Dröge
cfb986b6bf
h264parse: Add Converter to classification
...
This parser can convert between different alignments and stream-formats.
2011-09-06 13:21:28 +02:00
Youness Alaoui
473e71e1ca
hlsdemux: If a fetch fails, decrement the sequence number
2011-09-03 09:09:02 +02:00
Youness Alaoui
5aa972eab2
hlsdemux: make hlsdemux lock/unlock the m3u8 client when it accesses it
2011-09-03 09:01:40 +02:00
Youness Alaoui
6133608789
hlsdemux: Add a get_target_duration and get_current_uri api to m3u8_client
2011-09-03 09:00:50 +02:00
Youness Alaoui
a252794a03
hlsdemux: Make the m3u8 client thread-safe
2011-09-03 09:00:35 +02:00
Sebastian Dröge
a82f92aed2
hlsdemux: Reset in PAUSED->READY after chaining up to the parent class
...
Otherwise there are possible race conditions with the streaming thread.
2011-09-02 19:45:21 +02:00
Thibault Saunier
b968f82b18
h264parse: Port to the new h.264 parsing library
2011-09-02 15:46:02 +02:00
Thibault Saunier
a983b29a49
mpegvideoparse: Port to the new mpeg parsing library
2011-09-02 15:46:02 +02:00
Sebastian Dröge
0561c3751c
hlsdemux: Remove obsolete FIXME comment
2011-09-02 15:00:58 +02:00
Sebastian Dröge
82bbc76f15
hlsdemux: Reset the internal state going to/from READY instead of NULL
...
This theoretically allows reuse of the element when setting it to READY
instead of NULL.
2011-09-02 14:55:45 +02:00
Sebastian Dröge
445f626016
hlsdemux: Set playlist parsing helper object to NULL after freeing
2011-09-02 14:54:56 +02:00
Youness Alaoui
acacc251fa
hlsdemux: Allow up to 3 consecutive failed downloads before erroring
...
In some networks, especiall in 3G, a fragment download or playlist
update may fail. We allow for up to 3 consecutive failures, while using
the rfc's specs for retry delays before considering that there was an
error on the stream.
2011-09-02 14:52:07 +02:00