News:

--

Main Menu

r7811 Assert - crash (MPEG-TS) FIXED

Started by Jan Gruuthuse, March 23, 2012, 05:47:54 PM

Previous topic - Next topic

Jan Gruuthuse

Sporadic crashes occur when loading a new arte HD 720p .TRP during indexing after processing a 1st one successfully. Removing the index helps when restarting.
Crash

Assert failed :0
at line 234, file /home/jan/avidemux_2.6_branch_mean/avidemux/qt4/common/ADM_editor/src/ADM_segment.cppADM_backTrack
ADM_EditorSegment::getSegment(int)
ADM_edAudioTrackFromVideo::getInfo()
/usr/bin/avidemux3_qt4() [0x42f6f3]
A_openAvi(char const*)
ADM_QT4_fileSel::GUI_FileSelRead(char const*, void (*)(char const*))
HandleAction(Action)
MainWindow::searchToolBar(QAction*)
MainWindow::qt_metacall(QMetaObject::Call, int, void**)
QMetaObject::activate(QObject*, QMetaObject const*, int, void**)
QToolBar::actionTriggered(QAction*)
QToolBar::qt_metacall(QMetaObject::Call, int, void**)
QMetaObject::activate(QObject*, QMetaObject const*, int, void**)
QToolButton::triggered(QAction*)
QToolButton::qt_metacall(QMetaObject::Call, int, void**)
QMetaObject::activate(QObject*, QMetaObject const*, int, void**)
QAction::triggered(bool)
QAction::activate(QAction::ActionEvent)

QAbstractButton::mouseReleaseEvent(QMouseEvent*)


github:gist: crash.py

seems to be the same related issue: r7797 crash shows same message.

Jan Gruuthuse

same happens with SD .TRP

Crash

Assert failed :0
at line 234, file /home/jan/avidemux_2.6_branch_mean/avidemux/qt4/common/ADM_editor/src/ADM_segment.cppADM_backTrack
ADM_EditorSegment::getSegment(int)
ADM_edAudioTrackFromVideo::getInfo()
/usr/bin/avidemux3_qt4() [0x42f6f3]
A_openAvi(char const*)
ADM_QT4_fileSel::GUI_FileSelRead(char const*, void (*)(char const*))
HandleAction(Action)
MainWindow::searchToolBar(QAction*)
MainWindow::qt_metacall(QMetaObject::Call, int, void**)
QMetaObject::activate(QObject*, QMetaObject const*, int, void**)
QToolBar::actionTriggered(QAction*)
QToolBar::qt_metacall(QMetaObject::Call, int, void**)
QMetaObject::activate(QObject*, QMetaObject const*, int, void**)
QToolButton::triggered(QAction*)
QToolButton::qt_metacall(QMetaObject::Call, int, void**)
QMetaObject::activate(QObject*, QMetaObject const*, int, void**)
QAction::triggered(bool)
QAction::activate(QAction::ActionEvent)

QAbstractButton::mouseReleaseEvent(QMouseEvent*)

mean

Could you detail what you do to make it crash ?

Jan Gruuthuse

#3
Yes: and could recover Terminal output.

In 2.6 QT r7811 load arte HD content 720p  1st part.trp and append other parts 1 to 5 (tot. 11.6 GB)
With video and audio copy save in Mpeg TS output format.
Without closing loaded video, load new clip.
Avidemux loading new clip after indexing:

*********** BACKTRACK **************
/usr/lib/libADM_core6.so(ADM_backTrack+0x5c) [0x7f57f9ee031c]:0:<ADM_backTrack>:-2
/usr/bin/avidemux3_qt4(_ZN17ADM_EditorSegment10getSegmentEi+0x52) [0x448da2]:1:<ADM_EditorSegment::getSegment(int)>:0
/usr/bin/avidemux3_qt4(_ZN25ADM_edAudioTrackFromVideo7getInfoEv+0x1a) [0x44d9fa]:2:<ADM_edAudioTrackFromVideo::getInfo()>:0
/usr/bin/avidemux3_qt4() [0x42f6f3]:3:</usr/bin/avidemux3_qt4() [0x42f6f3]>:0
/usr/bin/avidemux3_qt4(_Z9A_openAviPKc+0x215) [0x4300d5]:4:<A_openAvi(char const*)>:0
/usr/bin/avidemux3_qt4(_ZN15ADM_QT4_fileSel15GUI_FileSelReadEPKcPFvS1_E+0x20) [0x46cef0]:5:<ADM_QT4_fileSel::GUI_FileSelRead(char const*, void (*)(char const*))>:0
/usr/bin/avidemux3_qt4(_Z12HandleAction6Action+0x495) [0x4311a5]:6:<HandleAction(Action)>:0
/usr/bin/avidemux3_qt4(_ZN10MainWindow13searchToolBarEP7QAction+0x91) [0x4588d1]:7:<MainWindow::searchToolBar(QAction*)>:0
/usr/bin/avidemux3_qt4(_ZN10MainWindow11qt_metacallEN11QMetaObject4CallEiPPv+0x4b) [0x46d4cb]:8:<MainWindow::qt_metacall(QMetaObject::Call, int, void**)>:0
/usr/lib/x86_64-linux-gnu/libQtCore.so.4(_ZN11QMetaObject8activateEP7QObjectPKS_iPPv+0x2da) [0x7f57f778feba]:9:<QMetaObject::activate(QObject*, QMetaObject const*, int, void**)>:0
/usr/lib/x86_64-linux-gnu/libQtGui.so.4(_ZN8QToolBar15actionTriggeredEP7QAction+0x2f) [0x7f57f811b41f]:10:<QToolBar::actionTriggered(QAction*)>:0
/usr/lib/x86_64-linux-gnu/libQtGui.so.4(_ZN8QToolBar11qt_metacallEN11QMetaObject4CallEiPPv+0x1cf) [0x7f57f811c4af]:11:<QToolBar::qt_metacall(QMetaObject::Call, int, void**)>:0
/usr/lib/x86_64-linux-gnu/libQtCore.so.4(_ZN11QMetaObject8activateEP7QObjectPKS_iPPv+0x2da) [0x7f57f778feba]:12:<QMetaObject::activate(QObject*, QMetaObject const*, int, void**)>:0
/usr/lib/x86_64-linux-gnu/libQtGui.so.4(_ZN11QToolButton9triggeredEP7QAction+0x2f) [0x7f57f8123a2f]:13:<QToolButton::triggered(QAction*)>:0
/usr/lib/x86_64-linux-gnu/libQtGui.so.4(_ZN11QToolButton11qt_metacallEN11QMetaObject4CallEiPPv+0x259) [0x7f57f8124a69]:14:<QToolButton::qt_metacall(QMetaObject::Call, int, void**)>:0
/usr/lib/x86_64-linux-gnu/libQtCore.so.4(_ZN11QMetaObject8activateEP7QObjectPKS_iPPv+0x2da) [0x7f57f778feba]:15:<QMetaObject::activate(QObject*, QMetaObject const*, int, void**)>:0
/usr/lib/x86_64-linux-gnu/libQtGui.so.4(_ZN7QAction9triggeredEb+0x32) [0x7f57f7ca6bb2]:16:<QAction::triggered(bool)>:0
/usr/lib/x86_64-linux-gnu/libQtGui.so.4(_ZN7QAction8activateENS_11ActionEventE+0x6f) [0x7f57f7ca6d9f]:17:<QAction::activate(QAction::ActionEvent)>:0
/usr/lib/x86_64-linux-gnu/libQtGui.so.4(+0x5b44fa) [0x7f57f80654fa]:18:<>:-2
/usr/lib/x86_64-linux-gnu/libQtGui.so.4(_ZN15QAbstractButton17mouseReleaseEventEP11QMouseEvent+0x8c) [0x7f57f80657ac]:19:<QAbstractButton::mouseReleaseEvent(QMouseEvent*)>:0
*********** BACKTRACK **************


nibbles

@Jan can you find the log file and gist it?   The code where this happens prints some debug info just before it asserts.
The path was confusing,

at line 234, file /home/jan/avidemux_2.6_branch_mean/avidemux/qt4/common/ADM_editor/src/ADM_segment.cpp

because it's located some other place in svn.  But that's not an issue.  I'm curious what you get when it does this:


233 ADM_info("Request for segment out of range : %d / %d\n",i,sz);
234 ADM_assert(0);


It looks like the backtrace says i=0, but I can't see sz.

Jan Gruuthuse

#5
QuoteIn all cases, post the Avidemux log file. It is located in %APPDATA%/avidemux/admlog.txt on Windows and in ~/.avidemux/admlog.txt on Linux (or in the console, if you ran it from there).
I'm stuck: no admlog.txt is created/found, not even when running out of terminal? Not a switch either in /usr/bin/avidemux3_qt4 --help.
Do test over again and gist terminal output.

Jan Gruuthuse

#6

nibbles

More source context:
int sz=segments.size();
231 if(i>=sz)
232 {
233 ADM_info("Request for segment out of range : %d / %d\n",i,sz);
234 ADM_assert(0);
235 }
236 return &(segments[i]);



Result:
[getSegment]  Request for segment out of range : 5 / 1

Something isn't being incremented.  Shouldn't be too hard for Mean to track down.
He might not see this, as it refers to an old commit.  You might change the subject
on your original post to the current rev and include Assert.

Jan Gruuthuse

Could it be that the mouse is loosing focus, or leaves the window and this is causing problems? Now happening on average every 3 or 4 video clips, no longer important if HD or SD content.
QuoteCrash

Assert failed :0
at line 234, file /home/jan/avidemux_2.6_branch_mean/avidemux/qt4/common/ADM_editor/src/ADM_segment.cppADM_backTrack
ADM_EditorSegment::getSegment(int)
ADM_edAudioTrackFromVideo::getInfo()
/usr/bin/avidemux3_qt4() [0x430003]
A_openAvi(char const*)
ADM_QT4_fileSel::GUI_FileSelRead(char const*, void (*)(char const*))
HandleAction(Action)
MainWindow::searchToolBar(QAction*)
MainWindow::qt_metacall(QMetaObject::Call, int, void**)
QMetaObject::activate(QObject*, QMetaObject const*, int, void**)
QToolBar::actionTriggered(QAction*)
QToolBar::qt_metacall(QMetaObject::Call, int, void**)
QMetaObject::activate(QObject*, QMetaObject const*, int, void**)
QToolButton::triggered(QAction*)
QToolButton::qt_metacall(QMetaObject::Call, int, void**)
QMetaObject::activate(QObject*, QMetaObject const*, int, void**)
QAction::triggered(bool)
QAction::activate(QAction::ActionEvent)

QAbstractButton::mouseReleaseEvent(QMouseEvent*)

mean


Jan Gruuthuse

Looks like it. Tested: loaded 5.19:00 video (19.8 GB) several cuttings and saves. Loaded new video, and avidemux stayed stable.