Commit graph

2564 commits

Author SHA1 Message Date
Tim-Philipp Müller
d94d572e16 mpegtsmux: use an old-fashioned array instead of GPtrArray for mux->programs
Using GPtrArray for a fixed-sized array is a bit pointless and makes
for ugly code.
2009-08-31 13:00:04 +01:00
Sebastian Dröge
f3e2864f4c mpegpsmux: Add missing files to fix compilation
Fixes bug #593625.
2009-08-31 10:48:35 +02:00
Lin YANG
e453e599af mpegtsmux: Minor fixes 2009-08-31 09:19:23 +02:00
Lin YANG
3ca8288c5b mpegtsmux: mux->programs: use GPrtArray instead of GArray 2009-08-31 09:19:17 +02:00
Lin YANG
5b0b69a858 mpegtsmux: mpegtsmux_collected(): calculate PCR for programs 2009-08-31 09:19:12 +02:00
Lin YANG
b67ed24676 mpegtsmux: mpegtsmux_create_streams(): create multi streams 2009-08-31 09:19:00 +02:00
Lin YANG
451275714c mpegtsmux: MpetTsPadData: add prog_id and ref to its program 2009-08-31 09:18:53 +02:00
Lin YANG
ee31988c7a mpegtsmux: Extend mux->program to a GArray programs 2009-08-31 09:18:48 +02:00
Lin YANG
9f90dfee3e mpegtsmux: Add new property prog-map to the muxer 2009-08-31 09:18:40 +02:00
Sebastian Dröge
baced65049 h264parse: Free the PPS buffers too 2009-08-31 09:15:09 +02:00
Lin YANG
d520e426b0 h264parse: compute timestamp 2009-08-31 09:15:09 +02:00
Lin YANG
9c08ece157 h264parse: recognize more types of NAL
Also recognizes NALs carrying VCL (i.e. visible pictures). We
typically only compute timestamps for such NALs
2009-08-31 09:15:09 +02:00
Lin YANG
550f60111c h264parse: parser init & finalize 2009-08-31 09:15:08 +02:00
Lin YANG
d0273eec2c h264parse: decode slice header 2009-08-31 09:15:08 +02:00
Lin YANG
62ac493c5c h264parse: decode SEI 2009-08-31 09:15:08 +02:00
Lin YANG
dc696c4ffb h264parse: decode SEI: picture timing info 2009-08-31 09:15:08 +02:00
Lin YANG
d061c0a0d1 h264parse: decode SEI: buffering period 2009-08-31 09:15:07 +02:00
Lin YANG
ba5a75d551 h264parse: decode PPS 2009-08-31 09:15:07 +02:00
Lin YANG
2531e5f584 h264parse: decode SPS 2009-08-31 09:15:07 +02:00
Lin YANG
90dfda0f46 h264parse: SPS: decode vui params 2009-08-31 09:15:07 +02:00
Lin YANG
2d50657635 h264parse: SPS: decode hrd params 2009-08-31 09:15:06 +02:00
Lin YANG
e55fb077e6 h264parse: Start slice header parsing work 2009-08-31 09:15:06 +02:00
Lin YANG
e1cfd384d6 h264parse: Start SEI parsing work 2009-08-31 09:15:06 +02:00
Lin YANG
397abd5741 h264parse: Start PPS parsing work 2009-08-31 09:15:05 +02:00
Lin YANG
196b8240e2 h264parse: Start SPS parsing work 2009-08-31 09:15:05 +02:00
Lin Yang
adb4130e65 mpegpsmux: Add MPEG PS muxer 2009-08-31 09:14:32 +02:00
Sebastian Dröge
53128c5b4f mxf: Unconditionally use GLib 2.16 API 2009-08-31 08:14:11 +02:00
Sebastian Dröge
182e751b5d xdgmime: Always use GLib instead of xdgmime
Now that we depend on GLib 2.16 we can as well use it's
internal copy of the xdgmime instead of our own.
2009-08-31 08:14:10 +02:00
Sebastian Dröge
b7534074e2 id3tag: Unconditionally use GLib 2.16 API 2009-08-31 08:14:10 +02:00
Sebastian Dröge
ca55cda9b9 inputselector: Use iterate internal links instead of deprecated get internal links 2009-08-31 08:14:10 +02:00
Руслан Ижбулатов
09b2abf87b resindvd, rawparse: fix LDFLAGS for gst-plugins-base libs
Fixes #593063.
2009-08-25 23:55:41 +01:00
Thiago Santos
c83615fca9 asfmux: Do not mess up GstCollectData list
asfmux was messing up with the GstCollectData list of its
GstCollectPads when sorting the list inplace. This patch makes
it copy the list before sorting it, leaving the GstCollectPads
list as is. Fixes #591610
2009-08-12 19:17:37 -03:00
Olivier Crête
402aad7e87 dtmfsrc: Empty event queue on finalize 2009-08-12 17:08:01 -04:00
Olivier Crête
329b7b9849 dtmf: Use GSlice for internal event structures 2009-08-12 17:08:01 -04:00
Tim-Philipp Müller
a2ea288a02 rtpdtmfsrc: Cleanup events on finalize
Problem found by Laurent Glayal

Fixes bug #591440
2009-08-12 17:08:01 -04:00
Tim-Philipp Müller
0d697e8b58 rtpdtmfsrc: Cleanup events on finalize
Problem found by Laurent Glayal

Fixes bug #591440
2009-08-12 17:08:01 -04:00
Tim-Philipp Müller
a6912096cd Move rtpmanager from -bad to -good. 2009-08-11 09:30:31 +01:00
Tim-Philipp Müller
1691621faf Remove execute flags from source files 2009-08-10 22:16:37 +01:00
Sebastian Dröge
cb1f2f2294 autoconvert: Cache events and send them downstream once an element was selected 2009-08-09 15:20:48 +02:00
Sebastian Dröge
abe33a5526 autoconvert: Small cleanups 2009-08-09 14:55:26 +02:00
Sebastian Dröge
6115e0cb0e mpegtsdemux: Don't answer the SEEKING query if we don't know the answer yet
A bitrate!=-1 is required for seeking but the bitrate is only calculated
after the second PCR was read.

Fixes bug #590446.
2009-08-08 22:14:53 +02:00
Sebastian Dröge
282479b443 videoparse: Only provide very fundamental caps in the pad template
We can't easily know which caps will can be used because we rely on
libgstvideo's support for video formats.
2009-08-08 10:30:11 +02:00
Sebastian Dröge
5c11f80c04 rawparse: Small cleanups and implement SEEKING query 2009-08-08 10:27:52 +02:00
Sebastian Dröge
60a5d37683 audioparse: Small cleanups 2009-08-08 09:08:16 +02:00
Sebastian Dröge
8433f7a9c6 videoparse: Use libgstvideo for everything instead of our own calculations
Also make RGB usage easier by providing xRGB, RGBx, etc. formats
instead of requiring to set red_mask and friends.
2009-08-08 09:08:16 +02:00
Josep Torra
9861908926 mpegtsdemux: fix a memory leak 2009-08-07 19:12:26 +02:00
Josep Torra
1a9b54b781 mpegtsdemux: added VC1, EAC3 and LPCM related to blueray/hdmv 2009-08-07 19:00:23 +02:00
Josep Torra
da95f4a873 mpegpsdemux: added caps for AAC and fixed playback of a clip with LPCM 2009-08-07 18:35:42 +02:00
Josep Torra
3c22fb611b mpegpsdemux: improved demuxer performance
Increased performance doing pull_range in blocks of 32Kb instead of 4Kb.
Caching the value of gst_adapter_available instead of calling it 3 times.
Added some comments with the header descriptions.
Peek enough data to avoid a corner case where could be readed data outside
the buffer.
Speed up some more inlining some functions and keeping another stream pointer
list to be used as iterator.
Sprinkle branch prediction macros accross the code.
Handling the seeking with flush in pull mode in the proper way.
2009-08-07 18:17:28 +02:00
Mark Nauwelaerts
222322e7f3 baseparse: prevent infinite loop when draining 2009-08-07 13:09:24 +02:00
Mark Nauwelaerts
1f2a0d3b3d baseparse: fix minor memory leak 2009-08-07 13:09:20 +02:00
Mark Nauwelaerts
1f9525d821 flacparse: sync baseparse (some more) 2009-08-07 13:09:15 +02:00
ric
15b29bb834 rtpsource: avoid buffer leak on bad seqnum
Fixes #590797
2009-08-06 19:27:20 +02:00
Sebastian Dröge
3f6e84ec61 mpeg[pt]sdemux: Fix SEEKING query
Send the BYTES based query downstream, not the orignal one.
2009-08-05 09:36:00 +02:00
Jan Urbanski
5a596e67da qtmux: Don't require endianness field for 8 bit raw audio
Fixes bug #590360.
2009-08-04 12:58:35 +02:00
Tim-Philipp Müller
2e7b6e44db flacparse: remove internal bitreader and bytereader now that these are in libgstbase 2009-07-31 16:36:54 +01:00
Tommi Myöhänen
b658293925 outputselector: check for pending srcpad in _get_property()
If there is a pending srcpad, return it instead of active srcpad
in gst_output_selector_get_property() function.
2009-07-31 14:07:31 +03:00
Tommi Myöhänen
89788ddc1f camerabin: Set camerasrc to READY state instead of PAUSED when acquiring allowed caps 2009-07-31 14:07:24 +03:00
Thiago Santos
88e399aac2 rtpasfpay: set padding field to 0 on rtp asf packets
The ASF RTP spec demands that packets have their padding removed
and the padding size field set to 0 for packets when puting them
inside the RTP packets
2009-07-31 00:19:19 -03:00
Thiago Santos
7583bf6813 asfmux: Set video stream seekable property to true
Video stream always have indexes, so they are all seekable
2009-07-30 10:33:05 -03:00
Thiago Santos
c271548aab asfmux: Removing useless TODOs
After testing in windows and linux, this audio correction field
made no difference so far. All example files I got only had
zeroes in this field
2009-07-30 10:33:05 -03:00
Thiago Santos
80196e1bb8 asfmux: Fixes video stream properties object
Fixes stream properties object creation for video content
2009-07-30 10:33:04 -03:00
Thiago Santos
d86de48fa1 asfmux: accept pad requests a little longer
asfmux now start rejecting pad requests after it pushes the first
buffer, before this, it was rejecting after going to paused
2009-07-30 10:33:04 -03:00
Thiago Santos
7dd441f8f5 asfmux: adds support to vc-1 streams 2009-07-30 10:33:03 -03:00
Olivier Crête
0672f2d9b2 rtpmux: Remove empty finalize 2009-07-29 17:24:59 -04:00
Thiago Santos
fb624bd416 asfmux: Forcing pad names to be video_%02d and audio_%02d like 2009-07-28 21:37:04 -03:00
Wim Taymans
9232e2278c rtpsource: allow for NULL caps on buffers
Add the NULL caps check where it matters and also cover another case of
potential NULL caps.

Fixes #590030
2009-07-28 18:18:20 +02:00
Olivier Crête
03348629ce rtpsource: Incoming buffers do not always have caps 2009-07-28 18:16:12 +02:00
Tommi Myöhänen
2d9bdb933d camerabin: photo iface setter functions return TRUE when used in NULL state
We cache the values and apply then when possible.
2009-07-28 09:53:22 +03:00
Tommi Myöhänen
01a7532900 camerabin: do not put video pipeline into READY when start recording camerabin: remember probe IDs and disconnect them when destroying pipelines 2009-07-28 09:53:22 +03:00
Wim Taymans
ffe90f81a4 rtpsession: avoid doing lip-sync in BYE
When we get a BYE packet, don't do lip-sync with the SR inside because some
senders have trouble constructing valid SR packets after BYE.
2009-07-27 15:49:54 +02:00
Wim Taymans
9b1bdac9cc rtpbin: don't do lip-sync after a BYE
After a BYE packet from a source, stop forwarding the SR packets for lip-sync
to rtpbin. Some senders don't update their SR packets correctly after sending a
BYE and then we break lip-sync. We prefer to let the jitterbuffers drain with
the current lip-sync instead.
2009-07-27 13:17:20 +02:00
Wim Taymans
7bd35cb8c7 rtpbin: only reconsider once for BYE
When iterating the sources of a BYE packet, don't signal a reconsideration for
each of them but signal after we handled all sources.
2009-07-27 12:43:02 +02:00
Thiago Santos
2641cd9d94 asfmux: Adds new plugin asfmux
Adds the brand new asfmux plugin, containing 3 elements:
asfmux, rtpasfpay and asfparse. This plugin was developed
as a GSoC 2009 project, with David Schleef as the mentor and
Thiago Santos as the student.
2009-07-24 14:52:28 -03:00
Sebastian Dröge
da7263b51f mpegdemux: Remove some backward compatibility code
Also we always require liboil so use it unconditionally.
2009-07-23 09:58:38 +02:00
Sebastian Dröge
d8b285d7fd mpegdemux: Implement query type function for the src pads 2009-07-23 09:53:29 +02:00
Olivier Crête
2abe07f963 rtpsession: Free conflicting addresses on finalize 2009-07-22 14:19:57 -04:00
Olivier Crête
d555d570e6 rtpmux: Free the pad private data on pad release
Free the pad private data on pad release instead of using a weak ref,
which is not thread safe. Also, lock the content of the pad private using the element's
object lock.
2009-07-22 14:19:57 -04:00
Tim-Philipp Müller
277327e4e5 docs: add pcapparse to docs 2009-07-22 11:45:56 +01:00
Stefan Kost
5e6edd7e7b mpegdemux: don't add a base_time==-1 to segment positions
Fixes assertion about newsegment with start=-1.
2009-07-22 00:33:22 +03:00
Stefan Kost
43657ef1f3 camerabin: small speedup in software zoom
Force crop on even pixel position to avoid slowpath in crop & scale.
2009-07-21 17:52:33 +03:00
Sebastian Dröge
86af4924cc mxfdemux: Implement SEEKING query 2009-07-21 13:51:20 +02:00
Sebastian Dröge
95e50d3598 mpegpsdemux: Implement SEEKING query
Fixes bug #588944.
2009-07-21 13:39:21 +02:00
Sebastian Dröge
1f88ceeba8 mpegtsdemux: Implement SEEKING query
Partially fixes bug #588944.
2009-07-21 13:33:58 +02:00
Sebastian Dröge
e3f08983aa mpegtsparse: Free the PMT before setting a new one 2009-07-21 13:18:10 +02:00
Mikael Magnusson
6233d1c950 mpegtsparse: Remove old PES PIDs when receiving PAT tables
Fixes bug #583470.
2009-07-21 13:18:09 +02:00
Stefan Kost
a80921e334 camerabin: log formats in preview image conversion 2009-07-20 16:42:44 +03:00
Stefan Kost
64457575e7 camerabin: remove unused variable assignment
Result is not needed here, but variable is used later on. Also remove double new
lines in function.
2009-07-20 16:42:43 +03:00
Stefan Kost
ebc417f769 fpsdisplaysink: check query return result before using it 2009-07-20 16:42:43 +03:00
Tim-Philipp Müller
114425d7ee real: differentiate between 'module does not exist' and genuine module opening errors
Don't log a GST_ERROR if one of the codec modules we were looking for
doesn't exist. That's not a genuine error, but somewhat expected.
2009-07-19 15:42:10 +01:00
Matijs van Zuijlen
01200712ea mpegdemux: Fix integer overflow
This breaks playback of files >4 GB as the offset was
a guint before. Changing it to a guint64 fixes this.
2009-07-18 08:44:58 +02:00
Stefan Kost
4ef918df28 camerabin: use gst_caps_replace instead of separate calls
This fixes setting snapshot caps back to NULL also.
2009-07-17 15:50:19 +03:00
Zaheer Merali
3d44d92630 mpegtsparse: add component tag to the video component structure in eit 2009-07-17 09:40:12 +01:00
Aleksey Yulin
2db8d6ea0b mpegtsdemux: Don't use PIDs > MPEGTS_MAX_PID
The mpegtsdemux streams array only has MPEGTS_MAX_PID entries
and accessing one afterwards will result in crashes.

Fixes bug #575672.
2009-07-16 19:52:22 +02:00
Josep Torra
6303b0e80d pesfilter: Permit unbounded packets for 0xfd (extended stream id).
Added parsing of PES extension related data.
Fixes some VC1 related issues.
2009-07-16 16:05:41 +02:00
Zaheer Merali
1a6cd35c50 mpegtsparse: add component tag to structure for component message 2009-07-15 18:27:39 +01:00
Stefan Kost
aace8e130f camerabin: use nonbuffered io to save memcopies
We write large blocks anyway, so no extra buffering please. Also use one
g_object_set to set multiple properties on same object.
2009-07-15 17:44:10 +03:00
Stefan Kost
c73bf8e4b6 camerabin: track todo items 2009-07-15 12:20:17 +03:00
Stefan Kost
ff3ef9a92a camerabin: leave image/video bin in ready when changing mode 2009-07-15 11:20:30 +03:00
Sebastian Dröge
27d6b25695 amrparse: Sync baseparse changes 2009-07-14 14:10:55 +02:00
Sebastian Dröge
8e1c21f309 aacparse: Add function for the baseparse subclass to push buffers downstream
Also handle the case gracefully where the subclass decides to drop
the first buffers and has no caps set yet. It's still required to
have valid caps set when the first buffer should be passed downstream.
2009-07-14 14:10:03 +02:00
Sebastian Dröge
493535dd89 baseparse: Fix seek event leaking 2009-07-14 14:10:03 +02:00
Sebastian Dröge
b870322686 shapewipe: Add BGRA support for video in/output 2009-07-08 17:59:29 +02:00
Sebastian Pölsterl
fc80a08e44 mpegtsdemux: Fix double free
The hash table already makes sure that the stream is correctly
free'd when elements are removed.

Fixes bug #587819.
2009-07-08 15:27:48 +02:00
Miguel Àngel Farré
4266fd443a mpegtsparse: parse component tag 2009-07-08 10:34:02 +01:00
Miguel Àngel Farré
c90fccd986 mpegtsparse: parse carousel identifier descriptor 2009-07-08 10:33:44 +01:00
Zaheer Abbas Merali
66a5549094 mpegtsparse: add parsing of data broadcast descriptors 2009-07-08 10:33:29 +01:00
Zaheer Abbas Merali
2e6de387ac mpegtsparse: fix sdt parsing.
fix parsing of everything for each service from eit schedule flag on and also
add a running-status parameter to the bus message structure.
2009-07-02 15:58:00 +01:00
Sebastian Dröge
8fade13db1 shapewipe: Add support for ARGB video input/output 2009-07-02 11:27:31 +02:00
Wim Taymans
80856964b5 rtpbin: use new method for netaddress to string 2009-07-01 12:55:03 +02:00
Wim Taymans
4bc5e2f61e rtpbin: do better cleanup of the src ghostpads
Connect to the pad-removed signal of the ptdemux elements so that we remove the
ghostpads for them. Fixes cleanup when going to NULL as well as when releasing
the sinkpads.

Fixes #561752
2009-06-29 18:48:33 +02:00
Wim Taymans
6eb961e510 rtpsession: add a comment 2009-06-29 16:38:39 +02:00
Wim Taymans
f9cc6b7b1c rtpbin: add SDES property
Remove all individual SDES properties and use one sdes property that takes a
GstStructure instead. This will allow us to add more custom stuff to the SDES
messages later.
2009-06-29 16:37:54 +02:00
Wim Taymans
ed6002ada8 rtpbin: add SDES property that takes GstStructure
Remove all individual SDES properties and use one sdes property that takes a
GstStructure instead. This will allow us to add more custom stuff to the SDES
messages later.
2009-06-29 16:21:05 +02:00
Wim Taymans
5a50a4138e rtpbin: removed old gstrtpclient 2009-06-29 16:02:09 +02:00
Sebastian Dröge
0647d963ef frei0r: Correctly clean up elements to be reusable and not leak memory 2009-06-29 12:02:19 +02:00
Sebastian Dröge
72fca8a828 frei0r: In the filter plugins create the frei0r instances in create() before playback starts 2009-06-29 11:59:13 +02:00
Sebastian Dröge
0de4e9df00 frei0r: In the mixer plugins create the frei0r instances in create() before playback starts 2009-06-29 11:56:59 +02:00
Sebastian Dröge
166ee21b5b frei0r: In the src plugins create the frei0r instances in create() before playback starts 2009-06-29 11:54:26 +02:00
Sebastian Dröge
867d51fb31 frei0r: Use fixed caps on the filter pads
This is required because we have to create a new frei0r
instance for any caps changes and the instances can have history.
Just creating a new instance during playback can result in bad output
right after the caps change.
2009-06-29 11:50:44 +02:00
Sebastian Dröge
cd6422a372 frei0r: Set the default property values correctly 2009-06-27 09:52:22 +02:00
Stefan Kost
3d6d1c2ed2 camerabin: code cleanups
Downgrade a WARNING to INFO. Use a bit more compact code. Add a fixme comment.
2009-06-26 18:36:26 +03:00
Stefan Kost
59bfe55110 camerabin: just ref caps, we don't need a writable copy 2009-06-26 18:36:25 +03:00
Stefan Kost
df14237dba camerabin: no need to ref and unref this temporarily 2009-06-26 18:36:25 +03:00
Stefan Kost
c9208657b1 camerabin: don't leak sink_caps if they would be any-caps 2009-06-26 18:36:25 +03:00
Stefan Kost
a5e9a5eebc camerabin: don't leak preview images 2009-06-26 18:36:25 +03:00
Stefan Kost
9a692cf602 camerabin: don't leak viewfinder-caps 2009-06-26 18:36:25 +03:00
Stefan Kost
2f93fb8c73 camerabin: insert a few blank lines for readability 2009-06-26 18:36:24 +03:00
Stefan Kost
4ab9f800a8 camerabin: don't leak messages and element refs in preview 2009-06-26 18:36:24 +03:00
Changwoo Ryu
1ab8c008f3 freeze: don't build plugin static lib
Pass --tag=disable-static to libtool like we do for other plugins.
Fixes #587023.
2009-06-26 09:34:11 +01:00
Stefan Kost
e673b099d4 camerabin: don't leak requestpads
Requestpads need to be released and unreffed. Add a comment in one case where
we intentionaly don't unref.
2009-06-25 19:34:28 +03:00
Mark Nauwelaerts
8241b05038 capssetter: import element into -bad 2009-06-25 18:10:42 +02:00
Edward Hervey
1bb23517fe qtmux: Remove unused variable. 2009-06-25 08:38:21 +02:00
Edward Hervey
d6ff39bb35 qtmux: Fix debug statement. 2009-06-25 08:38:10 +02:00
Lasse Laukkanen
c3abf1b267 camerabin: buffer-alloc support fixes to image and video bin handling
Keep image bin in PAUSED state in image mode except when processing/saving (PLAYING/READY).
Change output-selector to view finder before setting video bin to READY.
Fix filename sent with img-done signal.
2009-06-24 19:01:01 +03:00
Lasse Laukkanen
18e7091238 camerabin: fix setting mute when video bin elements haven't been created 2009-06-24 18:58:17 +03:00
Lasse Laukkanen
8a39d28002 camerabin: set image bin to PAUSED when starting capture
Set image bin to PAUSED also when starting capture using photography
interface.
2009-06-24 18:58:16 +03:00
Lasse Laukkanen
a265e4d2b3 camerabin: leave v4l2camsrc "capture-mode" as video mode when pausing 2009-06-24 18:58:16 +03:00
Sebastian Dröge
6ba122834a shapewipe: Correctly handle 0/1 fps 2009-06-23 18:24:00 +02:00
Stefan Kost
74f065ee75 camerabin: add local include dir to CFLAGS 2009-06-22 23:49:03 +03:00
Stefan Kost
a971391906 camerabin: code cruft removal and debug logs
Remove unused code. Add lots of debug loging. Change comments for local
functions to not use /** gtk-doc start style.
2009-06-22 13:41:16 +03:00
Wim Taymans
1cf9f2d497 h264parse: detect and fix for bad NALU sizes
when in AVC mode a nalu size seems invalid, assume the NALU has the size of the
available data instead of looping forever.

Fixes #586354
2009-06-22 11:19:07 +02:00
Carl-Anton Ingmarsson
426a6eaba9 vdpau: change element rank for testing purposes
set mpegvideoparse rank to primary and vdpaumpegdec to primary - 1 to get vdpaumpegdec
correctly plugged into playbin
2009-06-20 15:21:40 +01:00
Branko Subasic
c70dbe94b5 rtpbin: add support for buffer-list
Add support for sending buffer-lists.
Add unit test for testing that the buffer-list passed through rtpbin.

fixes #585839
2009-06-19 19:10:35 +02:00
Mark Nauwelaerts
11dc33bea0 aacparse: ADIF: do not send bogus timestamps, leave to downstream (decoder) 2009-06-19 18:13:09 +02:00
Mark Nauwelaerts
e29be2546f qtmux: only use (64-bit) extended (mdat) atom size if needed. Fixes #585319. 2009-06-19 18:13:06 +02:00
Mark Nauwelaerts
5b672ed441 qtmux: set default movie timescale to microsecond units 2009-06-19 18:13:03 +02:00
Mark Nauwelaerts
d4b5c6ae5b qtmux: compress/optimize stsc writing 2009-06-19 18:13:00 +02:00
Mark Nauwelaerts
1aeb7d9b54 qtmux: add 3GP style tagging (and refactor appropriately) 2009-06-19 18:12:58 +02:00
Mark Nauwelaerts
b0c0651d7c qtmux (and variants): handle pixel-aspect-ratio. Fixes #584358. 2009-06-19 18:12:54 +02:00
Tim-Philipp Müller
98292e9efd Fix previous commit so that things still work with debug logs enabled 2009-06-19 17:04:48 +01:00
Tim-Philipp Müller
6eb167a176 Make build without warnings with debugging disabled 2009-06-19 16:21:28 +01:00
Sebastian Dröge
29aa30d9a0 frei0r: Make plugin scanning more robust 2009-06-19 11:03:16 +02:00
Sebastian Dröge
b30ebf0108 frei0r: Make sure to only register plugins that have valid propert types 2009-06-19 11:03:16 +02:00
Sebastian Dröge
abffe58d43 frei0r: Remove custom get_unit_size implementation
This is already handled by the default one from GstVideoFilter
2009-06-19 11:03:15 +02:00
Sebastian Dröge
ab0a9e3694 frei0r: Fix the klass of the filter elements 2009-06-19 11:03:15 +02:00
Sebastian Dröge
3aabf06c86 frei0r: Free type names 2009-06-19 11:03:15 +02:00
Sebastian Dröge
32a0af3e54 frei0r: Unref the GstCollectPads instance on finalize 2009-06-19 11:03:15 +02:00
Sebastian Dröge
15f1ccaef8 frei0r: Don't allow caps changes in PLAYING/PAUSED
Most frei0r source plugins generate output based on
previous output and creating a new instance on caps
changes will let the output start at 0 again.
2009-06-19 11:03:14 +02:00
Sebastian Dröge
d459b814f1 freir0: Add support for frei0r mixer plugins 2009-06-19 11:03:14 +02:00
Sebastian Dröge
6fc47a92df frei0r: Destroy the f0r_instance_t in stop() 2009-06-19 11:03:14 +02:00
Sebastian Dröge
455981d336 frei0r: Add the frei0r plugin type to the element name
This makes it easier to distinguish generators from filters, etc
2009-06-19 11:03:14 +02:00
Sebastian Dröge
e3afdb0bd5 frei0r: Add support for frei0r source/generator plugins 2009-06-19 11:03:14 +02:00
Sebastian Dröge
41869062c6 frei0r: Allow the complete double range for double properties
The spec restricts it to [0,1] but some plugins are using the
complete double range.
2009-06-19 11:03:13 +02:00
Sebastian Dröge
6ed5ac184b frei0r: Use better property nicks 2009-06-19 11:03:13 +02:00
Sebastian Dröge
0a684a3d04 frei0r: First version of a frei0r wrapper plugin
Currently this only supports frei0r filters.
2009-06-19 11:03:13 +02:00
Maximilian Högner
d45e804d5a scaletempo: Explicitely cast to signed integers to fix a segfault
Fixes bug #585660.
2009-06-19 11:02:00 +02:00
Sebastian Dröge
e4730e205f shapewipe: Implement basic QoS
This change is based on Tim's QoS implementation
for jpegdec.
2009-06-19 11:02:00 +02:00
Sebastian Dröge
02b9686463 shapewipe: Proxy queries on the video pads to the correct peers 2009-06-19 11:02:00 +02:00
Sebastian Dröge
09094f2f3d shapewipe: Proxy bufferalloc on the video sinkpad 2009-06-19 11:02:00 +02:00
Sebastian Dröge
80d5bd7168 shapewipe: Try to work inplace if possible
This saves one new, large allocation per frame for the
most cases.
2009-06-19 11:01:59 +02:00
Tim-Philipp Müller
3b99292629 mxfdemux: fix stray semicolons that mess up if statement 2009-06-18 21:17:24 +01:00
Stefan Kost
2bb31a8d4a camerabin: reset filename after capture to avoid racy when capturing again
If we don't reset the filename we cannot check if we still expect the filename
for a subsequent capture pass. The imagebin would good to paused and we set the
filename in that state. This trigers an error-message and would capture to the
old filename.
2009-06-16 19:14:25 +01:00
Stefan Kost
80408b1de2 camerabin: set imagebin to PAUSED on capture and delayed filename setting
We need to set imagebin to PAUSED to not fail the bufferalloc. We also need to
keep the filesinks state locked until we have the filename for the run.
2009-06-14 10:56:30 +03:00
Stefan Kost
1187b88acd outputselector: do the pad_alloc for the pad that is pending and have a fallback
We should do the pad_alloc for the pending pad if any, as we will switch to that
pad on next _chain() call. Also do a fallback alloc, if there is no output yet to
not fail state transitions in dynamic pipelines.
2009-06-14 10:56:23 +03:00
LRN
7b28f931bb Added base libs to debug utils makefile
Fixes #585015
2009-06-07 23:01:30 +02:00
Edward Hervey
4f0b03d357 hdvparse: Link against libm because we use pow(). 2009-06-06 19:28:07 +02:00
Tim-Philipp Müller
e2ef7a2a8a id3mux: init genre field in ID3v1 tag to an invalid number
So that it is not interpreted as 'Blues' if no genre is to be written.
2009-06-06 02:35:35 +01:00
Tim-Philipp Müller
75cc0245fa id3mux: don't write ID3v1 tag until specifically instructed to do so
ID3v1 tags are one of the most broken and ill-designed things that
exist on this planet. Let's not write them by default.
2009-06-06 02:13:13 +01:00
Tim-Philipp Müller
73f231fac9 id3mux: don't write empty ID3v1 tag 2009-06-06 02:13:13 +01:00
Tim-Philipp Müller
09a304b39a id3tag: rename new id3tag element to id3mux replacing the one removed from -ugly 2009-06-06 02:13:07 +01:00
Jan Schmidt
def9b999d9 nsf: Fix compiler warning on Solaris.
A SEC() macro already exists on Solaris, causing warnings about
redefining it.
2009-06-05 23:52:49 +01:00
Edward Hervey
0aa62012c6 hdvparse: Fix the build on Commander Thaytan's S10SP 2009-06-05 22:20:46 +02:00
Stefan Kost
4d9a0e832c camerabin: fix link order
Move local version up in the link order.
2009-06-05 21:29:46 +03:00
Edward Hervey
0e1ee9031a hdvparse: Emit a GST_MESSAGE_ELEMENT with some goodness in it. 2009-06-05 20:23:44 +02:00
Edward Hervey
37254a21f4 mpegvideoparse: Add methods to get names of various values. 2009-06-05 20:23:44 +02:00
Edward Hervey
22496517e0 mpegtsdemux: Fix HDV private stream definition/caps. 2009-06-05 20:23:44 +02:00
Edward Hervey
c4ef659ebd hdvparse: Rewrite from scratch. Handle both hdv-a and hdv-v
This time we analyze a lot more information.

Still need to re-add the message emission.
2009-06-05 20:23:44 +02:00
Lasse Laukkanen
6a47f6f594 camerabin: preview image sending optimization
* decouple image capturing from image post-processing and encoding
 * post image-captured message after image is captured
 * post preview-image message with snapshot of captured image
2009-06-05 15:51:31 +03:00
Lasse Laukkanen
bbf48697fb camerabin: don't lose post processing element in first reset 2009-06-05 15:51:31 +03:00
Lasse Laukkanen
683b72a5fe camerabin: add debug including dot graph writing 2009-06-05 15:51:31 +03:00
Lasse Laukkanen
430f343522 camerabin: unblock if error occurs during capture 2009-06-05 15:51:31 +03:00
Lasse Laukkanen
ca4bfb2e47 camerabin: ignore night mode handling if already in night mode 2009-06-05 15:51:31 +03:00
Lasse Laukkanen
cbcd4e3330 camerabin: stop ongoing capture if changing resolution 2009-06-05 15:51:30 +03:00
Lasse Laukkanen
cad76384b3 camerabin: limit the size of video bin queue leading to view finder
We don't want to show old buffers in view finder.
2009-06-05 15:51:30 +03:00
Lasse Laukkanen
3ff7128293 camerabin: don't proxy gst xoverlay interface
Default view finder sink in camerabin is autovideosink which doesn't
support xoverlay iface. If application decides to use another sink
that supports xoverlay, then it can use the interface directly.
2009-06-05 15:51:30 +03:00
Lasse Laukkanen
710faaef68 camerabin: allow configuring photography settings when in NULL state
Cache the photography settings if set in NULL state and apply them later
2009-06-05 15:51:30 +03:00
Lasse Laukkanen
53e6e4b0d5 camerabin: crop still image capture frame if necessary
If incoming still image capture frame aspect ratio differs from aspect
ratio that application requested, then apply crop to the frame.
2009-06-05 15:51:30 +03:00
Lasse Laukkanen
d8013c1b76 output-selector: serialize setting and actual changing of new active pad 2009-06-05 10:00:38 +03:00
Lasse Laukkanen
97ccdf9460 output-selector: unref latest buffer also when resending has been disabled 2009-06-05 10:00:29 +03:00
Lasse Laukkanen
ab169897b3 output-selector: keep ref to buffer for resending only if explicitly requested 2009-06-05 10:00:14 +03:00
Wim Taymans
eff6395328 inputselector: don't leak pads in iterator 2009-06-04 19:09:34 +02:00
Jan Schmidt
8eac0482fd mpegdemux: Add a GST_MEMDUMP line in the descriptor parsing
Make it possible to see descriptor contents in the debug output
(GST_DEBUG=mpegtsdesc:9), and remove a stray semi-colon.
2009-06-04 16:29:31 +01:00
Jan Schmidt
b8eb0d5dbb mpegtsdemux: Avoid passing the custom GST_FLOW_NEED_MORE_DATA upstream
Don't return GST_FLOW_NEED_MORE_DATA from the chain function at the end
of files.
2009-06-04 16:11:16 +01:00
Sebastian Dröge
a0ad632320 inputselector: Notify when the tags property of the selector sinkpads changes
First part of bug #584686.
2009-06-04 08:57:25 +02:00
Christian Schaller
b14110f1be dvdspu: add missing header to Makefile.am: gstspu-common.h 2009-06-02 11:23:37 +01:00
Tim-Philipp Müller
bb95218b73 aacparse: fix sample rate extraction from codec data
In one case we extracted the sample rate index from the codec data
and saved it as sample rate rather than getting the real sample
rate from the table. Fix that, and also make sure we don't access
non-existant table entries by adding a small helper function that
guards against out-of-bounds access in case of invalid input data.
2009-06-02 00:56:53 +01:00
Tim-Philipp Müller
52904d7175 aacparse, amrparse: remove bogus gst_pad_fixate_caps() calls 2009-06-02 00:56:53 +01:00
Tim-Philipp Müller
44cee1789c baseparse: propagate return value of GstBaseParse::set_sink_caps()
gst_base_parse_sink_setcaps() presumably should fail if the subclass
returns FALSE from its ::set_sink_caps() function.
2009-06-02 00:56:53 +01:00
Tim-Philipp Müller
279727d777 baseparse: don't try to GST_LOG an already-freed caps string
The proper way to log caps is via GST_PTR_FORMAT anyway.
2009-06-02 00:56:53 +01:00
Tim-Philipp Müller
f5a03ec2a6 aacparse: set channels and rate on output caps, and keep codec_data
Create output caps from input caps, so we maintain any fields we
might get on the input caps, such as codec_data or rate and channels.
Set channels and rate on the output caps if we don't have input caps
or they don't contain such fields. We do this partly because we can,
but also because some muxers need this information. Tagreadbin will
also be happy about this.
2009-06-02 00:56:52 +01:00
Mark Nauwelaerts
7f82fe3b46 gppmux: enhance ftyp brand heuristic. Fixes #584360. 2009-06-01 22:42:44 +02:00
Sebastian Dröge
7709bf5f2a shapewipe: Fix some issues that were exposed by the new unit test 2009-06-01 21:25:13 +02:00
Sebastian Dröge
6e9d79e08c shapewipe: Add documentation and integrate into the build system 2009-06-01 21:25:12 +02:00
Tim-Philipp Müller
7c5ff224fc sdpdemux: include glib.h before checking if G_OS_WIN32 is defined 2009-05-31 20:24:44 +01:00
Edward Hervey
c80da130d5 hdvparse: Setting rank to NONE so it doesn't get picked up by playbin2. 2009-05-31 18:23:50 +02:00
Edward Hervey
5df5059d56 hdvparse: Emit application message with the parsed information. 2009-05-31 18:23:08 +02:00
Edward Hervey
c6cd4d09e2 hdvparse: New element for parsing private/hdv-a1 streams. 2009-05-31 14:15:43 +02:00
Sebastian Dröge
01b8bacd1b shapewipe: Adjust border to still have everything transparent at 1.0 and the other way around 2009-05-29 21:07:26 +02:00
Sebastian Dröge
332dae7198 shapewipe: Divide the border value by two, otherwise we use a twice a wide border 2009-05-29 16:55:25 +02:00
Sebastian Dröge
19b4c4f335 shapewipe: Add border property to allow smooth borders
...and use a border of 0.01 in the example application.
2009-05-29 16:52:21 +02:00
Jan Schmidt
db7d1a7eeb mpegtsdemux: Fix bogus uninitialised variable access
Typo in the previous commit
2009-05-29 15:44:51 +01:00
Jan Schmidt
f3a9f52536 mpegtsdemux: Use the ISO 639 language code descriptor to send tags.
If there is an ISO 639 language descriptor for a stream, send a language
code tag so that players can show a meaningful language for the audio and
subtitle streams.
2009-05-29 15:07:11 +01:00
Sebastian Dröge
febef56cf2 shapewipe: Add a simple shapewipe transition filter & example application 2009-05-29 15:34:03 +02:00
Olivier Crête
f6be4da21d rtpbin: Transform the right session sdes message
Fixes #584165
2009-05-29 10:39:09 +02:00
Olivier Crête
71fe0d7bd3 Add ssrc to application/x-rtp-source-sdes structure 2009-05-29 10:39:09 +02:00
Tim-Philipp Müller
53eeb90c21 audioparse: add support for A-Law and µ-Law 2009-05-28 23:14:46 +01:00
Tristan Matthews
530377c40f gstspu: Fix compiler warnings on OS/X
Fix some warnings for format string args and uninitialized vars on OS/X
Fixes: #584164
Signed-off-by: Jan Schmidt <thaytan@noraisin.net>
2009-05-28 23:11:38 +01:00
Mark Nauwelaerts
f7f056c6b2 qtmux: use different stsd atom type for H263 for ISO and QT variants
Fixes #584114.
2009-05-28 13:56:38 +02:00
Mark Nauwelaerts
840955c226 amrparse: consider header size in byte <-> time conversions 2009-05-28 13:09:24 +02:00
Mark Nauwelaerts
c07be49896 baseparse: fix debug category 2009-05-28 13:08:42 +02:00
Stefan Kost
ff6bea9231 selector: remove not needed instance var (previous commit). 2009-05-28 10:38:50 +03:00
Stefan Kost
addb247436 outputselector: implement pad_alloc on active pad. 2009-05-28 10:15:50 +03:00
Wim Taymans
af89b6de1c rtpsouce: the network address is in network order
Bring the network address in netowkr byte order to the host order.
2009-05-27 11:03:14 +02:00
Jan Schmidt
0716d36b13 gstspu: Convert g_warnings to GST_ERROR, and fix format specifiers
Use G_GSSIZE_FORMAT for printing pointer differences, which should work on
both 32-bit and 64-bit systems.
Use GST_ERROR instead of g_warning for printing messages about unknown
packet contents.
2009-05-27 00:51:45 +01:00
Jan Schmidt
35a66554b4 gstspu: Fix a nasty regression, with DVDs randomly crashing
Use the local wrapper function when clearing the compositing buffers to
ensure the correct portion is being cleared.
2009-05-27 00:47:05 +01:00
Jan Schmidt
b460592917 mpegdemux: Only treat streams from 0xa0 to 0xaf as LPCM, not 0xa0..0xbf
Don't treat some streams (Private Stream 2) as LPCM when they're not. Fixes
playback of files that have private streams in them now that the PES filter
emits such packets.
2009-05-26 21:05:01 +01:00
Tim-Philipp Müller
606daecf70 dvdspu: fix printf formats to avoid compiler warnings 2009-05-26 18:43:18 +01:00
Jan Schmidt
b68a05dbfa gstspu: Implement PGS rendering and alpha blending
Refactor the DVD subpicture compositing, switching it to 8-bit alpha
calculations. Reuse some of the resulting code to implement PGS
subpicture blending.

Implement parsing and collecting of composition objects properly, but
assuming a single active window and colour palette for now. I need more
PGS samples.
2009-05-26 15:58:09 +01:00
Jan Schmidt
7e20e3be45 dvdspu: Move a bunch of vobsub specific logic to a separate file.
Start separating out the vobsub logic in preparation for creating
separate renderer objects for each subpicture format.
2009-05-26 15:31:56 +01:00
Jan Schmidt
e0e5975462 dvdspu: Add copyright header and includes to the PGS handler 2009-05-26 15:31:55 +01:00
Jan Schmidt
293a976532 dvdspu: Make the PGS dumping less verbose 2009-05-26 15:31:55 +01:00
Jan Schmidt
871287ba2a dvdspu: Collect entire PGS packets and queue as events
Collect fragmented PGS packets and submit as complete events for
processing at the correct moment.
2009-05-26 15:31:55 +01:00
Jan Schmidt
4e847cb4ac dvdspu: Add simple PGS handler that dumps the packet info
Add setcaps logic on the subpicture sink pad for configuring
which subpicture format is arriving.

Add the first piece of PGS subpicture handling by dumping the stream
contents out to the terminal as the packets arrive.

Add some more debug.
Don't calculate the running time for our subpicture packets twice,
once is enough.
2009-05-26 15:31:54 +01:00
Jan Schmidt
78cd406a76 dvdspu: Add a simple default colour table.
When we're not provided with a palette in advance, draw with a grey
colour or two, instead of YUV green.
2009-05-26 15:31:54 +01:00
Jan Schmidt
f7eefea47c mpegdemux: Add sparse stream filling.
First stab at sending new-segment events to effect sparse stream
updates.
2009-05-26 15:31:54 +01:00
Jan Schmidt
e1d778e559 mpegdemux: Add support for outputting sub-picture streams found in files.
Output subpicture streams when they are found on the private stream ID.
Don't strip off the first byte of such packets when pushing.
2009-05-26 15:31:53 +01:00
Jan Schmidt
471640e3f3 mpegtsdemux: Add mapping for DVD and Bluray subpicture streams.
Add output subpicture pads for DVD (video/x-dvd-subpicture) and Bluray PGS
(subpicture/x-pgs) streams. Remove an unused variable from
the PES filter.
2009-05-26 15:31:53 +01:00
Jan Schmidt
a7cd4b03ad dvdspu: Don't accidentally lose the colour palette when flushing the SPU
Fixes racy startup on DVDs where it sometimes gets entirely the wrong set
of colours in the menus and subtitles.
2009-05-26 15:31:51 +01:00
Wim Taymans
707eaf7684 rtpsource: byteswap the port from GstNetAddress
Since the port in GstNetAddress is in network order we might need to byteswap it
before adding it to the source statistics.
2009-05-26 15:42:55 +02:00