flacparse: Don't parse the complete FLAC frames but only look for valid frame headers
authorSebastian Dröge <sebastian.droege@collabora.co.uk>
Thu, 7 Oct 2010 21:28:08 +0000 (23:28 +0200)
committerSebastian Dröge <sebastian.droege@collabora.co.uk>
Thu, 7 Oct 2010 21:38:25 +0000 (23:38 +0200)
commit64407ca94b3295bf88dd491d79eeb3aae9b4686a
treed62305bff889b9739692d341e9824213061345bc
parent161761651667a2580290fb6e7a01b0330954dedf
flacparse: Don't parse the complete FLAC frames but only look for valid frame headers

Thanks to Felipe Contreras for the suggestion. This is partially
based on his patches and makes flacparse more than 3.5 times faster.

Looking for valid frame headers is unlikely to give false positives
because every frame header is at least 9 bytes long, contains a
14 bit sync code and a 8 bit checksum over the first 8 bytes.

Fixes bug #631200.
gst/audioparsers/gstflacparse.c
gst/audioparsers/gstflacparse.h