PDA

View Full Version : Slightly annoying filesave issue



Amerelium
02-11-2018, 04:00 AM
...so, quite a few of the larger videos I save, have a missing index issue. Was quite a shocker the first time; after a week of rendering the video was corrupted and could not played.

Turns out it is just a question of reconstructing it in VirtualDub - but it is still annoying.

Anyone know why it's happening?

AVI format, uncompressed.

140062

Sensei
02-11-2018, 04:55 AM
Don't render to animation directly.
Always render to image sequence.
Then compress them to anim file.

jeric_synergy
02-11-2018, 09:09 AM
Don't render to animation directly.
Always render to image sequence.
Then compress them to anim file.

What he said, X4.

NEVER render to animation, it's just foolish.

Amerelium
02-11-2018, 11:50 AM
Why is it foolish? - besides the risk of something going wrong mid-render.

...isn't it unpractical to render a clip of 3000 frames as individual images?

Sensei
02-11-2018, 11:57 AM
If you will have app crash, or power failure, you will lose everything, and will have to restart rendering from scratch..

gar26lw
02-11-2018, 04:40 PM
Sob, miss Fprime and its progressive sequence rendering :cry:

MonroePoteet
02-11-2018, 06:34 PM
Why is it foolish? - besides the risk of something going wrong mid-render.

...isn't it unpractical to render a clip of 3000 frames as individual images?

Yes, the issue is a problem mid-render. Unless the AVI / animation output file is "flushed and closed" after each frame, it won't be playable and LW doesn't do that.

If you are using uncompressed AVI, the "image sequence" (i.e. individual files) will take up effectively the same disk space, maybe less. What I do is have a separate folder called "Newtek Framestores", and then I create a sub-folder under that main folder with the name of the scene (copy-n-paste from the Camera=>Properties=>Output=>Save RGBA generated name). Then, by changing the Output Format to "Name_0001.xxx", LW creates files <name>_0000.ext through <name>_3000.ext (3000 frame example) in that folder, where ".ext" is the file extension you specify. I use TARGA files with the extention ".tga".

To convert the image sequence to an animation, I use the free open-source converter FFMPEG, available here:

https://www.ffmpeg.org/

I put the FFMPEG.EXE into my top-level C: folder, which means I can easily convert the image sequence to AVI or MPG or MOV with a command similar to:

C:\ffmpeg -i <name>_%04d.xxx <name>.avi

where -i specifies the input, <name> is the scene name from above, and %04d is a C-like format descriptor for a zero-prefixed 4-digit decimal number. FFMPEG recognizes the extention of the output file, and uses the appropriate converter. FFMPEG has many, many qualifiers to allow modifications to the conversion, but the command above will probably do a good job.

mTp

P.S. Just FYI, I wrote a little utility to create and format the FFMPEG command line. The following is a sample command line from the utility for one of the MOV files I posted previously specifying 640x480 resolution, 4:3 aspect ratio, 24 fps frame rate, etc. is:

c:\ffmpeg -f image2 -r 24 -i "N:\Newtek Framestores\BlueLightning_AgainstTheCurrent\BlueLi ghtning_AgainstTheCurrent_rgb_%03d.tga" -an -r 24 -aspect 4:3 -b:v 50000000 -s 640x480 -pix_fmt yuv420p "N:\Movies\BlueLightning_AgainstTheCurrent.mov"

Amerelium
02-12-2018, 01:00 AM
Why targa instead of bmp for the final render?

Sensei
02-12-2018, 01:05 AM
Better use HDRI file formats like EXR/OpenEXR to store 16 bit/32 bit floating point per channel instead of 8 bits integer per channel.

MonroePoteet
02-12-2018, 02:28 AM
Why targa instead of bmp for the final render?

Mostly just force of habit. I started using TGA files in the late 90's since it supported an alpha channel (transparency mask) for compositing.

If you are aiming for film or other medium which needs a higher resolution color space then using the floating-point format files as recommended by Sensei would be good. For my simple hobbyist endeavors, the 8-bits per color / alpha channel is adequate.

mTp

BeeVee
02-12-2018, 02:35 AM
BMP is a horrible old format. Even Targa is somewhat outdated. PNG compresses images with no loss and has an alpha channel. I'll reiterate what others on this thread have said - don't render to animation - except for one thing. In addition to the many ways of converting frames to an animation externally, you can also use LightWave to do it. With an empty scene with the camera set to the same resolution as your rendered scene, but with AA turned off, load the frames you have rendered as a backdrop image sequence, render to the animation format of your choice and hit F10. The animation will be produced in a very short time.

B

vncnt
02-12-2018, 05:11 AM
When space on the (fast) target disk is not a problem and the final output file has an 8 bits/channel format it is not desirable to increase CPU load by using compression at all.
Ever tried to write a sequence of 16k x 8k RGB32 TIFF files with ZIP compression?

During cross conversion: try to have different disks for source bitmap sequence files and target media file.
In Windows you can check the Resource Monitor to monitor and adjust for maximum system efficiency.

Ben, can you explain why BMP is more outdated than TGA?
Both seem to support formats: 24bits RGB and 32 bits RGBA. I never have seen reliability issues with any of these formats.

Sensei, why rendering to floating point formats when a YUV long-GOP format with chroma subsampling is the final target destination?

vncnt
02-12-2018, 05:19 AM
When preview-level output is needed, Lightwave could help us:

1 - by creating a buffer directory when non-existent
2 - render missing frames
3 - convert it to some long-GOP format
4 - mux it with an audio stream
5 - keep or clear the buffer upon success

Amerelium
02-12-2018, 06:43 AM
File size is irrelevant for me - guess BMP is fine then.

raymondtrace
02-12-2018, 07:12 AM
Ben, can you explain why BMP is more outdated than TGA?
Both seem to support formats: 24bits RGB and 32 bits RGBA...

TGA is not necessarily more outdated. It is as outdated.

The problem with file format comparisons is that you can save image data in different ways within each format (compression types/levels, bit depths, etc).

Take an image in your favorite image editor (Photoshop/Gimp/Affinity/etc) and save out to each format (BMP/TGA/PNG/EXR)...being certain to retain the original quality. Then check your file sizes and see what format makes sense. For general usage, you'll likely see PNG win. For more versatility further in the pipeline, EXR may be your favorite.

EDIT: Here's a good overview... https://www.pluralsight.com/blog/film-games/vfx-file-formats-you-need-to-know


Amerelium, you may benefit from a free flipbook viewer to preview rendered frames before converting to video:
http://jefecheck.jefecorp.com/
http://djv.sourceforge.net/

These also let you view the animation progress as it is rendering. You could not do this if you rendered to video.

raymondtrace
02-12-2018, 07:15 AM
File size is irrelevant for me - guess BMP is fine then.

File size is always relevant, not just for the sake of space on a drive.

Sensei
02-12-2018, 08:42 AM
File size is always relevant, not just for the sake of space on a drive.

What do you mean?

Raw file won't exceed 8 MB, in Full HD 1920x1080 32 bit integer mode.

raymondtrace
02-12-2018, 09:47 AM
What do you mean?

As vncnt points out, we also need to consider the I/O processing. Loading an image sequence to render within an animation (or to compile into a video file) might take extra resources to utilize a highly compressed (lossless) image.

The only thing I was countering in vncnt's post was the idea that "BMP is more outdated than TGA". I meant to continue vncnt's thought by showing how to assess I/O speed in an image editor. When saving/opening these filetypes, it may become apparent which saves/loads more quickly, and at a savings of disk space. PNG is a good balance of these concerns. It offers a smaller size, minimal resource strain, and more features than TGA/BMP.