Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Crash when playing video in multithreaded release mode #35

Open
sofian opened this issue Jan 17, 2013 · 3 comments
Open

Crash when playing video in multithreaded release mode #35

sofian opened this issue Jan 17, 2013 · 3 comments

Comments

@sofian
Copy link
Owner

sofian commented Jan 17, 2013

Valgrind output:

==9331== Thread 3:
==9331== Conditional jump or move depends on uninitialised value(s)
==9331==    at 0x12136CAFD: Gear_VideoSource::_preRun() (in /Users/tats/devel/drone/drone.app/Contents/PlugIns/libGear_VideoSource.dylib.1.0.0)
==9331==    by 0x12136CEB5: Gear_VideoSource::runVideo() (in /Users/tats/devel/drone/drone.app/Contents/PlugIns/libGear_VideoSource.dylib.1.0.0)
==9331==    by 0x100148D00: Engine::playThread(void*) (in /Users/tats/devel/drone/drone.app/Contents/Frameworks/libdroneCore.dylib.1.0.0)
==9331==    by 0x10186CFD5: _pthread_start (in /usr/lib/libSystem.B.dylib)
==9331==    by 0x10186CE88: thread_start (in /usr/lib/libSystem.B.dylib)
==9331== 
Opening movie : /Users/tats/Movies/BonneFete.mov
==9331== Conditional jump or move depends on uninitialised value(s)
==9331==    at 0x1018945D8: pthread_rwlock_init (in /usr/lib/libSystem.B.dylib)
==9331==    by 0x120D24FD6: _nl_load_domain (in /Library/Frameworks/GStreamer.framework/Versions/0.10/lib/libintl.8.dylib)
==9331==    by 0x120D23BAD: _nl_find_domain (in /Library/Frameworks/GStreamer.framework/Versions/0.10/lib/libintl.8.dylib)
==9331==    by 0x120D27080: libintl_dcigettext (in /Library/Frameworks/GStreamer.framework/Versions/0.10/lib/libintl.8.dylib)
==9331==    by 0x12085B866: gst_init_check (in /Library/Frameworks/GStreamer.framework/Versions/0.10/lib/libgstreamer-0.10.0.dylib)
==9331==    by 0x12085B998: gst_init (in /Library/Frameworks/GStreamer.framework/Versions/0.10/lib/libgstreamer-0.10.0.dylib)
==9331==    by 0x12136B580: Gear_VideoSource::loadMovie(std::string) (in /Users/tats/devel/drone/drone.app/Contents/PlugIns/libGear_VideoSource.dylib.1.0.0)
==9331==    by 0x12136CC89: Gear_VideoSource::_preRun() (in /Users/tats/devel/drone/drone.app/Contents/PlugIns/libGear_VideoSource.dylib.1.0.0)
==9331==    by 0x12136CEB5: Gear_VideoSource::runVideo() (in /Users/tats/devel/drone/drone.app/Contents/PlugIns/libGear_VideoSource.dylib.1.0.0)
==9331==    by 0x100148D00: Engine::playThread(void*) (in /Users/tats/devel/drone/drone.app/Contents/Frameworks/libdroneCore.dylib.1.0.0)
==9331==    by 0x10186CFD5: _pthread_start (in /usr/lib/libSystem.B.dylib)
==9331==    by 0x10186CE88: thread_start (in /usr/lib/libSystem.B.dylib)
==9331== 
==9331== Conditional jump or move depends on uninitialised value(s)
==9331==    at 0x1018945D8: pthread_rwlock_init (in /usr/lib/libSystem.B.dylib)
==9331==    by 0x120C1939A: g_rw_lock_impl_new (in /Library/Frameworks/GStreamer.framework/Versions/0.10/lib/libglib-2.0.0.dylib)
==9331==    by 0x120C195F6: g_rw_lock_writer_lock (in /Library/Frameworks/GStreamer.framework/Versions/0.10/lib/libglib-2.0.0.dylib)
==9331==    by 0x1209A69E2: g_type_init_with_debug_flags (in /Library/Frameworks/GStreamer.framework/Versions/0.10/lib/libgobject-2.0.0.dylib)
==9331==    by 0x12085AB7C: init_pre (in /Library/Frameworks/GStreamer.framework/Versions/0.10/lib/libgstreamer-0.10.0.dylib)
==9331==    by 0x120BE66E9: g_option_context_parse (in /Library/Frameworks/GStreamer.framework/Versions/0.10/lib/libglib-2.0.0.dylib)
==9331==    by 0x12085B8DF: gst_init_check (in /Library/Frameworks/GStreamer.framework/Versions/0.10/lib/libgstreamer-0.10.0.dylib)
==9331==    by 0x12085B998: gst_init (in /Library/Frameworks/GStreamer.framework/Versions/0.10/lib/libgstreamer-0.10.0.dylib)
==9331==    by 0x12136B580: Gear_VideoSource::loadMovie(std::string) (in /Users/tats/devel/drone/drone.app/Contents/PlugIns/libGear_VideoSource.dylib.1.0.0)
==9331==    by 0x12136CC89: Gear_VideoSource::_preRun() (in /Users/tats/devel/drone/drone.app/Contents/PlugIns/libGear_VideoSource.dylib.1.0.0)
==9331==    by 0x12136CEB5: Gear_VideoSource::runVideo() (in /Users/tats/devel/drone/drone.app/Contents/PlugIns/libGear_VideoSource.dylib.1.0.0)
==9331==    by 0x100148D00: Engine::playThread(void*) (in /Users/tats/devel/drone/drone.app/Contents/Frameworks/libdroneCore.dylib.1.0.0)
==9331== 
==9331== Thread 1:
==9331== Invalid read of size 4
==9331==    at 0x101FA36CB: CGSCacheAcquireValues (in /System/Library/Frameworks/ApplicationServices.framework/Versions/A/Frameworks/CoreGraphics.framework/Versions/A/CoreGraphics)
==9331==    by 0x101FA3416: CGGlyphLockLockGlyphBitmaps (in /System/Library/Frameworks/ApplicationServices.framework/Versions/A/Frameworks/CoreGraphics.framework/Versions/A/CoreGraphics)
==9331==    by 0x119500EBC: ripc_RenderGlyphs (in /System/Library/Frameworks/ApplicationServices.framework/Versions/A/Frameworks/CoreGraphics.framework/Versions/A/Resources/libRIP.A.dylib)
==9331==    by 0x11950089A: ripc_DrawGlyphs (in /System/Library/Frameworks/ApplicationServices.framework/Versions/A/Frameworks/CoreGraphics.framework/Versions/A/Resources/libRIP.A.dylib)
==9331==    by 0x101FA1966: draw_glyphs (in /System/Library/Frameworks/ApplicationServices.framework/Versions/A/Frameworks/CoreGraphics.framework/Versions/A/CoreGraphics)
==9331==    by 0x101FA126D: CGContextShowGlyphsWithAdvances (in /System/Library/Frameworks/ApplicationServices.framework/Versions/A/Frameworks/CoreGraphics.framework/Versions/A/CoreGraphics)
==9331==    by 0x100722F1F: QCoreTextFontEngine::draw(CGContext*, double, double, QTextItemInt const&, int) (in /Library/Frameworks/QtGui.framework/Versions/4/QtGui)
==9331==    by 0x10096584A: QCoreGraphicsPaintEngine::drawTextItem(QPointF const&, QTextItem const&) (in /Library/Frameworks/QtGui.framework/Versions/4/QtGui)
==9331==    by 0x1008AAD50: QPainter::drawTextItem(QPointF const&, QTextItem const&) (in /Library/Frameworks/QtGui.framework/Versions/4/QtGui)
==9331==    by 0x1009BBB17: QTextLine::draw(QPainter*, QPointF const&, QTextLayout::FormatRange const*) const (in /Library/Frameworks/QtGui.framework/Versions/4/QtGui)
==9331==    by 0x1008AFBAB: qt_format_text(QFont const&, QRectF const&, int, QTextOption const*, QString const&, QRectF*, int, int*, int, QPainter*) (in /Library/Frameworks/QtGui.framework/Versions/4/QtGui)
==9331==    by 0x1008B03B4: QPainter::drawText(QRect const&, int, QString const&, QRect*) (in /Library/Frameworks/QtGui.framework/Versions/4/QtGui)
==9331==  Address 0x122d9f00c is not stack'd, malloc'd or (recently) free'd
==9331== 
==9331== 
==9331== Process terminating with default action of signal 11 (SIGSEGV)
==9331==  Access not within mapped region at address 0x122D9F00C
==9331==    at 0x101FA36CB: CGSCacheAcquireValues (in /System/Library/Frameworks/ApplicationServices.framework/Versions/A/Frameworks/CoreGraphics.framework/Versions/A/CoreGraphics)
==9331==    by 0x101FA3416: CGGlyphLockLockGlyphBitmaps (in /System/Library/Frameworks/ApplicationServices.framework/Versions/A/Frameworks/CoreGraphics.framework/Versions/A/CoreGraphics)
==9331==    by 0x119500EBC: ripc_RenderGlyphs (in /System/Library/Frameworks/ApplicationServices.framework/Versions/A/Frameworks/CoreGraphics.framework/Versions/A/Resources/libRIP.A.dylib)
==9331==    by 0x11950089A: ripc_DrawGlyphs (in /System/Library/Frameworks/ApplicationServices.framework/Versions/A/Frameworks/CoreGraphics.framework/Versions/A/Resources/libRIP.A.dylib)
==9331==    by 0x101FA1966: draw_glyphs (in /System/Library/Frameworks/ApplicationServices.framework/Versions/A/Frameworks/CoreGraphics.framework/Versions/A/CoreGraphics)
==9331==    by 0x101FA126D: CGContextShowGlyphsWithAdvances (in /System/Library/Frameworks/ApplicationServices.framework/Versions/A/Frameworks/CoreGraphics.framework/Versions/A/CoreGraphics)
==9331==    by 0x100722F1F: QCoreTextFontEngine::draw(CGContext*, double, double, QTextItemInt const&, int) (in /Library/Frameworks/QtGui.framework/Versions/4/QtGui)
==9331==    by 0x10096584A: QCoreGraphicsPaintEngine::drawTextItem(QPointF const&, QTextItem const&) (in /Library/Frameworks/QtGui.framework/Versions/4/QtGui)
==9331==    by 0x1008AAD50: QPainter::drawTextItem(QPointF const&, QTextItem const&) (in /Library/Frameworks/QtGui.framework/Versions/4/QtGui)
==9331==    by 0x1009BBB17: QTextLine::draw(QPainter*, QPointF const&, QTextLayout::FormatRange const*) const (in /Library/Frameworks/QtGui.framework/Versions/4/QtGui)
==9331==    by 0x1008AFBAB: qt_format_text(QFont const&, QRectF const&, int, QTextOption const*, QString const&, QRectF*, int, int*, int, QPainter*) (in /Library/Frameworks/QtGui.framework/Versions/4/QtGui)
==9331==    by 0x1008B03B4: QPainter::drawText(QRect const&, int, QString const&, QRect*) (in /Library/Frameworks/QtGui.framework/Versions/4/QtGui)
@sofian
Copy link
Owner Author

sofian commented Jan 17, 2013

In branch gstreamer/experimental

@sofian
Copy link
Owner Author

sofian commented Jan 18, 2013

It seems to be linked to the gstreamer sdk. Before compiling I need to run /opt/gstreamer-sdk/bin/gst-sdk-shell. However once it's compiled, if I run while in the same shell, I have problems (only in multithreaded mode).

@sofian
Copy link
Owner Author

sofian commented Jan 18, 2013

Actually those are two separate issues. There is a problem with the OpenGL video output in multithreading mode.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Projects
None yet
Development

No branches or pull requests

1 participant