Commit graph

8 commits

Author SHA1 Message Date
Michael Smith
c0ad05cec4 mpeg4videoparse: Use correct values for checking VO startcode.
Fix compiler warning due to condition always being true - since we're
only looking at the final byte of the startcode (not the leading
0x000001), only check for < 0x1f, not < 0x11f
2009-02-27 11:36:58 -08:00
Wim Taymans
41b65b421b mpeg4videoparse: handle more formats
We only need a Video Object Start code before we can start pushing out data.
Search for this code also instead of only looking for VOS and VOP.
Fixes #572551.
2009-02-27 13:08:15 +01:00
Sjoerd Simons
d0d99f937b gst/mpeg4videoparse/mpeg4videoparse.c: Fix mpeg4videoparse on big endian architectures. Fixes bug #536042.
Original commit message from CVS:
Patch by: Sjoerd Simons <sjoerd at luon dot net>
* gst/mpeg4videoparse/mpeg4videoparse.c:
(gst_mpeg4vparse_handle_vos):
Fix mpeg4videoparse on big endian architectures. Fixes bug #536042.
2008-06-02 07:37:31 +00:00
Sjoerd Simons
b3bc29bc64 gst/mpeg4videoparse/mpeg4videoparse.c: Move some code around to integrate the startcode searching with the other bits...
Original commit message from CVS:
Patch by: Sjoerd Simons <sjoerd at luon dot net>
* gst/mpeg4videoparse/mpeg4videoparse.c: (gst_mpeg4vparse_push),
(gst_mpeg4vparse_drain), (gst_mpeg4vparse_chain),
(gst_mpeg4vparse_change_state):
Move some code around to integrate the startcode searching with the
other bits of parsing, avoid a whole bunch of peeks.
Get rid of invalid data that should not happen according to the specs.
Fixes #533559.
2008-05-22 14:03:05 +00:00
Wim Taymans
affa292951 gst/mpeg4videoparse/mpeg4videoparse.c: Set fixed caps on the srcpad after we created the pad...
Original commit message from CVS:
* gst/mpeg4videoparse/mpeg4videoparse.c: (gst_mpeg4vparse_init):
Set fixed caps on the srcpad after we created the pad...
2008-05-14 20:57:31 +00:00
Sjoerd Simons
7bd28a6a94 gst/mpeg4videoparse/mpeg4videoparse.*: Parse the config data (either outbound or in the stream) to set width/height, ...
Original commit message from CVS:
Patch by: Sjoerd Simons <sjoerd at luon dot net>
* gst/mpeg4videoparse/mpeg4videoparse.c:
(gst_mpeg4vparse_set_new_caps), (gst_mpeg4vparse_align),
(get_bits), (next_start_code), (gst_mpeg4vparse_handle_vos),
(gst_mpeg4vparse_push), (gst_mpeg4vparse_drain),
(gst_mpeg4vparse_chain), (gst_mpeg4vparse_sink_setcaps),
(gst_mpeg4vparse_sink_event), (gst_mpeg4vparse_src_query),
(gst_mpeg4vparse_set_property), (gst_mpeg4vparse_get_property),
(gst_mpeg4vparse_class_init), (gst_mpeg4vparse_init):
* gst/mpeg4videoparse/mpeg4videoparse.h:
Parse the config data (either outbound or in the stream) to set
width/height, apect ration, framerate in the caps if applicable.
Mark frames as GST_BUFFER_FLAG_DELTA_UNIT when they are not
intra frames
Set the timestamps of outgoing buffers to the buffer in
which the VOP header was found.
Drop incoming data untill configuration is found (by default,
configurable using a property).
Report a 1 frame latency. Fixes #532723.
2008-05-13 17:21:07 +00:00
Julien Moutte
adbe2a1b69 gst/mpeg4videoparse/mpeg4videoparse.*: Improved version not damaging headers using a simple state machine.
Original commit message from CVS:
2007-10-27  Julien MOUTTE  <julien@moutte.net>

* gst/mpeg4videoparse/mpeg4videoparse.c:
(gst_mpeg4vparse_align),
(gst_mpeg4vparse_drain), (gst_mpeg4vparse_chain),
(gst_mpeg4vparse_sink_setcaps), (gst_mpeg4vparse_sink_event),
(gst_mpeg4vparse_cleanup), (gst_mpeg4vparse_change_state),
(gst_mpeg4vparse_dispose), (gst_mpeg4vparse_base_init),
(gst_mpeg4vparse_class_init), (gst_mpeg4vparse_init),
(plugin_init):
* gst/mpeg4videoparse/mpeg4videoparse.h: Improved version not
damaging headers using a simple state machine.
2007-10-27 08:20:59 +00:00
Julien Moutte
843665f109 Add a simple MPEG4 ES parser.
Original commit message from CVS:
2007-10-26  Julien MOUTTE  <julien@moutte.net>

* configure.ac:
* gst/mpeg4videoparse/Makefile.am:
* gst/mpeg4videoparse/mpeg4videoparse.c:
(gst_mpeg4vparse_drain),
(gst_mpeg4vparse_chain), (gst_mpeg4vparse_sink_setcaps),
(gst_mpeg4vparse_sink_event), (gst_mpeg4vparse_cleanup),
(gst_mpeg4vparse_change_state), (gst_mpeg4vparse_dispose),
(gst_mpeg4vparse_base_init), (gst_mpeg4vparse_class_init),
(gst_mpeg4vparse_init), (plugin_init):
* gst/mpeg4videoparse/mpeg4videoparse.h: Add a simple MPEG4 ES
parser.
2007-10-26 16:08:04 +00:00