After an evaluation, GNOME has moved from Bugzilla to GitLab. Learn more about GitLab.
No new issues can be reported in GNOME Bugzilla anymore.
To report an issue in a GNOME project, go to GNOME GitLab.
Do not go to GNOME Gitlab for: Bluefish, Doxygen, GnuCash, GStreamer, java-gnome, LDTP, NetworkManager, Tomboy.
Bug 674113 - [0.11] Multiple issues with mpegvideoparser (+patches)
[0.11] Multiple issues with mpegvideoparser (+patches)
Status: RESOLVED FIXED
Product: GStreamer
Classification: Platform
Component: gst-plugins-bad
0.11.x
Other All
: Normal normal
: 0.11.x
Assigned To: GStreamer Maintainers
GStreamer Maintainers
Depends on:
Blocks:
 
 
Reported: 2012-04-14 19:25 UTC by Matej Knopp
Modified: 2012-04-16 06:42 UTC
See Also:
GNOME target: ---
GNOME version: ---


Attachments
Patch for codec data (2.11 KB, patch)
2012-04-14 19:26 UTC, Matej Knopp
committed Details | Review
Patch for frame duration for telecine files (1.53 KB, patch)
2012-04-14 19:27 UTC, Matej Knopp
committed Details | Review
Patch for parser not to ignore start codes at the end of buffer (1.12 KB, patch)
2012-04-14 19:27 UTC, Matej Knopp
committed Details | Review
Patch for parser to split frames properly (1.19 KB, patch)
2012-04-14 19:28 UTC, Matej Knopp
committed Details | Review

Description Matej Knopp 2012-04-14 19:25:07 UTC
1. Codec data is updated every time quantiser matrix changes in sequence header. This is not necessary, in fact it actually breaks decoders and causes decoding artifacts. 

2. Frame duration and FPS is calculated wrong for telecine files. FPS doesn't have to be doubled and frame duration needs check to not be adjusted when not valid.

3. Mpegvideoparse fails to split some frames properly. First issue is that the parsing routine ignores start code at the end of buffer, second issue is that the parser doesn't split frames on start codes that don't have size set. However when such start code is encountered the mpvparse->last_sc is set to buf_size - 3 which causes the parser to skip that start code entirely in next iteration.
Comment 1 Matej Knopp 2012-04-14 19:26:19 UTC
Created attachment 212056 [details] [review]
Patch for codec data
Comment 2 Matej Knopp 2012-04-14 19:27:00 UTC
Created attachment 212057 [details] [review]
Patch for frame duration for telecine files
Comment 3 Matej Knopp 2012-04-14 19:27:44 UTC
Created attachment 212058 [details] [review]
Patch for parser not to ignore start codes at the end of buffer
Comment 4 Matej Knopp 2012-04-14 19:28:10 UTC
Created attachment 212059 [details] [review]
Patch for parser to split frames properly
Comment 5 Sebastian Dröge (slomo) 2012-04-16 06:42:34 UTC
commit 045e8bb506f24321bcd20933ceab8588e225ec3c
Author: Matej Knopp <matej.knopp@gmail.com>
Date:   Sat Apr 14 21:09:25 2012 +0200

    mpegvideoparse: Do not ignore start code at the end of buffer

commit 19f7bd470d9ec602d706c268713384404888cd3a
Author: Matej Knopp <matej.knopp@gmail.com>
Date:   Sat Apr 14 21:02:06 2012 +0200

    mpegvideoparse: Parser fails to split some frames

commit 23e312872e4131b95c7807f621cd442c3830665b
Author: Matej Knopp <matej.knopp@gmail.com>
Date:   Sat Apr 14 20:53:47 2012 +0200

    mpegvideoparse: Fix FPS and frame duration for telecine files

commit 19ee94a8d15e96127885f489b1c2422b957ba65e
Author: Matej Knopp <matej.knopp@gmail.com>
Date:   Sat Apr 14 20:46:24 2012 +0200

    mpegvideoparse: Do not update codec-data when only quantiser matrix changes