Commit Graph

132 Commits

Author SHA1 Message Date
26d0492653 A final bunch of UI messages fixes and tweaks, and some BKE_report()<->BKE_reportf() fixes. 2012-10-21 14:02:30 +00:00
f3ece5a108 style cleanup: trailing tabs & expand some non prefix tabs into spaces. 2012-10-21 05:46:41 +00:00
c56a911cd9 style cleanup: comments 2012-10-20 20:20:02 +00:00
dbeddcdbce style cleanup: also correct incorrect doxy heading 2012-09-26 20:26:31 +00:00
aa49ca25d5 incorrect spelling in comments 2012-09-26 20:05:38 +00:00
e75f5c8208 quiet -Wmissing-prototypes warnings, and enable this warning by default for C with gcc.
helps for finding unused functions and making functions static, also did some minor code cleanup.
2012-09-15 01:52:28 +00:00
1a7eb3454e style cleanup 2012-09-08 08:59:47 +00:00
86dd087057 fix [#32475] Enabled audio lets blender crash with autosplit option for movie output 2012-09-06 03:08:47 +00:00
3bfe4520ae Style cleanup: whitespace 2012-08-26 11:01:18 +00:00
1b487e9948 Some FFmpeg changes
- Make FFmpeg initialization called from creator, not from functions
  which requires FFmpeg. Makes it easier to follow when initialization
  should happen.

- Enable DNxHD codec. It was commented a while ago due to some strange
  behavior on some platforms. Re-tested it on Linux and Windows and
  it seemd to be working quite nice. Would let it be tested further,
  if it wouldn't be stable enough, easy to comment it again.

- Make non-error messages from writeffmpeg.c printed only if ffmpeg
  debug argument was passed to blender. Reduces console pollution
  with messages which are not useful for general troubleshooting.
  Error messages would still be printed to the console.

- Show FFmpeg error message when video stream failed to allocate.
  makes it easier to understand what exactly is wrong from Blender
  interface, no need to restart blender with FFmpeg debug flag and
  check for console messages.

  Used custom log callback for this which stores last error message
  in static variable. This is not thread safe, but with current
  design FFmpeg routines could not be called form several threads
  anyway, so think it's fine solution/
2012-08-26 11:01:14 +00:00
cfb7aee017 style cleanup 2012-07-07 22:51:57 +00:00
32478997ec style cleanup 2012-06-27 18:29:47 +00:00
4b877e1f8b Some options used for "expert" x264 setup were removed from FFmpeg 0.11
Prevent crashes in cases when option can't be found.
2012-06-18 15:42:23 +00:00
0d64e050ea Reduce amount of deprecated symbols used from FFmpeg
This switches some areas of Blender which are related on FFmpeg stuff
from deprecated symbols to currently supported one.

Pretty straightforward changes based on documentation of FFmpeg's
API which symbols should be now used.

This should make Blender compatible with recent FFmpeg 0.11.

Should be no functional changes.
2012-06-18 10:29:11 +00:00
5189356d58 style cleanup 2012-06-04 20:11:09 +00:00
2d2d36fe3b code cleanup:
- style - multi-line ifs move braces onto new lines.
- iterators - convert some to macros, other split up and move brace.
2012-05-20 19:49:27 +00:00
53ee7908d6 style cleanup: whitespace 2012-05-12 16:11:34 +00:00
d20c129a9c style cleanup: whitespace/operators 2012-05-09 09:24:15 +00:00
69fc654f94 Style cleanup: change ffmpeg, avi and frame server api to rna-ish naming style 2012-05-07 09:30:15 +00:00
112162e09e code cleanup: header cleanup 2012-04-30 14:24:11 +00:00
b340f930ec style cleanup: changes to brace placement / newlines - for/while/if/switch 2012-04-28 06:31:57 +00:00
5c89138684 style cleanup: comments 2012-04-22 11:54:53 +00:00
69e6894b15 style cleanup: follow style guide for formatting of if/for/while loops, and else if's 2012-03-24 06:18:31 +00:00
31d2ee9bf7 style cleanup, brackets in else/if, some indentation. 2012-03-06 18:40:15 +00:00
47c373c7a9 style cleanup (mostly whitespace) 2012-02-27 10:35:39 +00:00
ae38adbf55 Blender should now compile fine with older FFmpeg libraries used. 2012-02-24 15:34:57 +00:00
dd0f151ba9 Changes in FFV1 codec settings
Since FFmpeg 0.10 release FFV1 codec supports alpha channel which is getting
enabled when using PIX_FMT_RGB32 pixel format. This leads to incompatibility of
videos rendered in Blender with almost all external players (especially in OSX).

Seems that PIX_FMT_BGR0 is recommended to be used to make videos compatible with
older players which doesn't support alpha channel in FFV1.

Also added an option to switch to RGBA rendering if FFV1 codec is used and if RGBA
rendering is used FFV1 will be using PIX_FMT_RGB32 format which supports alpha channel.
2012-02-24 09:49:44 +00:00
42e50719df ffmpeg: take back 44142, conditional was wrong 2012-02-16 11:52:02 +00:00
f047d90a0e ffmpeg: only suppress loopfilter for .mov ( compatibility ), but keep for .avi (quality ) 2012-02-16 08:48:28 +00:00
2cf28ab2bc ffmpeg: don't use flags:loop for .h264, this allows to see the video in OSX quickview and Quicktimeplayer( windows ? ) 2012-02-14 12:24:17 +00:00
67e32b4a7b Fix for wrong pixel format used for qtrle 2012-02-07 20:39:40 +00:00
dc72e79274 FFmpeg output fixes and small improvement
Most part of this commit fixes issues with FFmpeg output with
currently supported codecs:

- avcodec_encode_video might return zero which doesn't mean error
  happened, but blender will handle this as error and will stop
  rendering to video file.
- Changing output video codec wouldn't update "expert" options
  set for video output which leads to some sideeffects like
  ignored Lossless option for x264 codec.

This fixes allowed to add QTRLE codec easily.
2012-02-07 17:11:56 +00:00
8dcb1f4d12 Added Lossless Output option for h264 codec.
This will fix #26943: render image to video problem
2012-01-13 12:34:23 +00:00
74aede4d71 Fix #29824: Error writing frame if 3D scene starts after first frame of animation and output is H264
Issue was caused by incorrectly set PTS value frames came form Scene strip renderer.
This value used to be calculated from RenderData current and start frame which
lead to non-uniformuly counting which totally confuses encoder.

Switch append_avi and append_ffmpeg to use current frame from rendering scene
(which was already passing to this functions and was used mostly for logging)
and start frame of rendering scene (it's new parameter added). This allowed to
calculate correct PTS value easily and get rid of global static sframe variable
in writeavi.c file.
2012-01-13 09:20:13 +00:00
e10fd04db0 use BLI_strncpy and BLI_snprintf when the size of the string is known.
fix for sequencer unique naming which was missed with string length update.
2012-01-11 12:33:51 +00:00
9bb0303221 Bugfix for [#29684] Output video presets messed up
* This was caused ny the ImageType refactor.
* Problem persisted with Quicktime too, could not test that, but should fix presets there too.
2011-12-23 22:07:34 +00:00
743d2f8c0f rename image type defines to be less ambiguous, also set BMP as not supporting alpha (it reads but cant write) 2011-11-22 00:35:26 +00:00
995ca539d0 Fixed compilation error in writeffmpg.c (caused by recent IDProp changes). 2011-11-15 10:01:18 +00:00
e84c0980a3 correct indentation and some whitespace edits (no functional changes) 2011-11-11 13:09:14 +00:00
33accdb725 use (const char*) rather than (char*) where possible.
also removed some unused function definitons.
2011-11-05 11:04:28 +00:00
675076a06e cmake macro to set less strict flags per file - remove_strict_flags_file(file, file...)
this way we can avoid removing strict flags for all files in blenkernel.
2011-10-25 11:06:52 +00:00
5a6605610d Fix #28949: can't render video to Flash
Several issues were discovered when was looking into this bug:

- MPEG file format didn't set needed codec settings such as frame
  rate and so, Was caused by not very correct fix fix #21351.
- "Expert" codec settings stored in idprops was affected on
  formats which don't actually need them causing some conflicts
  in codec settings.
- Flash codec doesn't support b-frames.

Now C presets shouldn't affect on each other and flash coded wouldn't
use b-frames even when using h264 format. Should work fine for files
created from scratch. If existing files fails to render, try to
switch file format to something else and then back to needed value.
2011-10-24 10:26:37 +00:00
4a04f72069 remove $Id: tags after discussion on the mailign list: http://markmail.org/message/fp7ozcywxum3ar7n 2011-10-23 17:52:20 +00:00
04db8ad282 misc cleanup
- remove redundant casts
- replace strcmp's with "" to just check first char.
- added WM_event_print(), debug mode only to print events since the structs values are not that meaningful.
- added warnings if locale/font dirs cant be found.
2011-10-21 08:16:15 +00:00
bc40f11093 header cleanup (no functional changes) 2011-10-10 09:38:02 +00:00
ffe9824011 Correction for own recent commit -- didn't know it's unsupported in
MSVC to do such things.
2011-10-04 15:10:24 +00:00
215ed84779 Partial fix #27978: Problem exporting OGG Theora-Vorbis video (and other audio codecs)
Ogg format does support only vorbis, theora, speex and flac audio codecs.
Added check for result of av_write_header() and show info in header about
error while initializing streams.

This commit also fixed crash when using vorbis audio format.
It used to be floating point exception. SOlved by initializing
audio_stream->codec->time_base with proper rational value as it's
done in FFmpeg sources.
2011-10-04 12:30:26 +00:00
3dd75fa6f1 patch [#27887] LOSSLESS RENDERING: HuffYUV and FFV1 both fail to render losslessly
from Troy Sobotka (sobotka)
2011-10-03 03:25:05 +00:00
018fa1540e whitespace edits, make formatting for functions consustent at least within the file. 2011-09-28 05:53:40 +00:00
b3704f45c4 Fixes for snprintf usage:
* replace by BLI_snprintf in various places, note _snprintf on windows
  does not properly null terminate the string.
* fix overflow in sequencer proxy code due to buffer being smaller than
  specified size.
* fix some usage of snprintf as strcpy, this is will go wrong if the
  string contains % characters.
* remove BLI_dynstr_printf function in gpu module, use BLI_dynstr_appendf
2011-08-30 10:07:50 +00:00