[libav-tools] segfault on windwos

Ronald S. Bultje rsbultje at gmail.com
Fri Aug 26 19:17:28 CEST 2011


Hi,

On Fri, Aug 26, 2011 at 2:29 AM, Farkas Levente <lfarkas at lfarkas.org> wrote:
> On 08/21/2011 07:36 PM, Ronald S. Bultje wrote:
>> Hi,
>>
>> On Sun, Aug 21, 2011 at 9:32 AM, Farkas Levente <lfarkas at lfarkas.org> wrote:
>>> On 08/20/2011 10:49 PM, Ronald S. Bultje wrote:
>>>> On Sat, Aug 20, 2011 at 1:48 PM, Farkas Levente <lfarkas at lfarkas.org> wrote:
>>>>> hi,
>>>>> when i build gstreamer-ffmpeg (which contains libav) it's always
>>>>> segfault with this bt:
>>>>> any tip or solution?
>>>>>
>>>>> Program received signal SIGSEGV, Segmentation fault.
>>>>> [Switching to Thread 844.0xae8]
>>>>> 0x02912a02 in clear_blocks_sse (blocks=0x23b7858)
>>>>>    at /builddir/build/BUILD/gst-ffmpeg-0.10.12/gst-libs/ext/libav/libavcodec/x8
>>>>> 6/dsputil_mmx.c:539
>>>>> 539     /builddir/build/BUILD/gst-ffmpeg-0.10.12/gst-libs/ext/libav/libavcodec/x
>>>>> 86/dsputil_mmx.c: No such file or directory.
>>>>>        in /builddir/build/BUILD/gst-ffmpeg-0.10.12/gst-libs/ext/libav/libavcode
>>>>> c/x86/dsputil_mmx.c
>>>>> (gdb) bt
>>>>> #0  0x02912a02 in clear_blocks_sse (blocks=0x23b7858)
>>>>>    at /builddir/build/BUILD/gst-ffmpeg-0.10.12/gst-libs/ext/libav/libavcodec/x8
>>>>> 6/dsputil_mmx.c:539
>>>>
>>>> Can you provide the output of "disass", "info all-registers"?
>>>
>>> Dump of assembler code for function clear_blocks_sse:
>>>   0x029229f0 <+0>:     mov    0x4(%esp),%edx
>>>   0x029229f4 <+4>:     add    $0x300,%edx
>>>   0x029229fa <+10>:    xorps  %xmm0,%xmm0
>>>   0x029229fd <+13>:    mov    $0xfffffd00,%eax
>>> => 0x02922a02 <+18>:    movaps %xmm0,(%edx,%eax,1)
>> [..]
>>> eax            0xfffffd00       -768
>>> edx            0x23c6358        37512024
>>
>> edx is not 16-byte aligned. I'm guessing the memory input is not
>> allocated with proper alignment, seems like a GStreamer bug. Maybe
>> they compiled Libav without --enable-memalign-hack, which is required
>> for Win32 binaries? This is automatically set by Libav's configure
>> script, but I don't think that GStreamer uses that.
>
> this's the log output of the build of the above package. and it's
> include --enable-memalign-hack. so what's else can be the problem?

Does gst-ffmpeg provide it's own get_buffer implementation?

Does it return 16-byte aligned buffers and strides?

Ronald


More information about the libav-tools mailing list