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 752523 - avdec_h264 crashes when using debug-mv=true option
avdec_h264 crashes when using debug-mv=true option
Status: RESOLVED NOTGNOME
Product: GStreamer
Classification: Platform
Component: gst-libav
1.5.2
Other Linux
: Normal major
: git master
Assigned To: GStreamer Maintainers
GStreamer Maintainers
Depends on:
Blocks:
 
 
Reported: 2015-07-17 08:34 UTC by Mathieu Hinderyckx
Modified: 2016-04-08 16:40 UTC
See Also:
GNOME target: ---
GNOME version: ---



Description Mathieu Hinderyckx 2015-07-17 08:34:03 UTC
FFmpeg/Libav can display motion vectors on top of h264 decoded video. The avdec_h264 element has a property:

- 'debug-mv': Whether libav should print motion vectors on top of the image

Enabling this option crashes a pipeline.

When looking at how it's done in FFmpeg, it happens in the mpegvideo.c file in the function ff_print_debug_info(), which wraps ff_print_debug_info2(), and there the motion vectors are drawn.

In the gst-libav version of mpegvideo.c, ff_print_debug_info() doesn't do anything except logging. ff_print_debug_info2() is absent.
Comment 1 Mathieu Hinderyckx 2015-07-20 12:46:05 UTC
When using the latest gst-libav plugins with the switch to ffmpeg, the ff_print_debug_info2() and associated drawing functions are available again. However, still crashes. The problem is 'solved' by commenting out the line 2178:

"pict->opaque=NULL;"

in that function (in the mpegvideo.c file).

I don't know what this has for consequences, and that line is there in the ffmpeg 2.7.2 distribution as well, working without any problems out of the box displaying MV.
Comment 2 Nicolas Dufresne (ndufresne) 2015-07-20 14:15:30 UTC
Can you start a discussion with upstream FFMPeg please.
Comment 3 Sebastian Dröge (slomo) 2015-12-04 14:18:41 UTC
Any news here?
Comment 4 Mathieu Hinderyckx 2015-12-04 14:24:54 UTC
I used this during an internship where I ran into this problem. I've made some customizations which did work, but I am not allowed to disclose the code.
Comment 5 Sebastian Dröge (slomo) 2015-12-04 14:33:17 UTC
You might want to point wherever you did that internship to the terms of the LGPL license then.

It's still crashing with the latest version, but this looks like a ffmpeg problem overall.
Comment 6 Nicolas Dufresne (ndufresne) 2015-12-04 15:02:40 UTC
(In reply to Mathieu Hinderyckx from comment #4)
> I used this during an internship where I ran into this problem. I've made
> some customizations which did work, but I am not allowed to disclose the
> code.

Also, note that you (and your university) are not allowed to distribute this work without disclosing the changes.
Comment 7 Florent Thiéry 2016-04-08 16:40:41 UTC
For what it's worth, still happening in 1.8