View Issue Details
| ID | Project | Category | View Status | Date Submitted | Last Update |
|---|---|---|---|---|---|
| 0001574 | ardour | bugs | public | 2007-03-25 00:04 | 2008-11-21 00:30 |
| Reporter | realhangman | Assigned To | cth103 | ||
| Priority | normal | Severity | crash | Reproducibility | always |
| Status | closed | Resolution | fixed | ||
| Summary | 0001574: Ardour2 Beta12 crashes when importing files with ":" (double dot) in it | ||||
| Description | When importing files like "2007-03-25T0041:41.wav", Ardour2 Beta12 crashes. I created such files with timemachine (it produces these filesnames). I created a new session, imported files with names like this and Ardour crashes. It copies the file into /interchange/PROJECT/audiofiles When I want to restart the session, it says Ardour cannot find the file "2007-03-25T0041" , so it "forgets" everything after the ":" (double dot), and the session loads not completely (it's not usable). I retried everything without the ":" (double dot) in the filename, and it works. Seems like this character in filenames is confusing Ardour. | ||||
| Additional Information | Tested in Debian unstable with Kernel 2.6.19.1-rt15 and WM Fluxbox. | ||||
| Tags | No tags attached. | ||||
|
|
Hi, Thanks for the report. Unfortunately I cannot reproduce this. Can you give a more exact sequence of actions that causes the crash? Are you importing to tracks, as tracks, as regions... ? Carl |
|
|
Ok, Here's a detailed description (sorry, I thought it would appear in all situations) 1. First I start timemachine to record 5 seconds in .wav format set_rlimits timemachine -t 5 -f wav 2. I start Ardour2 Beta12 and create a new session. 3. I create a stereo track 4. I embed the file created with timemachine into the created track (right click in the track -> import audio -> embed) 5. crash as reported. I attached the recorded file above for reproduction (there's nothing in it). Benjamin |
|
|
i can reproduce this here very well and every time! i followed the steps as realhangman supposed. here is the backstrace: Core was generated by `/usr/local//lib/ardour2/ardour-2.0beta12'. Program terminated with signal 6, Aborted. #0 0xb6836947 in raise () from /lib/tls/libc.so.6 (gdb) thread apply all bt Thread 5 (process 10674): #0 0xb6b21b3c in __nanosleep_nocancel () from /lib/tls/libpthread.so.0 0000001 0xb766d292 in g_usleep () from /usr/share/qt4/lib/libglib-2.0.so.0 #2 0xb6df2cc1 in Glib::usleep (microseconds=10000) at #libs/glibmm2/glibmm/timer.cc:68 #3 0xb7d6d766 in ARDOUR::AudioEngine::meter_thread (this=0x8af6128) at #libs/ardour/audioengine.cc:412 0000004 0xb7d70468 in sigc::bound_mem_functor0<void, #ARDOUR::AudioEngine>::operator() (this=0x899b914) at #libs/sigc++2/sigc++/functors/mem_fun.h:1781 0000005 0xb7d7048a in sigc::adaptor_functor<sigc::bound_mem_functor0<void, #ARDOUR::AudioEngine> >::operator() (this=0x899b910) at libs/sigc++2/sigc++/adaptors/adaptor_trait.h:251 #6 0xb7d704b6 in sigc::internal::slot_call0<sigc::bound_mem_functor0<void, ARDOUR::AudioEngine>, void>::call_it (rep=0x899b8f8) at libs/sigc++2/sigc++/functors/slot.h:103 #7 0x0835f2d2 in sigc::slot0<void>::operator() (this=0x8a71ab8) at libs/sigc++2/sigc++/functors/slot.h:440 0000008 0xb6e0c259 in call_thread_entry_slot (data=0x8a71ab8) at libs/glibmm2/glibmm/thread.cc:43 0000009 0xb766b2cf in g_thread_create_full () from /usr/share/qt4/lib/libglib-2.0.so.0 0000010 0xb6b1c0bd in start_thread () from /lib/tls/libpthread.so.0 0000011 0xb68d99ee in clone () from /lib/tls/libc.so.6 Thread 4 (process 10675): #0 0xb68cfef9 in poll () from /lib/tls/libc.so.6 0000001 0xb6b2f89b in jack_client_thread (arg=0x8b00210) at client.c:1309 #2 0xb6b34850 in jack_thread_proxy (varg=0x88cd390) at thread.c:111 #3 0xb6b1c0bd in start_thread () from /lib/tls/libpthread.so.0 0000004 0xb68d99ee in clone () from /lib/tls/libc.so.6 Thread 3 (process 10688): #0 0xb68cfef9 in poll () from /lib/tls/libc.so.6 0000001 0xb7e99607 in ARDOUR::Session::butler_thread_work (this=0x8da5270) at #libs/ardour/session_butler.cc:176 #2 0xb7e9a3eb in ARDOUR::Session::_butler_thread_work (arg=0x8da5270) at #libs/ardour/session_butler.cc:157 #3 0xb6b1c0bd in start_thread () from /lib/tls/libpthread.so.0 0000004 0xb68d99ee in clone () from /lib/tls/libc.so.6 Thread 2 (process 10689): #0 0xb68cfef9 in poll () from /lib/tls/libc.so.6 0000001 0xb7eb8aab in ARDOUR::Session::midi_thread_work (this=0x8da5270) at #libs/ardour/session_midi.cc:1207 #2 0xb7eb9015 in ARDOUR::Session::_midi_thread_work (arg=0x8da5270) at #libs/ardour/session_midi.cc:1128 #3 0xb6b1c0bd in start_thread () from /lib/tls/libpthread.so.0 0000004 0xb68d99ee in clone () from /lib/tls/libc.so.6 Thread 1 (process 10671): #0 0xb6836947 in raise () from /lib/tls/libc.so.6 0000001 0xb68380c9 in abort () from /lib/tls/libc.so.6 #2 0xb7656074 in g_logv () from /usr/share/qt4/lib/libglib-2.0.so.0 #3 0xb76560a9 in g_log () from /usr/share/qt4/lib/libglib-2.0.so.0 0000004 0xb6e053bb in glibmm_unexpected_exception () at #libs/glibmm2/glibmm/exceptionhandler.cc:76 0000005 0xb6e0557d in Glib::exception_handlers_invoke () at #libs/glibmm2/glibmm/exceptionhandler.cc:155 #6 0xb6e0e570 in Glib::SignalProxyNormal::slot0_void_callback #(self=0x8f6d300, data=0x8f6ec78) at libs/glibmm2/glibmm/signalproxy.cc:99 #7 0xb76d6e1b in g_cclosure_marshal_VOID__VOID () from #/usr/share/qt4/lib/libgobject-2.0.so.0 0000008 0xb76c998b in g_closure_invoke () from #/usr/share/qt4/lib/libgobject-2.0.so.0 0000009 0xb76da213 in g_signal_chain_from_overridden () from #/usr/share/qt4/lib/libgobject-2.0.so.0 0000010 0xb76db429 in g_signal_emit_valist () from #/usr/share/qt4/lib/libgobject-2.0.so.0 0000011 0xb76db5d9 in g_signal_emit () from #/usr/share/qt4/lib/libgobject-2.0.so.0 0000012 0xb74e7042 in gtk_widget_activate () from #/usr/share/qt4/lib/libgtk-x11-2.0.so.0 0000013 0xb7405262 in gtk_menu_shell_activate_item () from #/usr/share/qt4/lib/libgtk-x11-2.0.so.0 0000014 0xb7406810 in gtk_menu_shell_append () from #/usr/share/qt4/lib/libgtk-x11-2.0.so.0 #15 0xb73fad3f in gtk_menu_attach () from #/usr/share/qt4/lib/libgtk-x11-2.0.so.0 0000016 0xb794e8b9 in Gtk::Widget_Class::button_release_event_callback #(self=0x8926f08, p0=0x8f4c800) at libs/gtkmm2/gtk/gtkmm/widget.cc:3805 #17 0xb73f9250 in _gtk_marshal_BOOLEAN__BOXED () from #/usr/share/qt4/lib/libgtk-x11-2.0.so.0 0000018 0xb76c7f49 in g_value_set_boxed () from #/usr/share/qt4/lib/libgobject-2.0.so.0 0000019 0xb76c998b in g_closure_invoke () from #/usr/share/qt4/lib/libgobject-2.0.so.0 0000020 0xb76da56f in g_signal_chain_from_overridden () from #/usr/share/qt4/lib/libgobject-2.0.so.0 0000021 0xb76db208 in g_signal_emit_valist () from #/usr/share/qt4/lib/libgobject-2.0.so.0 0000022 0xb76db5d9 in g_signal_emit () from #/usr/share/qt4/lib/libgobject-2.0.so.0 0000023 0xb74e2f64 in gtk_widget_get_default_style () from #/usr/share/qt4/lib/libgtk-x11-2.0.so.0 #24 0xb73f2bd3 in gtk_propagate_event () from #/usr/share/qt4/lib/libgtk-x11-2.0.so.0 0000025 0xb73f3e07 in gtk_main_do_event () from #/usr/share/qt4/lib/libgtk-x11-2.0.so.0 0000026 0xb728ceea in _gdk_events_init () from #/usr/share/qt4/lib/libgdk-x11-2.0.so.0 0000027 0xb764d731 in g_main_context_dispatch () from #/usr/share/qt4/lib/libglib-2.0.so.0 0000028 0xb76507a6 in g_main_context_check () from #/usr/share/qt4/lib/libglib-2.0.so.0 0000029 0xb7650b67 in g_main_loop_run () from #/usr/share/qt4/lib/libglib-2.0.so.0 0000030 0xb73f4281 in gtk_main () from /usr/share/qt4/lib/libgtk-x11-2.0.so.0 0000031 0xb78d0bc1 in Gtk::Main::run_impl (this=0x884a938) at #libs/gtkmm2/gtk/gtkmm/main.cc:503 0000032 0xb78d09ce in Gtk::Main::run () at libs/gtkmm2/gtk/gtkmm/main.cc:450 0000033 0xb7b50183 in Gtkmm2ext::UI::run (this=0x8847920, #old_receiver=@0x8826880) at libs/gtkmm2ext/gtk_ui.cc:216 0000034 0x085b1f5c in main (argc=1, argv=0xbf98c344) at gtk2_ardour/main.cc:295 ---------------- p.s. before of this part, gdb prints a long list with characters like: ... Reading symbols from /usr/local/lib/ladspa/imp_1199.so...done. Loaded symbols for /usr/local/lib/ladspa//imp_1199.so ... please tell me if you need that part to, or if it is enough beginning like i did above. cheers, doc |
|
|
Many thanks Benjamin and doc, I can reproduce this as well now. Don't know why I couldn't before! This is due to code in AudioFileSource::find() which strips anything after the last colon from a pathname. I can't quite work out why it does this, so I'll have to ask somebody! Thanks for the report Carl |
|
|
i know why, and i will fix it. it will prevent loading of older sessions with imported multichannel files, but i think that is broken already, so its not really an issue. |
|
|
Is this fixed now? |
|
|
seems to be fixed here, ardour imports now properly timemachine files. cheers, doc |
|
|
i am sorry for the last report, which is not correctly. importing TM files looks now different here: i can import a file very well (via right-click - import existing audio). the file will appear at the right place, but after saving the session and restarting, ardour will complain about missing files, and the TM file will be replaced with silence. it looks that the file gets somehow manipulated, cause in the audiofiles dir of the ardour project i find only 'tm-2007-04-03T01:59' without the ':seconds' and the .wav suffix, as originally it should be. trying to play it vie 'jack_play': Error: file has 1 channels while 2 ports were configured but the file originally has 2 channels. another thing is trying to embed that file (also vie right-click, import existing audio), ardour still crashes here: Program terminated with signal 6, Aborted. #0 0xb67d3947 in raise () from /lib/tls/libc.so.6 (gdb) thread apply all bt Thread 5 (process 7427): #0 0xb6abeb3c in __nanosleep_nocancel () from /lib/tls/libpthread.so.0 0000001 0xb760a292 in g_usleep () from /usr/share/qt4/lib/libglib-2.0.so.0 #2 0xb6d8fcc1 in Glib::usleep (microseconds=10000) at #libs/glibmm2/glibmm/timer.cc:68 #3 0xb7d0a8a6 in ARDOUR::AudioEngine::meter_thread (this=0x8abc130) at #libs/ardour/audioengine.cc:412 0000004 0xb7d0d5a8 in sigc::bound_mem_functor0<void, #ARDOUR::AudioEngine>::operator() (this=0x8a47124) at #libs/sigc++2/sigc++/functors/mem_fun.h:1781 0000005 0xb7d0d5ca in sigc::adaptor_functor<sigc::bound_mem_functor0<void, #ARDOUR::AudioEngine> >::operator() (this=0x8a47120) at libs/sigc++2/sigc++/adaptors/adaptor_trait.h:251 #6 0xb7d0d5f6 in sigc::internal::slot_call0<sigc::bound_mem_functor0<void, ARDOUR::AudioEngine>, void>::call_it (rep=0x8a47108) at libs/sigc++2/sigc++/functors/slot.h:103 #7 0x0835e512 in sigc::slot0<void>::operator() (this=0x8a49080) at libs/sigc++2/sigc++/functors/slot.h:440 0000008 0xb6da9259 in call_thread_entry_slot (data=0x8a49080) at libs/glibmm2/glibmm/thread.cc:43 0000009 0xb76082cf in g_thread_create_full () from /usr/share/qt4/lib/libglib-2.0.so.0 0000010 0xb6ab90bd in start_thread () from /lib/tls/libpthread.so.0 0000011 0xb68769ee in clone () from /lib/tls/libc.so.6 Thread 4 (process 7428): #0 0xb686cef9 in poll () from /lib/tls/libc.so.6 0000001 0xb6acc89b in jack_client_thread (arg=0x8abc210) at client.c:1309 #2 0xb6ad1850 in jack_thread_proxy (varg=0x88b6c28) at thread.c:111 #3 0xb6ab90bd in start_thread () from /lib/tls/libpthread.so.0 0000004 0xb68769ee in clone () from /lib/tls/libc.so.6 Thread 3 (process 7433): #0 0xb686cef9 in poll () from /lib/tls/libc.so.6 0000001 0xb7e366fb in ARDOUR::Session::butler_thread_work (this=0x8d4b1d0) at #libs/ardour/session_butler.cc:176 #2 0xb7e374df in ARDOUR::Session::_butler_thread_work (arg=0x8d4b1d0) at #libs/ardour/session_butler.cc:157 #3 0xb6ab90bd in start_thread () from /lib/tls/libpthread.so.0 0000004 0xb68769ee in clone () from /lib/tls/libc.so.6 Thread 2 (process 7434): #0 0xb686cef9 in poll () from /lib/tls/libc.so.6 0000001 0xb7e55b9f in ARDOUR::Session::midi_thread_work (this=0x8d4b1d0) at #libs/ardour/session_midi.cc:1207 #2 0xb7e56109 in ARDOUR::Session::_midi_thread_work (arg=0x8d4b1d0) at #libs/ardour/session_midi.cc:1128 #3 0xb6ab90bd in start_thread () from /lib/tls/libpthread.so.0 0000004 0xb68769ee in clone () from /lib/tls/libc.so.6 Thread 1 (process 7424): #0 0xb67d3947 in raise () from /lib/tls/libc.so.6 0000001 0xb67d50c9 in abort () from /lib/tls/libc.so.6 #2 0xb75f3074 in g_logv () from /usr/share/qt4/lib/libglib-2.0.so.0 #3 0xb75f30a9 in g_log () from /usr/share/qt4/lib/libglib-2.0.so.0 0000004 0xb6da23bb in glibmm_unexpected_exception () at #libs/glibmm2/glibmm/exceptionhandler.cc:76 0000005 0xb6da257d in Glib::exception_handlers_invoke () at #libs/glibmm2/glibmm/exceptionhandler.cc:155 #6 0xb6dab570 in Glib::SignalProxyNormal::slot0_void_callback #(self=0x9048070, data=0x904a5d0) at libs/glibmm2/glibmm/signalproxy.cc:99 #7 0xb7673e1b in g_cclosure_marshal_VOID__VOID () from #/usr/share/qt4/lib/libgobject-2.0.so.0 0000008 0xb766698b in g_closure_invoke () from #/usr/share/qt4/lib/libgobject-2.0.so.0 0000009 0xb7677213 in g_signal_chain_from_overridden () from #/usr/share/qt4/lib/libgobject-2.0.so.0 0000010 0xb7678429 in g_signal_emit_valist () from #/usr/share/qt4/lib/libgobject-2.0.so.0 0000011 0xb76785d9 in g_signal_emit () from #/usr/share/qt4/lib/libgobject-2.0.so.0 0000012 0xb7484042 in gtk_widget_activate () from #/usr/share/qt4/lib/libgtk-x11-2.0.so.0 0000013 0xb73a2262 in gtk_menu_shell_activate_item () from #/usr/share/qt4/lib/libgtk-x11-2.0.so.0 0000014 0xb73a3810 in gtk_menu_shell_append () from #/usr/share/qt4/lib/libgtk-x11-2.0.so.0 #15 0xb7397d3f in gtk_menu_attach () from #/usr/share/qt4/lib/libgtk-x11-2.0.so.0 0000016 0xb78eb8b9 in Gtk::Widget_Class::button_release_event_callback #(self=0x8908f08, p0=0x8eab788) at libs/gtkmm2/gtk/gtkmm/widget.cc:3805 #17 0xb7396250 in _gtk_marshal_BOOLEAN__BOXED () from #/usr/share/qt4/lib/libgtk-x11-2.0.so.0 0000018 0xb7664f49 in g_value_set_boxed () from #/usr/share/qt4/lib/libgobject-2.0.so.0 0000019 0xb766698b in g_closure_invoke () from #/usr/share/qt4/lib/libgobject-2.0.so.0 0000020 0xb767756f in g_signal_chain_from_overridden () from #/usr/share/qt4/lib/libgobject-2.0.so.0 0000021 0xb7678208 in g_signal_emit_valist () from #/usr/share/qt4/lib/libgobject-2.0.so.0 0000022 0xb76785d9 in g_signal_emit () from #/usr/share/qt4/lib/libgobject-2.0.so.0 0000023 0xb747ff64 in gtk_widget_get_default_style () from #/usr/share/qt4/lib/libgtk-x11-2.0.so.0 #24 0xb738fbd3 in gtk_propagate_event () from #/usr/share/qt4/lib/libgtk-x11-2.0.so.0 0000025 0xb7390e07 in gtk_main_do_event () from #/usr/share/qt4/lib/libgtk-x11-2.0.so.0 0000026 0xb7229eea in _gdk_events_init () from #/usr/share/qt4/lib/libgdk-x11-2.0.so.0 0000027 0xb75ea731 in g_main_context_dispatch () from #/usr/share/qt4/lib/libglib-2.0.so.0 0000028 0xb75ed7a6 in g_main_context_check () from #/usr/share/qt4/lib/libglib-2.0.so.0 0000029 0xb75edb67 in g_main_loop_run () from #/usr/share/qt4/lib/libglib-2.0.so.0 0000030 0xb7391281 in gtk_main () from /usr/share/qt4/lib/libgtk-x11-2.0.so.0 0000031 0xb786dbc1 in Gtk::Main::run_impl (this=0x8847268) at #libs/gtkmm2/gtk/gtkmm/main.cc:503 0000032 0xb786d9ce in Gtk::Main::run () at libs/gtkmm2/gtk/gtkmm/main.cc:450 0000033 0xb7aed183 in Gtkmm2ext::UI::run (this=0x88442f8, #old_receiver=@0x88262a0) at libs/gtkmm2ext/gtk_ui.cc:216 0000034 0x085b1860 in main (argc=1, argv=0xbfa592e4) at gtk2_ardour/main.cc:295 ----------------- here is some info about the file: nowhiskey@murija2:~$ sndfile-info tm-2007-04-03T01\:59\:42.wav Version : libsndfile-1.0.16 ======================================== File : tm-2007-04-03T01:59:42.wav Length : 6867032 RIFF : 6867024 WAVE fmt : 16 Format : 0x3 => WAVE_FORMAT_IEEE_FLOAT Channels : 2 Sample Rate : 48000 Block Align : 8 Bit Width : 32 Bytes/sec : 384000 fact : 4 frames : 858368 PEAK : 24 version : 1 time stamp : 1175558400 Ch Position Value 0 36992 1.12536 1 128244 1.50624 data : 6866944 End ---------------------------------------- Sample Rate : 48000 Frames : 858368 Channels : 2 Format : 0x00010006 Sections : 1 Seekable : TRUE Duration : 00:00:17.882 Signal Max : 1.50624 (3.56 dB) nowhiskey@murija2:~$ cheers, doc |
|
|
this bug should be fixed in current SVN (rev 1672). please report back. the fix does have a certain cost: old sessions with embedded stereo or multichannel files will not load. |
|
|
hi, here it does not look completely solved. embeding a TM file works 100% good as one would expect (no crash anymore!), but importing the same file is still an issue here. i can import the file and play it, than save the session and close. when i look in the audiofiles dir, it looks like (the session is not running): nowhiskey@murija2:~/Ardour2/011/interchange/011/audiofiles$ ls tm-2007-04-03T01:59:08-L.wav tm-2007-04-03T01:59:08-R.wav but if i start the session again, the file will be replaced with silence. looking in to audiofiles dir, for me it looks strange, cause while the session is running: nowhiskey@murija2:~/Ardour2/011/interchange/011/audiofiles$ ls Audio 1-1%L.wav Audio 1-1%R.wav tm-2007-04-03T01:59:08-L.wav tm-2007-04-03T01:59:08-R.wav the TM files have a proper name, but there are another two audio files listed, and this session is only for testing the TM-files issue, so i did not imported any other audio into it. cheers, doc |
|
|
believed fixed in svn rev 1675. i also improved a few other details relating to how imported/embedded files show up in the region list. please report back so we can close this ASAP. |
|
|
for me this can be closed, ardour importing/embeding TM files very well now here! cheers, doc |
|
|
Marking as resolved. Thanks for your help! Carl |
| Date Modified | Username | Field | Change |
|---|---|---|---|
| 2007-03-25 00:04 | realhangman | New Issue | |
| 2007-03-25 13:34 | cth103 | Note Added: 0003654 | |
| 2007-03-25 21:37 | realhangman | File Added: tm-2007-03-25T23:28:58.wav | |
| 2007-03-25 21:39 | realhangman | Note Added: 0003655 | |
| 2007-03-26 12:40 | nowhiskey | Note Added: 0003659 | |
| 2007-03-26 12:41 | nowhiskey | Note Edited: 0003659 | |
| 2007-03-26 14:29 | cth103 | Note Added: 0003662 | |
| 2007-03-27 20:26 | paul | Note Added: 0003678 | |
| 2007-04-02 20:08 | taybin | Note Added: 0003697 | |
| 2007-04-03 12:10 | nowhiskey | Note Added: 0003701 | |
| 2007-04-03 13:06 | nowhiskey | Note Added: 0003702 | |
| 2007-04-06 02:49 | paul | Note Added: 0003711 | |
| 2007-04-06 02:49 | paul | Status | new => feedback |
| 2007-04-06 12:31 | nowhiskey | Note Added: 0003719 | |
| 2007-04-06 23:45 | paul | Note Added: 0003741 | |
| 2007-04-06 23:45 | paul | File Deleted: tm-2007-03-25T23:28:58.wav | |
| 2007-04-07 12:47 | nowhiskey | Note Added: 0003755 | |
| 2007-04-07 13:55 | cth103 | Status | feedback => resolved |
| 2007-04-07 13:55 | cth103 | Resolution | open => fixed |
| 2007-04-07 13:55 | cth103 | Assigned To | => cth103 |
| 2007-04-07 13:55 | cth103 | Note Added: 0003760 | |
| 2008-11-21 00:30 | seablade | Status | resolved => closed |