Complementing my message below, the unit test in inst/VideWriter.m passed successfully when the sources were compiled against ffmpeg 4, for instance in this build: https://buildd.debian.org/status/fetch.php?pkg=octave-video&arch=amd64&ver=2.0.2-1%2Bb2&stamp=1650535691&raw=0

* Rafael Laboissière <raf...@debian.org> [2022-08-13 10:49]:

* William 'jawn-smith' Wilson <jawn-sm...@ubuntu.com> [2022-08-02 17:35]:

Package: octave-video
Followup-For: Bug #1004770
User: ubuntu-de...@lists.ubuntu.com
Usertags: origin-ubuntu kinetic ubuntu-patch
Control: tags -1 patch

Dear Maintainer,

The first patch I submitted was a bit messy and failed to build with older versions of ffmpeg. A version with this patch has built successfully for me in Ubuntu kinetic and Debian sid.

In Ubuntu, the attached patch was applied to achieve the following:


* d/patches/ffmpeg5.patch: Update to FFMPEG 5 API.


Thanks for considering the patch.

Thank you for your patch. The package builds fine on my amd64 Debian sid system against ffmpeg 5. However, one of the unit test is failing:

   $ echo 'pkg load video; test VideoWriter' | octave-cli -q
   fatal: caught signal Segmentation fault -- stopping myself...
   Segmentation fault

Further investigation, when running the code of the unit test by hand, shows that the problem happens in the method writeVideo of the VideoWriter class:

   $ octave-cli -q
   octave:1> pkg load video
   octave:2> fn = fullfile (tempdir(), "rainbow.mp4");
   octave:3> width = 200;
   octave:4> height = 150;
   octave:5> nframes = 120;
   octave:6> p = permute (rainbow (width), [3 1 2]);
   octave:7> raw_video = zeros (height, width, 3, nframes);
   octave:8> w = VideoWriter (fn);
   octave:9> for k=1:nframes
     disp (k)
     ps = circshift (p, k * 6);
     img = uint8 (255 * repmat (ps, height, 1));
     raw_video (:, :, :, k) = img;
     writeVideo (w, img);
   endfor
   1
   fatal: caught signal Segmentation fault -- stopping myself...
   Segmentation fault

Ultimately, I noticed that the problem arises in the call of the function __writer_open__, defined in src/cap_ffmpeg_wrapper.cc.

Do you experience the same problem in your system?

Best,

Rafael Laboissière



Reply via email to