Commit graph

735 commits

Author SHA1 Message Date
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
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
Mark Nauwelaerts
eba9bb5e5a h264parser: initialize additional sps field value
Fixes #663552.
2011-11-18 17:19:57 +01:00
Sebastian Dröge
022cdfc5d3 basevideoencoder: Only call ::reset once in READY->PAUSED 2011-11-17 10:34:07 -08: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
Thijs Vermeir
e40ca78278 fix documentation typo 2011-11-09 12:00:05 +01:00
Vincent Penquerc'h
8766717b6c mpegvideoparser: input data is const, mark it so 2011-11-07 11:12:44 +00: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
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
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
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
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
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
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
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
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
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
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