Audio Fade Out sooner than expected


#1

I would like to report a bug that drove me crazy yesterday.

I was editing a 34m static image voiceover video. As soon as it was published on YouTube I realized it was fading out at 28:51 mark although I had set up 1s as fade out.

This very same settings have been used successfully 9 times before. So I tried different audio output settings trying to fix the matter - no use. My only option was to completely remove the fade out.


#2

Can you provide a screen shot with the clip you selected for the fade out, showing the filters window with the fade out selected? Show all tracks on the timeline zoomed in from start to end.
Which version of Shotcut are you using?
Shotcut 18.06.02 is the latest version.
I just posted a video showing that video fade outs work properly.
https://youtu.be/1hsORRl_DZU


#3

It’s not about video fade out, buddy…

Anyway, I’ll do better: instead of a screenshot, the XML file (real filenames removed):

<?xml version='1.0' encoding='utf-8'?>
<mlt root="C:\Program Files\Shotcut" title="Shotcut version 18.06.02" LC_NUMERIC="pt_BR" version="6.9.0" producer="main bin">
  <profile sample_aspect_num="1" progressive="1" frame_rate_num="25" display_aspect_num="16" description="HD 1080p 25 fps" colorspace="709" height="1080" sample_aspect_den="1" width="1920" frame_rate_den="1" display_aspect_den="9"/>
  <consumer top_field_first="2" profile="high" mlt_service="avformat" threads="3" f="mp4" g="600" bf="2" ab="384k " vq="21" aspect="1,77778" preset="slow" global_quality="21" channels="2" width="1280" vglobal_quality="21" vcodec="h264_nvenc" movflags="+faststart" r="30" rc="constqp" strict_gop="1" v2pass="1" target="C:/TEMP/test.mp4" progressive="1" ar="48000" rescale="hyper" real_time="-3" deinterlace_method="yadif" height="720" acodec="aac"/>
  <playlist autoclose="1" id="main bin">
    <property name="xml_retain">1</property>
  </playlist>
  <producer in="00:00:00,000" id="black" out="00:34:38,720">
    <property name="length">00:34:38,760</property>
    <property name="eof">pause</property>
    <property name="resource">D:/Source</property>
    <property name="aspect_ratio">1</property>
    <property name="mlt_service">color</property>
    <property name="set.test_audio">0</property>
  </producer>
  <playlist autoclose="1" id="background">
    <entry in="00:00:00,000" out="00:34:38,720" producer="black"/>
  </playlist>
  <producer in="00:00:00,000" title="Shotcut version 18.06.02" id="producer0" out="00:34:38,640">
    <property name="length">00:34:38,680</property>
    <property name="eof">pause</property>
    <property name="resource">D:/Source/Audio.flac</property>
    <property name="audio_index">0</property>
    <property name="video_index">-1</property>
    <property name="mute_on_pause">0</property>
    <property name="mlt_service">avformat-novalidate</property>
    <property name="seekable">1</property>
    <property name="shotcut:hash">ed3d99fe862685694fd4c1a7cc84cd5a</property>
    <property name="ignore_points">0</property>
    <property name="shotcut:caption">Audio.flac</property>
    <property name="shotcut:detail">D:/Source/Audio.flac</property>
    <property name="shotcut:skipConvert">1</property>
    <property name="global_feed">1</property>
    <property name="xml">was here</property>
    <property name="shotcut:projectAudioChannels">2</property>
    <property name="shotcut:comment"/>
    <filter id="filter0" out="00:34:38,640">
      <property name="window">75</property>
      <property name="max_gain">20dB</property>
      <property name="level">0=-60;24=0</property>
      <property name="mlt_service">volume</property>
      <property name="shotcut:filter">fadeInVolume</property>
      <property name="shotcut:animIn">25</property>
    </filter>
    <filter id="filter1" out="00:34:38,640">
      <property name="window">75</property>
      <property name="max_gain">20dB</property>
      <property name="level">51942=0;51966=-60</property>
      <property name="mlt_service">volume</property>
      <property name="shotcut:filter">fadeOutVolume</property>
      <property name="shotcut:animOut">25</property>
    </filter>
  </producer>
  <playlist autoclose="1" id="playlist0">
    <property name="shotcut:audio">1</property>
    <property name="shotcut:name">A1</property>
    <entry in="00:00:00,000" out="00:34:38,640" producer="producer0"/>
  </playlist>
  <producer in="00:00:00,000" title="Anonymous Submission" id="producer1" out="00:34:38,720">
    <property name="length">04:00:00,000</property>
    <property name="eof">pause</property>
    <property name="resource">D:/Source/Image.png</property>
    <property name="ttl">1</property>
    <property name="aspect_ratio">1</property>
    <property name="progressive">1</property>
    <property name="seekable">1</property>
    <property name="mlt_service">qimage</property>
    <property name="shotcut:hash">0cdf9f30e77a646b65eb5b5ec1eef88a</property>
    <property name="ignore_points">0</property>
    <property name="global_feed">1</property>
    <property name="xml">was here</property>
  </producer>
  <playlist autoclose="1" id="playlist1">
    <property name="shotcut:video">1</property>
    <property name="shotcut:name">V1</property>
    <entry in="00:00:00,000" out="00:34:38,720" producer="producer1"/>
  </playlist>
  <tractor in="00:00:00,000" title="Shotcut version 18.06.02" global_feed="1" id="tractor0" out="00:34:38,720">
    <property name="shotcut">1</property>
    <property name="shotcut:projectAudioChannels">2</property>
    <property name="shotcut:scaleFactor">0,0165918</property>
    <property name="shotcut:trackHeight">30</property>
    <track producer="background"/>
    <track producer="playlist0" hide="video"/>
    <track producer="playlist1"/>
    <transition id="transition0">
      <property name="a_track">0</property>
      <property name="b_track">1</property>
      <property name="mlt_service">mix</property>
      <property name="always_active">1</property>
      <property name="sum">1</property>
    </transition>
    <transition id="transition1">
      <property name="a_track">0</property>
      <property name="b_track">2</property>
      <property name="mlt_service">mix</property>
      <property name="always_active">1</property>
      <property name="sum">1</property>
    </transition>
    <transition id="transition2">
      <property name="a_track">0</property>
      <property name="b_track">2</property>
      <property name="version">0,9</property>
      <property name="mlt_service">frei0r.cairoblend</property>
      <property name="disable">1</property>
    </transition>
  </tractor>
</mlt>

#4

Alright… made two videos just for you @GrYllO ,fade in/out same concepts. :cowboy_hat_face:
Both work for me.
While previewing in Shotcut.

Exported from Shotcut.


#5

There was a bug in versions before 18.06 that if you change the duration of a clip on the Timeline and the Fade Out filter was not selected in the Filters panel, then the fade filters were not adjusted for the new duration. This was fixed in v18.06.02
Your XML shows it was saved with that version. However, if you started this project with an earlier version, then it will be affected. If you started this project with 18.06.02, then you might have a legitimate bug that we have not been able to locate yet.


#6

Yes, unfortunately I started the project already in version 18.06.02 :frowning:

Anyway, I’ll continue to edit my videos in the same way to see if the problem appears again, or if it was an isolated case.

By the way, I don’t know who to “blame” - whether you guys or nVidia updates, but I noticed an improvement in coding times! Something like 2x, 4x faster! 10% was being required of the coding capability of my GTX 1050Ti, but now 30% (so, can it be even faster? :open_mouth:) Great job!


#7

I found the problem. The project was created at 25 fps because you were probably in Settings > Video Mode = Automatic, and you added a non-video clip to start the project. Then, in Export, you changed it to 1280x720 at 30 fps. That difference in frame rate between the project and export was the cause of the problem. I will see what I can do about that. In the XML, the project is represented by <profile> and the export by <consumer>.


#8

This bug is fixed for the next version (18.07). It was a lot of work, but I think it was worth it. The goal is to not output frame counts that are dependent upon a frame rate in the XML, and it has always been like that for the clip timings. However, not for the new keyframes. I had to make changes for the keyframes to be written with clock values independent of frame rate.