[FFmpeg-user] v360 filter output eac resolution

Jimmie plustone at gmail.com
Fri Jul 12 04:56:54 EEST 2024


Hi,

I'm currently working on a project about Equi-Angular Cubemap (EAC).

I need to sample an EAC texture but couldn't find one readily available.
After some googling, I found that FFmpeg could be used to convert
other 360 pictures to EAC, so I gave it a try.

The input is an equirectangular texture with 3000x1500 resolution and
the output is an EAC texture with a standard 3x2 format, as expected.

What confuses me is that the EAC texture has a resolution of 3000x1688.
To my understanding, EAC is just a special case of cubemap, which should
consist of six square faces. Apparently, that is not the case for this output.

Can anyone help me understand why the output EAC texture does not have
square faces as in regular cubemaps? Thank you!

Alex

Command: ffmpeg -i pond.jpg -vf v360=e:eac eac.png
The log is as below.

ffmpeg version 7.0.1-essentials_build-www.gyan.dev Copyright (c)
2000-2024 the FFmpeg developers
  built with gcc 13.2.0 (Rev5, Built by MSYS2 project)
  configuration: --enable-gpl --enable-version3 --enable-static
--disable-w32threads --disable-autodetect --enable-fontconfig
--enable-iconv --enable-gnutls --enable-libxml2 --enable-gmp
--enable-bzlib --enable-lzma --enable-zlib --enable-libsrt
--enable-libssh --enable-libzmq --enable-avisynth --enable-sdl2
--enable-libwebp --enable-libx264 --enable-libx265 --enable-libxvid
--enable-libaom --enable-libopenjpeg --enable-libvpx
--enable-mediafoundation --enable-libass --enable-libfreetype
--enable-libfribidi --enable-libharfbuzz --enable-libvidstab
--enable-libvmaf --enable-libzimg --enable-amf --enable-cuda-llvm
--enable-cuvid --enable-dxva2 --enable-d3d11va --enable-d3d12va
--enable-ffnvcodec --enable-libvpl --enable-nvdec --enable-nvenc
--enable-vaapi --enable-libgme --enable-libopenmpt
--enable-libopencore-amrwb --enable-libmp3lame --enable-libtheora
--enable-libvo-amrwbenc --enable-libgsm --enable-libopencore-amrnb
--enable-libopus --enable-libspeex --enable-libvorbis
--enable-librubberband
  libavutil      59.  8.100 / 59.  8.100
  libavcodec     61.  3.100 / 61.  3.100
  libavformat    61.  1.100 / 61.  1.100
  libavdevice    61.  1.100 / 61.  1.100
  libavfilter    10.  1.100 / 10.  1.100
  libswscale      8.  1.100 /  8.  1.100
  libswresample   5.  1.100 /  5.  1.100
  libpostproc    58.  1.100 / 58.  1.100
Input #0, image2, from 'pond.jpg':
  Duration: 00:00:00.04, start: 0.000000, bitrate: 154676 kb/s
  Stream #0:0: Video: mjpeg (Baseline), yuvj420p(pc,
bt470bg/unknown/unknown), 3000x1500 [SAR 240:240 DAR 2:1], 25 fps, 25
tbr, 25 tbn
Stream mapping:
  Stream #0:0 -> #0:0 (mjpeg (native) -> png (native))
Press [q] to stop, [?] for help
[swscaler @ 000002ad6cac5540] deprecated pixel format used, make sure
you did set range correctly
    Last message repeated 3 times
Output #0, image2, to 'eac.png':
  Metadata:
    encoder         : Lavf61.1.100
  Stream #0:0: Video: png, rgb24(pc, gbr/unknown/unknown,
progressive), 3000x1688 [SAR 1:1 DAR 375:211], q=2-31, 200 kb/s, 25
fps, 25 tbn
      Metadata:
        encoder         : Lavc61.3.100 png
[image2 @ 000002ad6cc35fc0] The specified filename 'eac.png' does not
contain an image sequence pattern or a pattern is invalid.
[image2 @ 000002ad6cc35fc0] Use a pattern such as %03d for an image
sequence or use the -update option (with -frames:v 1 if needed) to
write a single image.
[out#0/image2 @ 000002ad6c9e0040] video:9207KiB audio:0KiB
subtitle:0KiB other streams:0KiB global headers:0KiB muxing overhead:
unknown
frame=    1 fps=0.0 q=-0.0 Lsize=N/A time=00:00:00.04 bitrate=N/A speed=0.0467x


More information about the ffmpeg-user mailing list