View Issue Details

IDCategoryLast Update
0006725bugs2016-02-04 00:53
ReporterdigidogAssigned Totimbyr 
Reproducibilityalways 
Status resolvedResolutionfixed 
PlatformLinuxOSDebianOS Versionstretch/sid
Product Version4.4 
Fixed in Version4.7 
Summary0006725: Splitted audio regions jump to the beginning of timeline and build layers on session tempo change
DescriptionTesting enviroment: Ardour 4.4.406 with Debian stretch/sid (testing/unstable repos) and LXDE/openbox Desktop.

Splitting a song length audiofile into peaces is a daily task in many pro audio situations. While Audio editing is not the prior field of Ardour, the use case becomes random even in audio production situation, for example: drum recording and editing.

Cutting a song length audiofile into peaces and changing the tempo of the session should result in more drifted or closer region start positions sticking with their split positions in the bar measure grid.

But the splitted audio regions jump to the beginning of the timeline and build layers on session tempo change, which will not be obvious to the new user.
Steps To ReproduceSteps to reproduce:
    + Start a new Ardour session with Jack
    + Import a song length stereo audiofile
    + Place it to a new stereo audio track created on the beginng of the timeline
    + Set the tempo to something almost fitting to the beat of the audiofile to have a better control view
    + split (it doesn't matter if you use 's' in grab mode or 'T' cutter) into lets say bar length peaces
    + Make sure "glue to bar/beats" is activated for the splitted regions
    + Now change the session tempo to something faster or slower
    
Expected behaviour:
    + The audio peaces keep in sync with bars/position where we made the plitting
    + if the tempo is slower, the peaces should start slower one after the other on their positions
    + if the tempo is faster, the peaces should start faster and should overlap one after the other on their positions

Unexptected behaviour:
    + All the audio peaces jump to the beginning of the session timeline and build layers

Work around:
    + move each splitted region one time back and forth on their positions
    + make the tempo change from above
    + Result: the expected behaviour becomes operative
Additional InformationWork around:
    + move each splitted region one time back and forth on their positions
    + make the tempo change from above
    + Result: the expected behaviour becomes operative
Tags4.4, region, tempo change

Users sponsoring this issue
Sponsors List Total Sponsorship = US$ 5

2016-01-13 17:56: digidog (US$ 5)
Users sponsoring this issue (Total Sponsorship = US$ 5)

Activities

digidog

2016-01-05 22:23

reporter  

output.mp4 (362,714 bytes)

digidog

2016-01-06 01:01

reporter  

test_latest_build_git_2015-01-06_02-00.mp4 (3,429,887 bytes)

digidog

2016-01-06 01:33

reporter  

diff_config_after_config_reset.txt (8,127 bytes)
Only in /home/user/.config/ardour4.bak: Ardour_announcements_linux_4.4.406
diff /home/user/.config/ardour4/config /home/user/.config/ardour4.bak/config
6c6
<     <Option name="input-auto-connect" value="1"/>
---
>     <Option name="input-auto-connect" value="0"/>
10c10
<     <Option name="send-mtc" value="0"/>
---
>     <Option name="send-mtc" value="1"/>
12c12
<     <Option name="send-midi-clock" value="0"/>
---
>     <Option name="send-midi-clock" value="1"/>
24c24
<     <Option name="sync-source" value="0"/>
---
>     <Option name="sync-source" value="1"/>
58c58
<     <Option name="use-monitor-bus" value="0"/>
---
>     <Option name="use-monitor-bus" value="1"/>
80,81c80,81
<     <Option name="stop-at-session-end" value="0"/>
<     <Option name="seamless-loop" value="0"/>
---
>     <Option name="stop-at-session-end" value="1"/>
>     <Option name="seamless-loop" value="1"/>
111c111
<     <Option name="default-session-parent-dir" value="/someHD/sub/musicediting/Ardour_new_session_root"/>
---
>     <Option name="default-session-parent-dir" value="/someHD/sub/musicediting"/>
113c113
<     <Option name="processor-usage" value="-1"/>
---
>     <Option name="processor-usage" value="2"/>
150c150
<     <TransportControllables roll="4" stop="5" goto-start="6" goto-end="7" auto-loop="8" play-selection="9" rec="10" shuttle="21"/>
---
>     <TransportControllables roll="3" stop="4" goto-start="5" goto-end="6" auto-loop="7" play-selection="8" rec="9" shuttle="21"/>
153,154c153,154
<       <Window name="rc-options-editor" visible="no" x-off="-1" y-off="-1" x-size="-1" y-size="-1"/>
<       <Window name="session-options-editor" visible="no" x-off="-1" y-off="-1" x-size="-1" y-size="-1"/>
---
>       <Window name="rc-options-editor" visible="no" x-off="620" y-off="254" x-size="789" y-size="643"/>
>       <Window name="session-options-editor" visible="no" x-off="695" y-off="461" x-size="651" y-size="349"/>
156c156
<       <Window name="about" visible="no" x-off="-1" y-off="-1" x-size="-1" y-size="-1"/>
---
>       <Window name="about" visible="no" x-off="742" y-off="240" x-size="433" y-size="578"/>
166c166
<       <Window name="midi-connection-manager" visible="no" x-off="-1" y-off="-1" x-size="-1" y-size="-1"/>
---
>       <Window name="midi-connection-manager" visible="no" x-off="1955" y-off="0" x-size="552" y-size="436"/>
171,174c171,180
<       <Window name="P-118-142" visible="no" x-off="-1" y-off="-1" x-size="-1" y-size="-1" custom-ui="no"/>
<       <Window name="P-118-139" visible="no" x-off="-1" y-off="-1" x-size="-1" y-size="-1" custom-ui="no"/>
<       <Window name="P-118-145" visible="no" x-off="-1" y-off="-1" x-size="-1" y-size="-1" custom-ui="no"/>
<       <Window name="P-118-146" visible="no" x-off="-1" y-off="-1" x-size="-1" y-size="-1" custom-ui="no"/>
---
>       <Window name="P-155-179" visible="no" x-off="-1" y-off="-1" x-size="-1" y-size="-1" custom-ui="no"/>
>       <Window name="P-155-176" visible="no" x-off="-1" y-off="-1" x-size="-1" y-size="-1" custom-ui="no"/>
>       <Window name="P-155-182" visible="no" x-off="-1" y-off="-1" x-size="-1" y-size="-1" custom-ui="no"/>
>       <Window name="P-155-183" visible="no" x-off="-1" y-off="-1" x-size="-1" y-size="-1" custom-ui="no"/>
>       <Window name="P-155-195" visible="no" x-off="-1" y-off="-1" x-size="-1" y-size="-1" custom-ui="no"/>
>       <Window name="P-58-76" visible="no" x-off="-1" y-off="-1" x-size="-1" y-size="-1" custom-ui="no"/>
>       <Window name="P-58-81" visible="no" x-off="-1" y-off="-1" x-size="-1" y-size="-1" custom-ui="no"/>
>       <Window name="P-58-68" visible="no" x-off="-1" y-off="-1" x-size="-1" y-size="-1" custom-ui="no"/>
>       <Window name="P-58-74" visible="no" x-off="-1" y-off="-1" x-size="-1" y-size="-1" custom-ui="no"/>
>       <Window name="P-58-75" visible="no" x-off="-1" y-off="-1" x-size="-1" y-size="-1" custom-ui="no"/>
176c182,183
<         <transport tornoff="no"/>
---
>         <transport tornoff="no" width="1120" height="73" xpos="2303" ypos="762"/>
>         <monitor-section tornoff="no"/>
182c189,192
<         <State backend="JACK" driver="ALSA" device="HDA Intel PCH" input-device="" output-device="" sample-rate="44100" buffer-size="1024" n-periods="2" input-latency="0" output-latency="0" input-channels="0" output-channels="0" active="yes" midi-option="(legacy) ALSA raw devices" lru="1452042417">
---
>         <State backend="JACK" driver="ALSA" device="HDA Intel PCH" input-device="" output-device="" sample-rate="44100" buffer-size="1024" n-periods="2" input-latency="0" output-latency="0" input-channels="0" output-channels="0" active="yes" midi-option="" lru="1452042089">
>           <MIDIDevices/>
>         </State>
>         <State backend="JACK" driver="" device="HDA Intel PCH" input-device="HDA Intel PCH" output-device="HDA Intel PCH" sample-rate="44100" buffer-size="1024" n-periods="0" input-latency="0" output-latency="0" input-channels="0" output-channels="0" active="no" midi-option="ALSA raw devices" lru="1452016822">
diff /home/user/.config/ardour4/instant.xml /home/user/.config/ardour4.bak/instant.xml
3,4c3,4
<   <Editor id="18" zoom-focus="ZoomFocusPlayhead" zoom="1024" snap-to="SnapToBeat" snap-mode="SnapOff" internal-snap-to="SnapToBeat" internal-snap-mode="SnapOff" pre-internal-snap-to="SnapToBeat" pre-internal-snap-mode="SnapOff" edit-point="EditAtMouse" visible-track-count="-1" playhead="0" left-frame="0" y-origin="0.000000" show-measures="yes" maximised="no" follow-playhead="yes" stationary-playhead="no" region-list-sort-type="ByEndInFile" mouse-mode="MouseObject" join-object-range="no" show-editor-mixer="no" show-editor-list="no" editor-list-page="0" show-marker-lines="no" nudge-clock-value="220500">
<     <geometry x-size="1920" y-size="1061" x-pos="0" y-pos="0" edit-horizontal-pane-pos="991" notebook-shrunk="0" edit-vertical-pane-pos="833"/>
---
>   <Editor id="18" mixer-width="Wide" zoom-focus="ZoomFocusEdit" zoom="4096" snap-to="SnapToBeatDiv16" snap-mode="SnapNormal" internal-snap-to="SnapToBeatDiv2" internal-snap-mode="SnapNormal" pre-internal-snap-to="SnapToBeatDiv16" pre-internal-snap-mode="SnapNormal" edit-point="EditAtPlayhead" visible-track-count="-1" playhead="0" left-frame="0" y-origin="0.000000" show-measures="yes" maximised="no" follow-playhead="yes" stationary-playhead="no" region-list-sort-type="ByEndInFile" mouse-mode="MouseObject" join-object-range="no" show-editor-mixer="yes" show-editor-list="yes" editor-list-page="0" show-marker-lines="yes" nudge-clock-value="220500">
>     <geometry x-size="1918" y-size="1057" x-pos="0" y-pos="0" edit-horizontal-pane-pos="1483" notebook-shrunk="0" edit-vertical-pane-pos="812"/>
9,10c9,12
<     <Selection/>
<     <RegionList sort-type="ByEndInFile" sort-ascending="yes" show-all="no" show-automatic-regions="yes"/>
---
>     <Selection>
>       <Region id="599"/>
>     </Selection>
>     <RegionList sort-type="ByEndInFile" sort-ascending="yes" show-all="yes" show-automatic-regions="yes"/>
12c14
<   <Mixer narrow-strips="no" show-mixer="no" show-mixer-list="yes" maximised="no">
---
>   <Mixer narrow-strips="yes" show-mixer="no" show-mixer-list="yes" maximised="no">
Only in /home/user/.config/ardour4.bak: plugin_statuses
diff /home/user/.config/ardour4/recent /home/user/.config/ardour4.bak/recent
1,2c1,12
< new_test_reset_config
< /someHD/sub/musicediting/Ardour_new_session_root/new_test_reset_config
---
> devtest
> /someHD/sub/musicediting/devtest
> test01
> /someHD/sub/musicediting/test01
> default
> /someHD/sub/musicediting/drafts/default
> ardour_song_name
> /someHD/sub/musicediting/drafts/songname/ardour_songname
> default
> /someHD/sub/musicediting/default
> ardour_anothersong
> /someHD/sub/musicediting/drafts/anothersong/ardour_anothersong
Only in /home/user/.config/ardour4.bak: session.rc
diff /home/user/.config/ardour4/ui_config /home/user/.config/ardour4.bak/ui_config
23c23
<     <Option name="default-narrow_ms" value="0"/>
---
>     <Option name="default-narrow_ms" value="1"/>
62c62
<     <Option name="recent-session-sort" value="0"/>
---
>     <Option name="recent-session-sort" value="1"/>

digidog

2016-01-06 01:48

reporter   ~0017768

Last edited: 2016-01-06 01:52

View 3 revisions

After compiling and running latest git version with the help of @rgareus on IRC, but sadly with the same result/behaviour, we can say, it has been proven that this bug is independend of the difference between 4.4.406 and latest git clone.

@rgareus 's final suggestion on IRC to reset the .config file brought me finally to the idea, that maybe the region > "glue" setting indication has been corrupted somewhen and somehow. In certain circumstances - I still don't know why and when yet (need to reproduce the last days) - the obviously activated "glue" check-box for the splitted regions in the context menu, which indicates, that the setting is "checked" (on), seems to be off instead. Turning it on/off twice again resets it and then tempo-change with regions on the correct positions works again as expected.

EDIT: But this still doesn't explain the weird behaviour of the regions jumping to the start of the session timeline and layering in the tests before the config reset.

Temporary summary: Resetting the ~/.config/ardour4 file by typing in terminal ''' mv ~/.config/ardour4 ~/.config/ardour4.bak ''' and starting a new session seems to remove this misbehaviour. But further testing is maybe required.

timbyr

2016-01-06 13:58

developer   ~0017770

I can reproduce this using Ardour master@df23ed57f

It seems the key to reproducing is for the region being split to be glued to bbt time(before the split)

I have a tentative fix for this bug but more testing is needed.

digidog

2016-01-13 18:04

reporter   ~0017780

Last edited: 2016-01-13 18:28

View 3 revisions

@timbyr: I am not sure if the setting is definitely active before, or if the checkbox only fools us that it is. I'm still trying to test in more detail if this has any connection to the default session setting for bbt, when active before or not. (Session Properties > Misc > Glue to bars and beats)

timbyr

2016-01-13 21:39

developer   ~0017781

I've pushed what I think is the fix for this issue to the master branch as revision 9a52cefd13

Can you please confirm with a nightly version greater than 4.6.14 from nightly.ardour.org

timbyr

2016-01-27 02:10

developer   ~0017843

It has been a couple of weeks since this was fixed. If the reporter could confirm that this is now fixed that would be great, otherwise I'll close this report soon.

Issue History

Date Modified Username Field Change
2016-01-05 21:19 digidog New Issue
2016-01-05 21:20 digidog Tag Attached: 4.4
2016-01-05 21:20 digidog Tag Attached: region
2016-01-05 21:20 digidog Tag Attached: tempo change
2016-01-05 22:23 digidog File Added: output.mp4
2016-01-06 01:01 digidog File Added: test_latest_build_git_2015-01-06_02-00.mp4
2016-01-06 01:33 digidog File Added: diff_config_after_config_reset.txt
2016-01-06 01:48 digidog Note Added: 0017768
2016-01-06 01:51 digidog Note Edited: 0017768 View Revisions
2016-01-06 01:52 digidog Note Edited: 0017768 View Revisions
2016-01-06 13:58 timbyr Note Added: 0017770
2016-01-13 17:56 digidog Sponsorship Added digidog: US$ 5
2016-01-13 17:56 digidog Sponsorship Total 0 => 5
2016-01-13 18:04 digidog Note Added: 0017780
2016-01-13 18:04 digidog Note Edited: 0017780 View Revisions
2016-01-13 18:28 digidog Note Edited: 0017780 View Revisions
2016-01-13 21:39 timbyr Note Added: 0017781
2016-01-27 02:10 timbyr Note Added: 0017843
2016-01-27 02:10 timbyr Assigned To => timbyr
2016-01-27 02:10 timbyr Status new => feedback
2016-02-04 00:53 timbyr Status feedback => resolved
2016-02-04 00:53 timbyr Fixed in Version => 4.7
2016-02-04 00:53 timbyr Resolution open => fixed