View Issue Details
ID | Project | Category | View Status | Date Submitted | Last Update |
---|---|---|---|---|---|
0000638 | Cinelerra-GG | [All Projects] Bug | public | 2023-04-18 00:40 | 2023-07-13 14:50 |
Reporter | Nafnlaus | Assigned To | PhyllisSmith | ||
Priority | high | Severity | crash | Reproducibility | always |
Status | closed | Resolution | fixed | ||
Platform | ? | OS | Fedora Linux 36 | OS Version | Fedora Linux 36 |
Product Version | |||||
Target Version | Fixed in Version | ||||
Summary | 0000638: Crash during playback and rendering; project totally hosed for now :( | ||||
Description | Certain segments of the project are entirely unplayable and unrenderable, and cinelerra-gg stacktraces. These are segments where additional filters, such as chorus, echo, or graphic equalizer are added atop base filters like delay audio and chorus. Since I can't even render, I can't just render it all out and start over with the rendered version as the new base track. All my work laying everything out is now frozen, unusuable unless this can get fixed. :( Thankfully Cinelerra writes out a dump file (attached), with the following stack trace: signal_entry: lock table size=33 0x7a9f190 BC_DialogThread::active_lock, BC_DialogThread::run 0x7f9a9e7fc640 0x7e13620 RecordSetChannel::change_channel, (null) 0x7f9a8b7fe640 0x7f98cc0 ChannelInfo::scan_lock, (null) 0x7f9a8affd640 0x7f99140 SWindow::swin_lock, (null) 0x7f9a8a7fc640 0x5d46b30 MWindow::run_lock, MWindow::run 0x7f9ab52b3800 * 0x7f9a981a9fd0 PlaybackEngine::output_lock, PlaybackEngine::run 0x7f9a9d7fa6 0x5d473a0 BC_Synchronous::next_command, BC_Synchronous::run 0x7f9a727fc640 0x8169530 MainIndexes::input_lock, MainIndexes::run 1 0x7f9a88ff9640 0x7edd0b0 BC_Repeater::pause_lock, BC_Repeater::run 0x7f9a837fe640 0x7f9ab52 0x7f9a5c9ded70 LoadClient::input_lock, LoadClient::run 0x7f9a06ffd640 0x7f9a5c803460 LoadClient::input_lock, LoadClient::run 0x7f9a05ffb640 0x7f9a5c7fe670 LoadClient::input_lock, LoadClient::run 0x7f9a067fc640 0x7f9a5c9dfdf0 LoadClient::input_lock, LoadClient::run 0x7f9a81ffb640 0x7ab5910 ResourceThreadBase::draw_lock, ResourceThreadBase::run 0x7f9a96ffd 0x5c24740 ResourceThreadBase::draw_lock, ResourceThreadBase::run 0x7f9a967fc 0x7a98400 PlaybackEngine::output_lock, PlaybackEngine::run 0x7f9a9effd640 0x7f9ba00 BC_Repeater::pause_lock, BC_Repeater::run 0x7f9a89ffb640 0x7f9ab52 0x7f9a440064e0 BC_Xfer::Slicer::init, Slicer::run 0x7f9a4bfff640 0x9d95b50 FileThread::output_lock, FileThread::run 1 0x7f99fcff9640 0x816a610 BC_WindowBase::event_condition, BC_WindowBase::get_event 0x7f9a72f 0x7f9c2c0 BC_WindowBase::event_condition, BC_WindowBase::get_event 0x7f9a73f 0x6e85930 BC_WindowBase::event_condition, BC_WindowBase::get_event 0x7f9a80f 0x7aa11b0 BC_WindowBase::event_condition, BC_WindowBase::get_event 0x7f9ab52 0x6e8a6c0 BC_WindowBase::event_condition, BC_WindowBase::get_event 0x7f9a817 0x77908d0 BC_WindowBase::event_condition, BC_WindowBase::get_event 0x7f9aa53 0x7f9a98002c80 BC_WindowBase::event_condition, BC_WindowBase::get_event 0x7f 0x7b2e190 BC_WindowBase::event_condition, BC_WindowBase::get_event 0x7f9a957 0x9d96400 FileThread::file_lock, FileThread::run 2 0x7f99fc7f8640 * 0x8583bb0 FFMPEG::mux_lock, FFMPEG::run 0x7f99fd7fa640 | ||||
Steps To Reproduce | Just play or render over a spot that has additional audio filters. | ||||
Tags | No tags attached. | ||||
Fixed in June 2023. | |
The June 30 AppImages have the fix in so marking as resolved and will close in a couple of days. | |
Checked into GIT the Delay Audio changes because I have not been able to reproduce any crashes, to include on a 2020 Arch version using Tears of Steel. In addition, besides testing using 5 different video or audio sources on Fedora 32 and the more up to date Fedora 37, Ubuntu 16, Arch 10/2020, and Debian 11.0 32-bit, I had no crashes with the mod in but was able to create the crash without the mod. Not sure what Andrea did differently that he was still able to get a crash. But the patch at least fixes many situations. Note: when rendering the test files before and after the patch, they matched perfectly (except Key_Person_3.xml would not render without crashing before the patch was applied). |
|
@Andrea_Paz Still can not get to crash after downloading Tears of Steel mkv version. But I did look at the dmp file you included earlier and it clearly shows delayaudio being the crashing party in process_realtime just like before. I don't think you did anything different than what I have been trying (just moving around, playing at regular speed, and then switching to fast speed forward). I have a really old Arch system that I will test it on next. |
|
@Andrea_Paz Still can not get to crash after downloading Tears of Steel mkv version. But I did look at the dmp file you included earlier and it clearly shows delayaudio being the crashing party in process_realtime just like before. I don't think you did anything different than what I have been trying (just moving around, playing at regular speed, and then switching to fast speed forward). I have a really old Arch system that I will test it on next. |
|
@ PhyllisSmith I used a Blender movie, made freely available: Tears of steel. I used the 1080p version, webm (545MB) in this page: https://mango.blender.org/download/ |
|
@Andrea_Paz I have not been able to create any crashes with this patch after recompiling. And the Debian 11.0 32-bit tests worked also. Could you upload the test file you used somewhere (or else email directly only to me) so I can test that file here? |
|
Unfortunately, I keep getting the crash when I use fast forward. On the terminal I have the following messages: ** segv at 0x7f165b673e07 in pid 165163, tid 165542 writing debug data to /tmp/cinelerra_165163.dmp lock_items: 33 lock_frees: 4 ** dump complete signal_entry: got SIGHUP my pid=165224 execution table size=0: signal_entry: lock table size=1 lock_items: 0 lock_frees: 1 SigHandler::signal_handler total files=0 I append the dump file. cinelerra_165163.tar.gz (18,556 bytes) |
|
@Nafnlaus @Andrea_Paz We have a patch which resolves the crash, but I do not know the exact reason why. Andrew developed the first half of the patch (always reconfigure) and I stumbled across the second half (size is always that of new_allocation). I have tested on Fedora, ubuntu 16 and waiting to test on debian 11.0, 32-bit (it is slowly building there). Test was of 3 files - KeyPerson_3.xml with local substitutions for the aac and mp4 files. It played in all directions and successfully rendered the entire project. Other files were a simple short part of KeyPerson_3.xml with just the aac file and a audio mp3 file only. The audio only file before the patch, would simply crash when switched from play key forward to fast play key forward and now does not crash. Andrea if you could test on Arch, it would be much appreciated. Patch is attached, or you can just make the 3 line changes manually in ...plugins/delayaudio/delayaudio.c. Thanks.
delayaudio_patch.diff (554 bytes)
--- delayaudio_orig.C 2023-05-14 10:46:22.035845543 -0600 +++ delayaudio.C 2023-05-22 16:45:31.690961913 -0600 @@ -136,8 +136,7 @@ if(buffer) { - int size = MIN(new_allocation, allocation); - + int size = new_allocation; memcpy(new_buffer->get_data(), buffer->get_data(), (size - PluginClient::in_buffer_size) * sizeof(double)); @@ -154,7 +153,8 @@ { load_configuration(); - if(need_reconfigure) reconfigure(); +// if(need_reconfigure) + reconfigure(); // printf("DelayAudio::process_realtime %d %d\n", // input_start, size); |
|
Using "fast forward" I also get the crash. No matter if "play" is on or not, I always get the crash when I click on "fast forward". With F_adelay I don't get crashes. Previously I had tried just "play" and "scrubbing" without getting crash. I attach the dump. cinelerra_1925.tar.gz (17,495 bytes) |
|
@Nafnlaus @Andrew-R Simplest demo to create "Delay Audio" plugin problem. I tested this with 4 random audio files or video files that included audio files and all crashed under this set of steps. So you can demo with any file but 1 small example audio file is attached. 1) load/replace file (or load to resources and then drag onto timeline) 2) drag the "Delay Audio" plugin to the audio track 3) start playing file from the beginning (or start anywhere) 4) without stopping first, use the "fast forward" icon in the main window to speed up the playing - CRASH ALTERNATIVE to "Delay Audio" is "F_adelay" which did not crash for me - set "delays" parameter to desired seconds and use "Apply". Next I will use the debugger to learn some more. audio_snippet.mp4 (582,066 bytes) |
|
I really appreciate you working on this. People like you are the glue that holds projects together :) | |
@Nafnlaus Changing computers easily caused the crash - but in my case even with "Delay Audio" eliminated, it crashes. So I will have to try to narrow down the circumstances. Just FYI, in the KeyPerson_3.xml file, I substituted my own .mp4 and .aac files so the crash is definitely not dependent on your particular set of files. It may take me awhile to find the cause so it is a good thing you have a workaround. If I can think of anything else you can do to help, I will let you know. Not important, but this crash dates back to at least April 2020 but since Chorus plugin was not added until 11/2019, can not use XML file before that. At least this eliminates anything we may have changed since November 2020. |
|
Let me know if there's anything else I can do to help :) | |
@Nafnlaus Been trying to reproduce a crash and have not yet been able to. I have just "played" from the beginning as I see the Delay Audio filter on the first track. I will try a different computer/operating system version to see if I can reproduce. Thanks for providing the demo file and your temporary solution. I will let you know if I can cause a crash also. |
|
ED: I might have just now found a workaround! Shutting off "delay audio" seems - thusfar - to do the trick! I can work the delay into the chorus instead. | |
KeyPerson_3.xml (66,784 bytes) cinelerra_1591335.dmp (289,261 bytes) |
|
Date Modified | Username | Field | Change |
---|---|---|---|
2023-04-18 00:40 | Nafnlaus | New Issue | |
2023-04-18 00:40 | Nafnlaus | File Added: KeyPerson_3.xml | |
2023-04-18 00:40 | Nafnlaus | File Added: cinelerra_1591335.dmp | |
2023-04-18 00:44 | Nafnlaus | Note Added: 0005467 | |
2023-04-18 15:28 | PhyllisSmith | Note Added: 0005468 | |
2023-04-18 15:29 | PhyllisSmith | Assigned To | => PhyllisSmith |
2023-04-18 15:29 | PhyllisSmith | Status | new => acknowledged |
2023-04-18 19:46 | Nafnlaus | Note Added: 0005469 | |
2023-04-19 01:13 | PhyllisSmith | Note Added: 0005470 | |
2023-04-19 01:26 | Nafnlaus | Note Added: 0005471 | |
2023-04-19 01:44 | PhyllisSmith | Note Edited: 0005470 | View Revisions |
2023-04-19 01:45 | PhyllisSmith | Note Edited: 0005470 | View Revisions |
2023-04-21 01:02 | PhyllisSmith | File Added: audio_snippet.mp4 | |
2023-04-21 01:02 | PhyllisSmith | Note Added: 0005472 | |
2023-04-21 06:56 | Andrea_Paz | File Added: cinelerra_1925.tar.gz | |
2023-04-21 06:56 | Andrea_Paz | Note Added: 0005473 | |
2023-05-23 01:31 | PhyllisSmith | File Added: delayaudio_patch.diff | |
2023-05-23 01:31 | PhyllisSmith | Note Added: 0005475 | |
2023-05-23 12:13 | Andrea_Paz | File Added: cinelerra_165163.tar.gz | |
2023-05-23 12:13 | Andrea_Paz | Note Added: 0005476 | |
2023-05-23 15:48 | PhyllisSmith | Note Added: 0005477 | |
2023-05-23 17:55 | Andrea_Paz | Note Added: 0005478 | |
2023-05-23 18:24 | PhyllisSmith | Note Added: 0005479 | |
2023-05-25 16:51 | PhyllisSmith | Note Added: 0005480 | |
2023-05-25 16:57 | PhyllisSmith | Note Added: 0005481 | |
2023-05-25 16:59 | PhyllisSmith | Note Edited: 0005481 | View Revisions |
2023-05-27 14:32 | PhyllisSmith | View Status | private => public |
2023-07-02 16:37 | PhyllisSmith | Status | acknowledged => resolved |
2023-07-02 16:37 | PhyllisSmith | Resolution | open => fixed |
2023-07-02 16:37 | PhyllisSmith | Note Added: 0005533 | |
2023-07-13 14:50 | PhyllisSmith | Status | resolved => closed |
2023-07-13 14:50 | PhyllisSmith | Note Added: 0005536 |