Mark Nauwelaerts
a6d9995705
wavparse: use ALWAYS source pad rather than SOMETIMES
2011-07-06 16:32:13 +02:00
Mark Nauwelaerts
e9146e7aec
wavparse: port to 0.11
2011-07-06 16:32:13 +02:00
Mark Nauwelaerts
9cf287ebcc
wavenc: port to 0.11
2011-07-06 16:32:11 +02:00
Mark Nauwelaerts
88f107b30b
qtdemux: adjust to unsigned segment fields
2011-07-06 16:32:11 +02:00
Wim Taymans
3fd1106b7e
Merge branch 'master' into 0.11
2011-07-06 12:05:12 +02:00
Mark Nauwelaerts
ef02634dc6
rtpmanager: port to 0.11
...
* use G_DEFINE_TYPE
* adjust to new GstBuffer and corresponding rtp and rtcp buffer interfaces
* misc caps and segment handling changes
FIXME: also relies on being able to pass caps along with a buffer,
which has no evident equivalent yet, so that either needs one,
or still needs quite some code path modification to drag along caps.
2011-07-06 10:16:12 +02:00
Wim Taymans
794320a202
videoflip: fix caps
2011-07-05 15:37:52 +02:00
Wim Taymans
301e3e32ff
effectv: port edgetv
2011-07-05 11:46:16 +02:00
David Schleef
f2c8761a50
goom: Don't answer lantency queries before negotiation
2011-07-04 12:59:50 -07:00
Wim Taymans
f1df4c4b32
udp: port to new API
2011-07-04 18:15:42 +02:00
Wim Taymans
99c102578f
alpha: fix caps
2011-07-04 18:10:55 +02:00
Wim Taymans
b9b007e1be
alpha: port to new video API
2011-07-04 18:06:48 +02:00
Wim Taymans
3c27f2435a
alpha: more porting
2011-07-04 17:00:34 +02:00
Wim Taymans
476e2184f4
port to new video api
2011-07-04 16:49:55 +02:00
Wim Taymans
ead60adb33
video: port to new video apis
2011-07-04 16:49:47 +02:00
Mark Nauwelaerts
54c9b13ea7
flv: port to 0.11
...
* use G_DEFINE_TYPE
* adjust to new GstBuffer
* misc segment and caps changes
2011-07-04 11:50:02 +02:00
Mark Nauwelaerts
d59a00aa1c
Merge branch 'master' into 0.11
...
Conflicts:
ext/pulse/pulsesink.c
2011-07-04 11:48:13 +02:00
Mark Nauwelaerts
b307c74e9e
flvmux: pass along segment info to collectpads
...
... so it can track this and be subsequently used to determine running time etc.
2011-07-04 11:36:48 +02:00
Mark Nauwelaerts
350b9b9d2d
flvdemux: indicate raw format in aac caps
2011-07-04 11:36:46 +02:00
Mark Nauwelaerts
611c950868
qtmux: mind requested name for request pad
2011-07-04 11:07:13 +02:00
Mark Nauwelaerts
1ea692bc63
avidemux: free scheduling query
2011-07-04 11:06:54 +02:00
David Schleef
32aa80cda8
multipartmux: Add \r\n to tail of pushed buffers
...
Clients such as Firefox require the \r\n after the payload.
2011-07-03 18:27:17 -07:00
Branko Subasic
e385108f84
matroskademux: avoid looping when searching for clusters
...
Fixes some bugs that results in the demuxer looping when seaching
for clusters in non-finalized files.
https://bugzilla.gnome.org/show_bug.cgi?id=652195
2011-07-01 17:19:40 +01:00
Mark Nauwelaerts
70b561bc13
multifile: port to 0.10
...
* use G_DEFINE_TYPE
* adjust to new GstBuffer
* misc caps handling
2011-06-30 12:35:35 +02:00
Mark Nauwelaerts
01fcf3f2ed
cutter: port to 0.11
...
* use G_DEFINE_TYPE
* adjust to new GstBuffer
* minor misc
2011-06-30 12:35:34 +02:00
Mark Nauwelaerts
19145ce5f5
replaygain: port to 0.11
...
* use G_DEFINE_TYPE
* adjust to new GstBuffer
2011-06-30 12:35:33 +02:00
Mark Nauwelaerts
8d73748509
spectrum: remove deprecated property
2011-06-30 12:35:32 +02:00
Mark Nauwelaerts
2d9bcbdf03
spectrum: port to 0.11
...
* use G_DEFINE_TYPE
* adjust to new GstBuffer
2011-06-30 12:35:31 +02:00
Mark Nauwelaerts
696ffc85d7
level: port to 0.11
...
* use G_DEFINE_TYPE
* adjust to new GstBuffer
2011-06-30 11:19:12 +02:00
Mark Nauwelaerts
d9ba4b7616
equalizer: port to 0.11
2011-06-30 10:30:16 +02:00
Debarshi Ray
c8619aa0fd
matroskaparse: fix reference counting of parse->streamheader
...
https://bugzilla.gnome.org/show_bug.cgi?id=652286
Signed-off-by: David Schleef <ds@schleef.org>
2011-06-29 23:56:53 -07:00
Mark Nauwelaerts
f886681367
isomp4: port to 0.11
2011-06-29 12:46:20 +02:00
Mark Nauwelaerts
65bb271a95
avidemux: tweak some ported segment handling
...
... to avoid losing duration during push mode seeking, and to properly
accumulate running time when segment seeking.
2011-06-29 12:16:38 +02:00
Mark Nauwelaerts
cc526d2e52
qtmux: free date tag
2011-06-29 12:05:23 +02:00
Jonas Larsson
1912c86946
aacparse: not so greedy minimum frame size
...
Fixes #653559 .
2011-06-28 12:40:27 +02:00
Miguel Angel Cabrera Moya
977a5eee7a
rtpjitterbuffer: return correct type when assertion fails
2011-06-24 11:59:01 +02:00
Wim Taymans
f0749ed617
rtsp: fix for uri changes
2011-06-22 16:41:13 +02:00
Wim Taymans
cc65bff7c1
Merge branch 'master' into 0.11
...
Conflicts:
configure.ac
docs/plugins/inspect/plugin-esdsink.xml
docs/plugins/inspect/plugin-gconfelements.xml
2011-06-21 18:24:41 +02:00
Mark Nauwelaerts
3daf1ecc21
rtpmp4adepay: fix output buffer timestamps in case of multiple frames
2011-06-21 15:15:33 +02:00
Olivier Crête
581a30d892
rtpsession: The signal has 5 arguments, not 4
2011-06-20 16:47:36 -04:00
Wim Taymans
458d163ccb
avimux: use string for video format now
2011-06-20 12:13:11 +02:00
Wim Taymans
c9b154df2f
avi: link against gstvideo now
2011-06-20 12:04:48 +02:00
Wim Taymans
b138a0906d
avi: port to new caps
2011-06-20 12:03:24 +02:00
Wim Taymans
7ef7157986
Merge branch 'master' into 0.11
2011-06-17 18:12:50 +02:00
Wim Taymans
582e18b673
autodetect: fix caps
2011-06-17 18:11:55 +02:00
Luis de Bethencourt
1a3401f1be
goom: fix unused-but-set-compiler warnings
...
Remove unnecessary res variables, core checks existance
and type of these fields for us already via the template
caps, and we know that these fields exist because we've
fixated them before in _negotiate().
2011-06-17 11:12:31 +01:00
Stefan Kost
6c3e77964a
audioecho: fix param flags
...
If the parameter cannot be changed in paused&playing, it is not controlable. Set
the appropriate mutability flag instead.
2011-06-17 03:07:09 +03:00
Wim Taymans
83678af5e0
flacparse: fix unitialized access
2011-06-15 15:17:19 +02:00
Stefan Kost
b5d5fa2bb9
matroska: add missing stdio include for sscanf
2011-06-14 01:07:57 +03:00
Wim Taymans
fdd93fa85d
Merge branch 'master' into 0.11
2011-06-13 19:08:38 +02:00
Wim Taymans
409f29700d
-good: port some more plugins
2011-06-13 17:51:40 +02:00
Wim Taymans
e221908169
rtsp: fix for flush_stop API change
2011-06-13 17:14:51 +02:00
Wim Taymans
3c889415a3
rtp: port some more (de)payloader
2011-06-13 17:14:00 +02:00
Mark Nauwelaerts
d17d6d74be
audioparsers: not so greedy minimum frame size
...
... which will be determined by parsing anyway, and avoids introducing
redundant additional latency.
2011-06-13 17:06:37 +02:00
Wim Taymans
eed80e2dd3
-good: update for buffer API change
2011-06-13 16:33:57 +02:00
Wim Taymans
9a54175e9f
rtp: port to 0.11
2011-06-13 16:33:46 +02:00
Wim Taymans
b0fbb1725f
rtp: fix for API changes in the base classes
2011-06-13 13:25:49 +02:00
Wim Taymans
ea16d8a4d8
avimux: use caps event for negotiation
2011-06-13 13:07:50 +02:00
Wim Taymans
3846eea65a
avidemux: fix for flush stop event changes
2011-06-13 13:07:27 +02:00
Raimo Järvi
4f15c9e30e
udp: Fix compiler warning on mingw-w64
...
Fixes : #652144 .
gstudpnetutils.h:32:0: error: "WINVER" redefined
/usr/i686-w64-mingw32/sys-root/mingw/include/_mingw.h:231:0: note: this is the
location of the previous definition
2011-06-11 18:02:17 -07:00
Wim Taymans
43460d4357
goom: fix for bufferpool update
2011-06-11 18:58:07 +02:00
Wim Taymans
42f39385d6
goom: update for alignment change
2011-06-10 18:05:01 +02:00
Wim Taymans
c731cd3d95
rtsp: port to 0.11
2011-06-09 17:52:34 +02:00
Wim Taymans
7416c0e13e
udp: port to 0.11
2011-06-09 17:50:08 +02:00
Wim Taymans
9290baba06
goom: port goom
2011-06-09 10:50:44 +02:00
Wim Taymans
710fa239d5
Merge branch 'master' into 0.11
2011-06-08 18:06:56 +02:00
Edward Hervey
a8effacf82
debugutils: Switch from GST_BOILERPLATE to G_DEFINE_TYPE
2011-06-07 12:06:08 +02:00
Edward Hervey
8c02b650c9
videofilter: Use new GstBaseTransform::transform_caps API
2011-06-07 11:25:18 +02:00
Edward Hervey
b3a1f5d1ed
auparse: Don't use GST_BOILERPLATE
2011-06-07 11:23:55 +02:00
Edward Hervey
8c83978d56
audiofxbasefirfilter: Buffers no longer have caps
2011-06-07 11:22:35 +02:00
Edward Hervey
7505654cf7
alpha: Use new transform_caps vmethod (with filter)
2011-06-07 11:20:00 +02:00
Edward Hervey
7389cb1513
audioparsers: fix some more parsers
2011-06-06 20:43:31 +02:00
Debarshi Ray
9175a903fb
matroska: refactor code common to matroskademux and matroskaparse
...
Move the following function to matroska-read-common.[ch] from
matroska-demux.c and matroska-parse.c:
- gst_matroska_{demux,parse}_parse_chapters
https://bugzilla.gnome.org/show_bug.cgi?id=650877
2011-06-06 14:54:23 +02:00
Debarshi Ray
05778b85d5
matroska: refactor code common to matroskademux and matroskaparse
...
Move the following function to matroska-read-common.[ch] from
matroska-demux.c and matroska-parse.c:
- gst_matroska_{demux,parse}_parse_attachments
https://bugzilla.gnome.org/show_bug.cgi?id=650877
2011-06-06 14:43:12 +02:00
Debarshi Ray
d8a8326d7c
matroska: refactor code common to matroskademux and matroskaparse
...
Move the following function to matroska-read-common.[ch] from
matroska-demux.c and matroska-parse.c:
- gst_matroska_{demux,parse}_parse_attached_file
https://bugzilla.gnome.org/show_bug.cgi?id=650877
2011-06-06 14:43:04 +02:00
Debarshi Ray
366f064e73
matroska: refactor code common to matroskademux and matroskaparse
...
Move the following function to matroska-read-common.[ch] from
matroska-demux.c and matroska-parse.c:
- gst_matroska_{demux,parse}_parse_info
https://bugzilla.gnome.org/show_bug.cgi?id=650877
2011-06-06 14:42:55 +02:00
Debarshi Ray
2d282a6c79
matroska: refactor code common to matroskademux and matroskaparse
...
Move the following function to matroska-read-common.[ch] from
matroska-demux.c and matroska-parse.c:
- gst_matroska_{demux,parse}_parse_metadata
https://bugzilla.gnome.org/show_bug.cgi?id=650877
2011-06-06 14:42:46 +02:00
Debarshi Ray
493e197588
matroska: refactor code common to matroskademux and matroskaparse
...
Move the following function to matroska-read-common.[ch] from
matroska-demux.c and matroska-parse.c:
- gst_matroska_{demux,parse}_parse_metadata_id_tag
https://bugzilla.gnome.org/show_bug.cgi?id=650877
2011-06-06 14:42:33 +02:00
Debarshi Ray
febfcce0fd
matroska: refactor code common to matroskademux and matroskaparse
...
Move the following function to matroska-read-common.[ch] from
matroska-demux.c and matroska-parse.c:
- gst_matroska_{demux,parse}_parse_metadata_id_simple_tag
https://bugzilla.gnome.org/show_bug.cgi?id=650877
2011-06-06 14:41:51 +02:00
Mark Nauwelaerts
785247cfb3
rtspsrc: reset state tracking variable when appropriate
...
... so we don't end up interrupting an operation that should not be interrupted
based on the indication of a previous interruptable operation.
2011-06-06 12:59:23 +02:00
David Schleef
f6c348430e
interleave: Work around changes in g_atomic API
...
See #651514 for details.
2011-06-04 13:49:52 -07:00
Debarshi Ray
25e0da562b
matroskaparse: Use ARTIST tag instead of AUTHOR for GST_TAG_ARTIST
...
AUTHOR only existed in an old version of the spec and ARTIST is
the new replacement for this. We are still reading both to still
be compatible with old files.
Fixes bug #644875 .
2011-06-04 13:43:27 -07:00
Wim Taymans
0b1bdcf7cb
Merge branch 'master' into 0.11
...
Conflicts:
sys/ximage/ximageutil.c
2011-06-02 18:51:29 +02:00
Wim Taymans
e9eb7919c7
avi: port AVI elements to new API
2011-06-02 18:47:36 +02:00
David Schleef
0672232b26
matroskamux: For streaming files, push tags first
2011-06-01 17:20:44 -07:00
Thijs Vermeir
cdc3b20ba9
udpsrc: allow skip-first-bytes of full buffer size
2011-06-01 10:19:31 +02:00
Debarshi Ray
399fc9cd1c
matroska: refactor code common to matroskademux and matroskaparse
...
Move the following functions to matroska-read-common.[ch] from
matroska-demux.c and matroska-parse.c:
- gst_matroska_{demux,parse}_parse_header
https://bugzilla.gnome.org/show_bug.cgi?id=650877
2011-05-30 17:43:01 +02:00
Antonio Frediani
63d350ceb3
qtmux: Use GST_TAG_IMAGE for coverart too
...
Fixes bug #638107 .
2011-05-30 12:09:31 +02:00
Debarshi Ray
bc7d61abca
matroska: refactor code common to matroskademux and matroskaparse
...
Move the following functions to matroska-read-common.[ch] from
matroska-demux.c and matroska-parse.c:
- gst_matroska_{demux,parse}_get_seek_track
- gst_matroska_{demux,parse}_reset_streams
https://bugzilla.gnome.org/show_bug.cgi?id=650877
2011-05-30 07:57:30 +02:00
Debarshi Ray
17ff8a73d8
matroska: refactor code common to matroskademux and matroskaparse
...
Move the following function to matroska-read-common.[ch] from
matroska-demux.c and matroska-parse.c:
- gst_matroska{demux,parse}_found_global_tag
https://bugzilla.gnome.org/show_bug.cgi?id=650877
2011-05-30 07:57:06 +02:00
Debarshi Ray
eeb4d19992
matroska: refactor code common to matroskademux and matroskaparse
...
Move the following functions to matroska-read-common.[ch] from
matroska-demux.c and matroska-parse.c:
- gst_matroska_index_seek_find
- gst_matroska{demux,parse}_do_index_seek
https://bugzilla.gnome.org/show_bug.cgi?id=650877
2011-05-30 07:56:54 +02:00
Debarshi Ray
1a6e658444
matroska: refactor code common to matroskademux and matroskaparse
...
Move the following function to matroska-read-common.[ch] from
matroska-demux.c and matroska-parse.c:
- gst_matroska_{demux,parse}_tracknumber_unique
https://bugzilla.gnome.org/show_bug.cgi?id=650877
2011-05-30 07:56:44 +02:00
Debarshi Ray
0aa35a6bcc
matroska: refactor code common to matroskademux and matroskaparse
...
Move the following function to matroska-read-common.[ch] from
matroska-demux.c and matroska-parse.c:
- gst_matroska_{demux,parse}_decode_data
https://bugzilla.gnome.org/show_bug.cgi?id=650877
2011-05-30 07:56:38 +02:00
Debarshi Ray
b437744b70
matroska: refactor code common to matroskademux and matroskaparse
...
Move the following function to matroska-read-common.[ch] from
matroska-demux.c and matroska-parse.c:
- gst_matroska_{demux,parse}_get_length
https://bugzilla.gnome.org/show_bug.cgi?id=650877
2011-05-30 07:56:21 +02:00
Sebastian Dröge
0a67d131b9
avimux: Revert 1a90a6c4
and drop Dirac support again
...
It does not work at all (A/V sync issues), is not very useful,
other containers work much better with Dirac and Dirac in AVI
is not supported by other software.
Fixes bug #541215 .
2011-05-27 09:17:46 +02:00
Debarshi Ray
5ba333bcad
matroska: refactor code common to matroskademux and matroskaparse
...
Move the following functions to matroska-read-common.[ch] from
matroska-demux.c and matroska-parse.c:
- gst_matroska_{demux,parse}_encoding_cmp
- gst_matroska_{demux,parse}_read_track_encodings
https://bugzilla.gnome.org/show_bug.cgi?id=650877
2011-05-27 09:10:17 +02:00
Debarshi Ray
2589f1cd2d
matroska: refactor code common to matroskademux and matroskaparse
...
Move the following functions to matroska-read-common.[ch] from
matroska-demux.c and matroska-parse.c:
- gst_matroska_{demux,parse}_peek_id_length_pull
- gst_matroska_{demux,parse}_peek_id_length_push
https://bugzilla.gnome.org/show_bug.cgi?id=650877
2011-05-27 09:09:33 +02:00
Debarshi Ray
f3820b61a1
matroska: refactor code common to matroskademux and matroskaparse
...
Move the following function to matroska-read-common.[ch] from
matroska-demux.c and matroska-parse.c:
- gst_matroska_{demux,parse}_peek_adapter
https://bugzilla.gnome.org/show_bug.cgi?id=650877
2011-05-27 09:09:10 +02:00
Marc Leeman
ff1c05d876
rtpmp4vpay: Deprecated send-config property and replace by config-interval
...
Fixes bug #622412 .
2011-05-26 12:22:52 +02:00
Mark Nauwelaerts
74e0c05ff7
matroskademux: UTF-8 subtitles may have markup
...
Fixes #616936 .
2011-05-26 12:12:57 +02:00
David Hoyt
86f9fa785a
multipartdemux: Add property to assume a single stream and emit no-more-pads
...
Fixes bug #616686 .
2011-05-25 21:12:12 +02:00
Miguel Angel Cabrera Moya
c39b7a5359
rtspsrc: uniform unknown message handling
...
Do the same processing in all the cases when an unknown message is received.
That is, give a warning.
https://bugzilla.gnome.org/show_bug.cgi?id=651059
2011-05-25 20:06:16 +02:00
Debarshi Ray
5384308c99
matroska: refactor code common to matroskademux and matroskaparse
...
Move the following function to matroska-read-common.[ch] from
matroska-demux.c and matroska-parse.c:
- gst_matroska_{demux,parse}_peek_pull
https://bugzilla.gnome.org/show_bug.cgi?id=650877
2011-05-25 20:02:40 +02:00
Debarshi Ray
72d969b360
matroska: refactor code common to matroskademux and matroskaparse
...
Move the following function to matroska-read-common.[ch] from
matroska-demux.c and matroska-parse.c:
- gst_matroska_{demux,parse}_peek_bytes
https://bugzilla.gnome.org/show_bug.cgi?id=650877
2011-05-25 10:16:31 +02:00
Debarshi Ray
f885e2721a
matroska: refactor code common to matroskademux and matroskaparse
...
Move the following functions to matroska-read-common.[ch] from
matroska-demux.c and matroska-parse.c:
- gst_matroska_{demux,parse}_encoding_order_unique
- gst_matroska_{demux,parse}_read_track_encoding
https://bugzilla.gnome.org/show_bug.cgi?id=650877
2011-05-25 10:13:27 +02:00
Wim Taymans
f612f54a40
autodetect: port to new API
2011-05-24 18:27:10 +02:00
Wim Taymans
d89790d545
Merge branch 'master' into 0.11
...
Conflicts:
gst/avi/gstavidemux.c
gst/rtp/gstrtpac3depay.c
gst/rtp/gstrtpg726depay.c
gst/rtp/gstrtpmpvdepay.c
gst/videofilter/gstgamma.c
2011-05-24 17:34:19 +02:00
Mark Nauwelaerts
397dc60b71
pcmudepay: allow variable sample rate
2011-05-24 13:13:55 +02:00
Mark Nauwelaerts
f335fee99e
pcmadepay: allow variable sample rate
2011-05-24 13:13:52 +02:00
Debarshi Ray
b316e2346c
matroska: fixed copyright headers
...
https://bugzilla.gnome.org/show_bug.cgi?id=650877
2011-05-24 09:53:54 +02:00
Debarshi Ray
85036682cb
matroska: refactor code common to matroskademux and matroskaparse
...
Move the following functions to matroska-read-common.[ch] from
matroska-demux.c and matroska-parse.c:
- gst_matroska_decode_content_encodings
- gst_matroska_decompress_data
https://bugzilla.gnome.org/show_bug.cgi?id=650877
2011-05-24 09:53:45 +02:00
Debarshi Ray
51c7e6d252
matroska: move GstMatroska{Demux,Parse}::state to GstMatroskaReadCommon
...
https://bugzilla.gnome.org/show_bug.cgi?id=650877
2011-05-24 09:52:50 +02:00
Jonas Larsson
090e3a6f41
qtdemux: Fix buffer leak with corrupted files
...
Fixes bug #650912 .
2011-05-24 09:48:56 +02:00
Miguel Angel Cabrera Moya
16d71c7d96
deinterlace: fix parameter type in trace
...
https://bugzilla.gnome.org/show_bug.cgi?id=650937
2011-05-24 09:45:31 +02:00
Debarshi Ray
15ce1142ca
matroska: refactor code common to matroskademux and matroskaparse
...
Replace the following functions with their gst_matroska_read_common_*
counterparts:
- gst_matroska_{demux,parse}_parse_index
- gst_matroska_{demux,parse}_parse_skip
- gst_matroska_{demux,parse}_stream_from_num
Introduce GstMatroskaReadCommon to contain those members of
GstMatroskaDemux and GstMatroskaParse that were used by the above
functions.
https://bugzilla.gnome.org/show_bug.cgi?id=650877
2011-05-23 17:21:52 +02:00
Tim-Philipp Müller
a53540346a
flacparse: tell baseparse the duration in samples for better accuracy
...
Tell GstBaseParse the duration in samples instead of time, so that
a duration query in DEFAULT format will return the correct number
of samples without rounding errors. Baseparse will convert this
into time itself when needed.
https://bugzilla.gnome.org/show_bug.cgi?id=650785
2011-05-23 13:50:46 +01:00
Tim-Philipp Müller
1183d0c1ab
flacparse: make conversion from TIME to DEFAULT format (samples) work
...
Fix copy'n'paste error in the previous commit.
2011-05-23 13:23:21 +01:00
Sebastian Dröge
8823ae251a
flacparse: Implement conversions between TIME and DEFAULT format
...
Fixes bug #650785 .
2011-05-23 11:43:02 +02:00
Tim-Philipp Müller
e0cadab5c2
flacparse: don't error out on invalid minimum_blocksize value in streaminfo header
...
We don't use it, so may just as well accept an invalid value
of 0 here, which is likely inconsequential anyway.
https://bugzilla.gnome.org/show_bug.cgi?id=650691
2011-05-22 18:54:18 +01:00
Stefan Kost
d122ea0122
rtp: fix static array overruns in a nicer way
...
Use G_N_ELEMENTS instead of hard-coding the array size.
2011-05-20 10:34:47 +03:00
Stefan Kost
5792d3b9c0
rtp: fix static array overruns
...
Yes array[10] has elements from 0...9.
2011-05-20 00:53:44 +03:00
Stefan Kost
9f3ae3244c
qtdemux: add missing break
2011-05-19 18:27:33 +03:00
Robert Swain
c1b100cf9c
deinterlace: Add support for deinterlacing using buffer caps/flags
...
When not using the fieldanalysis element immediately upstream of deinterlace,
behaviour should remain unchanged. fieldanalysis will set the caps and flags on
the buffers such that they can be interpreted and acted upon to produce
progressive output.
There are two main modes of operation:
- Passive pattern locking
Passive pattern locking is a non-blocking, low-latency mode of operation that
is suitable for close-to-live usage. Initially a telecine stream will be
output as variable framerate with naïve timestamp adjustment. With each
incoming buffer, an attempt is made to lock onto a pattern. When a lock is
obtained, the src pad and output buffer caps will reflect the pattern and
timestamps will be accurately interpolated between pattern repeats. This
means that initially and at pattern transitions there will be short periods
of inaccurate timestamping.
- Active pattern locking
Active pattern locking is a blocking, high-latency mode of operation that is
targeted at use-cases where timestamp accuracy is paramount. Buffers will be
queued until enough are present to make a lock. When locked, timestamps will
be accurately interpolated between pattern repeats. Orphan fields can be
dropped or deinterlaced. If no lock can be obtained, a single field might be
pushed through to be deinterlaced.
Locking can also be disabled or 'auto' chooses between passive and active
locking modes depending on whether upstream is live.
2011-05-19 05:45:57 +02:00
Jose Antonio Santos Cadenas
9d32243671
rtp: Fix segmentation fault processing payload buffers
...
This commit checks if the value returned by
gst_rtp_buffer_get_payload_buffer and
gst_rtp_buffer_get_payload_subbuffer is NULL before using it.
2011-05-18 15:25:24 +02:00
Mark Nauwelaerts
4cd2dac1da
avidemux: ensure 0-padding when correcting dubious list size
2011-05-18 14:51:11 +02:00
Stefan Kost
be413185d0
rtspsrc: use EINVAL for missing url parameter
...
Fixes gcc warning about using uninitialized variable 'res'.
2011-05-18 10:22:27 +03:00
Stefan Kost
e34ab46420
various: fix author tag in element details
2011-05-18 09:36:58 +03:00
Chris E Jones
a1b7eeceb1
auparse: implement seeking
...
Implement seeking and seeking query. Fixes #644512
2011-05-18 09:36:58 +03:00
Wim Taymans
e15651816e
Merge branch 'master' into 0.11
2011-05-17 16:13:59 +02:00
Mark Nauwelaerts
dc2ddea91b
rtspsrc: also allow PAUSE to be interrupted
...
... as it is on the way out to NULL.
See #632504 .
2011-05-17 11:56:47 +02:00
Mark Nauwelaerts
283e4e4afd
rtspsrc: ensure proper closing and cleanup
...
... since the TEARDOWN sequence might not have had a chance to even start,
but at least connections should be closed (synchronously) and state cleaned up.
See #632504 .
2011-05-17 11:56:38 +02:00
Mark Nauwelaerts
f7ddf811d7
rtspsrc: fix and improve async handling
...
Simplify the command handling; passing a command to thread means we really
want it to get the message, which means to always flush provided the command
can handle being interrupted. Command thread indicates whether command
allows interruption and ensure non-flushing connection as it subsequently
needs it.
In particular, this also makes the TEARDOWN sequence interruptable
and also prevents races where _loop_ could miss a command and would
continue receiving (or at least trying to).
See #632504 .
2011-05-17 11:56:22 +02:00
Mark Nauwelaerts
e6798ad54c
rtspsrc: tweak post-seek loop handling
2011-05-17 11:55:40 +02:00
Wim Taymans
ddfcd8bbfd
rtspsrc: open on play and pause when not done yet
...
With the async state changes, it is possible that we need to open the stream
before play and pause.
Also make sure we remember a previous open failure so that we don't keep trying
again.
2011-05-17 11:55:34 +02:00
Wim Taymans
6fe680934a
rtspsrc: improve async handling
...
Simplify the command handling, only continue looping when we have not received
another command or when the previous loop was successfull.
Avoid looping on a disconnected socket.
2011-05-17 11:55:32 +02:00
Wim Taymans
2513207433
rtspsrc: rework reconnect code
...
Use the same async code path to implement reconnects.
Make sure we only post progress messages when doing async things.
2011-05-17 11:55:29 +02:00
Wim Taymans
c27c10f8f4
rtspsrc: small cleanups
...
Make sure we cancel the previous task when queuing a new one.
Move the messages to a central place so we can more easily post them.
2011-05-17 11:55:27 +02:00
Wim Taymans
852c6e11cd
rtspsrc: don't post errors when interrupting
2011-05-17 11:55:24 +02:00
Wim Taymans
220e47adcf
rtspsrc: implement more async handling
...
Remove some old locks.
Make sure we never go into the loop function when flushing.
2011-05-17 11:55:20 +02:00
Wim Taymans
2873585238
rtspsrc: first attempt at async implementation
2011-05-17 11:55:18 +02:00
Wim Taymans
dae679e560
rtspsrc: small header cleanups
2011-05-17 11:55:15 +02:00
Sebastian Dröge
b694bfeca3
ssrcdemux: Fix uninitialized variable compiler warning for (pre-) releases too
2011-05-17 10:47:32 +02:00
Sebastian Dröge
0f05d3e5a5
rtpssrcdemux: Fix uninitialized variable compiler warning
2011-05-17 09:24:08 +02:00
Olivier Crête
b6bfc512e8
ssrcdemux: Implement iterate internal links for sink pads
...
https://bugzilla.gnome.org/show_bug.cgi?id=649617
2011-05-17 09:22:29 +02:00
Olivier Crête
23b6c8febc
rtpssrcdemux: iterate pad function is only valid for src pads
...
The iterate function is only used for src pads, so mark it as such and remove
dead code.
https://bugzilla.gnome.org/show_bug.cgi?id=649617
2011-05-17 09:22:25 +02:00
Olivier Crête
1bf94a92b0
rtpssrcdemux: Release lock before emitting signal
...
If the lock is not released before emitting a signal, it may cause a deadlock
if any other function in the element is called.
Also removed an unused timestamp parameter
https://bugzilla.gnome.org/show_bug.cgi?id=649617
2011-05-17 09:22:20 +02:00
Debarshi Ray
4df5d896f0
matroskaparse: calculate segment duration after parsing all the IDs
...
Since the segment duration is given in terms of the
GST_MATROSKA_ID_TIMECODESCALE we should only convert it into
nanoseconds when we are sure that any scale specified in the file has
been read.
https://bugzilla.gnome.org/show_bug.cgi?id=650258
2011-05-17 09:03:50 +02:00
Wim Taymans
cf1248e566
Merge branch 'master' into 0.11
...
Conflicts:
configure.ac
2011-05-16 17:52:11 +02:00
Wim Taymans
a0e301ab1a
-good: fix for new API
2011-05-16 17:50:15 +02:00
Mark Nauwelaerts
8b910885ec
matroskademux: additional lock safety
...
Fixes #619590 .
2011-05-16 13:30:10 +02:00
Mark Nauwelaerts
4db6dce2db
qtdemux: also check for bitrate info in caps
2011-05-16 13:30:06 +02:00
Arun Raghavan
f89caeff5c
qtdemux: guess bitrate if only one stream's bitrate is unknown
...
If the bitrates for all but one audio/video streams are known, and the
total stream size and duration can be determined, this calculates the
unkown bitrate as (stream size / duration) - (sum of known bitrates).
While this is not guaranteed to be very accurate, it should be good
enough for most purposes.
For example, this is useful for H.263 + AAC streams where no 'btrt' atom
is available for the video portion.
https://bugzilla.gnome.org/show_bug.cgi?id=619548
2011-05-16 13:29:56 +02:00
Arun Raghavan
6e2774af55
qtdemux: Export max bitrate for AMR-NB/-WB streams
...
This parses the 'damr' atom if present, and exports the maximum bitrate
of the stream using the mode set field to determine the highest bitrate
frame type that might be present.
https://bugzilla.gnome.org/show_bug.cgi?id=620186
2011-05-16 13:29:50 +02:00
Debarshi Ray
bdc464a778
matroskademux: calculate segment duration after parsing all the IDs
...
Since the segment duration is given in terms of the
GST_MATROSKA_ID_TIMECODESCALE we should only convert it into
nanoseconds when we are sure that any scale specified in the file has
been read.
https://bugzilla.gnome.org/show_bug.cgi?id=650258
2011-05-16 08:56:06 +02:00
Andoni Morales Alastruey
5b99b910ec
flvmux: Add support for mpegversion 2, which is also AAC
2011-05-14 11:52:13 +02:00
Sebastian Dröge
88203989cd
wavenc: Set fixedcaps getcaps function on the sinkpad
...
wavenc does not allow to change the caps during playback
and always returning the template caps is just wrong.
2011-05-14 11:52:12 +02:00
Sebastian Dröge
f8ed8dd613
wavenc: Allow setcaps to be called after a format was negotiated if it's compatible
...
Otherwise wavenc will fail if upstream decides to set equivalent caps or caps
with additional information later.
Thanks to Alexander Schremmer for finding this bug.
2011-05-14 11:52:12 +02:00
Edward Hervey
cca48a42c6
qtmux: Fix signed floating point values writing
...
You would end up on some architectures with 0 being written out
instead of the proper value.
https://bugzilla.gnome.org/show_bug.cgi?id=649449
2011-05-05 15:10:09 +02:00
Mark Nauwelaerts
fc94b78fe1
matroskamux: avoid building index when streamable
...
... as it will not be written anyway.
Fixes #648937 (?).
2011-05-04 13:12:16 +02:00
Tom Janiszewski
b9c2f8b38f
flvmux: don't overwrite metadata tag with duration in streaming mode
...
A duration tag gets inserted only for streamable=false, so only
update/write the duration later if we actually inserted that tag,
otherwise we write garbage into other tags.
https://bugzilla.gnome.org/show_bug.cgi?id=649060
2011-05-01 14:13:50 +01:00
Tim-Philipp Müller
c25bf5dc34
quicktime: rename plugin to isomp4
...
https://bugzilla.gnome.org/show_bug.cgi?id=648004
2011-04-30 17:58:02 +01:00
Wim Taymans
63a17f4ec9
audioparsers: fix some parsers
2011-04-29 17:55:28 +02:00
Wim Taymans
b121bb0ae9
audiofx: fix pad_alloc
2011-04-29 15:46:21 +02:00
Wim Taymans
31ffc671f2
rtpgstpay: fix buffer leak
2011-04-26 16:04:07 +01:00
Wim Taymans
eb84592cad
rtpgstpay: fix buffer leak
2011-04-26 15:58:12 +02:00
Wim Taymans
9a96783abb
rtp: port some more elements
2011-04-25 18:14:45 +02:00
Wim Taymans
bf9b4f8362
rtp: port more to 0.11
2011-04-25 17:27:40 +02:00
Wim Taymans
60db07b4bb
rtp: port some more (de)payloaders
2011-04-25 13:16:58 +02:00
Wim Taymans
237ca1631f
port some more elements to 0.11
2011-04-25 12:49:36 +02:00
Wim Taymans
a1894ed363
Merge branch 'master' into 0.11
2011-04-25 11:38:28 +02:00
David Schleef
bddac50961
avimux,matroskamux: Add stream-format to h264 caps
...
Fixes #606662 .
2011-04-24 18:56:02 -07:00
Tim-Philipp Müller
234fd201c9
quicktime: rename plugin filename from *qtdemux* to *quicktime*
...
https://bugzilla.gnome.org/show_bug.cgi?id=648004
2011-04-24 14:14:27 +01:00
Tim-Philipp Müller
3346a53374
docs: add various qtmux variants to documentation
2011-04-21 23:30:26 +01:00
Tim-Philipp Müller
0671b2325e
quicktime: register 3gppmux element in addition to the misnamed gppmux
2011-04-21 22:51:52 +01:00
Olivier Crête
42531337f5
rtpsession: Remove incomplete support for RTCP FIR
...
Remove bits that were meant to suppport RTCP FIR
https://bugzilla.gnome.org/show_bug.cgi?id=648160
2011-04-20 07:50:43 +01:00
Wim Taymans
77acc618e1
use G_DEFINE_TYPE some more
2011-04-19 17:35:47 +02:00
Wim Taymans
a80f3a5d74
avi: use G_DEFINE_TYPE
2011-04-19 17:20:19 +02:00
Wim Taymans
dea50d0b98
use G_DEFINE_TYPE
2011-04-19 17:07:18 +02:00
Wim Taymans
d67288dd03
Merge branch 'master' into 0.11
2011-04-19 16:25:28 +02:00
Tim-Philipp Müller
bb23575f6b
flvdemux: fix deadlock on setting index on flvdemux
2011-04-19 14:34:48 +01:00
Wim Taymans
4aa6ca5578
port more plugins to 0.11
2011-04-18 10:54:43 +02:00
Wim Taymans
7555d0949f
Merge branch 'master' into 0.11
...
Conflicts:
android/apetag.mk
android/avi.mk
android/flv.mk
android/icydemux.mk
android/id3demux.mk
android/qtdemux.mk
android/rtp.mk
android/rtpmanager.mk
android/rtsp.mk
android/soup.mk
android/udp.mk
android/wavenc.mk
android/wavparse.mk
configure.ac
2011-04-18 10:23:45 +02:00
Tim-Philipp Müller
75d5c41f29
avidemux: fix 'variable may be used uninitialized' warnings caused by -DG_DISABLE_ASSERT
2011-04-17 01:29:01 +01:00
Tim-Philipp Müller
9be707d54d
gst: update disted orc backup code
2011-04-16 18:49:27 +01:00
Tim-Philipp Müller
cf953fe923
qtmux: refuse incomplete legacy h264 caps
...
Refuse h264 caps without stream-format and codec_data fields for
now, to avoid creating broken files. This might cause some pipelines
that worked previously to fail. However, the move from -bad to -good
is our only chance to fix this up, so make it strict for now. We can
always change it back to be less strict in future.
https://bugzilla.gnome.org/show_bug.cgi?id=647919
2011-04-16 18:17:01 +01:00
Tim-Philipp Müller
f325935314
pulse, speexenc, rtpgsmpay: don't use g_assert() for error handling
...
Don't use g_assert() for error handling, even if they're highly unlikely.
Either we *know* that something can't happen, in which case we
should just not handle it, or we think something can happen, but it is
very very unlikely that it will ever happen, in which case we should
handle it like any other error instead of asserting.
g_assert() is best left for conditions we have control of, like checking
internal consistency of our code, not checking return values of external
code.
Fixes a bunch of warnings when compiling with -DG_DISABLE_ASSERT:
gstrtpgsmpay.c: In function 'gst_rtp_gsm_pay_handle_buffer':
gstrtpgsmpay.c:130:17: warning: variable 'rtpgsmpay' set but not used
gstspeexenc.c: In function 'gst_speex_enc_encode':
gstspeexenc.c:904:19: warning: variable 'written' set but not used
pulsesink.c: In function 'gst_pulsesink_change_state':
pulsesink.c:2725:9: warning: variable 'res' set but not used
pulsesrc.c: In function 'gst_pulsesrc_change_state':
pulsesrc.c:1253:7: warning: variable 'e' set but not used
2011-04-16 18:15:43 +01:00
Tim-Philipp Müller
c2bc6327cd
deinterlace, matroska: fix two variable-may-be-used-uninitialized compiler warnings
...
We use -DG_DISABLE_ASSERT for the pre-releases, which makes these
warnings pop up in cases that were previously covered by g_assert_not_reached()
and the like:
tvtime/greedyh.c:801:14: warning: 'scanline' may be used uninitialized in this function
matroska-mux.c:501:19: warning: 'context' may be used uninitialized in this function
2011-04-16 16:51:32 +01:00
Sebastian Dröge
8a4ae3dd2d
apedemux: Port to 0.11
2011-04-16 14:45:25 +02:00
Robert Swain
b5c8c7708b
y4mencode: shapewipe: Address unused but set variables
...
GCC 4.6.x complains about such usage.
2011-04-16 13:12:50 +01:00
Robert Swain
e757793b21
videomixer: Fix argb/rgba overlay orc code
...
Remove some redundant operations (convubw) and use the correct variable,
t2, in the orc_overlay_bgra function.
2011-04-16 13:00:49 +01:00
Robert Swain
fd6ac6aa8a
videomixer: address unused but set variables
...
GCC 4.6.x spits warnings about variables that are set but unused. Such
variables have been removed in blend, collectpads2 and videomixer2.
2011-04-16 12:52:49 +01:00
Robert Swain
5b18c652fb
rtp, rtpmanager: Address unused but set variables
...
GCC 4.6.x spits warnings about variables that are unused but set. Such
variables have been removed where trivial but with comments left behind
for informational purposes in some cases.
gst_rtp_session_chain_recv_rtcp () was changed in commit 490113d4
to always return GST_FLOW_OK instead of the return value of
rtp_session_process_rtcp (), so we'll keep it that way.
2011-04-16 12:49:16 +01:00
Robert Swain
1c6e8682ec
quicktime: Remove unused but set variables
...
GCC 4.6.x spits warnings about such variable usage. Note that some
calculations are left as comments for informative purposes.
2011-04-16 12:46:12 +01:00
Robert Swain
d596c2e926
matroska: Remove unused but set variables
...
GCC 4.6.x spits warnings about such variable usage.
2011-04-16 12:40:53 +01:00
Robert Swain
101087a23a
imagefreeze: Remove unused but set duration variable
...
GCC 4.6.x spits warnings about such variable usage.
2011-04-16 12:40:40 +01:00
Robert Swain
383e99c224
flxdemux: Remove unused but set keyframe variables
...
The FIXMEs about the keyframe flag never being used are left for later
fixing, at which point the keyframe variables could be added back.
2011-04-16 12:40:30 +01:00
Robert Swain
358fa0bc7a
edgetv: Remove unused but set height variable
...
GCC 4.6.x spits warnings about such variables.
2011-04-16 12:40:17 +01:00
Tim-Philipp Müller
a0205ecd51
flacparse: update for gst_base_parse_frame_init() API change
2011-04-15 18:51:20 +01:00
Olivier Crête
9d9257916b
rtpsession: Use existing functions to parse RTCP FB packets
...
Use existing functions to get the FCI from FB packets.
https://bugzilla.gnome.org/show_bug.cgi?id=622553
2011-04-15 12:48:04 +01:00
Olivier Crête
5ccd964d86
rtpsession: marshal GstBuffer as a MiniObject instead of a pointer
...
https://bugzilla.gnome.org/show_bug.cgi?id=622553
2011-04-15 12:47:40 +01:00
David Schleef
41f3b30010
matroskademux: Better calculation of framerate
...
https://bugzilla.gnome.org/show_bug.cgi?id=647833
2011-04-15 12:27:57 +01:00
Tim-Philipp Müller
c8b5014892
qtmux: default to dts-method=reorder and presentation-time=true
...
https://bugzilla.gnome.org/show_bug.cgi?id=636699
2011-04-15 12:19:34 +01:00
Mark Nauwelaerts
4df05e76ed
qtmux: fix corner case buffer handling for reorder method
2011-04-15 12:49:02 +02:00
Sebastian Dröge
283b30e312
flvdemux: Don't leak the SEEKING query
2011-04-14 13:47:05 +02:00
Sebastian Dröge
bf046e0430
qtmoovrecover: Don't leak the static recursive mutex
2011-04-14 13:43:06 +02:00
Sebastian Dröge
54349be39f
matroskaparse: Allow webm and matroska caps and don't leak caps
2011-04-14 13:27:27 +02:00
Tim-Philipp Müller
eb15dcb473
capsdebug: fix unused-but-set-variable warnings with gcc 4.6
2011-04-13 17:22:19 +01:00
Tim-Philipp Müller
b6b59ab1c1
avidemux: fix unused-but-set-variable warning with gcc 4.6
...
Most likely a leftover from when the index parsing code was rewritten.
2011-04-13 17:22:19 +01:00
Tim-Philipp Müller
063b3d9dcd
ac3parse: fix unused-but-set-variable warning with gcc 4.6
2011-04-13 17:22:19 +01:00
Tim-Philipp Müller
c8a15a097a
videobalance: fix handling of YUV images with 'odd' widths
...
Fixes unused-but-set-variable warnings with gcc 4.6.
2011-04-13 17:22:19 +01:00
Tim-Philipp Müller
d1d3e3ea02
videoflip: fix unused-but-set-variable warnings with gcc 4.6
2011-04-13 17:22:19 +01:00
Sebastian Dröge
6f480ad0ed
audiowsinc{band,limit}: Fix check for divison by zero
2011-04-13 18:11:34 +02:00
Sebastian Dröge
de7a976531
audiowsincband: Fix range of kernel elements (lim -> lim-1)
2011-04-13 18:01:01 +02:00
Sebastian Dröge
4fd5fea2b2
audiowsinclimit: Add some more braces to make the code more readable
2011-04-13 18:00:44 +02:00
Jordi Burguet-Castell
766e437af1
audiowsinclimit: Fix range of kernel elements (lim -> lim-1) in high/low-pass filters
2011-04-13 17:57:06 +02:00
Sebastian Dröge
2575cfc4a6
audiowsincband: Add new windowing functions: gaussian, cos and hann
2011-04-13 17:52:30 +02:00
Jordi Burguet-Castell
782d6af83d
audiowsinclimimt: Add new windows to high/low-pass filters: gaussian, cosine, hann
2011-04-13 17:52:30 +02:00
Tim-Philipp Müller
d3a24dc842
matroskademux: set stream-format=byte-stream on h264 caps if there's no codec data
...
https://bugzilla.gnome.org/show_bug.cgi?id=606662
2011-04-13 16:47:05 +01:00
Thiago Santos
c385a46438
qtmux: restrict h264 some more to only accept AU-aligned AVC
...
https://bugzilla.gnome.org/show_bug.cgi?id=606662
2011-04-13 16:38:33 +01:00
Sebastian Dröge
4250ff5994
mpegaudioparse: The VBRI header is always at offset 0x20, independent of MPEG version
...
Also clean up advancing of the data pointer a bit.
Fixes bug #647659 .
2011-04-13 17:12:47 +02:00
Tim-Philipp Müller
025417f124
qtmux: add variant-less video/quicktime to source pad template caps
...
This is needed for automatic transcoding using encodebin. Our typefinder
does not always add a variant to the found caps, and encodebin needs
an *exact* match to the caps on the source pad template, so we need
to add the variant-less video/quicktime caps to the template as well
for encodebin to be able to find it. Add unit test for this as well.
https://bugzilla.gnome.org/show_bug.cgi?id=642879
2011-04-13 15:21:59 +01:00
Tim-Philipp Müller
4d780297d8
quicktime: move qtmux plugin from -bad to -good
...
https://bugzilla.gnome.org/show_bug.cgi?id=636699
2011-04-13 11:55:59 +01:00
Mark Nauwelaerts
6630f7def2
qtmux: more helpful debug error message when no needed duration on input buffers
...
Fixes #646256 .
2011-04-12 20:32:21 +01:00
Thiago Santos
aba8000188
qtmux: Adding GstTagXmpWriter interface
...
Adds GstTagXmpWriter interface support to qtmux
2011-04-12 20:32:21 +01:00
Mark Nauwelaerts
d178329eb0
qtmux: use running time for synchronization
...
See also #432612 .
2011-04-12 20:32:21 +01:00
Mark Nauwelaerts
a4fad64141
qtmux: provide for PTS metadata when so configured
...
... and not only when sort-of feeling like it.
In any case, if it turns out all really is in order,
and presumably DTS == PTS, then no ctts will be produced anyway.
2011-04-12 20:32:21 +01:00
Mark Nauwelaerts
31c26a4551
qtmux: also track original PTS buffer timestamp in reorder dts-method
2011-04-12 20:32:21 +01:00
Edward Hervey
0a884e5620
Revert "Check that collectpads exists before removing pad"
...
This reverts commit 6d8740476c
.
Depends on a core commit that was reverted
2011-04-12 20:32:21 +01:00
David Schleef
fe3a5c3f08
Check that collectpads exists before removing pad
...
The core now calls release pad from finalize, at which point
the collectpads might have already been freed.
2011-04-12 20:32:21 +01:00
Mark Nauwelaerts
20e4bdee32
qtmux: set src pads when starting file
...
... rather than at _init time, so they are also available following a
pad (de)activation cycle.
https://bugzilla.gnome.org/show_bug.cgi?id=639338
2011-04-12 20:32:20 +01:00
Mark Nauwelaerts
ae644937fc
qtmux: adjust nasty case timestamp tracking
...
That is, all sorts of problems arise with re-ordered input timestamps that
tend to defy automagic handling for every case, so allow for a few variations
that can be tried depending on circumstances.
Also try to document accordingly.
Also fixes #638288 .
2011-04-12 20:32:20 +01:00
Felipe Contreras
62c728464e
qtmux: get rid of timestamp overprotectiveness
...
Signed-off-by: Felipe Contreras <felipe.contreras@nokia.com>
2011-04-12 20:32:20 +01:00
Mark Nauwelaerts
b6945d4afe
qtmux: simplify and fix pts_offset storing
...
In particular, only write a ctts atom if and only if ever a non-zero offset.
2011-04-12 20:32:20 +01:00
Mark Nauwelaerts
b852dde2db
qtmux: add some more documentation
2011-04-12 20:32:20 +01:00
Mark Nauwelaerts
60c8ed21d5
qtmux: remove large-file property
...
Rather, auto-determine if 64-bits fields are needed for a valid result, and
stick to plain 32-bits if not needed.
API: GstQTMux:large-file (removed)
2011-04-12 20:32:20 +01:00
Sebastian Dröge
d8a690e64c
qtmux: Free AtomInfo structs
2011-04-12 20:32:20 +01:00
Sebastian Dröge
6e350ec961
qtmux: Free tag string after use
2011-04-12 20:32:20 +01:00
Lasse Laukkanen
02bdefd9ba
qtmux: allow zero duration tracks
2011-04-12 20:32:20 +01:00
Mark Nauwelaerts
07be810e0e
qtmux: add documentation
2011-04-12 20:32:20 +01:00
David Hoyt
62484ac805
qtmux: handle msvc ftruncate incompatibility
...
Fixes #636185 .
2011-04-12 20:32:20 +01:00
Alejandro Gonzalez
04b0a37f87
qtmux: gst_qtmux_check_difference verify before subtract
...
Avoid negative overflow by checking the order of operands
on subtraction of unsigned integers.
https://bugzilla.gnome.org/show_bug.cgi?id=635878
2011-04-12 20:32:20 +01:00
Mark Nauwelaerts
9c198ffeed
qtmux: remove remnant of obsolete property
2011-04-12 20:32:20 +01:00
Marc-André Lureau
bee00aa70f
qtmux: allow specifying trak timescale
...
This is mainly because Smoothstreaming client are broken and don't
take the TimeScale property into account.
2011-04-12 20:32:19 +01:00
Mark Nauwelaerts
92b8a00ac8
qtmux: include sdtp atoms for ismv fragmented files
...
Based on patch by Marc-André Lureau <mlureau@flumotion.com>
2011-04-12 20:32:19 +01:00
Mark Nauwelaerts
f490e3a868
qtmux: enable default fragmented file for ismlmux
2011-04-12 20:32:19 +01:00
Marc-André Lureau
7a447b4372
qtmux: add ismlmux, for fragmented isml major brand
2011-04-12 20:32:19 +01:00
Mark Nauwelaerts
50464d5f93
qtmux: finalize sinkpads list
2011-04-12 20:32:19 +01:00
Marc-André Lureau
bd0d320d6c
qtmux: add moov in streamheader
2011-04-12 20:32:19 +01:00
Marc-André Lureau
61964eb109
qtmux: add streamable property to avoid building fragmented mfra index
2011-04-12 20:32:19 +01:00
Mark Nauwelaerts
26a281bdab
qtmux: add mfra to fragmented file
...
Based on patch by Marc-André Lureau <mlureau@flumotion.com>
2011-04-12 20:32:19 +01:00
Mark Nauwelaerts
4b64dc2f3e
qtmux: optionally create fragmented file
...
In this mode, an initial empty moov (containing only stream metadata) is written,
followed by fragments containing actual data (along with required metadata).
New fragments are started either at keyframe (if such are sparse) or when
property configured duration exceeded.
Based on patch by Marc-André Lureau <mlureau@flumotion.com>
Fixes #632911 .
2011-04-12 20:32:19 +01:00
Mark Nauwelaerts
c61dc2ec4a
qtmux: use helper to set atom flags from given uint
2011-04-12 20:32:19 +01:00
Mark Nauwelaerts
69d07466e0
qtmux: refactor configuring and sending of moov
...
Based on patch by Marc-André Lureau <mlureau@flumotion.com>
2011-04-12 20:32:19 +01:00
Mark Nauwelaerts
35e028f33b
qtmux: refactor extra top-level atom handling
...
Also check a bit more for possible errors, and free proper items in such case.
2011-04-12 20:32:19 +01:00
Mark Nauwelaerts
79f565f962
qtmux: refactor slightly using buffer helper
2011-04-12 20:32:19 +01:00
Mark Nauwelaerts
1e3da91bd1
qtmux: fix misinforming comment
2011-04-12 20:32:19 +01:00
Mark Nauwelaerts
ce865cc374
qtmux: delegate mvex handling to atoms
...
... which keeps qtmux simpler.
2011-04-12 20:32:19 +01:00
Marc-André Lureau
2618cb03af
qtmux: add mvex/trex in header if fragmented
...
One "trex" is added per "trak". We don't support default values,
but the "trex" box is mandatory.
2011-04-12 20:32:18 +01:00
Marc-André Lureau
9100168eae
qtmux: add a couple of fourcc for fragmented mp4
2011-04-12 20:32:18 +01:00
Mark Nauwelaerts
c35074499a
qtmux: avoid removing temp file when error occurred
2011-04-12 20:32:18 +01:00
Marc-André Lureau
c2718fdd5f
qtmux: truncate buffer file after each send
2011-04-12 20:32:18 +01:00
Marc-André Lureau
3e6a415e52
qtmux: remove temp file when reset/finalize
2011-04-12 20:32:18 +01:00
Stefan Kost
1d1ffe234f
various (gst): add missing G_PARAM_STATIC_STRINGS flags
...
Canonicalize property names as needed.
2011-04-12 20:32:18 +01:00
Mark Nauwelaerts
a5edbe38a0
qtmux: prevent infinite loop when adjusting framerate
...
Fixes #632070 .
2011-04-12 20:32:18 +01:00
Thiago Santos
5ccc066c98
qtmux: Add G_PARAM_STATIC_STRINGS
...
Add G_PARAM_STATIC_STRINGS to qtmux properties
2011-04-12 20:32:18 +01:00
Thiago Santos
7065a65ec8
qtmux: Follow xmp serialization guidelines closer
...
qt and isom variants have different ways of serializing
xmp, follow these guidelines.
Those can be found in Adobe's xmp docs.
2011-04-12 20:32:18 +01:00
Mark Nauwelaerts
365b419216
qtmux: autodetect out-of-order input timestamps and determine DTS accordingly
...
Favour using input buffer timestamps for DTS, but fallback to using buffer
duration (accumulation) if input ts detected out-of-order.
Fixes #624212 .
2011-04-12 20:32:18 +01:00
Marc-André Lureau
9e79307431
qtmux: use caps bitrate at last chance
...
If we didn't get the stream's bitrate from one of the atoms,
try getting it from the caps as a last resort.
https://bugzilla.gnome.org/show_bug.cgi?id=625496
2011-04-12 20:32:18 +01:00
Marc-André Lureau
da6bfa460d
qtmux: btrt - max bitrate before average
...
According to iso base media file format, the max bitrate
is before the avg
https://bugzilla.gnome.org/show_bug.cgi?id=625496
2011-04-12 20:32:18 +01:00
Arun Raghavan
9e5c575b49
qtmux: Write 'btrt' atom for H.264 media if possible
...
This writes out the optional 'btrt' atom (MPEG4BitrateBox) for H.264
media if either or both of average and maximum bitrate are available for
the stream.
https://bugzilla.gnome.org/show_bug.cgi?id=623678
2011-04-12 20:32:18 +01:00
Arun Raghavan
4b4398c9dd
qtmux: Write avg/max bitrate to ESDS if available
...
This collects the 'bitrate' and 'maximum-bitrate' tags on the
corresponding pad and uses these to populate these fields in the ESDS
where applicable.
https://bugzilla.gnome.org/show_bug.cgi?id=623678
2011-04-12 20:32:18 +01:00
Edward Hervey
099ad6380f
qtmux: Don't use bogus codec/format tags
...
https://bugzilla.gnome.org/show_bug.cgi?id=623365
2011-04-12 20:32:17 +01:00
Thiago Santos
ac7f4cba67
qtmux: Write uint tags that don't have a complement
...
Write uint tags that have complements (e.g. track-number/
track-count) even when we only have one of them available
and set the other one to 0.
Fixes #622484
2011-04-12 20:32:17 +01:00
Edward Hervey
0fa380b199
qtmux: Remove the pad from our internal list before calling collectpads
...
Previously we would end up with the collectpaddata structure already freed.
This would result in a bogus iteration of mux->sinkpads (all the
GstQTPad being freed) and it wouldn't be removed from that list.
Finally, due to it not being removed from that list, we would end up
calling a bogus gst_qt_mux_pad_reset on those structures => SEGFAULT
2011-04-12 20:32:17 +01:00
David Schleef
4bb9ffa8fb
qtmux: Add VP8
2011-04-12 20:32:17 +01:00
Tim-Philipp Müller
48880abb5b
qtmux: use GStreamer package name and origin in the plugin info
2011-04-12 20:32:17 +01:00
Tim-Philipp Müller
1663c51243
qtmux: init debug category before using it
2011-04-12 20:32:17 +01:00
Benjamin Otte
6f27e4e488
Add -Wold-style-definition
...
and fix the warnings
2011-04-12 20:32:17 +01:00
Benjamin Otte
c4161b3c33
Add -Wwrite-strings
...
and fix its warnings
2011-04-12 20:32:17 +01:00
Benjamin Otte
62be91708f
Add -Wmissing-declarations -Wmissing-prototypes to configure flags
...
And fix all warnings
2011-04-12 20:32:17 +01:00
Benjamin Otte
af347a9545
gst_element_class_set_details => gst_element_class_set_details_simple
2011-04-12 20:32:17 +01:00
Thiago Santos
281ef57d2b
qtmux: Use xmp on mp4mux and gppmux too
...
Do not restrict xmp to qtmux, but use it too
on mp4mux and gppmux
2011-04-12 20:32:17 +01:00
Thiago Santos
a740adc137
qtmux: add xmp support
...
Adds xmp metatags adding to qtmux.
Fixes #609539
2011-04-12 20:32:16 +01:00
Tim-Philipp Müller
f9bba010fa
qtmux: fix GST_ELEMENT_ERROR usage
...
We need to pass (NULL) rather than NULL for empty arguments.
2011-04-12 20:32:16 +01:00
Rob Clark
ae0d32843e
qtmux: fix compile error
...
gst/quicktime/gstqtmoovrecover.c:268: warning: format not a string literal and no format arguments
https://bugzilla.gnome.org/show_bug.cgi?id=612454
2011-04-12 20:32:16 +01:00
Thiago Santos
8d86f34871
qtmux: Rename 'avc-sample' to 'avc' in caps
...
Fixes #606662
2011-04-12 20:32:16 +01:00
Michael Smith
8b3aca9070
qtmux: Take lock around use of (non-threadsafe) tagsetter interface.
2011-04-12 20:32:16 +01:00
Thiago Santos
953aa983bb
qtmux: write all udta children atoms
...
UDTA might have META and other children atoms
together, write them all.
2011-04-12 20:32:16 +01:00
Thiago Santos
c92785e1c2
qtmux: Use internal sink pads list
...
Due to GstCollectPads sink pads list being not reliably
iteratable (when not inside the collected function) this
patch adds a sink pads list to qtmux to be used when iterating
sink pads on reset function.
Fixes #609055
2011-04-12 20:32:16 +01:00
Mark Nauwelaerts
589f70955c
qtmux: prevent leaking hdlr name
2011-04-12 20:32:16 +01:00
Mark Nauwelaerts
bcc9fe0463
qtmux: support for ALAC
...
Fixes #580731 .
2011-04-12 20:32:16 +01:00
Mark Nauwelaerts
76b6997b55
qtmux: refactor building stsd entry 'wave' extension
2011-04-12 20:32:16 +01:00
Thiago Santos
528846c5a1
qtmux: atomsrecovery: Fix compilation problem
...
Fixes a compilation error due to unused function result.
2011-04-12 20:32:16 +01:00
Thiago Santos
b692f9ffb0
qtmux: Adds moov recovery feature
...
Adds a new property to qtmux that sets a path to a file to write
and update data about the moov atom (that is not writen till the
end of the file). If the pipeline/app crashes during execution it
might be possible to recover the movie using the qtmoovrecover element.
qtmoovrecover is an element that is also a pipeline. It is not
meant to be used with other elements (it has no pads). It is merely
a tool/utilitary to recover unfinished qtmux files.
Fixes #601576
2011-04-12 20:32:16 +01:00
Michael Smith
3c0e4d8267
qtmux: for fixed-sample size streams (PCM audio, etc) don't allocate an enormous
...
buffer that we then won't use at all.
2011-04-12 20:32:15 +01:00
Michael Smith
d784a8da6a
qtmux: handle muxing adpcm correctly.
2011-04-12 20:32:15 +01:00
Michael Smith
5f1941a000
qtmux: Set the mdia hdlr name field to what quicktime uses. Fix writing it
...
since it's not null-terminated. Improves compatibility with some hardware
players.
2011-04-12 20:32:15 +01:00
Michael Smith
2d3dc1653b
qtmux: endianness in gstreamer is an int, not boolean.
2011-04-12 20:32:15 +01:00
Mark Nauwelaerts
150f9ad64d
qtmux: streamline moov data memory storage
...
In particular, use arrays rather than (double) linked lists.
2011-04-12 20:32:15 +01:00
Thiago Santos
6dc515bfa7
qtmux: g_free is NULL safe
2011-04-12 20:32:15 +01:00