Commit graph

786 commits

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