Branch: refs/heads/master
  Home:   https://github.com/mltframework/mlt
  Commit: 1fc469fa90d2ba416b82c76300c7773061bd160c
      
https://github.com/mltframework/mlt/commit/1fc469fa90d2ba416b82c76300c7773061bd160c
  Author: Dan Dennedy <d...@dennedy.org>
  Date:   2018-05-25 (Fri, 25 May 2018)

  Changed paths:
    M src/modules/avformat/producer_avformat.c

  Log Message:
  -----------
  Fix improper sync on audio files with discard packets.

Fixes https://github.com/mltframework/shotcut/issues/571

On the sample file provided, I noticed AVPacket timestamps were
fluctuating a lot, which caused the avformat producer to discard many
decoded samples. Then, I noticed that some packets were marked with a
flag AV_PKT_FLAG_DISCARD, which is a somewhat new flag:

Flag is used to discard packets which are required to maintain valid
decoder state but are not required for output and should be dropped
after decoding.

But I noticed none of the ff tools use this flag, and I noticed that it
factors into the got_frame_ptr parameter on avcodec_decode_audio4(). A
packet with this flag yields 0 for got_frame_ptr. Thus, if that parameter
is always 0 for this packet I should consider it discarded and not
factor its PTS into the synchronization logic.



      **NOTE:** This service been marked for deprecation: 
https://developer.github.com/changes/2018-04-25-github-services-deprecation/

      Functionality will be removed from GitHub.com on January 31st, 2019.
------------------------------------------------------------------------------
Check out the vibrant tech community on one of the world's most
engaging tech sites, Slashdot.org! http://sdm.link/slashdot
_______________________________________________
Mlt-devel mailing list
Mlt-devel@lists.sourceforge.net
https://lists.sourceforge.net/lists/listinfo/mlt-devel

Reply via email to