VSE Linked external scene with audio with input Sequencer only works if the scene is NOT also linked with input Camera #69444

Open
opened 2019-09-03 13:22:16 +02:00 by gabriel montagné · 26 comments

System Information
Operating system: Linux-4.9.0-9-amd64-x86_64-with-debian-9.9 64 Bits
Graphics card: Mesa DRI Intel(R) HD Graphics 520 (Skylake GT2) Intel Open Source Technology Center 4.5 (Core Profile) Mesa 13.0.6

Blender Version
Broken: version: 2.81 (sub 3), branch: master, commit date: 2019-08-20 22:35, hash: daba3e871f
Worked: Haven't yet tried other versions.

Short description of error
VSE: Linking external scene with audio with input Sequencer only works if the scene is NOT also linked with input Camera.

Exact steps for others to reproduce the error

  1. Create file A with Scene-A and add audio to it on the VSE.
  2. Create file B
  3. From the VSE in file B, link the Scene-A from file A. Set it's input to "Sequencer". On file B, playing the strip will correctly play the sound from Scene-A.
  4. Duplicate (or re-instance) Scene-A on the VSE sequencer. If the Input is still "Sequencer", both clips will play the audio, as expected.
  5. Switch one of the Scene-A instances to use the Camera as input.

Expected behaviour:

We should be able to both see the Camera strip and hear the Sequence strip for Scene-A

Actual behaviour:

For all the strips of Scene-A that are set to Input "Sequencer", the audio will stop playing.

Note: I've determined that it is not that the audio crashes: other clips with sound on the sequencer keep playing normally.

Note: If I delete the strip with Input Camera and leave only the input Sequencer strips, the problem will not go away, unless I save the file like this and "revert" to it.

I cannot find a suitable work-around. In the video that I'm producing I need to edit local sound effects on the shot sequence, and incorporate it on the larger edit.
I cannot, therefore, both see and hear my sequence on the host sequencer.

If a workaround is possible (that is not reconstruct and re-import the sounds on the original scene) I'd be a happy man :-)
Thanks!

**System Information** Operating system: Linux-4.9.0-9-amd64-x86_64-with-debian-9.9 64 Bits Graphics card: Mesa DRI Intel(R) HD Graphics 520 (Skylake GT2) Intel Open Source Technology Center 4.5 (Core Profile) Mesa 13.0.6 **Blender Version** Broken: version: 2.81 (sub 3), branch: master, commit date: 2019-08-20 22:35, hash: `daba3e871f` Worked: Haven't yet tried other versions. **Short description of error** VSE: Linking external scene with audio with input Sequencer only works if the scene is NOT also linked with input Camera. **Exact steps for others to reproduce the error** 1. Create file A with Scene-A and add audio to it on the VSE. 2. Create file B 3. From the VSE in file B, link the Scene-A from file A. Set it's input to "Sequencer". On file B, playing the strip will correctly play the sound from Scene-A. 3. Duplicate (or re-instance) Scene-A on the VSE sequencer. If the Input is still "Sequencer", both clips will play the audio, as expected. 4. Switch one of the Scene-A instances to use the Camera as input. Expected behaviour: We should be able to both see the Camera strip and hear the Sequence strip for Scene-A Actual behaviour: For all the strips of Scene-A that are set to Input "Sequencer", the audio will stop playing. Note: I've determined that it is not that the audio crashes: other clips with sound on the sequencer keep playing normally. Note: If I delete the strip with Input Camera and leave only the input Sequencer strips, the problem will not go away, unless I save the file like this and "revert" to it. I cannot find a suitable work-around. In the video that I'm producing I need to edit local sound effects on the shot sequence, and incorporate it on the larger edit. I cannot, therefore, both see and hear my sequence on the host sequencer. If a workaround is possible (that is not reconstruct and re-import the sounds on the original scene) I'd be a happy man :-) Thanks!

Added subscriber: @GabrielMontagne

Added subscriber: @GabrielMontagne

#88319 was marked as duplicate of this issue

#88319 was marked as duplicate of this issue

#66117 was marked as duplicate of this issue

#66117 was marked as duplicate of this issue
Richard Antalik was assigned by Sybren A. Stüvel 2020-01-16 16:53:58 +01:00

Added subscriber: @brecht

Added subscriber: @brecht

I'm removing the 2.82 tag from this bug, since I don't think it's a showstopper and it was already tagged for 2.81 and not fixed.

I'm removing the 2.82 tag from this bug, since I don't think it's a showstopper and it was already tagged for 2.81 and not fixed.

Added subscribers: @tintwotin, @iss, @jaker-3, @Sergey, @neXyon

Added subscribers: @tintwotin, @iss, @jaker-3, @Sergey, @neXyon

Hello dear devs, how can one see where in the priority stack does this ticket float?
If there was a mechanism for "for tickets with the same depth on the back-log, click here -> paypal -> dev fund to give it a bit more weight" I'd happily use it for this one. : )
Thanks!

Hello dear devs, how can one see where in the priority stack does this ticket float? If there was a mechanism for "for tickets with the same depth on the back-log, click here -> paypal -> dev fund to give it a bit more weight" I'd happily use it for this one. : ) Thanks!

@GabrielMontagne I haven't got time to work on this in past months, now I do and there are only 4 high priority bugs, so this should be fixed in 2.83

There is quick hack attached so you can build it if you can, I can make only windows builds. or if you need help you can visit https://blender.chat vse room and we can work out some temporary solution.

@GabrielMontagne I haven't got time to work on this in past months, now I do and there are only 4 high priority bugs, so this should be fixed in 2.83 There is quick hack attached so you can build it if you can, I can make only windows builds. or if you need help you can visit https://blender.chat vse room and we can work out some temporary solution.

In #69444#884676, @iss wrote:
[...] so this should be fixed in 2.83

Awesome sauce : ) that's great news!

In #69444#884676, @iss wrote:
[...] There is quick hack attached so you can build it if you can [...]

True! I'll see if I can build it from the hack, that'd be great.

Thanks again for the update, and thanks for the help. Cheers.

> In #69444#884676, @iss wrote: > [...] so this should be fixed in 2.83 Awesome sauce : ) that's great news! > In #69444#884676, @iss wrote: > [...] There is quick hack attached so you can build it if you can [...] True! I'll see if I can build it from the hack, that'd be great. Thanks again for the update, and thanks for the help. Cheers.

Thanks :-) I built with your patch and it worked really nice for my setup. I left a note on the patch conversation as well. Thanks.

Thanks :-) I built with your patch and it worked really nice for my setup. I left a note on the patch conversation as well. Thanks.

I will lower priority here, because this requires some design consideration and ideally testing time. So it is not really good idea to work on this in BCON3 stage.

I guess I could keep high priority as this issue was introduced relatively recently, but I think that original design wasn't really thought through to begin with, so there isn't really any known good state to try to achieve.

I will lower priority here, because this requires some design consideration and ideally testing time. So it is not really good idea to work on this in BCON3 stage. I guess I could keep high priority as this issue was introduced relatively recently, but I think that original design wasn't really thought through to begin with, so there isn't really any known good state to try to achieve.

Could an interim solution be just letting the sound through for both Camera and Sequencer? At least we could use it until the redesign of how these should be linked is fleshed out?
I was very happy to see the bcon3 tag on this one, even if just for those glorious 3 days : )

Could an interim solution be just letting the sound through for both Camera and Sequencer? At least we could use it until the redesign of how these should be linked is fleshed out? I was very happy to see the bcon3 tag on this one, even if just for those glorious 3 days : )

Well it was on bcon3 workboard for last 2 releases.

I keep this report in mind very much and will try to look in solutions as soon as I can. I just can't promise it to correctly design implement and test within a month. which is time limit for bcon3.

Well it was on bcon3 workboard for last 2 releases. I keep this report in mind very much and will try to look in solutions as soon as I can. I just can't promise it to correctly design implement and test within a month. which is time limit for bcon3.

Of course, it's just me being annoying : ) Please do what you need to do! I have that workaround thing you'd prepared and it totally works for me. No problem Richard, I know you guys are crazy busy.

Of course, it's just me being annoying : ) Please do what you need to do! I have that workaround thing you'd prepared and it totally works for me. No problem Richard, I know you guys are crazy busy.

Added subscriber: @joshm-2

Added subscriber: @joshm-2

Added subscriber: @michaelf

Added subscriber: @michaelf

Added subscriber: @Giladfrenkel

Added subscriber: @Giladfrenkel

Hi, is this bug going to be fixed anytime soon? is there any workaround for the meantime?

Hi, is this bug going to be fixed anytime soon? is there any workaround for the meantime?

In #69444#1362516, @Giladfrenkel wrote:
Hi, is this bug going to be fixed anytime soon? is there any workaround for the meantime?

Anytime soon I can't tell. I am not sure if there exists infrastructure to handle this issue. There are developers that seem to be able to implemet features in audaspace though so hopefully. For workaround, I would think that duplicating scene and using one solely for sound and another for image would work?

> In #69444#1362516, @Giladfrenkel wrote: > Hi, is this bug going to be fixed anytime soon? is there any workaround for the meantime? Anytime soon I can't tell. I am not sure if there exists infrastructure to handle this issue. There are developers that seem to be able to implemet features in audaspace though so hopefully. For workaround, I would think that duplicating scene and using one solely for sound and another for image would work?

In #69444#1363251, @iss wrote:

In #69444#1362516, @Giladfrenkel wrote:
Hi, is this bug going to be fixed anytime soon? is there any workaround for the meantime?

Anytime soon I can't tell. I am not sure if there exists infrastructure to handle this issue. There are developers that seem to be able to implemet features in audaspace though so hopefully. For workaround, I would think that duplicating scene and using one solely for sound and another for image would work?

Unfortunately, that won't work. The bug itself is that it's not possible to do this.

@Giladfrenkel , the workaround that I was using is not great: I made my own Blender build where the check to see if the scene has sound was ignored. I personally think that would be a good enough fix (at least for now).

> In #69444#1363251, @iss wrote: >> In #69444#1362516, @Giladfrenkel wrote: >> Hi, is this bug going to be fixed anytime soon? is there any workaround for the meantime? > > Anytime soon I can't tell. I am not sure if there exists infrastructure to handle this issue. There are developers that seem to be able to implemet features in audaspace though so hopefully. For workaround, I would think that duplicating scene and using one solely for sound and another for image would work? Unfortunately, that won't work. The bug itself is that it's not possible to do this. @Giladfrenkel , the workaround that I was using is not great: I made my own Blender build where the check to see if the scene has sound was ignored. I personally think that would be a good enough fix (at least for now).
Member

In #69444#1363251, @iss wrote:
There are developers that seem to be able to implemet features in audaspace though so hopefully.

How is this an issue in audaspace? For me it sounds this issue has to do with the blender side of things? I wonder if this is one of the issues introduced with the depsgraph?

> In #69444#1363251, @iss wrote: > There are developers that seem to be able to implemet features in audaspace though so hopefully. How is this an issue in audaspace? For me it sounds this issue has to do with the blender side of things? I wonder if this is one of the issues introduced with the depsgraph?

In #69444#1363761, @neXyon wrote:

In #69444#1363251, @iss wrote:
There are developers that seem to be able to implemet features in audaspace though so hopefully.

How is this an issue in audaspace? For me it sounds this issue has to do with the blender side of things? I wonder if this is one of the issues introduced with the depsgraph?

As I said, I am not sure if there is infrastructure for proper fix, which to me is having "mixing node" that would combine sounds of scene/meta strip into one unique sound per strip instance. I did not meant to suggest that this is missing in audaspace in particular, just meant to say "I don't know this stuff very well, but saw some development, so hopefully this could be tackled".

AFAIK currently all strip/scene sounds are iterated over and added to active scene. Currently the issue is that multiple instances of scene strip share same sound data and current code have problems dealing with this. The code for this is very simple, see SEQ_eval_sequences and seq_update_seq_cb. There are other issues that have roots in depsgraph design, but this one seems to be just lack of hierarchy that would reflect actual layout of strips/timeline.

That said, if such mixing is possible with existing API, I could try to implement that, but I will need bit of handholding probably first to point out how to structure data on audaspace side and on blender side I should be able to set this up.

> In #69444#1363761, @neXyon wrote: >> In #69444#1363251, @iss wrote: >> There are developers that seem to be able to implemet features in audaspace though so hopefully. > > How is this an issue in audaspace? For me it sounds this issue has to do with the blender side of things? I wonder if this is one of the issues introduced with the depsgraph? As I said, I am not sure if there is infrastructure for proper fix, which to me is having "mixing node" that would combine sounds of scene/meta strip into one unique sound per strip instance. I did not meant to suggest that this is missing in audaspace in particular, just meant to say "I don't know this stuff very well, but saw some development, so hopefully this could be tackled". AFAIK currently all strip/scene sounds are iterated over and added to active scene. Currently the issue is that multiple instances of scene strip share same sound data and current code have problems dealing with this. The code for this is very simple, see `SEQ_eval_sequences` and `seq_update_seq_cb`. There are other issues that have roots in depsgraph design, but this one seems to be just lack of hierarchy that would reflect actual layout of strips/timeline. That said, if such mixing is possible with existing API, I could try to implement that, but I will need bit of handholding probably first to point out how to structure data on audaspace side and on blender side I should be able to set this up.
Member

Well, theoretically you only have to call BKE_sound_add_scene_sound[_defaults] when the sound of a scene should be played and call BKE_sound_remove_scene_sound when you want to remove that sound again using the handle you got as return value from the first call. So all you should have to do is to make sure that for a scene strip with input Camera this is not called at all or removed if it is changed and vice versa for the input Sequencer.

Well, theoretically you only have to call `BKE_sound_add_scene_sound[_defaults]` when the sound of a scene should be played and call `BKE_sound_remove_scene_sound` when you want to remove that sound again using the handle you got as return value from the first call. So all you should have to do is to make sure that for a scene strip with input `Camera` this is not called at all or removed if it is changed and vice versa for the input `Sequencer`.
Member

I just investigated a bit and it seems like this bug was introduced by @Sergey in 89946834a1 with an improper fix for the issue of a Camera strip playing audio. I assume he never tested having two strips, one with Camera and one with Sequence. @Sergey can you fix this please?

I just investigated a bit and it seems like this bug was introduced by @Sergey in 89946834a1 with an improper fix for the issue of a `Camera` strip playing audio. I assume he never tested having two strips, one with `Camera` and one with `Sequence`. @Sergey can you fix this please?

The dependency graph is following the design within which there is a separation between data and its state. Basically, data is the .blend file and state is the result of the dependency graph evaluation. This enforces all areas adjacent to the dependency graph and scene evaluation to support such separation. This is something what might not be fully done yet due to various reasons.

I can not (for practical reasons) take ownership of code that does not follow the updated design of state evaluation. This is something that module/subproject developers are expected to contribute to.

The dependency graph is following the design within which there is a separation between data and its state. Basically, data is the .blend file and state is the result of the dependency graph evaluation. This enforces all areas adjacent to the dependency graph and scene evaluation to support such separation. This is something what might not be fully done yet due to various reasons. I can not (for practical reasons) take ownership of code that does not follow the updated design of state evaluation. This is something that module/subproject developers are expected to contribute to.
Philipp Oeser removed the
Interest
VFX & Video
label 2023-02-10 09:32:05 +01:00
Contributor

Encountered this issue again in #110217.

This issue should maybe be re-titled since it does not require linking scenes from different files. It also happens with two scenes in the same file.

Also not mentioned here is related terminal output:

Failed to add relation "Sequence Scene Audio -> Sequencer"
Could not find op_from: ComponentKey(SCSound, AUDIO)
Encountered this issue again in #110217. This issue should maybe be re-titled since it does not require linking scenes from different files. It also happens with two scenes in the same file. Also not mentioned here is related terminal output: ``` Failed to add relation "Sequence Scene Audio -> Sequencer" Could not find op_from: ComponentKey(SCSound, AUDIO) ```
Sign in to join this conversation.
No Label
Interest
Alembic
Interest
Animation & Rigging
Interest
Asset Browser
Interest
Asset Browser Project Overview
Interest
Audio
Interest
Automated Testing
Interest
Blender Asset Bundle
Interest
BlendFile
Interest
Collada
Interest
Compatibility
Interest
Compositing
Interest
Core
Interest
Cycles
Interest
Dependency Graph
Interest
Development Management
Interest
EEVEE
Interest
EEVEE & Viewport
Interest
Freestyle
Interest
Geometry Nodes
Interest
Grease Pencil
Interest
ID Management
Interest
Images & Movies
Interest
Import Export
Interest
Line Art
Interest
Masking
Interest
Metal
Interest
Modeling
Interest
Modifiers
Interest
Motion Tracking
Interest
Nodes & Physics
Interest
OpenGL
Interest
Overlay
Interest
Overrides
Interest
Performance
Interest
Physics
Interest
Pipeline, Assets & IO
Interest
Platforms, Builds & Tests
Interest
Python API
Interest
Render & Cycles
Interest
Render Pipeline
Interest
Sculpt, Paint & Texture
Interest
Text Editor
Interest
Translations
Interest
Triaging
Interest
Undo
Interest
USD
Interest
User Interface
Interest
UV Editing
Interest
VFX & Video
Interest
Video Sequencer
Interest
Virtual Reality
Interest
Vulkan
Interest
Wayland
Interest
Workbench
Interest: X11
Legacy
Blender 2.8 Project
Legacy
Milestone 1: Basic, Local Asset Browser
Legacy
OpenGL Error
Meta
Good First Issue
Meta
Papercut
Meta
Retrospective
Meta
Security
Module
Animation & Rigging
Module
Core
Module
Development Management
Module
EEVEE & Viewport
Module
Grease Pencil
Module
Modeling
Module
Nodes & Physics
Module
Pipeline, Assets & IO
Module
Platforms, Builds & Tests
Module
Python API
Module
Render & Cycles
Module
Sculpt, Paint & Texture
Module
Triaging
Module
User Interface
Module
VFX & Video
Platform
FreeBSD
Platform
Linux
Platform
macOS
Platform
Windows
Priority
High
Priority
Low
Priority
Normal
Priority
Unbreak Now!
Status
Archived
Status
Confirmed
Status
Duplicate
Status
Needs Info from Developers
Status
Needs Information from User
Status
Needs Triage
Status
Resolved
Type
Bug
Type
Design
Type
Known Issue
Type
Patch
Type
Report
Type
To Do
No Milestone
No project
No Assignees
9 Participants
Notifications
Due Date
The due date is invalid or out of range. Please use the format 'yyyy-mm-dd'.

No due date set.

Dependencies

No dependencies set.

Reference: blender/blender#69444
No description provided.