[Slackbuilds-users] vlc slackbuild

Tim Dickson dickson.tim at googlemail.com
Mon Feb 25 21:54:10 UTC 2019

>>> rebuilt the relevant packages several times as follows, including tests
>>> of (rebuilt) vlc shown in square brackets:
>>> ffmpeg        (no build opts)
>>> opencv-legacy (no build opts)
>>> frei0r
>>> ffmpeg        FREI0R=yes OPENCV=yes
>>> opencv-legacy CVFFMPEG=yes
>>> frei0r
>>> [ vlc         OPENCV=yes WAYLAND=yes ]
>>> ffmpeg        FREI0R=yes OPENCV=yes
>>> [ vlc         OPENCV=yes WAYLAND=yes ]
>>> opencv-legacy CVFFMPEG=yes
>>> [ vlc         OPENCV=yes WAYLAND=yes ]
>>> At all test points, I couldn't find any problem with vlc, including
>>> playing of mp4 files.
>> helpful, thanks.
>> I did..
>> create ffmpeg with no vars
>> create quicktime, mjpegtools, transcode, vid.stab, opencv-legacy, frei0r
>> ffmpeg with all vars ( ASS=yes BS2B=yes CELT=yes CHROMAPRINT=yes
>> DC1394=yes EBUR128=yes FDK_AAC=yes FLITE=yes FREI0R=yes GME=yes
>>   GSM=yes IEC61883=yes ILBC=yes LADSPA=yes LAME=yes MODPLUG=yes
>>   X264=yes X265=yes XVID=yes ZMQ=yes ZVBI=yes )
>> recreate transcode and vid.stab
>> ffmpeg
>> recreate chromaprint
>> ffmpeg
> In the VM I'm using to try to recreate your issue, I explicitly enabled
> only OPENCV & FREI0R - trying to keep things as simple as possible.
> However most options seem to be autodetected anyway e.g. h264 which you
> confirm a bit further down. Accordingly there is very little difference
> in our configuration logs (see below).
> On my bare metal, I do explicitly enable many options:
> ENVOPTS="ASS=yes BLURAY=yes CELT=yes DC1394=yes DECKLINK=yes FAAC=yes
> GSM=yes IEC61883=yes ILBC=yes LADSPA=yes LAME=yes MODPLUG=yes NVENC=yes
> SCHROEDINGER=yes SPEEX=yes TWOLAME=yes VPX=yes X264=yes X265=yes
> ZVBI=yes XVID=yes
> "
>>>>>> Although without opencv , vlc starts up ok, when I try to play an mp4
>>>>>> video file i get
>>>>>> codec not supported
>>>>>> VLC could not decode the format "h264" (H264 -MPEG-4 AVC (part 10))
>>>>>> despite the fact that vlc and ffmpeg have been compiled with
>>>>>> everything
>>>>>> (all required and optional dependencies) except libva and
>>>>>> libva-intel-driver
>>>>>> (as I use amd apu's.)
>>> I think it's worth looking at your vlc build log, looking for references
>>> to h264. In my log, the configuration stage says:
>>> checking for x264 >= 0.148... yes
>>> checking for x264 >= 0.153... no
>>> Does yours have something like that?
>> yes, see attached
> I'm running out of ideas as to why you're unable to play mp4 files (let
> alone your original segfaulting problem). Could you extract the two mp4
> examples from the opencv-4.0.1.tar.gz tarball and try those please?
> They're at:
>      opencv-4.0.1/doc/js_tutorials/js_assets/cup.mp4
> and
> opencv-4.0.1/samples/cpp/tutorial_code/calib3d/real_time_pose_estimation/Data/box.mp4
> Then we'll know we're testing the same thing.
I've tried opening those two files (15sec and 8secs) but I get the 
"codec not supported: VLC could not decode the format "h264" (H264 - 
MPEG-4 AVC (part 10))"
error message with both files
> OK the jack2 vs jack-audio-connection-kit shows up in the diff below but
> it's unlikely (I think) to be the cause of your vlc issues.
> Here is a diff of the configuration section of our log files. No clues
> unfortunately - there's not much difference between them and nothing
> that obviously points to segfault or mp4 difficulties..
> diff chris.log tim.log
> 430d429
> < checking for opencv > 2.0... yes
> 456,458c455,458
> < checking gme/gme.h usability... no
> < checking gme/gme.h presence... no
> < checking for gme/gme.h... no
> ---
>> checking gme/gme.h usability... yes
>> checking gme/gme.h presence... yes
>> checking for gme/gme.h... yes
>> checking for gme_identify_header in -lgme... yes
> 597,600d596
> < checking for wayland-client >= 1.5.91... yes
> < checking for the Wayland protocols... //usr/share/wayland-protocols
> < checking for the Wayland scanner... /usr/bin/wayland-scanner
> < checking for wayland-egl... yes
> 629,631c625
> < checking for jack >= 1.9.7... no
> < configure: WARNING: Requested 'jack >= 1.9.7' but version of jack is
> 0.125.0, trying jack1 instead
> < checking for jack >= 0.120.1 jack < 1.0... yes
> ---
>> checking for jack >= 1.9.7... yes
> _
I'll try re-doing the opencv-legacy build with ffmpeg support, then 
redoing ffmpeg without opencv (legacy) again, and see if that makes any 
.... some hours later
deliberately uninstalled ffmpeg before creating and installing 
chromaprint so it doesn't depend on ffmpeg.
create and install ffmpeg with all options except opencv(legacy)
create and install opencv-legacy with ffmpeg support
created and installed frei0r
create and install ffmpeg with all options except opencv(legacy)
create and install vlc with opencv and wayland
it now works. both playing the example( opencv4) mp4 files box and cup, 
and playing the original mp4 file I tested with.
Thanks chris and others for looking at this.
at the moment, I'm  blaming chromaprint for the problem, and possibly 
the option of compiling ffmpeg with opencv support. (indirect via frei0r 
seems to be ok), as chromaprint without ffmpeg at compile time gets rid 
of one circular ffmpeg dependency, and turning off opencv option in 
ffmpeg brought my config more in line with chris's.

thanks again, everyone.
regards, Tim

More information about the SlackBuilds-users mailing list