Kdenlive   bug tracker Home page

View Issue Details Jump to Notes ] Issue History ] Print ]
IDProjectCategoryView StatusDate SubmittedLast Update
0001981KdenliveUser Interfacepublic2011-01-23 17:372011-06-10 10:49
ReporterGranjow 
Assigned ToGranjow 
PriorityhighSeverityminorReproducibilityalways
StatusclosedResolutionfixed 
PlatformOSOS Version
Product Version 
Target VersionFixed in Version0.8 
Summary0001981: Segfaults in Effect Stack list
DescriptionWhen changing a keyframeable value with the slider I got a segfault — perhaps related to the drag value widget (which is very cool btw, especially if you plan to add «live refresh», i.e. changes made visible while dragging already, not when releasing the mouse cursor :) ).

Perhaps I can find out more ...
Additional InformationApplication: Kdenlive (kdenlive), signal: Segmentation fault
[Current thread is 1 (Thread 0x7f736b5b07a0 (LWP 18405))]

Thread 1 (Thread 0x7f736b5b07a0 (LWP 18405)):
[KCrash Handler]
0000005 0x00000000006cdfbb in QTableWidgetItem::text (this=0x0) at /usr/include/qt4/QtGui/qtablewidget.h:108
0000006 0x00000000006cd1ee in KeyframeEdit::slotAdjustKeyframeValue (this=0x35ce480, value=7) at /data/cworkspace/kdenlive.git/kdenlive/src/keyframeedit.cpp:376
0000007 0x00000000006cde3a in KeyframeEdit::qt_metacall (this=0x35ce480, _c=QMetaObject::InvokeMetaMethod, _id=9, _a=0x7fff69d28070) at /data/cworkspace/kdenlive.git/kdenlive/build/src/cmake_bindir/keyframeedit.moc:172
0000008 0x00007f7366fc12e6 in QMetaObject::activate(QObject*, QMetaObject const*, int, void**) () from /usr/lib/libQtCore.so.4
0000009 0x00000000007173e4 in DoubleParameterWidget::valueChanged (this=0x35db010, _t1=7) at /data/cworkspace/kdenlive.git/kdenlive/build/src/cmake_bindir/doubleparameterwidget.moc:97
0000010 0x000000000071707a in DoubleParameterWidget::setValue (this=0x35db010, value=7) at /data/cworkspace/kdenlive.git/kdenlive/src/doubleparameterwidget.cpp:101
0000011 0x0000000000717333 in DoubleParameterWidget::qt_metacall (this=0x35db010, _c=QMetaObject::InvokeMetaMethod, _id=1, _a=0x7fff69d281e0) at /data/cworkspace/kdenlive.git/kdenlive/build/src/cmake_bindir/doubleparameterwidget.moc:82
0000012 0x00007f7366fc12e6 in QMetaObject::activate(QObject*, QMetaObject const*, int, void**) () from /usr/lib/libQtCore.so.4
0000013 0x00007f7366790a0e in QAbstractSlider::valueChanged(int) () from /usr/lib/libQtGui.so.4
0000014 0x00007f736654810c in QSlider::mouseMoveEvent(QMouseEvent*) () from /usr/lib/libQtGui.so.4
0000015 0x00007f736614928f in QWidget::event(QEvent*) () from /usr/lib/libQtGui.so.4
0000016 0x00007f73660f332c in QApplicationPrivate::notify_helper(QObject*, QEvent*) () from /usr/lib/libQtGui.so.4
0000017 0x00007f73660f9fdb in QApplication::notify(QObject*, QEvent*) () from /usr/lib/libQtGui.so.4
0000018 0x00007f736a7d87a6 in KApplication::notify(QObject*, QEvent*) () from /usr/lib/libkdeui.so.5
0000019 0x00007f7366fae09c in QCoreApplication::notifyInternal(QObject*, QEvent*) () from /usr/lib/libQtCore.so.4
0000020 0x00007f73660f91be in QApplicationPrivate::sendMouseEvent(QWidget*, QMouseEvent*, QWidget*, QWidget*, QWidget**, QPointer<QWidget>&, bool) () from /usr/lib/libQtGui.so.4
0000021 0x00007f736617907b in ?? () from /usr/lib/libQtGui.so.4
0000022 0x00007f73661779dc in QApplication::x11ProcessEvent(_XEvent*) () from /usr/lib/libQtGui.so.4
0000023 0x00007f73661a35a2 in ?? () from /usr/lib/libQtGui.so.4
0000024 0x00007f735fd886f2 in g_main_context_dispatch () from /lib/libglib-2.0.so.0
0000025 0x00007f735fd8c568 in ?? () from /lib/libglib-2.0.so.0
0000026 0x00007f735fd8c71c in g_main_context_iteration () from /lib/libglib-2.0.so.0
0000027 0x00007f7366fd76b3 in QEventDispatcherGlib::processEvents(QFlags<QEventLoop::ProcessEventsFlag>) () from /usr/lib/libQtCore.so.4
0000028 0x00007f73661a319e in ?? () from /usr/lib/libQtGui.so.4
0000029 0x00007f7366fac9c2 in QEventLoop::processEvents(QFlags<QEventLoop::ProcessEventsFlag>) () from /usr/lib/libQtCore.so.4
0000030 0x00007f7366facd9c in QEventLoop::exec(QFlags<QEventLoop::ProcessEventsFlag>) () from /usr/lib/libQtCore.so.4
0000031 0x00007f7366fb1a2b in QCoreApplication::exec() () from /usr/lib/libQtCore.so.4
0000032 0x000000000045c3d7 in main (argc=1, argv=0x7fff69d29e68) at /data/cworkspace/kdenlive.git/kdenlive/src/main.cpp:90
TagsNo tags attached.
Build/Install MethodManual build from SVN
Attached Files? file icon Lights.kdenlive [^] (8,224 bytes) 2011-01-24 10:09

- Relationships
child of 0001771closedGranjow Segfault in keyframeedit.cpp when working on the timeline 

-  Notes
(0006336)
Granjow (developer)
2011-01-23 17:38

keyframeedit.cpp:376: nitem is 0x0.
(0006338)
Granjow (developer)
2011-01-24 10:14

I've attached a project file. Changing the values works now without a segfault, but the changes have no effect (values cannot be adjusted anymore). Adding a new row leads to a segfault again.

I'm not sure, but is this perhaps because I made the lightgraffiti effect keyframeable (and the project was created with a non-keyframeable version)? Perhaps 0001771 (I get error messages from this bug all time) was actually about the same problem (but fixed incorrectly). If I remove the effect from the clip and add it again, everything works fine.
(0006358)
Granjow (developer)
2011-01-30 08:55

Okay, now it's getting nasty. Each time I click on the clip with the LightGraffiti effect applied on kdenlive crashes immediately. But ONLY if I save the project and open it again. When inserting a clip into the timeline and applying the effect, I can change the parameters, select it, render it, whatever. No problem at all. Just when closing the project and re-opening it.

Seems like something gets messed up when loading the project. I also get wrong values, all are set to 0 except for the first one which is set to 50 (this was when I could still select a clip; To change any parameter I always had to remove the effect completely and re-assign it and chose all parameters again.
(0006359)
Granjow (developer)
2011-01-30 08:55

Backtrace for the click segfault:

Application: Kdenlive (kdenlive), signal: Segmentation fault
[Current thread is 1 (Thread 0x7fa6357e37a0 (LWP 11570))]

Thread 1 (Thread 0x7fa6357e37a0 (LWP 11570)):
[KCrash Handler]
0000005 0x00000000006ce7a9 in QTableWidgetItem::text (this=0x0) at /usr/include/qt4/QtGui/qtablewidget.h:108
0000006 0x00000000006cdaf7 in KeyframeEdit::getPos (this=0x38b5750, row=0) at /data/cworkspace/kdenlive.git/kdenlive/src/keyframeedit.cpp:394
0000007 0x00000000006cacd2 in KeyframeEdit::KeyframeEdit (this=0x38b5750, e=..., minFrame=0, maxFrame=562, tc=..., activeKeyframe=-1, parent=0x0) at /data/cworkspace/kdenlive.git/kdenlive/src/keyframeedit.cpp:83
0000008 0x000000000059d14b in EffectStackEdit::transferParamDesc (this=0x2a39250, d=..., pos=0, in=0, out=562, isEffect=true) at /data/cworkspace/kdenlive.git/kdenlive/src/effectstackedit.cpp:336
0000009 0x0000000000595526 in EffectStackView::slotItemSelectionChanged (this=0x2a1d140, update=false) at /data/cworkspace/kdenlive.git/kdenlive/src/effectstackview.cpp:325
0000010 0x00000000005951aa in EffectStackView::setupListView (this=0x2a1d140, ix=0) at /data/cworkspace/kdenlive.git/kdenlive/src/effectstackview.cpp:306
0000011 0x000000000059442c in EffectStackView::slotClipItemSelected (this=0x2a1d140, c=0x30a10d0, ix=0) at /data/cworkspace/kdenlive.git/kdenlive/src/effectstackview.cpp:212
0000012 0x00000000005971a4 in EffectStackView::qt_metacall (this=0x2a1d140, _c=QMetaObject::InvokeMetaMethod, _id=10, _a=0x7fff7f7b5360) at /data/cworkspace/kdenlive.git/kdenlive/build/src/cmake_bindir/effectstackview.moc:132
0000013 0x00007fa6311f42e6 in QMetaObject::activate(QObject*, QMetaObject const*, int, void**) () from /usr/lib/libQtCore.so.4
0000014 0x0000000000454a34 in CustomTrackView::clipItemSelected (this=0x2ed9a60, _t1=0x30a10d0, _t2=-1) at /data/cworkspace/kdenlive.git/kdenlive/build/src/cmake_bindir/moc_customtrackview.cpp:366
0000015 0x0000000000517f88 in CustomTrackView::mousePressEvent (this=0x2ed9a60, event=0x7fff7f7b68c0) at /data/cworkspace/kdenlive.git/kdenlive/src/customtrackview.cpp:945
0000016 0x00007fa63037c619 in QWidget::event(QEvent*) () from /usr/lib/libQtGui.so.4
0000017 0x00007fa630723716 in QFrame::event(QEvent*) () from /usr/lib/libQtGui.so.4
0000018 0x00007fa630966c1b in QGraphicsView::viewportEvent(QEvent*) () from /usr/lib/libQtGui.so.4
0000019 0x00007fa6311e04b7 in QCoreApplicationPrivate::sendThroughObjectEventFilters(QObject*, QEvent*) () from /usr/lib/libQtCore.so.4
0000020 0x00007fa6303262fc in QApplicationPrivate::notify_helper(QObject*, QEvent*) () from /usr/lib/libQtGui.so.4
0000021 0x00007fa63032cfdb in QApplication::notify(QObject*, QEvent*) () from /usr/lib/libQtGui.so.4
0000022 0x00007fa634a0b7a6 in KApplication::notify(QObject*, QEvent*) () from /usr/lib/libkdeui.so.5
0000023 0x00007fa6311e109c in QCoreApplication::notifyInternal(QObject*, QEvent*) () from /usr/lib/libQtCore.so.4
0000024 0x00007fa63032c1be in QApplicationPrivate::sendMouseEvent(QWidget*, QMouseEvent*, QWidget*, QWidget*, QWidget**, QPointer<QWidget>&, bool) () from /usr/lib/libQtGui.so.4
0000025 0x00007fa6303ac07b in ?? () from /usr/lib/libQtGui.so.4
0000026 0x00007fa6303aa9dc in QApplication::x11ProcessEvent(_XEvent*) () from /usr/lib/libQtGui.so.4
0000027 0x00007fa6303d65a2 in ?? () from /usr/lib/libQtGui.so.4
0000028 0x00007fa629fbb6f2 in g_main_context_dispatch () from /lib/libglib-2.0.so.0
0000029 0x00007fa629fbf568 in ?? () from /lib/libglib-2.0.so.0
0000030 0x00007fa629fbf71c in g_main_context_iteration () from /lib/libglib-2.0.so.0
0000031 0x00007fa63120a6b3 in QEventDispatcherGlib::processEvents(QFlags<QEventLoop::ProcessEventsFlag>) () from /usr/lib/libQtCore.so.4
0000032 0x00007fa6303d619e in ?? () from /usr/lib/libQtGui.so.4
0000033 0x00007fa6311df9c2 in QEventLoop::processEvents(QFlags<QEventLoop::ProcessEventsFlag>) () from /usr/lib/libQtCore.so.4
0000034 0x00007fa6311dfd9c in QEventLoop::exec(QFlags<QEventLoop::ProcessEventsFlag>) () from /usr/lib/libQtCore.so.4
0000035 0x00007fa6311e4a2b in QCoreApplication::exec() () from /usr/lib/libQtCore.so.4
0000036 0x000000000045c64b in main (argc=1, argv=0x7fff7f7b7a58) at /data/cworkspace/kdenlive.git/kdenlive/src/main.cpp:90
(0006378)
Granjow (developer)
2011-02-03 14:15

Somehow the DOM is faulty.

  <parameter default="450" type="simplekeyframe" value="0=450;116=450" min="0" name="thresholdBrightness" max="765" factor="1">
    <name>Brightness Threshold</name>
    <comment><![CDATA[How bright (<code>R+G+B</code>) does a pixel need to be in order to be recognized as a light source?

            Increasing this threshold requires brighter light sources (i.e. more white or less color, respectively) but prevents some «false alarms» where semi-bright parts, e.g. hands where colors can change quite a lot compared to the background, are incorrectly recognized as light source.]]></comment>
  </parameter>

? received by KeyframeEdit::addParameter.
(0006379)
Granjow (developer)
2011-02-03 14:38

More precisely:

Before saving:
  <parameter default="450" type="simplekeyframe" value="450" intimeline="1" min="0" name="thresholdBrightness" max="765" factor="1" keyframes="0:450">
    <name>Brightness Threshold</name>
    <comment><![CDATA[How bright (<code>R+G+B</code>) does a pixel need to be in order to be recognized as a light source?

            Increasing this threshold requires brighter light sources (i.e. more white or less color, respectively) but prevents some «false alarms» where semi-bright parts, e.g. hands where colors can change quite a lot compared to the background, are incorrectly recognized as light source.]]></comment>
  </parameter>

After saving and restarting kdenlive:
  <parameter default="450" type="simplekeyframe" value="0=450" min="0" name="thresholdBrightness" max="765" factor="1">
    <name>Brightness Threshold</name>
    <comment><![CDATA[How bright (<code>R+G+B</code>) does a pixel need to be in order to be recognized as a light source?

            Increasing this threshold requires brighter light sources (i.e. more white or less color, respectively) but prevents some «false alarms» where semi-bright parts, e.g. hands where colors can change quite a lot compared to the background, are incorrectly recognized as light source.]]></comment>
  </parameter>
(0006383)
Granjow (developer)
2011-02-04 20:00

TrackView.cpp:854
                    if (!e.isNull() && e.tagName() == "parameter" && e.attribute("name") == paramname) {
                        qDebug() << "factor: " << e.attribute("factor", "1");
                        if (e.attribute("factor", "1") != "1") {
                            QString factor = e.attribute("factor", "1");
                            double fact;
                            if (factor.startsWith('%')) {
                                fact = ProfilesDialog::getStringEval(m_doc->mltProfile(), factor);
                            } else fact = factor.toDouble();
                            if (e.attribute("type") == "simplekeyframe") { // BUG! factor = 1 -> fail
                                QStringList kfrs = paramvalue.split(";");
                                for (int l = 0; l < kfrs.count(); l++) {
                                    QString fr = kfrs.at(l).section('=', 0, 0);
                                    double val = kfrs.at(l).section('=', 1, 1).toDouble();
                                    kfrs[l] = fr + ":" + QString::number((int)(val * fact));
                                }
                                e.setAttribute("keyframes", kfrs.join(";"));
                            } else e.setAttribute("value", paramvalue.toDouble() * fact);
                        } else e.setAttribute("value", paramvalue);
                        break;
                    }
(0006384)
Granjow (developer)
2011-02-04 20:20

Fixed in r5380.

- Issue History
Date Modified Username Field Change
2011-01-23 17:37 Granjow New Issue
2011-01-23 17:37 Granjow Status new => assigned
2011-01-23 17:37 Granjow Assigned To => ttill
2011-01-23 17:38 Granjow Note Added: 0006336
2011-01-23 17:42 Granjow Relationship added child of 0001771
2011-01-24 10:09 Granjow File Added: Lights.kdenlive
2011-01-24 10:14 Granjow Note Added: 0006338
2011-01-30 08:55 Granjow Note Added: 0006358
2011-01-30 08:55 Granjow Priority normal => high
2011-01-30 08:55 Granjow Summary Possible segfault in Drag Value widget => Segfaults in Effect Stack list
2011-01-30 08:55 Granjow Note Added: 0006359
2011-01-30 08:56 Granjow Additional Information Updated View Revisions
2011-02-03 14:15 Granjow Note Added: 0006378
2011-02-03 14:38 Granjow Note Added: 0006379
2011-02-04 20:00 Granjow Note Added: 0006383
2011-02-04 20:00 Granjow Assigned To ttill => Granjow
2011-02-04 20:20 Granjow Note Added: 0006384
2011-02-04 20:20 Granjow Status assigned => resolved
2011-02-04 20:20 Granjow Fixed in Version => Recent git
2011-02-04 20:20 Granjow Resolution open => fixed
2011-04-26 21:58 j-b-m Fixed in Version Recent git => 0.8
2011-06-10 10:49 Granjow Status resolved => closed


Copyright © 2000 - 2014 MantisBT Team
Powered by Mantis Bugtracker