cpp-cheat icon indicating copy to clipboard operation
cpp-cheat copied to clipboard

Why does encode.c work only with 320x240 and doesn't work with 1280x720?

Open ProgrammingLife opened this issue 7 years ago • 2 comments

Tried this example: cpp-cheat/ffmpeg/encode.c It works with 320x240 but doesn't work if I change the size to 1280x720. I get segmentation fault. But why? How to work with 720p size and more?

There's some problem with this line: sws_scale( sws_context, ( const uint8_t * const * ) &rgb, inLinesize, 0, frame->height, frame->data, frame->linesize );

it returns me segmentation fault only with the: 1280x720. As for 320x240 - all works fine.

ProgrammingLife avatar Apr 02 '17 01:04 ProgrammingLife

Hahah but it works with the 1920x1080. What's the magick?

ffmpeg/3.2.4 --enable-shared --enable-pthreads --enable-gpl --enable-version3 --enable-hardcoded-tables --enable-avresample --cc=clang --host-cflags= --host-ldflags= --enable-libmp3lame --enable-libx264 --enable-libxvid --enable-opencl --disable-lzma --enable-vda

ProgrammingLife avatar Apr 02 '17 02:04 ProgrammingLife

Hmmm, I don't reproduce :-(

I've uploaded a new version for making testing easier 02e6457d and then all the following seem to work:

./encode.out 320 240
./encode.out 1280 720
./encode.out 1920 1080

Ubuntu 16.10:

ffmpeg version 3.0.7-0ubuntu0.16.10.1 Copyright (c) 2000-2017 the FFmpeg developers built with gcc 6.2.0 (Ubuntu 6.2.0-5ubuntu12) 20161005 configuration: --prefix=/usr --extra-version=0ubuntu0.16.10.1 --toolchain=hardened --libdir=/usr/lib/x86_64-linux-gnu --incdir=/usr/include/x86_64-linux-gnu --cc=cc --cxx=g++ --enable-gpl --enable-shared --disable-stripping --disable-decoder=libopenjpeg --disable-decoder=libschroedinger --enable-avresample --enable-avisynth --enable-gnutls --enable-ladspa --enable-libass --enable-libbluray --enable-libbs2b --enable-libcaca --enable-libcdio --enable-libflite --enable-libfontconfig --enable-libfreetype --enable-libfribidi --enable-libgme --enable-libgsm --enable-libmodplug --enable-libmp3lame --enable-libopenjpeg --enable-libopus --enable-libpulse --enable-librubberband --enable-librtmp --enable-libschroedinger --enable-libshine --enable-libsnappy --enable-libsoxr --enable-libspeex --enable-libssh --enable-libtheora --enable-libtwolame --enable-libvorbis --enable-libvpx --enable-libwavpack --enable-libwebp --enable-libx265 --enable-libxvid --enable-libzvbi --enable-openal --enable-opengl --enable-x11grab --enable-libdc1394 --enable-libiec61883 --enable-libzmq --enable-frei0r --enable-chromaprint --enable-libx264

Let me know if you find something out.

cirosantilli avatar Apr 02 '17 08:04 cirosantilli