LinuxQuestions.org

LinuxQuestions.org (/questions/)
-   Slackware (https://www.linuxquestions.org/questions/slackware-14/)
-   -   ffmpeg every codec gives me an Illegal instruction error (https://www.linuxquestions.org/questions/slackware-14/ffmpeg-every-codec-gives-me-an-illegal-instruction-error-4175622944/)

ricemark20 02-02-2018 10:14 AM

ffmpeg every codec gives me an Illegal instruction error
 
Hi,

I am using Slackware on a 32 bit machine.

Code:

*-core
      description: Motherboard
      product: A7N8X-E
      vendor: ASUSTeK Computer INC.


*-cpu
          description: CPU
          product: AMD Athlon(tm) XP 3000+
          vendor: Advanced Micro Devices [AMD]
          physical id: 4
          bus info: cpu@0
          version: 6.10.0
          slot: Socket A
          size: 2100MHz
          capacity: 3GHz
          width: 32 bits

I recently install the ffmpeg from the UK slackbuilds.

http://slackware.uk/people/alien/res...mpeg/pkg/14.2/

Whenever I try a simple

Code:

ffmpeg -i sample_movie.mpg sample_movie.mp4
it throws this error:

Code:

Illegal instruction
With no other explanation. It happens with any container, not just mp4.

orbea 02-02-2018 10:44 AM

What Slackware version are you using?

Can you try building ffmpeg and its dependencies yourself from SlackBuilds.org?

ricemark20 02-02-2018 10:57 AM

I am using slackware-current. Should I be using the stable version? I would build from source after I search out how.

orbea 02-02-2018 11:00 AM

If you are using current, then you should already have ffmpeg installed. I would remove any ffmpeg packages you have installed and then reinstall it with slackpkg. You can also update current using slackpkg to ensure you aren't using an old current?

55020 02-03-2018 08:12 AM

Here's the problem: 'AMD Athlon(tm) XP 3000+'

It's a Barton processor. It hasn't got SSE2 instructions. 'cat /proc/cpuinfo | grep flags' will show sse, but not sse2.

I doubt there's an ffmpeg build flag for disabling sse2 support. You'll get the same problem with lots of other audio, multimedia and graphics software. The world moved on and left your cpu behind. Sorry.

Update!! A very helpful friend (ponce ;) ) tells me that there are flags '--disable-sse2' and '--disable-sse3' that you can add to the ffmpeg SlackBuild so that it should work!!

ricemark20 02-06-2018 04:28 AM

Thanks for responding. I added those options to the Slackbuild and got this:

Code:

[mark@mediacenter1 Movies]$ ffmpeg -i War.Games.The.Dead.Code.mpg sample.mp4
ffmpeg version 3.4.1 Copyright (c) 2000-2017 the FFmpeg developers
  built with gcc 5.3.0 (GCC)
  configuration: --prefix=/usr --libdir=/usr/lib --shlibdir=/usr/lib --docdir=/usr/doc/ffmpeg-3.4.1 --mandir=/usr/man --enable-gpl --enable-version3 --enable-avfilter --enable-avresample --enable-libmp3lame --enable-libass --enable-libdc1394 --enable-libfribidi --enable-libgsm --enable-libmfx --enable-libopencore-amrnb --enable-libopencore-amrwb --enable-libopus --enable-libssh --enable-libspeex --enable-libtheora --enable-libv4l2 --enable-libvo-amrwbenc --enable-libvorbis --enable-libvpx --enable-libwavpack --enable-libx264 --enable-libx265 --enable-libzvbi --enable-postproc --enable-runtime-cpudetect --enable-sdl2 --enable-vaapi --enable-vdpau --enable-pthreads --enable-bzlib --enable-zlib --enable-shared --enable-static --disable-debug --disable-sse2 --disable-sse3 --enable-libpulse --enable-libfdk-aac --enable-openssl --enable-nonfree --extra-cflags='-I/tmp/build/tmp-ffmpeg/ffmpegdeps/usr/include -I/tmp/build/tmp-ffmpeg/ffmpegdeps/usr/include/SDL2 -DRUNTIME_CPUDETECT' --extra-ldflags='-L/tmp/build/tmp-ffmpeg/ffmpegdeps/usr/lib -ldl -lssl -lcrypto -lz -lusb -ldrm' --pkg-config-flags=--static
  libavutil      55. 78.100 / 55. 78.100
  libavcodec    57.107.100 / 57.107.100
  libavformat    57. 83.100 / 57. 83.100
  libavdevice    57. 10.100 / 57. 10.100
  libavfilter    6.107.100 /  6.107.100
  libavresample  3.  7.  0 /  3.  7.  0
  libswscale      4.  8.100 /  4.  8.100
  libswresample  2.  9.100 /  2.  9.100
  libpostproc    54.  7.100 / 54.  7.100
Input #0, mpeg, from 'War.Games.The.Dead.Code.mpg':
  Duration: 01:39:52.13, start: 0.280633, bitrate: 5149 kb/s
    Stream #0:0[0x1bf]: Data: dvd_nav_packet
    Stream #0:1[0x1e0]: Video: mpeg2video (Main), yuv420p(tv, top first), 720x480 [SAR 8:9 DAR 4:3], Closed Captions, 29.97 fps, 59.94 tbr, 90k tbn, 59.94 tbc
    Stream #0:2[0x80]: Audio: ac3, 48000 Hz, stereo, fltp, 192 kb/s
    Stream #0:3[0x81]: Audio: ac3, 48000 Hz, 5.1(side), fltp, 448 kb/s
    Stream #0:4[0x82]: Audio: ac3, 48000 Hz, stereo, fltp, 192 kb/s
    Stream #0:5[0x83]: Audio: ac3, 48000 Hz, stereo, fltp, 192 kb/s
    Stream #0:6[0x84]: Audio: ac3, 48000 Hz, stereo, fltp, 192 kb/s
File 'sample.mp4' already exists. Overwrite ? [y/N] y
Stream mapping:
  Stream #0:1 -> #0:0 (mpeg2video (native) -> h264 (libx264))
  Stream #0:3 -> #0:1 (ac3 (native) -> aac (native))
Press [q] to stop, [?] for help
Illegal instruction

Not all the packages were linked correctly, so I used wget in this way to get the packages locally.

Code:

wget --recursive --page-requisites --html-extension --convert-links --restrict-file-names=windows --no-parent http://slackware.uk/people/alien/restricted_slackbuilds/ffmpeg/build/

ponce 02-06-2018 04:38 AM

have you tried with another output video codec, like mpeg or xvid? it might be that also libx264 requires a minimum set of sse2 extensions...

ricemark20 02-06-2018 04:42 AM

1 Attachment(s)
It's working so far with mpeg. Thanks.


All times are GMT -5. The time now is 01:55 PM.