blender fails to encode audio in ogg theora

Category:bug report

When I try to render an animation in Blender, based off of edited video sequences, it crashes if I select 'theora' for the audio codec. If I try 'mp3', i get an error, and blender doesn't crash. 'flac' works.

To test this quickly, open blender and scroll down on the right hand side, until you see a drop-down with 'PNG' selected. change it to 'Ogg Theora'. Then at the bottom of that pane, click to expand the 'encoding' section. Change 'audio codec:' from 'none' to 'theora'. then press ctrl-f12 to render an animation. Blender will then crash.

Here is the output of a gdb session with a backtrace at the end: I've elided messages about threads.

$ gdb blender
GNU gdb (Ubuntu/Linaro 7.3-0ubuntu2) 7.3-2011.08
Copyright (C) 2011 Free Software Foundation, Inc.
License GPLv3+: GNU GPL version 3 or later
This is free software: you are free to change and redistribute it.
There is NO WARRANTY, to the extent permitted by law. Type "show copying"
and "show warranty" for details.
This GDB was configured as "x86_64-linux-gnu".
For bug reporting instructions, please see:
Reading symbols from /usr/bin/blender...Reading symbols from /usr/lib/debug/usr/bin/blender...done.
(gdb) run
Starting program: /usr/bin/blender


Starting output to /tmp/0001-0250.ogg(ffmpeg)...
Using type=10, codec=31, audio_codec=86021,
video_bitrate=6000, audio_bitrate=192,
gop_size=18, autosplit=0
render width=960, render height=540
alloc video stream 0x7fffe4003460


Writing frame 1, render width=960, render height=540
Video Frame PTS: 0
Append frame 1 Time: 00:01.41


Writing frame 2, render width=960, render height=540
Video Frame PTS: 1
Append frame 2 Time: 00:01.30


Writing frame 3, render width=960, render height=540
Video Frame PTS: 2
blender: /build/buildd/libav-0.7.3/libavutil/mathematics.c:79: av_rescale_rnd: Assertion `c > 0' failed.

Program received signal SIGABRT, Aborted.
[Switching to Thread 0x7fffde243700 (LWP 16967)]
0x00007ffff25653a5 in raise () from /lib/x86_64-linux-gnu/
(gdb) backtrace
#0 0x00007ffff25653a5 in raise () from /lib/x86_64-linux-gnu/
#1 0x00007ffff2568b0b in abort () from /lib/x86_64-linux-gnu/
#2 0x00007ffff255dd4d in __assert_fail () from /lib/x86_64-linux-gnu/
#3 0x00007ffff2d20f74 in av_rescale_rnd (a=,
b=, c=, rnd=)
at /build/buildd/libav-0.7.3/libavutil/mathematics.c:79
#4 0x00007ffff31a1499 in oggvorbis_encode_frame (avccontext=0x7fffe45c4220,
packets=0x7fffe4635308 "", buf_size=16384, data=)
at /build/buildd/libav-0.7.3/libavcodec/libvorbis.c:212
#5 0x00007ffff32c9637 in avcodec_encode_audio (avctx=0x7fffe45c4220,
buf=, buf_size=, samples=)
at /build/buildd/libav-0.7.3/libavcodec/utils.c:655
#6 0x0000000000ad6f75 in write_audio_frame ()
at /build/buildd/blender-2.58-svn37702/source/blender/blenkernel/intern/writeffmpeg.c:119
#7 write_audio_frames (to_pts=0.083333333333333329)
at /build/buildd/blender-2.58-svn37702/source/blender/blenkernel/intern/writeffmpeg.c:876
#8 append_ffmpeg (rd=, frame=,
pixels=0x7fffd9bf9038, rectx=1431655765, recty=540, reports=0x208c118)
at /build/buildd/blender-2.58-svn37702/source/blender/blenkernel/intern/writeffmpeg.c:908
#9 0x000000000090b060 in do_write_image_or_movie (re=0x30a9588,
---Type to continue, or q to quit---
scene=0x1d30318, reports=0x208c118, name_override=0x0, mh=)
at /build/buildd/blender-2.58-svn37702/source/blender/render/intern/source/pipeline.c:2957
#10 0x000000000090e2c3 in RE_BlenderAnim (re=0x30a9588, bmain=0x1d013f8,
scene=0x1d30318, camera_override=0x0, lay=1, sfra=25862912, efra=250,
tfra=1, reports=0x208c118)
at /build/buildd/blender-2.58-svn37702/source/blender/render/intern/source/pipeline.c:3112
#11 0x00000000008960ea in render_startjob (rjv=,
stop=, do_update=, progress=)
at /build/buildd/blender-2.58-svn37702/source/blender/editors/render/render_internal.c:378
#12 render_startjob (rjv=, stop=,
do_update=, progress=)
at /build/buildd/blender-2.58-svn37702/source/blender/editors/render/render_internal.c:369
#13 0x00000000006a3a6a in do_job_thread (job_v=0x20924a8)
at /build/buildd/blender-2.58-svn37702/source/blender/windowmanager/intern/wm_jobs.c:243
#14 0x00007ffff7098efc in start_thread ()
from /lib/x86_64-linux-gnu/
#15 0x00007ffff261259d in clone () from /lib/x86_64-linux-gnu/
#16 0x0000000000000000 in ?? ()

Sun, 06/03/2012 - 00:48
Assigned to:anonymous» upstream

I believe you are experiencing this bug:

Blender Bug #27978 (Problem exporting OGG Theora-Vorbis video (and other audio codecs))

Wed, 06/20/2012 - 00:57
Status:active» closed

After the latest round of Trisquel 5.5 updates, I tested blender with ogg/theora and it did not crash. It appears to be fixed.

Wed, 06/20/2012 - 10:18
Status:closed» fixed
Wed, 07/04/2012 - 10:20
Status:fixed» closed

Automatically closed -- issue fixed for 2 weeks with no activity.