1. 17 Nov, 2016 1 commit
  2. 30 Aug, 2016 2 commits
    • Simon Hailes's avatar
      avformat/crypto: add seeking support on read · a13a81a0
      Simon Hailes authored
      cyrpto allows reading of data which has been aes-128-cbc encrypted given a key and an iv. But it did not handle filetypes which require seeking... e.g. it failed on an encrypted .mp4 file.
      
      example:
      take 25.mp4 created with:
      ffmpeg -f lavfi -i sine=frequency=1000:beep_factor=2:r=48000:duration=720.0 -f lavfi -i testsrc=duration=720.0:rate=25 -vcodec libx264 -cmp 22 -timecode 10:00:00:00 -r 25 -y out\25.mp4
      
      encrypt with:
      openssl enc -aes-128-cbc -K 12345678901234567890123456789012 -iv 12345678901234567890123456789012 -in 25.mp4 -out 25.enc
      then to transcode in ffmpeg:
      ffmpeg -key 12345678901234567890123456789012 -iv 12345678901234567890123456789012 -i crypto:25.enc -vcodec mpeg4 -r 25 -y 25dec.mp4
      
      prior to this modification, the transcode would fail.
      
      Note also:  crypto previously maked both reads and writes as streamed, which caused the whole file
      to be read before the transcode started.  Now, for read only, if the underlying layer is not marked as streamed,
      then crypto is not.  This should enable efficient reading of encrypted containers which require seeking.
      Signed-off-by: 's avatarMichael Niedermayer <michael@niedermayer.cc>
      a13a81a0
    • Simon Hailes's avatar
      libavformat/crypto - encourage reads of 4096 bytes · a2fcacc8
      Simon Hailes authored
      the current implementation reads in chunks of 149x16=2384 bytes.
      Seems more logical for it to read in chunks of 4096
      Signed-off-by: 's avatarMichael Niedermayer <michael@niedermayer.cc>
      a2fcacc8
  3. 24 Mar, 2016 1 commit
    • Martin Storsjö's avatar
      avio: Copy URLContext generic options into child URLContexts · fab8156b
      Martin Storsjö authored
      Since all URLContexts have the same AVOptions, such AVOptions
      will be applied on the outermost context only and removed from the
      dict, while they probably make sense on all contexts.
      
      This makes sure that rw_timeout gets propagated to the innermost
      URLContext (to make sure it gets passed to the tcp protocol, when
      opening a http connection for instance).
      
      Alternatively, such matching options would be kept in the dict
      and only removed after the ffurl_connect call.
      Signed-off-by: 's avatarMartin Storsjö <martin@martin.st>
      fab8156b
  4. 04 Mar, 2016 1 commit
  5. 22 Feb, 2016 2 commits
    • Anton Khirnov's avatar
      urlprotocol: receive a list of protocols from the caller · 8c0ceafb
      Anton Khirnov authored
      This way, the decisions about which protocols are available for use in
      any given situations can be delegated to the caller.
      8c0ceafb
    • Anton Khirnov's avatar
      lavf: reorganize URLProtocols · 2758cded
      Anton Khirnov authored
      Instead of a linked list constructed at av_register_all(), store them
      in a constant array of pointers.
      
      Since no registration is necessary now, this removes some global state
      from lavf. This will also allow the urlprotocol layer caller to limit
      the available protocols in a simple and flexible way in the following
      commits.
      2758cded
  6. 02 Feb, 2016 1 commit
  7. 14 Feb, 2015 1 commit
  8. 09 Dec, 2014 1 commit
  9. 02 Dec, 2014 2 commits
  10. 30 Aug, 2013 1 commit
  11. 11 Oct, 2012 1 commit
  12. 09 Oct, 2012 1 commit
  13. 31 Aug, 2012 1 commit
  14. 13 Nov, 2011 2 commits
  15. 10 Nov, 2011 2 commits
  16. 12 Oct, 2011 1 commit
  17. 09 Jun, 2011 1 commit
  18. 08 Jun, 2011 3 commits
  19. 17 May, 2011 1 commit
  20. 29 Apr, 2011 1 commit
  21. 24 Apr, 2011 1 commit
  22. 22 Apr, 2011 1 commit