Commit graph

2410 commits

Author SHA1 Message Date
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