mirror of
https://gitlab.freedesktop.org/gstreamer/gstreamer.git
synced 2024-12-02 14:36:41 +00:00
ext/theora/theoradec.c: Don't look inside 0-length packets (which indicate duplicated frames)
Original commit message from CVS: * ext/theora/theoradec.c: (theora_handle_data_packet): Don't look inside 0-length packets (which indicate duplicated frames)
This commit is contained in:
parent
9b188adc27
commit
b48b9fdc19
2 changed files with 8 additions and 2 deletions
|
@ -1,3 +1,9 @@
|
||||||
|
2007-05-21 Michael Smith <msmith@fluendo.com>
|
||||||
|
|
||||||
|
* ext/theora/theoradec.c: (theora_handle_data_packet):
|
||||||
|
Don't look inside 0-length packets (which indicate duplicated
|
||||||
|
frames)
|
||||||
|
|
||||||
2007-05-21 Wim Taymans <wim@fluendo.com>
|
2007-05-21 Wim Taymans <wim@fluendo.com>
|
||||||
|
|
||||||
* ext/cdparanoia/gstcdparanoiasrc.c:
|
* ext/cdparanoia/gstcdparanoiasrc.c:
|
||||||
|
|
|
@ -1029,8 +1029,8 @@ theora_handle_data_packet (GstTheoraDec * dec, ogg_packet * packet,
|
||||||
goto not_initialized;
|
goto not_initialized;
|
||||||
|
|
||||||
/* the second most significant bit of the first data byte is cleared
|
/* the second most significant bit of the first data byte is cleared
|
||||||
* for keyframes */
|
* for keyframes. We can only check it if it's not a zero-length packet. */
|
||||||
keyframe = (packet->packet[0] & 0x40) == 0;
|
keyframe = packet->bytes && ((packet->packet[0] & 0x40) == 0);
|
||||||
if (G_UNLIKELY (keyframe)) {
|
if (G_UNLIKELY (keyframe)) {
|
||||||
GST_DEBUG_OBJECT (dec, "we have a keyframe");
|
GST_DEBUG_OBJECT (dec, "we have a keyframe");
|
||||||
dec->need_keyframe = FALSE;
|
dec->need_keyframe = FALSE;
|
||||||
|
|
Loading…
Reference in a new issue