Avidemux crash when converting mp4 file

I am having a problem with avidemux when trying to convert a specific mp4 file, it crash and sometimes it crash the entire system, the problem is just with one file, other files convert with no problem

https://easgs.files.wordpress.com/2016/08/instantc3a1nea1.png

the problematic video is the first one, I can see that the differece with the second one is the audio stream, it has an AC-3 audio stream, I think it might be an audio missing codec problem, with avidemux in Windows it converts with no problem.

Here is some output when running the program from the console




[ADM_ad_plugin] Scanning directory /home/eduardo/.avidemux/plugins/audioDecoder/
[ADM_ad_plugin] Cannot parse plugin
[ADM_vf_plugin] Scanning directory /home/eduardo/.avidemux/plugins/videoFilter/
[ADM_vf_plugin] Cannot parse plugin
[ADM_vidEnc_plugin] Scanning directory /usr/lib64/ADM_plugins/videoEncoder/
ignored: x264
ignored: avcodec
ignored: mpeg2enc
ignored: xvid
[Xvid] Initialising Xvid
[Xvid] Build: xvid-1.3.3
[Xvid] SIMD supported: (3cf)
                MMX
                MMXEXT
                SSE
                SSE2
                SSE3
                SSE41
                ALTIVEC
[ADM_vidEnc_plugin] Plugin loaded version 1.0.1, filename libADM_vidEnc_xvid.so, desc: Xvid video encoder plugin for Avidemux (c) Mean/Gruntster
[ADM_vidEnc_plugin] Plugin loaded version 1.0.1, filename libADM_vidEnc_x264.so, desc: x264 video encoder plugin for Avidemux (c) Mean/Gruntster
[ADM_vidEnc_plugin] Plugin loaded version 1.0.0, filename libADM_vidEnc_mpeg2enc.so, desc: MPEG-1 video encoder plugin for Avidemux (c) Mean/Gruntster
[ADM_vidEnc_plugin] Plugin loaded version 1.0.0, filename libADM_vidEnc_mpeg2enc.so, desc: MPEG-2 video encoder plugin for Avidemux (c) Mean/Gruntster
[ADM_vidEnc_plugin] Plugin loaded version 1.5.0, filename libADM_vidEnc_avcodec.so, desc: DV video encoder plugin for Avidemux (c) Mean/Gruntster
[ADM_vidEnc_plugin] Plugin loaded version 1.5.0, filename libADM_vidEnc_avcodec.so, desc: Sorenson Spark video encoder plugin for Avidemux (c) Mean/Gruntster
[ADM_vidEnc_plugin] Plugin loaded version 1.5.0, filename libADM_vidEnc_avcodec.so, desc: FFV1 video encoder plugin for Avidemux (c) Mean/Gruntster
[ADM_vidEnc_plugin] Plugin loaded version 1.5.0, filename libADM_vidEnc_avcodec.so, desc: FFVHuff video encoder plugin for Avidemux (c) Mean/Gruntster
[ADM_vidEnc_plugin] Plugin loaded version 1.5.0, filename libADM_vidEnc_avcodec.so, desc: H.263 video encoder plugin for Avidemux (c) Mean/Gruntster
[ADM_vidEnc_plugin] Plugin loaded version 1.5.0, filename libADM_vidEnc_avcodec.so, desc: Huffyuv video encoder plugin for Avidemux (c) Mean/Gruntster
[ADM_vidEnc_plugin] Plugin loaded version 1.5.0, filename libADM_vidEnc_avcodec.so, desc: M-JPEG video encoder plugin for Avidemux (c) Mean/Gruntster
[ADM_vidEnc_plugin] Plugin loaded version 1.5.0, filename libADM_vidEnc_avcodec.so, desc: MPEG-1 video encoder plugin for Avidemux (c) Mean/Gruntster
[ADM_vidEnc_plugin] Plugin loaded version 1.5.0, filename libADM_vidEnc_avcodec.so, desc: MPEG-2 video encoder plugin for Avidemux (c) Mean/Gruntster
[ADM_vidEnc_plugin] Plugin loaded version 1.5.0, filename libADM_vidEnc_avcodec.so, desc: MPEG-4 ASP video encoder plugin for Avidemux (c) Mean/Gruntster
[ADM_vidEnc_plugin] Scanning done, found 14 codec
Registered DialogFactory classes
Spidermonkey initialized.

[Locale] Locale: es_ES
[Locale] Loading language file /usr/share/avidemux/i18n/avidemux_es_ES succeeded
[Locale] Loading language file /usr/share/avidemux/i18n/qt_es_ES FAILED
[Locale] Test: &Edit -> &Edit

Directory /home/eduardo/.avidemux/custom/ exists.Good.
No custom scripts
Custom menu built
The screen seems to be 1024 x 741 px
Found 17 video encoder(s)
Found 8 audio encoder(s)
Found 13 format(s)
No crash file (/home/eduardo/.avidemux/crash.js)
14000000 -> 14000000
 
 3GPP /MP4/Quicktime file detected..
** opening 3gpp files **Analyzing file and atoms
Warning: scale is not in ms 600!
Movie duration: 91 minutes
Parsing Track
<<Parsing Mdia>>
MDHD, Track duration: 3 minutes, trackScale: 24000
[HDLR]
hdlr video found 
 <<Parsing Stbl>>
[STSD] VIDEO avc1, size 160
[STSD] vendor 
[STSD] width :712
[STSD] height :400
[STSD] datasize :0
[STSD] FrameCount :1
Codec string :0 <>
LEFT:72
Reading avcC, got avcC
avcC size:46
avcC Revision             :1
avcC AVCProfileIndication :64
avcC profile_compatibility:0
avcC AVCLevelIndication   :29
avcC lengthSizeMinusOne   :ff
avcC NumSeq               :e1
avcC sequenceParSetLen    :19 
 0000 : gd.)��@�3��.....  67 64 00 29 ac d9 40 b4 33 e5 f0 11 00 00 03 03
 0010 : �..���.1�  e9 00 00 bb 80 8f 18 31 96
avcC numOfPictureParSets  :1
avcC Pic len              :6

 0000 : .h����  06 68 eb e1 f2 c8stts:0
Time stts atom found (1)
Using myscale 24000
ctts:0
Found 132108 elements
Stss:810
0 frames /132108 nbsz..
                nbCo: 12010
Build Track index
Index done
[3GP] Ctts min 0 max 5005
Parsing Track
<<Parsing Mdia>>
MDHD, Track duration: 1 minute, trackScale: 48000
[HDLR]
hdlr audio found 
 <<Parsing Stbl>>
[STSD] AUDIO <ac-3>, 0x61632d33, size 47
[STSD]Revision       :0
[STSD]Vendor         : 
[STSD]Channels       :2
[STSD]Bit per sample :16
[STSD]Encoding       :0
[STSD]Packet size    :0
[STSD]Fq:48000
[STSD]Fq       :48000
[STSD] chan:2 bpp:16 encoding:0 fq:48000 (left 11)
stts:0
Time stts atom found (1)
Using myscale 48000
768 frames /172186 nbsz..
                nbCo: 12009
Cur audio track :0
Build Track index
All the same size: 768 (total size 132238848 bytes)
Total size in sample : 172186
Sample size          : 768
Found 132238848 bytes
We have 12009 chunks but it should be split into 
around 36027 chunks. adjusting..(SzIdentical 768)
One go :3840
After split, we have 132238848 bytes
Index done
Indexed audio, nb blocks:0
Indexed audio, nb blocks:36027 (final)
Done finding main atoms


 [MP4 audio] : 132238848 bytes (36027 chunks)
Byterate     :16000
Frequency :48000
Encoding   :1234
Channels   :2
Extra data :0
3gp Go to time succeeded chunk :0 time ask:0 time get:0
3gp/mov file successfully read..
The video codec has some extradata (46 bytes)

 0000 : .d.)��..gd.)��@�  01 64 00 29 ff e1 00 19 67 64 00 29 ac d9 40 b4
 0010 : 3��.....�..���.1  33 e5 f0 11 00 00 03 03 e9 00 00 bb 80 8f 18 31
 0020 : �...h���Ȱ���.  96 01 00 06 68 eb e1 f2 c8 b0 fd f8 f8 00
Deleting post proc
Initializing postproc
Deleting post proc
updating post proc
Enabled type:3 strength:3
[Editor] Duration in seconds: 5510, in samples: 264480496

 Decoder FCC: H264 (34363248)
Searching decoder (712 x 400, extradataSize:46)...
[lavc] Build: 3484164
[lavc] Enabling MT decoder with 4 threads
[lavc] Initializing H264 decoder with 46 extradata
[lavc] Decoder init: CODEC_ID_H264 video decoder initialized!

 checking for B-Frames...
 scanning 119 frames
[lavc] Cannot parallelize deblocking type 1, decoding such frames in sequential order

[lavc] Err: 898, size: 898

[lavc] error in FFMP43/mpeg4!: got picture

 ***oops***
[lavc] Err: 23, size: 23

[lavc] error in FFMP43/mpeg4!: got picture

 ***oops***
 * Frame 5 is A B frame, flag not ok
 * Frame 7 is A B frame, flag not ok
 * Frame 8 is A B frame, flag not ok
 * Frame 9 is A B frame, flag not ok
 * Frame 11 is A B frame, flag not ok
 * Frame 12 is A B frame, flag not ok
 * Frame 13 is A B frame, flag not ok
 * Frame 15 is A B frame, flag not ok

 * Frame 16 is A B frame, flag not ok
 * Frame 17 is A B frame, flag not ok
 * Frame 19 is A B frame, flag not ok
 * Frame 20 is A B frame, flag not ok
 * Frame 21 is A B frame, flag not ok
 * Frame 23 is A B frame, flag not ok
 * Frame 24 is A B frame, flag not ok
 * Frame 25 is A B frame, flag not ok
 * Frame 27 is A B frame, flag not ok
 * Frame 28 is A B frame, flag not ok
 * Frame 29 is A B frame, flag not ok
 * Frame 31 is A B frame, flag not ok

  
 Mmm this appear to have b-frame...

 But the  index is not up to date 
 End of B-frame check
Preferences found and loaded

 Editor :Audio streamer initialized[ADM_ad_plugin]Format 0x4d2 : probing libADM_ad_vorbis.so score 0
[ADM_ad_plugin]Format 0x4d2 : probing libADM_ad_a52.so score 0
[ADM_ad_plugin]Format 0x4d2 : probing libADM_ad_opencore_amrwb.so score 100
[ADM_ad_plugin]Format 0x4d2 : probing libADM_ad_faad.so score 0
[ADM_ad_plugin]Format 0x4d2 : probing libADM_ad_opencore_amrnb.so score 0
[ADM_ad_plugin]Format 0x4d2 : probing libADM_ad_Mad.so score 0
[RDR] Resizing to 712 x 400
[lavc] Warning: data is not aligned! This can lead to a speedloss


** conf updated **
[AudioEncoder] Selected Lame for index 5, tag 0x55 
**saving:**
Output format:0
 AVI family

 video process mode : 1
 Process mode
 mux mode : 1 mux param 0
[Bridge] Going to time 0
3gp Go to time succeeded chunk :0 time ask:0 time get:0
[Bridge] Starting with time 0, shift 0
[Bridge] Ending with time 0, sample 0
[Bridge] Going to time 0
3gp Go to time succeeded chunk :0 time ask:0 time get:0
**] Current encoder : 5 :MP3 (lame)
[Bridge] Going to time 0
3gp Go to time succeeded chunk :0 time ask:0 time get:0
[Lame] Creating lame
[Lame] output frequency : 48000
[Lame] mono audio mp3[Lame]Using quality of 2
LAME 3.99.5 64bits (http://lame.sf.net)
Using polyphase lowpass filter, transition band: 20323 Hz - 20903 Hz

misc:

        scaling: 0,95
        ch0 (left) scaling: 1
        ch1 (right) scaling: 1
        huffman search: best (outside loop)
        experimental Y=0
        ...

stream format:

        MPEG-1 Layer 3
        1 channel - mono
        padding: off
        constant bitrate - CBR 
        using LAME Tag
        ...

psychoacoustic:

        using short blocks: allowed
        subblock gain: 1
        adjust masking: 0 dB
        adjust masking short: 0 dB
        quantization comparison: 9
         ^ comparison short blocks: 9
        noise shaping: 2
         ^ amplification: 1
         ^ stopping: 1
        ATH: using
         ^ type: 4
         ^ shape: 4 (only for type 4)
         ^ level adjustement: -3 dB
         ^ adjust type: 3
         ^ adjust sensitivity power: 1,000000
        experimental psy tunings by Naoki Shibata
           adjust masking bass=-0,5 dB, alto=-0,25 dB, treble=-0,025 dB, sfb21=0,5 dB
        using temporal masking effect: yes
        interchannel masking ratio: 0,0002
        ...

PacketQueue AVI audioQ created
[AudioQueueThread] Starting
[externalEncoder] Target colourspace: yv12
[Xvid] begin pass 1/1
[Xvid] # xvid_enc_create #
[Xvid] version = 66307
[Xvid] profile = 0
[Xvid] width = 712, height = 400
[Xvid] num_zones = 0
[Xvid] num_plugins = 2
[Xvid] num_threads = 4
[Xvid] max_bframes = 2
[Xvid] global = 0
[Xvid] fincr = 1000
[Xvid] fbase = 23976
[Xvid] max_key_interval = 300
[Xvid] frame_drop_ratio = 0
[Xvid] bquant_ratio = 150
[Xvid] bquant_offset = 100
[Xvid] min_quant = 1 1 1 
[Xvid] max_quant = 31 31 31 
[Xvid] # xvid_enc_frame #
[Xvid] version = 66307
[Xvid] vol_flags = 0
[Xvid] quant_intra_matrix = NULL
[Xvid] quant_inter_matrix = NULL
[Xvid] par = 1
[Xvid] par_width = 1
[Xvid] par_height = 1
[Xvid] fincr = 0
[Xvid] vop_flags = 394
[Xvid] motion = 13396
[Xvid] type = 0
[Xvid] quant = 4
[Xvid] bframe_threshold = 0

 Saved as 712 x 400
[externalEncoder] 0 extra header bytes
[ODML] using ODML placeholder of size 4096 bytes
[ODML] using ODML placeholder of size 4096 bytes

 writing 132108 frames
Saving crash file to /home/eduardo/.avidemux/crash.js

 **Saving script project **
Conf size: 0

*********** BACKTRACK **************
/usr/lib64/libADM_core.so(ADM_backTrack+0x4d) [0x7f9ff63b762d]:0:<ADM_backTrack>:-2
/lib64/libc.so.6(+0x35200) [0x7f9ff57a6200]:1:<>:-2
/usr/lib64/ADM_plugins/audioDecoder//libADM_ad_opencore_amrwb.so(_ZN27ADM_AudiocodecOpencoreAmrWb3runEPhjPfPj+0xa7) [0x7f9fef5e5677]:2:<ADM_AudiocodecOpencoreAmrWb::run(unsigned char*, unsigned int, float*, unsigned int*)>:0
avidemux2_qt4(_ZN22AVDMGenericAudioStream14readDecompressEjPf+0x8f) [0x481a9f]:3:<AVDMGenericAudioStream::readDecompress(unsigned int, float*)>:0
avidemux2_qt4(_ZN22AUDMAudioFilter_Bridge18fillIncomingBufferEP10AUD_Status+0x6c) [0x4754ac]:4:<AUDMAudioFilter_Bridge::fillIncomingBuffer(AUD_Status*)>:0
avidemux2_qt4(_ZN22AUDMAudioFilter_Bridge4fillEjPfP10AUD_Status+0x4d) [0x47536d]:5:<AUDMAudioFilter_Bridge::fill(unsigned int, float*, AUD_Status*)>:0
/usr/lib64/libADM_coreAudio.so(_ZN11AUDMEncoder12refillBufferEi+0x88) [0x7f9ff82e8618]:6:<AUDMEncoder::refillBuffer(int)>:0
/usr/lib64/ADM_plugins/audioEncoders//libADM_ae_lame.so(_ZN16AUDMEncoder_Lame9getPacketEPhPjS1_+0x2a) [0x7f9fddcc616a]:7:<AUDMEncoder_Lame::getPacket(unsigned char*, unsigned int*, unsigned int*)>:0
avidemux2_qt4(_Z22defaultAudioQueueSlaveP12audioQueueMT+0x51) [0x4d5b21]:8:<defaultAudioQueueSlave(audioQueueMT*)>:0
/lib64/libpthread.so.0(+0x80a4) [0x7f9ff80d10a4]:9:<>:-2
/lib64/libc.so.6(clone+0x6d) [0x7f9ff585604d]:10:<clone>:-2
*********** BACKTRACK **************
QObject::setParent: Cannot set parent, new parent is in a different thread
QPixmap: It is not safe to use pixmaps outside the GUI thread
QPixmap: It is not safe to use pixmaps outside the GUI thread
QPixmap: It is not safe to use pixmaps outside the GUI thread
QPixmap: It is not safe to use pixmaps outside the GUI thread
QPixmap: It is not safe to use pixmaps outside the GUI thread
QObject: Cannot create children for a parent that is in a different thread.
(Parent is Breeze::WidgetStateEngine(0x272e280), parent's thread is QThread(0x2573150), current thread is QThread(0x7f9fbc003150)
QObject: Cannot create children for a parent that is in a different thread.
(Parent is Breeze::WidgetStateEngine(0x273d070), parent's thread is QThread(0x2573150), current thread is QThread(0x7f9fbc003150)
QObject: Cannot create children for a parent that is in a different thread.
(Parent is Breeze::WidgetStateEngine(0x273d070), parent's thread is QThread(0x2573150), current thread is QThread(0x7f9fbc003150)
QObject: Cannot create children for a parent that is in a different thread.
(Parent is Breeze::WidgetStateEngine(0x272e280), parent's thread is QThread(0x2573150), current thread is QThread(0x7f9fbc003150)
QObject::installEventFilter(): Cannot filter events for objects in a different thread.
QObject: Cannot create children for a parent that is in a different thread.
(Parent is Breeze::WidgetStateEngine(0x272e280), parent's thread is QThread(0x2573150), current thread is QThread(0x7f9fbc003150)
QObject: Cannot create children for a parent that is in a different thread.
(Parent is Breeze::WidgetStateEngine(0x272e280), parent's thread is QThread(0x2573150), current thread is QThread(0x7f9fbc003150)
QObject: Cannot create children for a parent that is in a different thread.
(Parent is Breeze::WidgetStateEngine(0x272e280), parent's thread is QThread(0x2573150), current thread is QThread(0x7f9fbc003150)

did you get avidemux from packman or from OBS (as some users seam to have build it)
http://packman.links2linux.org/package/avidemux
http://software.opensuse.org/package/avidemux
have you done a full vendor change with packman?
what’s your repo list?

zypper lr -d

edit
there seams to be an updated version on packman, one that uses Qt5 and has a new name avidemux3
http://packman.links2linux.org/package/avidemux3
maybe you should try that but I still think it’s an oss package that needs to be replaced with one from packman do a full vendor change

this is the version I am using

eduardo@Blue01:~> avidemux2_qt4
*************************
  Avidemux v2.5.6
*************************
 http://www.avidemux.org
 Code      : Mean, JSC, Grant Pedersen
 GFX       : Nestor Di, nestordi@augcyl.org
 Design    : Jakub Misak
 FreeBSD   : Anish Mistry, amistry@am-productions.biz
 Audio     : Mihail Zenkov
 Mac OS X  : Kuisathaverat, Harry van der Wolf
 Win32     : Grant Pedersen

Compiler: GCC 4.8.5
Build Target: Linux (x86-64)
User Interface: Qt (4.8.6)

Large file available: 1 offset

Initialising prefs
Directory /home/eduardo/.avidemux exists.Good.                                                                                                 
Using /home/eduardo/.avidemux as base directory for prefs/jobs/...                                                                             
Preferences found and loaded                                                                                                                   
[cpuCaps]Checking CPU capabilities                                                                                                             
                MMX detected                                                                                                                   
                MMXEXT detected                                                                                                                
                SSE detected                                                                                                                   
                SSE2 detected                                                                                                                  
                SSE3 detected                                                                                                                  
                SSSE3 detected                                                                                                                 
[cpuCaps]End of CPU capabilities check (cpuMask :ffffffff)                                                                                     
Initializing Dithering tables                                                                                                                  
[COREUI] Compiled with 01.00.01                                                                                                                
[COREUI] Linked with   01.00.01                                                                                                                
[CoreUI] Compiled with patch version 1, using 1                                                                                                
Initializing postproc                                                                                                                          
Deleting post proc                                                                                                                             
updating post proc                                                                                                                             
Enabled type:3 strength:3                                                                                                                      
                                                                                                          
                                                                          

I guess this version is very old because the most recent version in the avidemux site is 2.6.12 (2016.3.5), but in packman the most recent version is this one 2.5.6.

Hi
The 2.6.12 version is there, it’s called avidemux3 and avidemux3-qt5.

I’m not sure why packman decided to call the 2.6.12 version avidemux3 maybe because it uses Qt5 and there is not gtk version, just install avidemux3

zypper in avidemux3

the above will work if you have the packman repo, btw you did not tell us your repo list because the old 2.4 version should still work, most likely you need to do a full vendor change (if you do not know what that is you have not done it)

I didn´t know that either, I will give it a try

Uninstalling Avidemux 2.5.6 and installing Avidemux3 from packman did the trick, thanks.

just as an observation I think avidemux should has some error handling to let the user about the problem instead of crashing.

If you start an app from command line in a console it will show errors if they occur

as far as I can tell the old version should work too, the way I understood it the packman maintainers wanted to keep a gtk and qt4 build of avidemux, as the avidemux developers dropped those builds their latest version 2.6.12 is qt5 only, so packman just renamed the update package and kept the old version too, doing a zypper dup with packman should have fixed things, but I haven’t used avidemux in ages I usually run ffmpeg from a terminal when I need to convert a media file

Not really.
When avidemux3 was added to Packman, there was not even a Qt5 version yet I think (at least there was no Qt5 included in openSUSE yet :wink: ).

And there’s still a avidemux3-qt4 package in Packman for 13.2. So they explicitly switched to Qt5 on purpose for newer distributions (that come with Plasma5 as default).

IIRC, the main reasons to create a new package avidemux3 (instead of replacing avidemux with the newer version) years ago were that 2.6 was not considered completely stable yet at that time, and that it had fundamental changes of how it works (which may have been positive for some people but negative for others).

Read here: http://lists.links2linux.de/pipermail/packman/2014-February/012795.html

With avidemux3 the QT4 interface is recommended. The GTK interface is more an
experimental one.

BTW: avidemux3 is still a little bit more buggy. Sometimes is crashes while
scrolling in the video, sometimes it crashes, when jumping to the start of the
video, sometimes it crashes, when start coding. So you should save the
project, whenever you changed something!

An unfortunately partial filters are still not provided and maybe will never
be.

So originally avidemux3 had a Qt4 and GTK interface.

And even older:
http://lists.links2linux.de/pipermail/packman/2013-April/011997.html

> It
> brings a lot of improvments, most notably the ability to work on AVCHD /
> H264 encoded streams with exact time accuracy, when other solutions (ex
> KDEnLive) might be overkill when it’s just about converting.

But on the other hand it does not support partial filters or frame accurate
cutting. Therefore avidemux 2.6 isn’t a replacement for avidemux 2.5 but a
supplement.