Found ! * A52 plugin allocates an input buffer at pcm_a52.c:556: if (av_samples_alloc(rec->frame->data, rec->frame->linesize, io->channels, rec->avctx->frame_size, rec->avctx->sample_fmt, 0) < 0)
* The last parameter which equals 0 is "align": http://libav.org/doxygen/master/samplefmt_8h.html#a4db4c77f928d32c7d8854732f50b8c04 * The problem is in libavutil::av_samples_get_buffer_size(). The parameter "align" is not checked if it equals 0. And the following crash, division by 0 if (nb_channels > INT_MAX / align || * I suggest the following patch, based on FFMpeg source code: http://git.videolan.org/?p=ffmpeg.git;a=blob;f=libavutil/samplefmt.c;h=08ecc834678eced8c3029095a824d8ae9d29406a;hb=HEAD#l137 * I tested it on Ubuntu 13.10 64 bit and it works :-) --------------------------- Libav patch --------------------------- --- libavutil/samplefmt_origine.c 2013-05-12 09:08:17.000000000 +0200 +++ libavutil/samplefmt.c 2014-01-21 20:04:45.272527345 +0100 @@ -104,6 +104,12 @@ if (!sample_size || nb_samples <= 0 || nb_channels <= 0) return AVERROR(EINVAL); + /* auto-select alignment if not specified */ + if (!align) { + align = 1; + nb_samples = FFALIGN(nb_samples, 32); + } + /* check for integer overflow */ if (nb_channels > INT_MAX / align || (int64_t)nb_channels * nb_samples > (INT_MAX - (align * nb_channels)) / sample_size) -- You received this bug notification because you are a member of Ubuntu Bugs, which is subscribed to Ubuntu. https://bugs.launchpad.net/bugs/1241439 Title: [a52 plugin] no sound/audio, traps: pulseaudio[25921] trap divide error ip:7fe46a303a57 sp:7fff825b91d0 error:0 in libavutil.so.51.22.1 To manage notifications about this bug go to: https://bugs.launchpad.net/ubuntu/+source/alsa-plugins/+bug/1241439/+subscriptions -- ubuntu-bugs mailing list ubuntu-bugs@lists.ubuntu.com https://lists.ubuntu.com/mailman/listinfo/ubuntu-bugs