From 051dfb0706002b4d5c16f66d9095701d71fef664 Mon Sep 17 00:00:00 2001
From: sjplimp
To write movie dumps, you must use the -DLAMMPS_FFMPEG switch when building LAMMPS and have the FFmpeg executable available on the -machine where LAMMPS is being run. +machine where LAMMPS is being run. Typically it's name is lowercase, +i.e. ffmpeg.
See the Making LAMMPS section of the -documentation for details on how to configure and compile optional in -LAMMPS. +documentation for details on how to compile with optional switches. +
+Note that since FFmpeg is run as an external program via a pipe, +LAMMPS has limited control over its execution and no knowledge about +errors and warnings printed by it. Those warnings and error messages +will be printed to the screen only. Due to the way image data is +communicated to FFmpeg, it will often print the message + pipe:: +Input/output error :pre + which can be safely ignored. Other warnings +and errors have to be addressed according to the FFmpeg documentation. +One known issue is that certain movie file formats (e.g. MPEG level 1 +and 2 format streams) have video bandwith limits that can be crossed +when rendering too large of image sizes. Typical warnings look like +this: +
+[mpeg @ 0x98b5e0] packet too large, ignoring buffer limits to mux it +[mpeg @ 0x98b5e0] buffer underflow st=0 bufi=281407 size=285018 +[mpeg @ 0x98b5e0] buffer underflow st=0 bufi=283448 size=285018 ++
In this case it is recommended to either reduce the size of the image +or encode in a different format that is also supported by your copy of +FFmpeg, and which does not have this limitation (e.g. .avi, .mkv, +mp4).
Related commands:
diff --git a/doc/dump_image.txt b/doc/dump_image.txt index f0dc672ed8..c80b717d1c 100644 --- a/doc/dump_image.txt +++ b/doc/dump_image.txt @@ -480,11 +480,33 @@ PNG library. To write {movie} dumps, you must use the -DLAMMPS_FFMPEG switch when building LAMMPS and have the FFmpeg executable available on the -machine where LAMMPS is being run. +machine where LAMMPS is being run. Typically it's name is lowercase, +i.e. ffmpeg. See the "Making LAMMPS"_Section_start.html#start_2_4 section of the -documentation for details on how to configure and compile optional in -LAMMPS. +documentation for details on how to compile with optional switches. + +Note that since FFmpeg is run as an external program via a pipe, +LAMMPS has limited control over its execution and no knowledge about +errors and warnings printed by it. Those warnings and error messages +will be printed to the screen only. Due to the way image data is +communicated to FFmpeg, it will often print the message + pipe:: +Input/output error :pre + which can be safely ignored. Other warnings +and errors have to be addressed according to the FFmpeg documentation. +One known issue is that certain movie file formats (e.g. MPEG level 1 +and 2 format streams) have video bandwith limits that can be crossed +when rendering too large of image sizes. Typical warnings look like +this: + +\[mpeg @ 0x98b5e0\] packet too large, ignoring buffer limits to mux it +\[mpeg @ 0x98b5e0\] buffer underflow st=0 bufi=281407 size=285018 +\[mpeg @ 0x98b5e0\] buffer underflow st=0 bufi=283448 size=285018 :pre + +In this case it is recommended to either reduce the size of the image +or encode in a different format that is also supported by your copy of +FFmpeg, and which does not have this limitation (e.g. .avi, .mkv, +mp4). + [Related commands:]