Hi Robert, On Fri, Feb 19, 2010 at 9:33 AM, Robert Osfield <[email protected]> wrote: > Hi Rafa, > > I really is starting to look like the static > osg::Observer::getGlobalObserverMutex() is being destructed before the > scene graph which is a bit bizzare. > > Is this only happening in your app? Could you try the OSG examples?
Ok, osg examples I've tested are working ok. > > Is there anything specific you do about clean up in your app? I have a plugin that reads some specific xml file (I'm waiting for the new serializer to change it), it works fine with osgviewer, but crash in my application I think the problem is with ffmpeg imagestream. It has a problem but I didn't have time to deep in ffmpeg code and upload a correction. The problem is when you pause the movie, and you try to exit application, then it hangs, and don't finish. It's easy to test it: osgmovie movie.avi.ffmpeg, then press 'p' and then exit the application. To avoid that, I added an ugly hack in my code, so in one of the singletons I get all ImageStream resources (they are ref_ptr in a manager) and play them before quit. I know is really ugly but two days ago was working! :). I will try to remove now that code.. and test if all is cleaning up ok. Rafa. > > Robert. > > On Fri, Feb 19, 2010 at 8:28 AM, Rafa Gaitan <[email protected]> wrote: >> Hi Robert, >> >> >> Well.. the crash has moved to other place, I think you are right about >> destructing order, I have a couple of Singletons on my app, and I >> think that things are messing up order destruction :(. Here's the new >> stack trace >> >> Thread 0 Crashed: >> 0 libosg.63.dylib 0x0051a618 >> osg::Referenced::signalObserversAndDelete(bool, bool, bool) const + 72 >> 1 libosg.63.dylib 0x00510823 osg::Program::~Program() >> + 483 >> 2 libosg.63.dylib 0x00552040 >> std::_Rb_tree<std::pair<osg::StateAttribute::Type, unsigned int>, >> std::pair<std::pair<osg::StateAttribute::Type, unsigned int> const, >> std::pair<osg::ref_ptr<osg::StateAttribute>, unsigned int> >, >> std::_Select1st<std::pair<std::pair<osg::StateAttribute::Type, >> unsigned int> const, std::pair<osg::ref_ptr<osg::StateAttribute>, >> unsigned int> > >, std::less<std::pair<osg::StateAttribute::Type, >> unsigned int> >, >> std::allocator<std::pair<std::pair<osg::StateAttribute::Type, unsigned >> int> const, std::pair<osg::ref_ptr<osg::StateAttribute>, unsigned int> >>> > >::_M_erase(std::_Rb_tree_node<std::pair<std::pair<osg::StateAttribute::Type, >> unsigned int> const, std::pair<osg::ref_ptr<osg::StateAttribute>, >> unsigned int> > >*) + 160 >> 3 libosg.63.dylib 0x0054da0f osg::StateSet::clear() + >> 207 >> 4 libosg.63.dylib 0x0054e572 >> osg::StateSet::~StateSet() + 34 >> 5 libosg.63.dylib 0x004f3a23 >> osg::Node::setStateSet(osg::StateSet*) + 387 >> 6 libosg.63.dylib 0x004f3f9a osg::Node::~Node() + 42 >> 7 libosg.63.dylib 0x0048033c osg::Geode::~Geode() + 268 >> 8 libosg.63.dylib 0x004c0613 osg::Group::~Group() + 211 >> 9 libcrsFX.dylib 0x00063069 >> crsFX::CameraHUD::~CameraHUD() + 57 >> 10 libosg.63.dylib 0x004c0613 osg::Group::~Group() + 211 >> 11 libcrsFX.dylib 0x0006ab4f >> crsFX::HUDEffect::~HUDEffect() + 95 >> 12 libcrsFX.dylib 0x000657e0 >> std::_Rb_tree<std::basic_string<char, std::char_traits<char>, >> std::allocator<char> >, std::pair<std::basic_string<char, >> std::char_traits<char>, std::allocator<char> > const, >> osg::ref_ptr<osg::Object> >, >> std::_Select1st<std::pair<std::basic_string<char, >> std::char_traits<char>, std::allocator<char> > const, >> osg::ref_ptr<osg::Object> > >, std::less<std::basic_string<char, >> std::char_traits<char>, std::allocator<char> > >, >> std::allocator<std::pair<std::basic_string<char, >> std::char_traits<char>, std::allocator<char> > const, >> osg::ref_ptr<osg::Object> > > >>>::_M_erase(std::_Rb_tree_node<std::pair<std::basic_string<char, >> std::char_traits<char>, std::allocator<char> > const, >> osg::ref_ptr<osg::Object> > >*) + 176 >> 13 libcrsFXDB.dylib 0x00f1341c >> crsFXDB::xml::XMLRegistry::~XMLRegistry() + 44 >> 14 osgdb_cfx.so 0x00ecd1d0 __tcf_0 + 112 >> 15 libSystem.B.dylib 0x94ffcdbc __cxa_finalize + 241 >> 16 libSystem.B.dylib 0x94ffccb0 exit + 33 >> 17 crsFXLauncher 0x000082bf start + 63 >> >> >> Next refactor will be using osg XML support and remove mine, so this >> XMLRegistry singleton will disappear. >> >> Rafa. >> >> >> On Fri, Feb 19, 2010 at 9:18 AM, Robert Osfield >> <[email protected]> wrote: >>> Hi Maxim, >>> >>> 2010/2/19 Maxim Gammer <[email protected]>: >>>> Strangely, ffmpeg in my project works fine ... >>>> (in OSG 2.9.7) >>>> Here the log: >>>> ffmpeg:: open (/ home/maximum2000/LABS/transgaz/video/utz1.mov) size (1024, >>>> 768) aspect ratio 1 >>>> Attaching FFmpegAudioStream >>>> .... >>>> Finished FFmpegImageStream:: run () >>>> FFmpegAudioStream:: setAudioSink (0) >>>> Assigning 0 >>>> Calling av_close_input_file (0xe495a40) >>>> ... >>>> >>>> And the video plays fine) >>> >>> ffmpeg works fine for me too (Kubuntu 9.04). I believe the ffmpeg >>> finding of Rafa's was just co-incindence or "the straw that broke the >>> camels back" and not directly related to the issue. >>> >>> I suspect OSX is destructing the app in an order that is causing >>> problems i.e. the static before the plugin gets unloaded. >>> >>> Robert. >>> _______________________________________________ >>> osg-users mailing list >>> [email protected] >>> http://lists.openscenegraph.org/listinfo.cgi/osg-users-openscenegraph.org >>> >> >> >> >> -- >> Rafael Gaitán Linares >> Instituto de Automática e Informática Industrial http://www.ai2.upv.es >> http://gvsig3d.blogspot.com >> Ciudad Politécnica de la Innovación >> Universidad Politécnica de Valencia >> _______________________________________________ >> osg-users mailing list >> [email protected] >> http://lists.openscenegraph.org/listinfo.cgi/osg-users-openscenegraph.org >> > _______________________________________________ > osg-users mailing list > [email protected] > http://lists.openscenegraph.org/listinfo.cgi/osg-users-openscenegraph.org > -- Rafael Gaitán Linares Instituto de Automática e Informática Industrial http://www.ai2.upv.es http://gvsig3d.blogspot.com Ciudad Politécnica de la Innovación Universidad Politécnica de Valencia _______________________________________________ osg-users mailing list [email protected] http://lists.openscenegraph.org/listinfo.cgi/osg-users-openscenegraph.org

