git.libav.org Git - libav.git/rss log

Libav master git repository

http://git.libav.org/?p=libav.git;a=summary

Les articles publiés sur le site

  • dashenc : copy language and role metadata from streams assigned to sets

    29 janvier 2017, par Peter Große
    dashenc: copy language and role metadata from streams assigned to sets
    
    Signed-off-by: Peter Große <pegro@friiks.de>
    Signed-off-by: Martin Storsjö <martin@martin.st>
    
    • [DBH] libavformat/dashenc.c
  • dashenc : default to one AdaptationSet per stream

    29 janvier 2017, par Peter Große
    dashenc: default to one AdaptationSet per stream
    
    Previously all mapped streams of a media type (video, audio) where assigned
    to a single AdaptationSet. Using the DASH live profile it is mandatory, that
    the segments of all representations are aligned, which is currently not
    enforced. This leads to problems when using video streams with different
    key frame intervals. So to play safe, default to one AdaptationSet per stream,
    unless overwritten by explicit assignment.
    
    To get the old assignment scheme, use
    
      -adaptation_sets "id=0,streams=v id=1,streams=a"
    
    Signed-off-by: Peter Große <pegro@friiks.de>
    Signed-off-by: Martin Storsjö <martin@martin.st>
    
    • [DBH] libavformat/dashenc.c
  • dashenc : allow assigning all streams of a media type to an AdaptationSet

    29 janvier 2017, par Peter Große
    dashenc: allow assigning all streams of a media type to an AdaptationSet
    
    Using the characters "v" or "a" instead of stream index numbers for assigning
    streams in the adaption_set option, all streams matching that given type will
    be added to the AdaptationSet.
    
    Signed-off-by: Peter Große <pegro@friiks.de>
    Signed-off-by: Martin Storsjö <martin@martin.st>
    
    • [DBH] libavformat/dashenc.c
  • dashenc : add support for assigning streams to AdaptationSets

    29 janvier 2017, par Peter Große
    dashenc: add support for assigning streams to AdaptationSets
    
    Also makes sure all streams are assigned to exactly one AdaptationSet.
    
    This patch is originally based partially on code by Vignesh Venkatasubramanian.
    
    Signed-off-by: Peter Große <pegro@friiks.de>
    Signed-off-by: Martin Storsjö <martin@martin.st>
    
    • [DBH] libavformat/dashenc.c
  • dashenc : separate segments based on current segment duration

    29 janvier 2017, par Peter Große
    dashenc: separate segments based on current segment duration
    
    The current implementation creates new segments comparing
    
      pkt->pts - first_pts > nb_segs * min_seg_duration
    
    This works fine, but if the keyframe interval is smaller than "min_seg_duration"
    segments shorter than the minimum segment duration are created.
    
    Example: keyint=50, min_seg_duration=3000000
     segment 1 contains keyframe 1 (duration=2s <  total_duration=3s)
                    and keyframe 2 (duration=4s >= total_duration=3s)
     segment 2 contains keyframe 3 (duration=6s >= total_duration=6s)
     segment 3 contains keyframe 4 (duration=8s <  total_duration=9s)
                    and keyframe 5 (duration=10s >= total_duration=9s)
     ...
    
    Segment 2 is only 2s long, shorter than min_seg_duration = 3s.
    
    To fix this, new segments are created based on the actual written duration.
    Otherwise the option name "min_seg_duration" is misleading.
    
    Signed-off-by: Peter Große <pegro@friiks.de>
    Signed-off-by: Martin Storsjö <martin@martin.st>
    
    • [DBH] libavformat/dashenc.c