Edward Hervey
057d24811d
mpegts: Properly handle UTC time in sections
...
* don't unref inexistant GstDateTime
* Fine-tune hour/min/sec BCD reading code
* Update example code accordingly
2013-07-06 12:39:49 +02:00
Edward Hervey
d95bb48864
mpegts: Fix NIT parsing
...
The size checks were wrong. The smallest size for a NIT is 16 bytes
(12 for the smallest content + 4 for crc) and the smallest size for
a inner stream loop is 6 bytes (without any descriptors).
Also remove FIXME that has already moved elsewhere
2013-07-06 10:59:55 +02:00
Gwenole Beauchesne
5ad6f2d4a0
codecparsers: mpeg2: fix video packet header size checks.
...
Fix video packet header size checks for:
- Sequence Header: 64 bits ;
- Sequence Scalable Extension: 10 bits ;
- Slice Header: 6 bits.
https://bugzilla.gnome.org/show_bug.cgi?id=703668
Signed-off-by: Gwenole Beauchesne <gwenole.beauchesne@intel.com>
2013-07-05 18:58:20 +02:00
Sreerenj Balachandran
9a2ed78532
codecparsers: mpeg2: add slice header parsing API.
...
Add API to parse the Slice header. This also calculates the macroblock
position as specified in 6.3.16.
https://bugzilla.gnome.org/show_bug.cgi?id=664274
Signed-off-by: Sreerenj Balachandran <sreerenj.balachandran@intel.com>
Signed-off-by: Gwenole Beauchesne <gwenole.beauchesne@intel.com>
2013-07-05 17:39:28 +02:00
Sreerenj Balachandran
2adfbe36f1
codecparsers: mpeg2: add sequence scalable extension parsing API.
...
Add API to parse the Sequence Scalable Extension header.
https://bugzilla.gnome.org/show_bug.cgi?id=664274
Signed-off-by: Sreerenj Balachandran <sreerenj.balachandran@intel.com>
Signed-off-by: Gwenole Beauchesne <gwenole.beauchesne@intel.com>
2013-07-05 17:39:28 +02:00
Gwenole Beauchesne
1a5265ef72
codecparsers: mpeg2: add new API that takes GstMpegVideoPacket arguments.
...
Add new interface to MPEG-2 video parser that takes GstMpegVideoPacket
arguments instead of data, size, and offset. New functions are called
after gst_mpeg_video_packet_*() and provide the default implementation.
Older API is moved to the deprecated namespace and uses the new functions.
https://bugzilla.gnome.org/show_bug.cgi?id=692933
Signed-off-by: Gwenole Beauchesne <gwenole.beauchesne@intel.com>
2013-07-05 17:37:34 +02:00
Edward Hervey
f24c0b62e3
mpegts: Improve documentation
...
* Add a base page for the library
* Add pages for the base MPEG-TS section and descriptors
* Add pages for the known variants
* Add documentation on more fields/sections/types
* Remove some fixmes that were ... fixed
2013-07-04 08:45:33 +02:00
Edward Hervey
34164610b0
mpegtsdescriptor: Fix handling of unknown stream encodings
...
If we cannot identify the encoding used for a string, return a NULL
string instead of garbage and add a FIXME so we can detect and later
fix it.
2013-07-04 08:45:32 +02:00
Edward Hervey
4fe26740c7
mpegts: Add registered mpeg-ts stream types
...
These are the values officially registered in the base specification
(H.222.0/13818-1). Later on we can add other enums for other variants
Note that the enum is not used in the structure fields (such as a pmt
stream stream_type field) since it can contain values from other
variants.
2013-07-04 08:45:32 +02:00
Edward Hervey
51d8fa5860
mpegts: split dvb descriptors/enums into a separate file
...
We will do the same once we have ATSC/ISDB/... descriptor parsing
2013-07-03 18:52:18 +02:00
Edward Hervey
6a611e5d3d
mpegts: Fix TOT section parsing
...
And use it in example
2013-07-03 18:44:54 +02:00
Edward Hervey
982aee25c6
mpegts: Split files and implement free functions
...
* In order to avoid future clashing between table_id for the various
mpeg-ts variants, use different enums.
* In order to keep everything clean(ish) and allow for cleaner growth,
split into different files (will need the same for descriptors later)
* Also ... implement free functions for all table types :)
2013-07-03 17:59:02 +02:00
Thiago Santos
cd26bd51a1
uridownloader: Simplify locking to fix deadlocks
...
Use object lock to protect variables from concurrent access and
use download_lock to only allow one download running
2013-07-03 10:23:45 -03:00
Edward Hervey
c1366efcd6
libs/mpegts: Rename GstMpegTS => GstMpegTs
...
Sorry for this :( But this makes it more in sync with expected type
naming in gobject (i.e. CamelCase and not CamelMAYBECase).
Also split descriptor type enums into the different variants:
* ISO H.222.0 / 13818-1 (i.e. standard mpeg-ts)
* DVB
* ATSC
* ISDB
* miscellaneous
This will avoid future clashes when specs use the same descriptor type
2013-07-03 13:59:56 +02:00
Edward Hervey
3665e8543a
gst-libs: New Mpeg-TS support library
...
Exposes various MPEG-TS (ISO/IEC 13818-1) and DVB (EN 300 468) Section
Information as well as descriptors for usage by plugins and applications.
This replaces entirely the old GstStructure-based system for conveying
mpeg-ts information to applications and other plugins.
Parsing and validation is done on a "when-needed" basis. This ensures
the minimal overhead for elements and applications creating and using
sections and descriptors.
Since all information is made available, this also allows applications
to parse custom sections and descriptors.
Right now the library is targeted towards parsing, but the structures
could be used in the future to allow applications to create and inject
sections and descriptors (for usage by various mpeg-ts elements).
https://bugzilla.gnome.org/show_bug.cgi?id=702724
2013-07-03 09:17:25 +02:00
Thiago Santos
e76f3e95fd
uridownloader: add support for range based downloads
...
Adds a new API gst_uri_downloader_fetch_uri_with_range that allows
downloading only a byte range from an URI. It uses a seek event
sent to the source to signal the range to be downloaded.
https://bugzilla.gnome.org/show_bug.cgi?id=702206
2013-07-01 14:22:01 -03:00
Sreerenj Balachandran
65758debf1
h264parser: Fix the return value type for the SEI palyload parsing methods.
...
The return value type of SEI payload parsing functions
are GstH264ParserResult.
https://bugzilla.gnome.org/show_bug.cgi?id=695475
2013-07-01 11:24:17 +02:00
Edward Hervey
b00192d7c0
codecparsers: Fix gtk-doc
...
Detected by initial pre-run of gi-scanner.
2013-06-23 11:46:01 +02:00
Sreerenj Balachandran
0a496f4167
mpegvideoparser: Fix the pixel-aspect-ratio calculation
...
Ignore the display_extension values if they are greater than the width/height
values provided by seqhdr and calculate the PAR based on the seqhdr values.T
his is what DVD players are doing.
Thanks to "David Schleef <ds@schleef.org>"
https://bugzilla.gnome.org/show_bug.cgi?id=685103
2013-06-06 14:32:45 +02:00
Stefan Sauer
668dcf0c09
signalprocessor: ladspa is not using this anymore
...
When we port lv2, we'll go the same route as the new ladspa plugin.
2013-05-28 10:27:17 +02:00
Edward Hervey
f7893fb63e
codecparsers: Actually store mpeg video bitrate value
...
And use the extension also (higher 12 bits)
2013-05-23 14:59:33 +02:00
Olivier Crête
d0524c0579
insertbin: Annotate callback scopes
2013-05-15 20:03:30 -04:00
Sebastian Dröge
275e104be6
egl: Add destroy notify instead of always calling eglTerminate() on the display
...
In some scenarios, for example in QtWebKit, might be difficult to obtain full
control on the egl display and it might be only accessible indirectly via
eglGetCurrentDisplay().
https://bugzilla.gnome.org/show_bug.cgi?id=700058
2013-05-10 12:50:05 +02:00
Josep Torra
db3d5f92d6
egl: Allow being used in C++ code
2013-05-10 11:48:46 +02:00
Thiago Santos
529b248a89
codecparsers: ensure the debug category is properly initialized
...
The user of the library might not need to create a NalParser, so
the debug category needs to be initialized from other functions
as well if required.
2013-05-07 21:05:10 -03:00
Louis-Francis Ratté-Boulianne
f0211e5b7b
uridownloader: unlock mutex when switching urisrc state to NULL to avoid deadlock
...
When chain method was called after gst_uri_downloader_stop and before state has been changed to NULL, execution was blocking on g_mutex_lock.
Conflicts:
gst-libs/gst/uridownloader/gsturidownloader.c
2013-05-07 20:02:41 -03:00
Thiago Santos
99efe87b5d
uridownloader: properly unref the urisrc between downloads
...
This prevents leaking the element. Also sets the bus to flushing
to completely reset the downloader state
2013-05-07 20:02:41 -03:00
Andre Moreira Magalhaes (andrunko)
f72869816c
uridownloader: make cancelled state 'permanent' until a reset
...
When downloading and cancelling quickly the uridownloader object and the
element using it could miss the cancelled window and the uridownloader
would fetch the wrong URI and block on subsequent fetches.
This was also problematic when stopping elements, while one task would
call the cancel, another element thread could issue a new fetch_uri. As
the cancel state isn't 'permanent' this fetch_uri would block and
prevent the whole element from stopping and going to NULL.
This patch makes the 'cancelled' state permanent until a
gst_uri_downloader_reset is called. This way the element knows the
window where the uridownloader isn't active and only reactivate it when
ready.
2013-05-07 20:02:41 -03:00
Thiago Santos
859635ca01
uridownloader: refactor gsturidownloader to its own lib
...
gsturidownloader can be reused by other plugins, better have it
into its own lib
2013-05-07 20:02:41 -03:00
Sreerenj Balachandran
0511a6b032
mpegvideometa: Fix typo in comment
...
https://bugzilla.gnome.org/show_bug.cgi?id=699827
2013-05-07 14:52:50 +02:00
Sebastian Dröge
5bc64fd579
egl: Use gst_context_writable_structure()
2013-04-18 16:11:26 +02:00
Josep Torra
5ba7f5effc
egl: silence warnings building for RPI related to 'vcos_*'
2013-04-18 12:16:17 +02:00
Sebastian Dröge
a6e50140b7
egl: Use new types from libgstvideo instead of defining our own
2013-04-17 10:49:59 +02:00
Sebastian Dröge
524421e436
video: Remove video library from -bad
...
This only contained API that now has replacements in core and base.
2013-04-11 13:35:02 +02:00
Tim-Philipp Müller
3f228f3dfc
docs: add since markers to new codecparsers video meta API
...
https://bugzilla.gnome.org/show_bug.cgi?id=691712
2013-04-02 23:34:19 +01:00
Sebastian Dröge
f7a00d8ca4
egl: Add a #define for the EGLImage memory caps feature
2013-04-01 10:22:06 +02:00
Edward Hervey
67ac84c7b5
codecparsers: Add Mpeg Video GstMeta
...
This can be used by parsers to provide pre-parsed information to
downstream elements that would require it (so they can avoid having
to parse the bitstream again).
2013-03-31 18:55:29 +02:00
Edward Hervey
3bb62cbf1d
codecparser: Fix picture packet extension size check
...
It is at least 34 bit big (5 bytes with byte padding)
2013-03-31 12:18:32 +02:00
Sebastian Dröge
ce9b6e5afb
eglglessink: Implement GstContext handling
2013-03-29 16:38:34 +01:00
Josep Torra
a9a385c512
egl: check on the proper display and indent some lines
2013-03-29 10:33:10 +01:00
Sebastian Dröge
c645e41711
egl: Add a boxed type for GstEGLDisplay
2013-03-28 16:53:35 +01:00
Sebastian Dröge
8f9c2e8e44
egl: Fix some return values in g_return_val_if_fail()
2013-03-19 14:32:30 +01:00
Sebastian Dröge
a373e75949
egl: Add support for different orientations of the EGLImage
...
The content of the EGLImages can be at least in GStreamer orientation,
meaning top line first in memory, or OpenGL orientation, meaning
bottom line first in memory.
2013-03-13 12:23:49 +01:00
Sebastian Dröge
5e948472ed
egl: Rename gst_egl_image_memory_can_map() to is_mappable()
2013-03-03 12:31:05 +01:00
Sebastian Dröge
4ca26a3c45
egl: Remove buffer pool option
...
This should be done differently via the allocators in the allocation query.
2013-03-03 12:31:05 +01:00
Sebastian Dröge
a47f52bb96
egl: Mark memory as not mappable if it isn't
2013-03-03 12:31:05 +01:00
Sebastian Dröge
0a5ff713e7
egl: Implement sharing of memory
2013-03-03 12:31:05 +01:00
Sebastian Dröge
4dd09a12dd
egl: Add infrastructure for EGLImage handling
2013-03-03 12:31:04 +01:00
Sebastian Dröge
4bf50b6af0
codecparsers: Use correct type specifiers for format strings to fix compiler warnings
2013-03-03 12:29:42 +01:00
Tim-Philipp Müller
f8139b2b99
insertbin: mark as unstable API
2013-02-14 09:03:28 +00:00
Tim-Philipp Müller
214d7e0619
insertbin: fix up gtk-doc chunk and add since markers
2013-02-14 09:02:53 +00:00
Tim-Philipp Müller
0dcb7c27ba
glib-compat-private.h: remove old GStaticRecMutex stuff
...
Breaks the build with newer GLibs ("unknown type GStaticRecMutex")
and is not needed any more.
2013-02-12 10:39:44 +00:00
David Schleef
743098fe8c
mpegvideoparser: increase min size for picture coding ext
...
This could use additional work. The parsing code overruns the
end of buffers during normal operation, triggering GST_WARNINGs.
2013-02-11 18:02:23 -08:00
Youness Alaoui
381fcda68b
basecamerabinsrc: Add auto-start property to basecamerabin
2013-02-11 22:04:59 +01:00
Gwenole Beauchesne
6e440f1da4
codecparsers: h264: add profile enums.
...
Add all useful profiles from AVC, MVC and SVC specifications.
https://bugzilla.gnome.org/show_bug.cgi?id=693140
Signed-off-by: Gwenole Beauchesne <gwenole.beauchesne@intel.com>
2013-02-07 14:38:27 +01:00
Gwenole Beauchesne
250555a7de
codecparsers: mpeg2: add helpers to convert quantization matrices.
...
Add utility functions to convert quantization matrices from zigzag scan
order (as encoded in the bitstream) into raster scan order. Also provide
another function to reverse the operation.
https://bugzilla.gnome.org/show_bug.cgi?id=693000
Signed-off-by: Gwenole Beauchesne <gwenole.beauchesne@intel.com>
2013-02-06 14:22:41 +01:00
Cong Zhong
46c01de05d
codecparsers: mpeg2: store quantization matrices in zigzag scan order.
...
Quantizer matrices are encoded in zigzag scan order in the bitstream,
but they are stored in raster scan order when they are parsed. However,
default matrices were also prepared in zigzag scan order, hence the
mismatch. i.e. the matrices were presented either in raster scan order
if they are explicitly present in the bitstream, or they were presented
in zigzag scan order if the default definitions were to be used instead.
One way to solve this problem is to always expose the quantization
matrices in zigzag scan order, since this is the role of the parser to
not build up stories from the source bitstream and just present what
is in there.
Utility functions will be provided to convert quantization matrices in
either scan order.
https://bugzilla.gnome.org/show_bug.cgi?id=693000
Signed-off-by: Cong Zhong <congx.zhong@intel.com>
Signed-off-by: Gwenole Beauchesne <gwenole.beauchesne@intel.com>
2013-02-06 14:22:41 +01:00
Tim-Philipp Müller
cf695c6da9
insertbin, tests: fix printf format compiler warnings
2013-01-25 12:25:15 +00:00
Gwenole Beauchesne
10639eb889
codecparsers: vc1: fix bitplanes decoding (DIFF6 or NORM6 residual bytes).
...
Fix parsing of residual bytes. This is a two-step process. First,
remaining colums of full vertical resolution (<height>) need to be
processed. Next, remaining bytes in the first row can be processed,
while taking into account the fact that we may have filled in the
first columns already. So, this is not full horizontal resolution.
The following figure helps in understanding the expected order of
operations, for a 8x5 MBs bitplane.
5 5 6 6 6 6 6 6
5 5 1 1 1 2 2 2
5 5 1 1 1 2 2 2
5 5 3 3 3 4 4 4
5 5 3 3 3 4 4 4
So, after tiles 1 to 4 are decoded, vertical tile 5 needs to be
processed (2x5 MBs) and then the horizontal tile 6 (6x1 MBs).
https://bugzilla.gnome.org/show_bug.cgi?id=692461
Signed-off-by: Gwenole Beauchesne <gwenole.beauchesne@intel.com>
2013-01-25 09:53:05 +01:00
Gwenole Beauchesne
fa2a526f04
codecparsers: vc1: fix bitplanes decoding (DIFF6 or NORM6).
...
Fix decoding of DIFF6 or NORM6 bitplanes with an odd number of lines
(3x2 "horizontal" tiles). In this case, we have to skip the first line
of macroblocks but <width> number of bytes was used to do so, instead
of the actual <stride> size.
This fixes decoding for the video sample attached to:
https://bugzilla.gnome.org/show_bug.cgi?id=668565
https://bugzilla.gnome.org/show_bug.cgi?id=692461
Signed-off-by: Gwenole Beauchesne <gwenole.beauchesne@intel.com>
2013-01-25 09:39:01 +01:00
Olivier Crête
d1023646f9
insertbin: Add bin to dynamically insert elements in a running pipeline
...
This element automatically links in any element added using it's
action signals. These elements must have a single source pad and a single
sink pad.
2013-01-23 21:13:03 -05:00
Gwenole Beauchesne
07a51b16eb
codecparsers: vc1: add API to parse slice headers.
...
Add gst_vc1_parse_slice_header() function to parse slice headers as
described in 7.1.2. Slice layers are optional and allowed in advanced
profile mode only. Picture header, if available (PIC_HEADER_FLAG),
is parsed but not recorded because it shall be the same as that was
previously parsed with gst_vc1_parse_frame_header().
This fixes SA00049.vc1 conformance test.
https://bugzilla.gnome.org/show_bug.cgi?id=692388
Signed-off-by: Gwenole Beauchesne <gwenole.beauchesne@intel.com>
2013-01-23 17:22:07 +01:00
Gwenole Beauchesne
82200d75ae
codecparsers: vc1: fix bitplanes decoding.
...
Fix decoding of DIFF2 or NORM2 bitplanes with an odd number of macroblocks.
In particular, account for the first bit that was already parsed so that to
avoid a buffer overflow after all pairs are parsed.
This fixes SA00040.vc1 conformance test.
https://bugzilla.gnome.org/show_bug.cgi?id=692312
Signed-off-by: Gwenole Beauchesne <gwenole.beauchesne@intel.com>
2013-01-23 09:35:11 +01:00
Gwenole Beauchesne
cbec9bfcd0
codecparsers: vc1: simplify GstVC1VopDquant structure.
...
Rename dqsbedge to dqbedge. The intent is that we can only have a single
boundary edge selector, depending on the value of dqprofile. So, dqbedge
represents DQSBEDGE if dqprofile == GST_VC1_DQPROFILE_SINGLE_EDGE, or
DQDBEDGE if dqprofile == GST_VC1_DQPROFILE_DOUBLE_EDGE.
The former dqbedge field is marked as unused and can be removed on the
next gst-plugins-bad version that allows ABI changes.
https://bugzilla.gnome.org/show_bug.cgi?id=692272
Signed-off-by: Gwenole Beauchesne <gwenole.beauchesne@intel.com>
2013-01-22 14:22:30 +01:00
Gwenole Beauchesne
93fbcfda23
codecparsers: vc1: fix VOPDQUANT parser for DQUANT == 2.
...
Fix parsing of VOPDQUANT when DQUANT == 2. In particular, DQUANTFRM is
not present in the bitstream in this case and it shall be derived to
the default value of zero (7.1.1.31.1).
https://bugzilla.gnome.org/show_bug.cgi?id=692271
Signed-off-by: Gwenole Beauchesne <gwenole.beauchesne@intel.com>
2013-01-22 11:20:06 +01:00
Gwenole Beauchesne
73213e273f
codecparsers: vc1: fix calculation of ALTPQUANT.
...
Fix calculation of ALTPQUANT when DQUANT == 1. PQDIFF alters ALTPQUANT
in any case. See 7.1.1.31.6.
https://bugzilla.gnome.org/show_bug.cgi?id=692270
Signed-off-by: Gwenole Beauchesne <gwenole.beauchesne@intel.com>
2013-01-22 11:19:56 +01:00
Gwenole Beauchesne
f3698c6289
codecparsers: vc1: fix parser for DQPROFILE in VOPDQUANT.
...
Fix parse_vopdquant() to correctly parse DQPROFILE, which is 2 bits
instead of a single bit.
https://bugzilla.gnome.org/show_bug.cgi?id=692267
Signed-off-by: Gwenole Beauchesne <gwenole.beauchesne@intel.com>
2013-01-22 11:19:44 +01:00
Gwenole Beauchesne
56e2405a35
codecparsers: h264: add inferred value for slice_beta_offset_div2.
...
The standard specifies that when slice_beta_offset_div2 is not present
in the slice header, then the value of slice_beta_offset_div2 shall be
inferred to be equal to 0.
https://bugzilla.gnome.org/show_bug.cgi?id=692265
Signed-off-by: Gwenole Beauchesne <gwenole.beauchesne@intel.com>
2013-01-22 11:19:17 +01:00
Mark Nauwelaerts
c20d13d8f8
codecparsers: h264: zero-initialize SPS VUI parameters
...
... so all 'present' flags indicate no presence of optional parts
in case VUI parameters end up not being parsed.
Fixes https://bugzilla.gnome.org/show_bug.cgi?id=681818
2013-01-15 19:44:06 +01:00
Youness Alaoui
faf7370a27
GstPhotography: Add new enum values to match android's parameters
...
https://bugzilla.gnome.org/show_bug.cgi?id=688486
2012-11-20 09:37:59 +00:00
Gwenole Beauchesne
e179a6b4dc
codecparsers: vc1: fix PTYPE for interlaced frames.
...
Coverity found missing break in parse_frame_header_advanced() when
determining PTYPE from FPTYPE for interlaced streams.
https://bugzilla.gnome.org/show_bug.cgi?id=688626
Signed-off-by: Gwenole Beauchesne <gwenole.beauchesne@intel.com>
2012-11-19 13:57:48 +01:00
Gwenole Beauchesne
c951d201ec
codecparsers: h264: fix error code for invalid size parsed in SPS.
...
gst_h264_parse_sps() returned FALSE if it parsed invalid (negative)
size components. Now make it gracefully return GST_H264_PARSER_ERROR
instead of GST_H264_PARSER_OK (FALSE).
https://bugzilla.gnome.org/show_bug.cgi?id=684568
2012-11-19 12:06:04 +00:00
Tim-Philipp Müller
9e1b75fda3
Fix FSF address
...
https://bugzilla.gnome.org/show_bug.cgi?id=687520
2012-11-04 00:09:59 +00:00
Tim-Philipp Müller
32ba17cd0f
Use gst_element_class_set_static_metadata()
...
where possible. Avoids some string copies. Also re-indent
some stuff. Also some indent fixes here and there.
2012-10-17 17:46:34 +01:00
Michael Smith
0c2159a220
meta info: register thread-safely.
2012-10-03 11:05:06 -07:00
Mark Nauwelaerts
578861abea
replace gst_element_class_set_details_simple with gst_element_class_set_metadata
2012-09-14 17:27:49 +02:00
Peter Seiderer
fd030c15b7
gsth264parser: fix Coverity found not initialized sps/pps valid member.
...
Fixes https://bugzilla.gnome.org/show_bug.cgi?id=683264
2012-09-14 17:27:49 +02:00
Peter Seiderer
8a91eed6ad
gsth264parser: fix Coverity detected off by one at call to READ_UE_ALLOWED.
...
Fixes https://bugzilla.gnome.org/show_bug.cgi?id=683263
2012-09-14 17:27:49 +02:00
Arnaud Vrac
0331fb6203
mpeg4parser: parse complexity estimation header in video object layer
...
https://bugzilla.gnome.org/show_bug.cgi?id=683254
2012-09-14 09:14:26 +02:00
Arnaud Vrac
af379b0b8e
mpeg4parser: fix some issues related to video object layer parsing
...
https://bugzilla.gnome.org/show_bug.cgi?id=683254
2012-09-14 09:14:24 +02:00
Jan Schmidt
c5c44628fc
mpegvideoparse: Handle Sequence Display Extension
...
Change the way the pixel-aspect-ratio is computed by
interpreting the sequence header aspect ratio info
as MPEG-1 values until a sequence extension or
sequence display extension is seen, and then updating
the sequence header struct accordingly.
Fixes incorrect anamorphic display on some MPEG-2 (DVD)
sequences.
2012-09-12 23:05:47 -07:00
Gwenole Beauchesne
0b2dd2e723
codecparsers: vc1: fix aspect ratio calculation.
...
ASPECT_HORIZ_SIZE and ASPECT_VERT_SIZE are syntax elements that hold
binary encodings of sizes ranging from 1 to 256. Thus, the calculated
pixel-aspect-ratio was off by one.
Signed-off-by: Gwenole Beauchesne <gwenole.beauchesne@intel.com>
https://bugzilla.gnome.org/show_bug.cgi?id=683858
2012-09-12 10:44:10 +01:00
Gwenole Beauchesne
2c3eaf527b
codecparsers: h264parse: don't use anonymous unions.
...
Anonymous union is an ISO C (2011) feature that is not exposed in
compilers strictly conforming to the previous standard.
Signed-off-by: Gwenole Beauchesne <gwenole.beauchesne@intel.com>
2012-09-12 10:39:32 +01:00
Gwenole Beauchesne
a08273be72
codecparsers: h264: compute pixel aspect ratio.
...
Signed-off-by: Simon Farnsworth <simon.farnsworth@onelan.co.uk>
Signed-off-by: Gwenole Beauchesne <gwenole.beauchesne@intel.com>
2012-09-12 10:38:46 +01:00
Thiago Santos
0a831613a8
camerabin: update preview buffer pushing
...
need to pass a GstSample to the utilitary preview buffer post functions
as a GstBuffer doesn't have caps anymore. The GstSample has the GstCaps
and it is used to inform the preview's pipeline about the format of the
input, before it gets converted to the user's requested output format.
2012-07-29 00:53:29 -03:00
Lasse Laukkanen
eabb238b24
photography: update documentation
...
https://bugzilla.gnome.org/show_bug.cgi?id=622482
2012-07-11 00:10:55 +01:00
Lasse Laukkanen
3d94d8dc39
photography: Add manual control of exposure, focus and white balance
...
Add new interface properties and mode for better manual control of
exposure, focus and white balance.
https://bugzilla.gnome.org/show_bug.cgi?id=622482
2012-07-11 00:10:55 +01:00
Lasse Laukkanen
8fd2fc662a
photography: Add GstPhotography prefix and fix spelling colour->color
...
https://bugzilla.gnome.org/show_bug.cgi?id=622482
2012-07-11 00:10:55 +01:00
Tim-Philipp Müller
7d41bc7825
codecparsers: minor header indentation clean-up for mpegvideoparser
2012-07-11 00:10:55 +01:00
Wim Taymans
b3308676fd
update for bus api changes
2012-06-20 12:34:21 +02:00
Vincent Penquerc'h
8800946aa3
h264parser: do not assert on data input, just return
...
https://bugzilla.gnome.org/show_bug.cgi?id=674069
2012-06-11 11:12:36 +01:00
Edward Hervey
7d4f1aa8e8
h264parser: Remove un-needed checks and inline some functions
...
val and nr always exist (&nr, &value)
bits is always called smaller than the width
Makes parsing 30% faster
2012-06-06 10:33:18 +02:00
Mark Nauwelaerts
8d6aed5297
codecparsers: mpeg: relax entry constraint
...
... since it is acceptable and properly handled further on.
2012-06-01 11:13:17 +02:00
Sebastian Dröge
64344a6c63
basevideo: Remove old video base classes
2012-05-28 16:42:59 +02:00
Mark Nauwelaerts
28f3858b94
mpegvideoparse: tweak codec parser API and adjust parser element
...
... to allow for more efficient parsing and (more) consistent parsing API
among various codec parsers.
Fixes #672701 .
Conflicts:
gst/videoparsers/gstmpegvideoparse.c
2012-05-22 14:09:47 +02:00
Mark Nauwelaerts
29a947642e
codecparsers: mpeg4: fixup documentation spelling
2012-05-22 14:00:50 +02:00
Nicolas Dufresne
920053dae6
mpegvideoparser: Optimize scanning for start code
...
https://bugzilla.gnome.org/show_bug.cgi?id=672701
2012-05-22 14:00:48 +02:00
Mark Nauwelaerts
e560ce0909
codecparsers: mpegvideoparser: fix buffer size check
...
... to mind unsigned integer wrap
Based on patch by Alban Browaeys <prahal@yahoo.com>
Fixes https://bugzilla.gnome.org/show_bug.cgi?id=673436
2012-05-21 15:29:37 +02:00
Mark Nauwelaerts
5b2c2fa32b
codecparsers: mpeg4: do not expect a marker bit where not specified
...
Fixes #672447 .
2012-05-18 16:31:21 +02:00
Youness Alaoui
d3303121c8
basecamerabin: Do not set the pad templates in the base class.
...
It is best to let the subclass define the pad templates, this would
allow the subclass to decide which caps the pads should have.
2012-05-04 19:50:52 -03:00
Sreerenj Balachandran
99b6f14486
videocontext: Remove the explicit unrefing of pad object getting from iterator.
2012-05-04 10:21:05 +02:00
Thiago Santos
a944578ef9
basecamerasrc: null caps are not valid in 1.0
...
Use any caps for the preview-caps property, as NULL caps are
not valid caps in 1.0 anymore
2012-05-02 09:43:33 -03:00
Thiago Santos
89a20eb63e
basecamerabinsrc: updating property to new name
...
enable-last-buffer is now enable-last-sample
2012-05-01 15:10:54 -03:00
Thiago Santos
79d3cc533f
camerabin: Replacing ffmpegcolorspace with videoconvert
2012-05-01 15:10:51 -03:00
Wind Yuan
cd001d7b8e
codecparser: mpeg4 type error
2012-05-01 11:01:37 +02:00
Sreerenj Balachandran
529f90c29d
Doc fixes (gstsurfaceconverter, gstsurfacemeta).
2012-04-20 12:26:35 +02:00
Sebastian Dröge
7ff3293a44
video: Update for libgstvideo API changes
2012-04-19 12:31:39 +02:00
Matej Knopp
045e8bb506
mpegvideoparse: Do not ignore start code at the end of buffer
2012-04-16 08:42:12 +02:00
Matej Knopp
667fa25ec2
Set sync_poinr = 1 for keyframe
2012-04-14 10:40:47 +02:00
Sebastian Dröge
1318a97e0a
gst: Update versioning
2012-04-04 14:44:34 +02:00
Sebastian Dröge
860ccd414d
Merge remote-tracking branch 'origin/0.10'
...
Conflicts:
NEWS
RELEASE
common
configure.ac
docs/libs/gst-plugins-bad-libs-sections.txt
docs/plugins/gst-plugins-bad-plugins.args
docs/plugins/gst-plugins-bad-plugins.hierarchy
docs/plugins/gst-plugins-bad-plugins.interfaces
docs/plugins/inspect/plugin-adpcmdec.xml
docs/plugins/inspect/plugin-adpcmenc.xml
docs/plugins/inspect/plugin-assrender.xml
docs/plugins/inspect/plugin-audiovisualizers.xml
docs/plugins/inspect/plugin-autoconvert.xml
docs/plugins/inspect/plugin-bayer.xml
docs/plugins/inspect/plugin-bz2.xml
docs/plugins/inspect/plugin-camerabin2.xml
docs/plugins/inspect/plugin-celt.xml
docs/plugins/inspect/plugin-dataurisrc.xml
docs/plugins/inspect/plugin-debugutilsbad.xml
docs/plugins/inspect/plugin-dtmf.xml
docs/plugins/inspect/plugin-dtsdec.xml
docs/plugins/inspect/plugin-dvbsuboverlay.xml
docs/plugins/inspect/plugin-dvdspu.xml
docs/plugins/inspect/plugin-faac.xml
docs/plugins/inspect/plugin-faad.xml
docs/plugins/inspect/plugin-gsm.xml
docs/plugins/inspect/plugin-h264parse.xml
docs/plugins/inspect/plugin-mms.xml
docs/plugins/inspect/plugin-modplug.xml
docs/plugins/inspect/plugin-mpeg2enc.xml
docs/plugins/inspect/plugin-mpegdemux2.xml
docs/plugins/inspect/plugin-mpegtsdemux.xml
docs/plugins/inspect/plugin-mpegvideoparse.xml
docs/plugins/inspect/plugin-mplex.xml
docs/plugins/inspect/plugin-pcapparse.xml
docs/plugins/inspect/plugin-rawparse.xml
docs/plugins/inspect/plugin-rtpmux.xml
docs/plugins/inspect/plugin-rtpvp8.xml
docs/plugins/inspect/plugin-scaletempo.xml
docs/plugins/inspect/plugin-schro.xml
docs/plugins/inspect/plugin-sdp.xml
docs/plugins/inspect/plugin-segmentclip.xml
docs/plugins/inspect/plugin-shm.xml
docs/plugins/inspect/plugin-videomaxrate.xml
docs/plugins/inspect/plugin-videoparsersbad.xml
docs/plugins/inspect/plugin-vp8.xml
docs/plugins/inspect/plugin-y4mdec.xml
ext/celt/gstceltdec.c
ext/dts/gstdtsdec.c
ext/modplug/gstmodplug.cc
ext/opus/gstopusenc.c
gst-libs/gst/video/gstbasevideocodec.c
gst-libs/gst/video/gstbasevideocodec.h
gst-libs/gst/video/gstbasevideodecoder.c
gst-libs/gst/video/gstbasevideodecoder.h
gst-libs/gst/video/gstbasevideoencoder.c
gst-libs/gst/video/gstbasevideoencoder.h
gst/adpcmdec/Makefile.am
gst/audiovisualizers/gstbaseaudiovisualizer.c
gst/h264parse/gsth264parse.c
gst/mpegdemux/mpegtsparse.c
gst/mpegtsdemux/mpegtsbase.c
gst/mpegtsdemux/mpegtspacketizer.c
gst/mpegtsdemux/mpegtsparse.c
gst/mpegtsdemux/tsdemux.c
gst/mpegtsdemux/tsdemux.h
gst/mxf/mxfdemux.c
gst/rawparse/gstaudioparse.c
gst/videoparsers/gsth263parse.c
gst/videoparsers/gsth264parse.c
sys/d3dvideosink/d3dvideosink.c
sys/decklink/gstdecklinksink.cpp
sys/dvb/gstdvbsrc.c
sys/shm/gstshmsrc.c
sys/vdpau/h264/gstvdph264dec.c
sys/vdpau/mpeg/gstvdpmpegdec.c
tests/examples/opencv/gst_element_print_properties.c
win32/common/config.h
2012-03-29 17:41:53 +02:00
Sebastian Dröge
f291f87bb1
basecamerabinsrc: Add $(GST_PLUGINS_BASE_LIBS) to the linker flags
2012-03-27 09:36:24 +02:00
Wim Taymans
bc38bc27b7
don't pass random pointers to pull_range
2012-03-16 21:47:39 +01:00
Wim Taymans
ed82d408b1
update for bufferpool changes
2012-03-15 22:11:32 +01:00
Wim Taymans
583f5d1dc7
update for allocation query changes
2012-03-15 20:38:27 +01:00
Wim Taymans
6cbb840385
update for memory api changes
2012-03-15 13:37:36 +01:00
Wim Taymans
9f700cc3c4
take padding into account
2012-03-14 19:56:59 +01:00
Wim Taymans
77299ba6ae
fix for caps api changes
2012-03-11 19:06:59 +01:00
Thibault Saunier
1188120eba
Fix an unwanted double negation from last commit
2012-03-10 20:55:25 -03:00
Thibault Saunier
20669d461a
Fix 'ignoring return value of function declared with const attribute'
...
This always happens with GstByteReader/Writer and friends when
not taking into account returned boolean of the _read/_write functions
(which is actually wrong).
Make use of the *_unchecked variant as much as possible, or take the
returned value into account.
2012-03-10 19:22:07 -03:00
Edward Hervey
33e8e137a6
video: Update/add docs
2012-03-06 18:49:49 +01:00
Gwenole Beauchesne
5c9f790075
codecparsers: h264: record number of emulation prevention bytes in slice_header().
...
Some hardware video decode acceleration API (VA-API, DXVA) require
a bit count to the first macroblock, minus the number of emulation
prevention bytes. So, instead of having the consumer of the library
scan the slice_header() again, just record that number while parsing.
Signed-off-by: Gwenole Beauchesne <gwenole.beauchesne@intel.com>
https://bugzilla.gnome.org/show_bug.cgi?id=671203
2012-03-03 15:53:46 +00:00
Wim Taymans
ea4a0d1c2d
update for metadata API changes
2012-02-29 17:26:28 +01:00
Wim Taymans
1fb46f00ae
update for metadata tags
2012-02-28 12:10:18 +01:00
Wim Taymans
1859802d9d
update for metadata changes
2012-02-24 10:26:44 +01:00
Edward Hervey
994a5190d6
video: More documentation
2012-02-21 16:53:37 +01:00
Edward Hervey
f9e6af08c7
basevideocodec: Document structures
2012-02-21 16:52:49 +01:00
Wim Taymans
35d7c47764
glib-compat-private.h to dist
2012-02-20 10:58:09 +01:00
Mark Nauwelaerts
ca5010cc4b
Merge branch 'master' into 0.11
2012-02-15 17:14:34 +01:00
Jonas Larsson
e373df2a97
codecparsers: h264: fix SEI parsing
...
... in the presence of emulation_prevention_three_byte.
Fixes #668381 .
2012-02-15 15:10:06 +01:00
Wim Taymans
1119f6ee41
Merge branch 'master' into 0.11
...
Conflicts:
ext/chromaprint/gstchromaprint.c
ext/mpeg2enc/Makefile.am
ext/voaacenc/gstvoaacenc.c
gst/dvbsuboverlay/gstdvbsuboverlay.c
gst/mpegtsdemux/mpegtsbase.c
gst/sdp/gstsdpdemux.c
gst/videoparsers/gsth264parse.c
sys/d3dvideosink/d3dvideosink.c
tests/examples/camerabin/gst-camera-perf.c
tests/examples/camerabin/gst-camerabin-test.c
tests/examples/camerabin2/gst-camerabin2-test.c
tests/examples/mxf/mxfdemux-structure.c
tests/examples/scaletempo/demo-main.c
2012-02-10 16:46:50 +01:00
Gwenole Beauchesne
4964db6a1c
codecparsers: h264: fix parsing of VUI parameters.
...
max_dec_frame_buffering was mis-parsed because log2_max_mv_length_vertical
was parsed twice.
https://bugzilla.gnome.org/show_bug.cgi?id=668660
2012-01-30 15:21:23 +00:00
Vincent Penquerc'h
8147669971
plenty: fixup glib deprecations
2012-01-27 15:47:07 +00:00
Wim Taymans
21073e98cf
port to new memory API
2012-01-25 14:51:25 +01:00
Sebastian Dröge
a2a4300241
Merge branch 'master' into 0.11
...
Conflicts:
configure.ac
ext/kate/gstkateenc.c
gst/colorspace/colorspace.c
gst/mpegvideoparse/mpegvideoparse.c
2012-01-25 13:22:43 +01:00
Jonas Larsson
9feea330bb
h264parse: fix gst_h264_parse_clock_timestamp always failing
2012-01-23 18:31:51 +00:00
Jonas Larsson
657226d9f0
codecparsers: read the cbr_flag in h264_parse_hrd_parameters
2012-01-23 19:01:04 +01:00
Mark Nauwelaerts
b5c5fb58a3
basevideoencoder: fix parameter sanity check
2012-01-23 14:13:38 +01:00
Gwenole Beauchesne
c92efe38e9
codecparsers: h264: fix ref_pic_list_modification()
...
The entries were not filled in linearly and the termination was not
recorded either. Now, the actual number of modifications is recorded
similarly to dec_ref_pic_marking(). i.e. an explicit counter instead
of storing the termination value in the array.
https://bugzilla.gnome.org/show_bug.cgi?id=668192
2012-01-20 18:40:29 +00:00
Wim Taymans
27ee60a27b
port to new gthread API
2012-01-19 11:34:26 +01:00
Tim-Philipp Müller
699677ed8a
Merge remote-tracking branch 'origin/master' into 0.11
2012-01-13 00:11:54 +00:00
Vincent Penquerc'h
b6edb1a03a
mpegvideoparser: fix memory leak
2012-01-12 14:34:25 +00:00
Sebastian Dröge
a01a4ea2d3
Merge branch 'master' into 0.11
...
Conflicts:
gst/mpegtsdemux/tsdemux.c
gst/videoparsers/gsth264parse.c
tests/check/elements/camerabin2.c
2012-01-10 15:50:37 +01:00
Oleksij Rempel (Alexey Fisher)
1d0507af89
basevideodecoder: add option to hande alt frame data
...
altref/invisible 'frame' do not describe some frame directly, so it can't be
displayed and timestamps should not be updated.
Fix bug: https://bugzilla.gnome.org/show_bug.cgi?id=655245
Signed-off-by: Oleksij Rempel (Alexey Fisher) <bug-track@fisher-privat.net>
2012-01-10 08:48:45 +01:00
Mark Nauwelaerts
360cbaa46c
codecparsers: mpeg4: fix parsing when recursively skipping user data
2012-01-09 15:03:30 +01:00
Zhao Halley
5676ff5bf4
codecparsers: remove h263 gob parsing, since there is no gob immediate after svh
2012-01-05 08:34:36 -03:00
Zhao Halley
bb52df5e24
codecparsers: add missing zero_bits in h263 parsing
2012-01-05 08:34:35 -03:00
Zhao Halley
1138aab1db
codecparsers: includes start_marker in h263 header for parsing
2012-01-05 08:34:35 -03:00
Zhao Halley
052d1ace5e
codecparsers: fix offset issue in h263 parse
2012-01-05 08:34:35 -03:00
Zhao Halley
70390ad846
codecparsers: fix mask pattern for h263 start marker
2012-01-05 08:34:35 -03:00
Sebastian Dröge
ef31b20afe
signalprocessor: The multichannel.h header is gone now
2012-01-05 10:38:22 +01:00
Wim Taymans
b592f431e3
GST_FLOW_UNEXPECTED -> GST_FLOW_EOS
2012-01-03 15:26:54 +01:00
Edward Hervey
4917e16458
Merge remote-tracking branch 'origin/master' into 0.11
...
Conflicts:
tests/examples/camerabin2/Makefile.am
2011-12-30 11:49:27 +01:00
Edward Hervey
f70a623418
Merge remote-tracking branch 'origin/master' into 0.11-premerge
...
Conflicts:
docs/libs/Makefile.am
ext/kate/gstkatetiger.c
ext/opus/gstopusdec.c
ext/xvid/gstxvidenc.c
gst-libs/gst/basecamerabinsrc/Makefile.am
gst-libs/gst/basecamerabinsrc/gstbasecamerasrc.c
gst-libs/gst/basecamerabinsrc/gstbasecamerasrc.h
gst-libs/gst/video/gstbasevideocodec.c
gst-libs/gst/video/gstbasevideocodec.h
gst-libs/gst/video/gstbasevideodecoder.c
gst-libs/gst/video/gstbasevideoencoder.c
gst/asfmux/gstasfmux.c
gst/audiovisualizers/gstwavescope.c
gst/camerabin2/gstcamerabin2.c
gst/debugutils/gstcompare.c
gst/frei0r/gstfrei0rmixer.c
gst/mpegpsmux/mpegpsmux.c
gst/mpegtsmux/mpegtsmux.c
gst/mxf/mxfmux.c
gst/videomeasure/gstvideomeasure_ssim.c
gst/videoparsers/gsth264parse.c
gst/videoparsers/gstmpeg4videoparse.c
2011-12-30 11:41:17 +01:00
Thiago Santos
51f399686e
basevideocodec: Reset should reset current caps
...
New caps will need to be negotiated when reset happens
(PAUSED to READY). Without reseting the internal
stored format, basevideoencoder/decoder wouldn't call the
configuration function when the same caps was negotiated
again as they would believe this was the same caps as before.
The issue is that _stop has been called when going to READY and
the elements would have reset their internal codec libs/state as
well. A new configuration should be done.
2011-12-30 00:02:46 -03:00
Thiago Santos
36fbb8eea4
basecamerabinsrc: remove redundant functions
...
gst_bin_get_by_interface should be enough for applications.
Haven't seen anyone using those other than wrappercamerabinsrc.
2011-12-22 16:17:56 -03:00
Mark Nauwelaerts
248a1c86e0
codecparsers: h264: clear sei message prior to parsing
...
Fixes #666584 .
2011-12-20 14:06:34 +01:00
Sebastian Dröge
c869b21b17
basevideocodec: Don't use G_TYPE_REGISTER_BOXED() yet
...
This would require GLib 2.26.
2011-12-13 10:18:24 +01:00
Matej Knopp
4342eea637
basevideo: Make framestate a reference counted boxed object
...
...and also clear all existing frames when resetting the decoder or encoder.
2011-12-12 14:16:28 +01:00
Matej Knopp
70d13bbb32
basevideo: Make GstVideoFrame a reference counted boxed object
...
...and also clear all existing frames when resetting the decoder or encoder.
2011-12-12 14:12:36 +01:00
Sebastian Dröge
811a2ef7aa
basevideoencoder: Only make the header buffer metadata writable, not the buffer
2011-12-08 11:51:36 +01:00
Sebastian Dröge
fd828c4ac7
basevideoencoder: Fix handling of force-keyunit events
2011-12-08 10:19:40 +01:00
Zhao Halley
4960d27d73
codecparsers: first video_packet_header doesn't start with resync_marker
2011-12-06 17:05:52 -03:00
Zhao Halley
5aaf56af29
codecparsers: return NO_PACKET if needed
2011-12-06 17:05:52 -03:00
Zhao Halley
3aa9081ef5
codecparsers: fix an issue in check resync marker
2011-12-06 17:05:52 -03:00
Zhao Halley
befc724e5a
codecparsers: fix an issue in finding the last video packet in vop
2011-12-06 17:05:52 -03:00
Zhao Halley
164faafad6
codecparsers: include resync marker in video packet size
2011-12-06 17:05:52 -03:00
Zhao Halley
f33f26e437
codecparsers: scan next resync marker after current one
2011-12-06 13:29:40 -03:00
Zhao Halley
012c40140f
codecparsers: fix < 0 issue of guint in mpeg4 parser
...
gst_byte_reader_masked_scan_uint32 returns a guint, not a gint, which
explains the issue we sometime get using < 0 instead of == -1;
2011-12-06 13:29:40 -03:00
Zhao Halley
391ecbda71
codecparsers: fix pattern/mask of resync_marker parsing of mpeg4
2011-12-06 13:29:40 -03:00
Alessandro Decina
702c055645
codecparsers: fix compile warnings in gstmpeg4parser.c
2011-12-06 13:15:58 +01:00
Edward Hervey
c4d987b6d3
codecparsers: Variant of _identify_nalu without checks
...
This is useful for cases where the caller *knows* that the provided
input contains a whole NALU and can therefore avoid:
* the expensive checks for the next start code (which won't be present)
* delaying the input parsing (since we would need the next incoming NALU
in order for the parsing code to detect the next start code)
https://bugzilla.gnome.org/show_bug.cgi?id=665584
2011-12-05 19:03:05 +01:00
Mark Nauwelaerts
91e054ba58
codecparser: unbreak h264 slice header parsing
...
.. introduced by refactoring in commit 177451c921
2011-12-05 13:10:18 +01:00
Matej Knopp
27b677d179
basevideodecoder: Fix reference counting of codec_data
2011-12-05 09:41:34 +01:00
Wim Taymans
cacdd29b5c
camerabin: use GstSample for the preview
2011-12-01 16:59:14 +01:00
Wim Taymans
759d62bafe
fix for moved interfaces
2011-11-29 19:11:22 +01:00
Gwenole Beauchesne
177451c921
codecparsers: h264: record ref_pic_list_modification().
2011-11-29 09:49:53 -03:00
Gwenole Beauchesne
99101a5824
codecparsers: h264: rename ref_pic_list_reordering() to ref_pic_list_modification().
...
Upgrade to current AVC specification.
2011-11-29 09:49:53 -03:00
Sebastian Dröge
e98b17a8dc
basevideoencoder: Pass the all-headers field of the force-key-unit event to the subclass
2011-11-29 12:18:20 +01:00
Sebastian Dröge
de6782cce4
basevideoencoder: Implement full support for the new force-key-unit event
...
Including support for the running-time and count fields.
2011-11-29 12:18:20 +01:00
Sebastian Dröge
97515ca050
basevideoencoder: Use new force-keyunit event API from gst-plugins-base
2011-11-29 12:18:20 +01:00
Sebastian Dröge
904eed3547
basevideoencoder: Adjusting padding is not required for -bad libraries
2011-11-29 12:18:19 +01:00
Sebastian Dröge
25002df594
basevideoencoder: Move some fields to the private part of the instance struct
2011-11-29 12:18:19 +01:00
Sebastian Dröge
b0000b9041
basevideoencoder: Make headers metadata writable before pushing downstream
...
The timestamp, duration, etc of the headers has to be changed.
2011-11-29 12:18:19 +01:00
Sebastian Dröge
4501412af3
basevideoencoder: Push the downstream force-keyframe event after the next keyframe
...
Even if the corresponding GstVideoFrame doesn't have the is_sync_point
flag set.
2011-11-29 12:18:19 +01:00
Sebastian Dröge
209ea84ef4
basevideoencoder: Don't push an upstream force-keyunit event downstream
2011-11-29 12:18:19 +01:00
Jonas Larsson
54cb226009
basevideoencoder: Add initial support for the all-headers field of the force-keyframe event
...
See bug #607742 .
2011-11-29 12:18:19 +01:00
Tim-Philipp Müller
12c678c7cf
codecparsers: minor fixes
...
Const-ify one more VLC table. Fix spelling of 'hybrid'.
No need to explicitly call ensure_debug_category() everywhere,
that will be done automatically from GST_LOG() and friends
via GST_CAT_DEFAULT.
2011-11-29 09:15:11 +00:00
Thibault Saunier
e1bacb4813
codecparser: mpeg4: Look for resync code in _mpeg4_parse
...
This way the API is simpler and users can call 1 single function for packet
detection.
2011-11-28 21:25:34 -03:00
Thibault Saunier
e464370163
codecparsers: Declare private arrays as static all around
2011-11-28 21:25:34 -03:00
Thibault Saunier
fd593d6cc8
codecparsers: mpeg4: Implement an Mpeg4 part 2 parsing library
2011-11-28 21:25:34 -03:00
Thibault Saunier
4439048e4a
codecparsers: Move shared code to a parser utils file
2011-11-28 21:25:34 -03:00
Vincent Penquerc'h
7521b597f4
various: fix pad template ref leaks
...
https://bugzilla.gnome.org/show_bug.cgi?id=662664
2011-11-28 13:08:27 +00:00
Tim-Philipp Müller
77361e2919
Merge remote-tracking branch 'origin/master' into 0.11
...
Conflicts:
ext/opus/gstopusdec.c
ext/opus/gstopusparse.c
gst-libs/gst/video/gstbasevideodecoder.c
gst-libs/gst/video/gstbasevideodecoder.h
2011-11-26 15:37:25 +00:00
Tim-Philipp Müller
f78e9e1684
basevideodecoder: some more debug logging
2011-11-25 11:37:57 +00:00
Tim-Philipp Müller
a039499bf1
basevideodecoder: add API to drop a frame and post a QoS message on the bus
...
https://bugzilla.gnome.org/show_bug.cgi?id=640017
API: gst_base_video_decoder_drop_frame()
2011-11-25 11:37:57 +00:00
René Stadler
4a8373b267
basecamerasrc: port to 0.11
...
Only to fix the build really (gtk-doc is trying to pick up the unbuildable
lib). Not tested at all (but pretty trivial case anyways).
2011-11-24 11:59:19 +01:00
Matej Knopp
9d0bdcf6d7
Fix printf format compiler warnings on OS X / 64 bit
...
https://bugzilla.gnome.org/show_bug.cgi?id=662618
2011-11-23 23:43:15 +00:00
Wim Taymans
0a9387c43c
Merge branch 'master' into 0.11
...
Conflicts:
ext/opus/gstopusdec.c
ext/opus/gstopusenc.c
ext/opus/gstopusparse.c
gst/audiovisualizers/gstwavescope.c
gst/filter/Makefile.am
gst/filter/gstfilter.c
gst/filter/gstiir.c
gst/playondemand/gstplayondemand.c
2011-11-23 11:08:39 +01:00
Tim-Philipp Müller
27556bd668
docs: fix comment in gst_base_video_decoder_get_max_decode_time() docs
2011-11-22 23:04:49 +00:00
Tim-Philipp Müller
c75922b96b
basevideodecoder: fix weird event list handling
...
Get rid of weird code that copies a list manually, taking
ownership of the elements and then frees the old list. Instead,
just take over the old list entirely. (If the intent was to
reverse the list, one could use g_list_reverse() instead).
Then, push events in the list out from last to first (since they
were prepended as they came in) instead of just pushing out the
last in the list and leaking the others.
2011-11-22 20:04:13 +00:00
Wim Taymans
e813abf631
update for activation changes
2011-11-21 13:37:20 +01:00
Mark Nauwelaerts
eba9bb5e5a
h264parser: initialize additional sps field value
...
Fixes #663552 .
2011-11-18 17:19:57 +01:00
Wim Taymans
b948769e6e
add parent to activate functions
2011-11-18 13:58:41 +01:00
Wim Taymans
67d328bbe2
fix for scheduling mode rename
2011-11-18 12:38:14 +01:00
Sebastian Dröge
022cdfc5d3
basevideoencoder: Only call ::reset once in READY->PAUSED
2011-11-17 10:34:07 -08:00
Wim Taymans
bc6ed0bf97
Merge branch 'master' into 0.11
...
Conflicts:
ext/celt/gstceltdec.c
ext/opus/gstopusdec.c
ext/opus/gstopusdec.h
ext/opus/gstopusenc.c
ext/opus/gstopusenc.h
ext/opus/gstopusparse.c
2011-11-17 17:32:42 +01:00
Wim Taymans
940de5b195
add parent to pad functions
2011-11-17 15:53:42 +01:00
Wim Taymans
6d92ecac75
add parent to query function
2011-11-16 17:30:38 +01:00
Wim Taymans
85afc77dea
_query_peer_*() -> _peer_query_*()
2011-11-15 17:55:50 +01:00
Wim Taymans
03713e5045
change getcaps to query
2011-11-15 16:34:13 +01:00
Sreerenj Balachandran
f509960fea
mpegvideoparse:Correct the skipping of vbv_delay in picture header and some typo fixes.
...
https://bugzilla.gnome.org/show_bug.cgi?id=663309
2011-11-14 08:32:32 -03:00
Wim Taymans
dbdaa23742
Merge branch 'master' into 0.11
...
Conflicts:
gst/colorspace/colorspace.c
2011-11-09 12:19:04 +01:00
Thijs Vermeir
e40ca78278
fix documentation typo
2011-11-09 12:00:05 +01:00
Wim Taymans
0d0444e0fa
remove query types
2011-11-09 11:55:14 +01:00
Vincent Penquerc'h
8766717b6c
mpegvideoparser: input data is const, mark it so
2011-11-07 11:12:44 +00:00
Wim Taymans
62544179e2
Merge branch 'master' into 0.11
2011-11-07 10:02:00 +01:00
Stefan Sauer
9f73890892
controller: port to new controller location and api
2011-11-04 20:14:01 +01:00
René Stadler
9cbc1fd23a
h264parser: add more size checks and improve existing
...
Don't subtract with unsigned values, that will bite us. Also fix format
specifier in the log message.
2011-11-04 13:10:01 +01:00
Wim Taymans
8e5579c594
video: port somewhat to 0.11
...
In 0.11 this should be done differently
2011-11-04 11:24:53 +01:00
Wim Taymans
f4c283a9cc
Merge branch 'master' into 0.11
2011-11-04 11:01:42 +01:00
Olivier Crête
9f76573bda
surfaceconverter: Remove duplicated forward declaration
...
It seems that some compilers don't like duplicated typedefs.
2011-11-03 17:17:10 -04:00
Wim Taymans
3f6e6053c6
videoenc: fix compiler warning
2011-11-03 16:57:29 +01:00
Wim Taymans
65d306e1f7
video: fix for metadata API change
2011-11-03 16:57:17 +01:00
Edward Hervey
c8561e7e1b
libs/video: Finish porting to 0.11
2011-11-03 13:57:20 +01:00
Nicolas Dufresne
149c058209
video: Add GstVideoContext interface
...
This interface will be used to implement video context sharing. Those
context could be X11 Display, VaDisplay, etc.
2011-11-03 10:41:55 +01:00
Nicolas Dufresne
2808290592
video: Abstract surface API for HW accelerated codecs
2011-11-03 10:33:11 +01:00
Vincent Penquerc'h
ca2f96caac
vc1parser: do not overwrite buffer
...
I do not know the bitstream format, but this seems likely
to be what was intended. Also add a check on the number of
items to read.
https://bugzilla.gnome.org/show_bug.cgi?id=662776
2011-11-03 09:46:02 +01:00
Sreerenj Balachandran
32a1e05795
vc1parser: fix parsing of RANGEREDFRM
2011-11-03 09:44:18 +01:00
Wim Taymans
769a9791a4
Merge branch 'master' into 0.11
2011-11-02 10:31:24 +01:00
René Stadler
fd4eb2e220
h264parser: fix access to uninitialized memory
...
When vui->timing_info_present is 0, vui->fixed_frame_rate_flag and others
cannot be accessed since they have not been set.
It was also possible that sps->fps_{num,den} end up initialized here.
2011-11-01 15:13:56 +01:00
René Stadler
6c4f5b6ae9
h264parser: fix MAX_SPS/PPS boundary checks
2011-11-01 12:29:35 +01:00
Tim-Philipp Müller
10d31a588d
Update for pad API changes
...
GstProbeType, GstProbeReturn and GstActivateMode -> GstPad*
2011-11-01 00:45:25 +00:00
Tim-Philipp Müller
93ed9cd687
Merge remote-tracking branch 'origin/master' into 0.11
2011-10-31 14:51:32 +00:00
Alessandro Decina
16ce440e7f
basevideoencoder: handle failures in start() and stop()
2011-10-31 11:38:58 +01:00
Tommi Myöhänen
de138dbc57
basecamerasrc: optimize state changing speed
...
Create preview pipeline already in initialization phase. This speeds
up NULL_TO_READY state change. Also implement a separate function for
setting the preview filter element.
This also restricts the preview filter property to work only on
NULL state.
2011-10-31 07:14:36 -03:00
Wim Taymans
9ca3734e52
make elements compile again
2011-10-28 15:16:43 +02:00
Wim Taymans
ce41348f78
Merge branch 'master' into 0.11
2011-10-27 16:13:56 +02:00
Stefan Sauer
69f8921e2c
interfaces: clean up the use of iface and class/klass
2011-10-21 15:04:05 +02:00
Sreerenj Balachandran
48275dc071
vc1parser: Correct the parsing of FRMRTQ_POSTPROC and BITRTQ_POSTPROC
2011-10-21 10:53:47 +02:00
Sreerenj Balachandran
30a3c5147b
vc1parser: Correct the parsing of sequece layer.
2011-10-21 10:53:47 +02:00
Wim Taymans
effab293cb
Merge branch 'master' into 0.11
2011-10-18 14:32:05 +02:00
Thibault Saunier
73d847ba24
codecparsers: VC1: Compute par and fps in advanced profile
2011-10-17 13:17:40 +02:00
Thibault Saunier
14590f06a0
codecparsers: VC1: Handle interlaced fields
2011-10-17 13:17:40 +02:00
Thibault Saunier
88766dc738
codecparsers: VC1: Handle interlaced frames properly
2011-10-17 13:17:40 +02:00
Thibault Saunier
7a689b6805
codecparsers: VC1: Use enums when possible
...
Add GstVC1FrameCodingMode and use it for the fcm field
Use GstVC1PictureType as variable type for ptype
Use GstVC1Level as variable type for level
2011-10-17 13:17:40 +02:00
Gwenole Beauchesne
40a1ed8288
codecparsers: vc1: fix bitplanes decoding (check for errors).
2011-10-17 13:17:40 +02:00
Gwenole Beauchesne
839acd54f6
codecparsers: vc1: fix bitplanes decoding (INVERT mode).
2011-10-17 13:17:40 +02:00
Gwenole Beauchesne
4280a61a23
codecparsers: vc1: fix MVMODE and MVMODE2 parsing.
2011-10-17 13:17:39 +02:00
Gwenole Beauchesne
b23f7eb38d
codecparsers: vc1: handle skipped pictures gracefully.
2011-10-17 13:17:39 +02:00
Thibault Saunier
ce71fdae1b
codecparsers: VC1: Implement bitplanes diff operator
2011-10-17 13:17:39 +02:00
Thibault Saunier
8090627581
codecparsers: VC1: Some cosmetics and debug logging enhancements
2011-10-17 13:17:39 +02:00
Gwenole Beauchesne
ef5b8ef581
codecparsers: vc1: Implement bitplanes handling properly
...
Add a new GstVC1BitPlanes API.
2011-10-17 13:17:39 +02:00
Gwenole Beauchesne
ac552a4f82
codecparsers: vc1: fix BFRACTION parser (values range + overflow).
2011-10-17 13:17:39 +02:00
Gwenole Beauchesne
52d8510ee0
codecparsers: vc1: fix VLC decoding.
2011-10-17 13:17:39 +02:00
Thibault Saunier
1a1935dacf
codecparsers: VC1: Implement FrameLayer parsing
2011-10-17 13:17:39 +02:00
Thibault Saunier
fc09e45108
codecparsers: VC1: Implement Sequence Layer Data Structures
...
Instead of having a single VC1SequenceHeader structure, use the 3 structs
from the "Table 265: Sequence Layer Data Structure" of the specification
for the library to be more flexible.
Implement the functions to parse them
2011-10-17 13:17:38 +02:00
Thibault Saunier
446e0a5216
codecparsers: VC1: Compute framerate and bitrate in simple/main profiles
2011-10-17 13:17:38 +02:00
Thibault Saunier
2b5e7c1f0f
codecparsers: VC1: compute MB height and width
...
Add them to GstVC1SequenceHdr
2011-10-17 13:17:38 +02:00
Gwenole Beauchesne
6137d841a0
codecparsers: vc1: debug cosmetics.
2011-10-17 13:17:38 +02:00
Gwenole Beauchesne
de4a1049e2
codecparsers: vc1: record picture layer header size in bits.
2011-10-17 13:17:38 +02:00
Gwenole Beauchesne
b181bd8bae
codecparsers: vc1: compute altpquant.
2011-10-17 13:17:38 +02:00
Gwenole Beauchesne
604ce193dd
codecparsers: vc1: use GstVC1ParserResult type name similarly to other parsers.
2011-10-17 13:17:37 +02:00
Gwenole Beauchesne
bd686a6370
codecparsers: vc1: handle End-of-Sequence correctly.
2011-10-17 13:17:37 +02:00
Gwenole Beauchesne
c90bf89b16
codecparsers: mpeg2: fix quant_matrix_extension() parser for chroma intra QM.
2011-10-17 13:17:37 +02:00
Wim Taymans
7f851794d6
Merge branch 'master' into 0.11
2011-10-16 15:28:31 +02:00
Thiago Santos
acdd2c20f7
basecamerasrc: Set preview pipeline to ready when going to ready
...
The preview pipeline should go to ready when the camerasrc goes
to ready, as in ready elements shouldn't be processing data.
2011-10-11 23:30:49 -03:00
Wim Taymans
4381a0a3a2
basevideodecoder: more porting
2011-10-05 12:53:07 +02:00
Wim Taymans
6b59788bb1
video: start porting some base classes
2011-10-04 14:27:32 +02:00
Wim Taymans
fae37396a4
photography: remore implement-interface
2011-10-04 14:26:21 +02:00
Wim Taymans
458cb1b37c
signalprocessor: port to 0.11
2011-10-04 13:33:53 +02:00
Wim Taymans
a7d614b963
Merge branch 'master' into 0.11
2011-10-04 13:29:21 +02:00
Thiago Santos
21653a793a
camerabin2: Initialize camerabin2 preview pipeline data with 0
...
Use g_new0 to initialize all fields with 0 to only cleanup what has been
initialized. This makes cleanup work correctly when some initialization
fails and pointers are left in some inconsistent state.
2011-10-03 16:16:23 -03:00
Wim Taymans
d26f7319e9
Merge branch 'master' into 0.11
2011-10-03 11:24:04 +02:00
Thiago Santos
b03c7478d4
camerabin2: removing capsfilter from preview pipeline
...
appsink already has a caps property, so we don't need the
capsfilter here
2011-09-29 11:50:04 -03:00
Wim Taymans
145c4b9f74
photography: remove implements-interface prerequisite
2011-09-28 12:54:38 +02:00
Thibault Saunier
705a80d957
codecparser: VC1: Implement a VC1 parsing library
2011-09-26 08:46:37 -03:00
Thibault Saunier
2c928aba19
codecparsers: Declare the new APIs as unstable for the time being
2011-09-26 08:11:45 -03:00
Thiago Santos
43ec4f46b8
basecamerasrc: Fail state change if preview pipeline fails creation
...
If the preview pipeline fails creation, for any reason, we should
fail basecamerasrc state change.
Also adds a missing g_return_if_fail check to preview pipeline
functions
2011-09-20 13:02:17 -03:00
Edward Hervey
7d5bd1992e
codecparsers: Add checks to input, and fix size checking
2011-09-19 16:40:45 +02:00
Edward Hervey
e6212219ed
codecparsinglibs: Doc and indentation fixes
2011-09-19 14:03:23 +02:00
Vincent Penquerc'h
ac5121eb01
h264parse: do not try to read from a non existent VUI
...
https://bugzilla.gnome.org/show_bug.cgi?id=658800
2011-09-19 09:27:06 +02:00
Thibault Saunier
f396baa3af
codecparsers: mpegvideo: Debugging symbols enhancements
2011-09-14 12:13:19 -03:00
Thibault Saunier
309df7e1e8
codecparsers: mpegvideo: Add the ChromaType enum
2011-09-14 12:13:19 -03:00
Thibault Saunier
10215d26de
codecparsers: mpegvideo: Change broken_gop to broken_link
...
This way we respect the standard naming
2011-09-14 12:13:19 -03:00
Alessandro Decina
668b0ab4f8
codecparsers: fix compiler warnings
2011-09-12 10:33:06 +02:00
Thibault Saunier
edebb4ed92
codecparsers: h264: Implement the nal_parser_free function
2011-09-09 15:02:35 -03:00
Thibault Saunier
949ba4e895
codecparsers: h264: Use g_slice instead of g_malloc in nal_parser_new
2011-09-09 15:02:34 -03:00
Thibault Saunier
8b268bd49d
codecparsers: h264: Update the documentation
...
Fix a few error.
Document missing parts.
Add links to the specifications
2011-09-09 15:02:31 -03:00
Thiago Santos
12f77b27e2
camerabin2: preview: No need for appsink to store the last buffer
...
There is no need for preview's appsink to keep a reference to the last buffer,
so disable the property to make it unref the buffers sooner.
2011-09-06 23:03:40 -03:00
Thiago Santos
8a56a7de6d
camerabin2: preview: Appsink doesn't need to sync
...
Set sync to false on preview's pipeline appsink
2011-09-05 14:39:20 -03:00
Thiago Santos
d41af4e2f8
camerabin2: preview: Remove one of the two colorspace converters
...
The preview pipeline doesn't need 2 colorspace converters, remove
one to speed up caps negotiation and reduce the delay on getting
the first preview buffer out of the preview pipeline.
It shouldn't cause problems as videoscale and ffmpegcolorspace seems
to handle the same caps, so no conversion should be needed for
videoscale. Additionally, camerabin1 has been working with a similar
pipeline with a single ffmpegcolorspace and no bugs have been open about it
so far.
2011-09-05 09:59:53 -03:00
Thiago Santos
0bdde84f3b
camerabin2: preview: Disable appsrc signals emission
...
Camerabin2 doesn't check appsrc's signals, so disable them
2011-09-05 09:33:45 -03:00
Vincent Penquerc'h
8a044de701
basevideoenc: do not try to calculate latency from an unknown framerate
...
It'll divide by zero, and latency is unknown for an unknown framerate.
Fixes an assert in the schroenc test.
https://bugzilla.gnome.org/show_bug.cgi?id=657419
2011-09-05 12:08:00 +02:00
Edward Hervey
52a6db2206
docs: minor fixes
2011-09-02 16:10:17 +02:00
Edward Hervey
53fcc53d22
gst-libs: Remove play directory. Was unported since 0.8
2011-09-02 16:10:17 +02:00
Gwenole Beauchesne
3952c0dd3b
codecparsers: h264: fix PPS parser
...
Fix transform_8x8_mode_flag and second_chroma_qp_index_offset
2011-09-02 15:46:04 +02:00
Gwenole Beauchesne
d7fafc551a
codecparsers: h264: fix NAL reader initialization.
2011-09-02 15:46:04 +02:00
Gwenole Beauchesne
d37f842aaa
codecparsers: h264: handle end-of-seq and end-of-stream NAL gracefully.
2011-09-02 15:46:03 +02:00
Gwenole Beauchesne
ccfd761659
codecparsers: h264: fix ref_pic_list_reordering().
2011-09-02 15:46:03 +02:00
Gwenole Beauchesne
621fd01281
codecparsers: h264: fix pred_weight_table() parsing.
...
Use 16-bit signed integer values for weight values because valid
ranges are -128 to +128 inclusive.
2011-09-02 15:46:03 +02:00
Gwenole Beauchesne
4bacba620f
codecparsers: h264: record slice_header() size in bits.
2011-09-02 15:46:03 +02:00
Gwenole Beauchesne
0a0c73169f
codecparsers: h264: fix slice_header() parsing.
...
We were not parsing the slice headers until the actual end, we are now
parsing until the end.
2011-09-02 15:46:03 +02:00
Gwenole Beauchesne
43e47009d5
codecparsers: h264: fix filler-data NAL unit type name.
2011-09-02 15:46:03 +02:00
Gwenole Beauchesne
10ee3593f2
codecparsers: mpeg: add user-data packet start code definition.
2011-09-02 15:46:02 +02:00
Gwenole Beauchesne
888e8144a0
codecparsers: mpeg: fix Picture_Coding_Extension parser.
2011-09-02 15:46:02 +02:00
Thibault Saunier
a1cfba43f6
codecparsers: h264: Add an h.264 bitstream parsing library
2011-09-02 15:46:02 +02:00
Thibault Saunier
c64b99339c
codecparsers: mpeg: Add an mpeg video bitstream parsing library
...
Create a new codecparsers library
2011-09-02 15:46:02 +02:00
Thiago Santos
e17d99c4c4
basecamerabinsrc: Optimize preview pipeline startup
...
Use gst_element_link_pads_full to optimize preview pipeline startup,
leading to a faster camerabin2 startup as well.
2011-08-31 15:45:18 -03:00
Vincent Penquerc'h
f3cb4439cf
basevideoencoder: fix element leak
...
and this concludes an hour of yelling at the bloody test failing,
only to track down the problem not being in the test.
https://bugzilla.gnome.org/show_bug.cgi?id=657368
2011-08-26 10:25:46 +02:00
Thiago Santos
011eddcd0e
camerabin2: Remove from experimental
...
Remove camerabin2 from experimental, allowing it to be built
without needing to pass --enable-experimental on configure.
2011-08-23 19:26:31 -03:00
Sebastian Dröge
8c743fbc0f
basevideo: Fix locking, especially if both pads have different streaming threads
2011-08-18 10:23:32 +02:00
Sebastian Dröge
a081501a90
basevideo: Don't call g_type_class_peek_parent() in class_init
...
This is already done by the GObject boilerplate macro
2011-08-18 10:15:20 +02:00
Sebastian Dröge
d576e23aa4
basevideoencoder: Proxy the width/height/framerate/PAR constraints of downstream caps to upstream
...
This allows to specify constraints on the compressed downstream caps
by muxers or capsfilters, which will then be forwarded to upstream
and allows video converters to fulfill the constraints.
Code based on Mark Nauwelaerts audio encoder base class.
2011-08-12 12:25:03 +02:00
Sebastian Dröge
92c3aaa6e5
basevideoencoder: Remove old ::getcaps() comment
2011-08-12 12:13:45 +02:00
Sebastian Dröge
4a76d3a978
basevideoencoder: Remove ::get_caps() vfunc
...
Subclasses can set the caps more efficiently and this only
caused additional indirections.
2011-08-12 12:06:23 +02:00
Sebastian Dröge
6e4e4e107c
basevideodecoder: Use the cached video frame size instead of recalculating it
2011-08-09 10:43:55 +02:00
Tommi Myöhänen
9238647314
photography: add missing FLICKER_REDUCTION capability
...
GstPhotography API contains functions to get/set flicker reduction
mode, but GstPhotoCaps enumeration doesn't have item for it, so elements
are not able to report whether they support this feature or not.
Also add useful GST_PHOTOGRAPHY_CAPS_ALL for easily selecting all
capabilities at once.
https://bugzilla.gnome.org/show_bug.cgi?id=655318
2011-08-03 22:04:45 -03:00
Sebastian Dröge
ce0655c275
basevideoencoder: Make access to the list of frames threadsafe
2011-08-03 09:41:20 +02:00
Raluca Elena Podiuc
058a3d9d4c
basecamerasrc: remove unused get_allowed_input_caps
...
The use of this method was removed in:
commit 539f10f4d9
basecamerasrc: More cleanup
The code from wrappercamerabinsrc is from v4l2camerasrc but is unused:
get_allowed_input_caps is not called anywhere.
2011-08-02 13:39:18 -03:00
Raluca Elena Podiuc
28df77b7b0
basecamerasrc: don't use class offsets for start/stop-capture signal handlers
2011-08-02 13:39:18 -03:00
Raluca Elena Podiuc
2d17cd3350
basecamerasrc: document why we set preview to PLAYING
2011-08-02 13:39:18 -03:00
Raluca Elena Podiuc
5aa37ebdc8
basecamerasrc: document callbacks
...
Note for each callback:
- when it is called,
- whether it is mandatory or optional.
2011-08-02 13:39:17 -03:00
Raluca Elena Podiuc
c189ba3496
basecamerabinsrc: preview: remove unused new_preroll callback
2011-08-02 13:39:17 -03:00
Sebastian Dröge
976d372f9b
basevideoencoder: Allow finishing of frames with no src_buffer to drop/free the GstVideoFrame
2011-07-21 08:09:11 +02:00
Sebastian Dröge
e5be8aa8ff
basevideoencoder: Only get caps from the subclass if they were not set yet by the subclass
2011-07-21 08:09:11 +02:00
Sebastian Dröge
b2525a3044
basevideoencoder: Delay sending of serialized sink events until finish_frame()
2011-07-21 08:09:11 +02:00
Sebastian Dröge
f011e59943
basevideoencoder: Add ::reset vfunc and handle ::reset/::finish the same way as in the decoder
2011-07-21 08:09:10 +02:00
Sebastian Dröge
2dbd24ca84
basevideoencoder: Use a temporary GstVideoState until the subclass accepted the caps
...
Also store the caps in the GstVideoState and assume a PAR of 1/1 instead
of 0/1 if no PAR is specified in the caps.
2011-07-19 12:52:31 +02:00
Sebastian Dröge
83c4e8814e
basevideodecoder: First inform subclass about resetting before resetting/freeing all internal state
...
The subclass might want to access the old state.
2011-07-11 12:59:07 +02:00
Sebastian Dröge
a59246c1d1
basevideodecoder: Track present position on discont before resetting it
2011-07-11 12:36:42 +02:00
Sebastian Dröge
08823f80d6
basevideodecoder: Also protect the list of pending frames from concurrent access when pushing all pendings events
2011-07-11 11:52:48 +02:00
Sebastian Dröge
81f4c9e8bf
basevideocodec: Protect access to the list of pending frames with the object lock
...
This is required if ::finish_frame() and all buffer output happens
on a different thread than the sinkpad streaming thread.
2011-07-11 11:28:40 +02:00
Sebastian Dröge
caed64c720
basevideodecoder: Set the correct lists to NULL after freeing
2011-07-11 09:35:25 +02:00
Sebastian Dröge
584859488b
basevideodecoder: Work with a copy of the GstVideoState in setcaps until the caps are accepted
...
Also fix a refcount problem with the codec_data.
2011-07-11 09:19:28 +02:00
Sebastian Dröge
e61d3d1a0c
basevideo: Move the utils from the codec header to its own header
2011-07-09 11:40:17 +02:00
Sebastian Dröge
5f55a74571
basevideo: Use GSlice for allocating GstVideoFrame and don't duplicate code in the decoder base class
2011-07-09 11:09:12 +02:00
Sebastian Dröge
f341386b64
basevideodecoder: Don't reorder serialized src events
...
And allow to drop EOS by the subclass if ::finish returns
DROPPED. This requires that the subclass sends EOS manually later.
Fixes bug #653544 .
2011-07-09 11:04:18 +02:00
Sebastian Dröge
525875727a
basevideo: Add the caps to the GstVideoState and clean up caps/codec_data properly
...
Having access to the caps in ::set_format can be useful if
non-standard caps fields like the h264 alignment must be accessed.
2011-07-09 11:02:01 +02:00
Sebastian Dröge
fc93c66d3b
basevideo: Add destroy notify for the coder_hook to prevent memory leaks
...
Fixes bug #654293 .
2011-07-09 11:00:28 +02:00
David Schleef
929603d56c
basevideodecoder: Better handling of invalid par
2011-06-04 14:09:29 -07:00
Debarshi Ray
03bb5dc8ba
Remove unused but set variables
...
This is needed to satisfy the new -Wunused-but-set-variable added in
GCC 4.6: http://gcc.gnu.org/gcc-4.6/changes.html
2011-05-30 22:52:03 +10:00
Lauri Lehtinen
c86d662b23
basecamerabinsrc: Handle errors from preview pipeline
...
Implements a message handling function to preview pipeline bus.
If GST_MESSAGE_ERROR is seen, considers preview pipeline unable
to do its job and posts an error message to application.
Sets pipeline element to NULL so that subsequent calls to post_preview
and set_caps functions just returns without pushing anything to the
disposed preview pipeline. Leaves further actions to the application.
2011-05-16 18:08:39 -03:00
Lauri Lehtinen
802028081c
basecamerabinsrc: Protection for previewpipeline when setting new preview caps
...
Implements a state indicating flag to preview pipeline,
so that new caps are not set if the pipeline is processing a
preview. The caps are set as pending and applied when the
next preview post is called.
In this case a wait was implemented in the post_preview function,
so that new preview image buffer will wait until the other previews
have been posted to the application and the new caps can be used
safely.
2011-05-16 18:08:39 -03:00
Mark Nauwelaerts
9b6e819247
basevideodecoder: handle missing framerate when calculating timestamp
2011-05-16 20:32:24 +02:00
Mark Nauwelaerts
cfe85ad780
basevideodecoder: debug code style fixes
2011-05-16 20:32:24 +02:00
Mark Nauwelaerts
2f6af91f09
basevideodecoder: tune parsing sink caps into video state
...
... to provide subclass with more information w.r.t. original caps.
2011-05-16 20:32:24 +02:00
Mark Nauwelaerts
380a443be4
basevideodecoder: video state reference to codec_data is not refcounted
...
... but rather implicitly valid as long as sink caps are not modified.
2011-05-16 20:32:24 +02:00
Mark Nauwelaerts
a1825bd5e2
basevideodecoder: improve glitch resilience
...
Provide a replacement for GST_ELEMENT_ERROR to avoid aborting at the first
atom out of place, while on the other hand not failing indefinitely.
2011-05-16 20:32:24 +02:00
Mark Nauwelaerts
1588ed321c
basevideodecoder: reverse playback support
2011-05-16 20:32:23 +02:00