1. 05 Jun, 2015 3 commits
    • Two tools used to inject TXXX frames terminate the value field with a null byte. Make sure that isn't included in the parsed representation.
      David LaPalomento committed
    • If the segment parser timestamp offset isn't at the start of the last encountered discontinuity, it was impossible to recover the associated media time. Track the media time alongside the timestamp offset so that when a stream is first loaded and the last discontinuity segment start is unavailable, it's still possible to properly translate timestamps. Also, make sure that cue points ahead of current time are cleaned out of the in-band metadata track on seeking. We previously assumed they were ordered by start time but that doesn't seem to be the case for Chrome on OS X. Use the dev version of video.js because of Google Closure compiler gobbling some part of the requiremed machinery for removing cues.
      David LaPalomento committed
    • Previously, in-band metadata cues were added whenever they were encountered during the segment parsing process. If you seeked in a stream, this would cause the same cues to be added multiple times when its containing segment was re-buffered. Now, cues that occur after current time are cleared on every seek which allows them to be re-added without duplication after they're re-parsed. Cues before the current time are retained because re-buffering would not cause them to be recreated. Adjust cue point creation to take live stream segment expiration into account.
      David LaPalomento committed
  2. 04 Jun, 2015 1 commit
    • Keep track of the accurate durations of expired segments in the playlist loader so that it's possible to accurately calculate the start and end points of the seekable ranges relative to media timeline position zero, even if we switch variant streams or seek within a live stream. Track the media timeline position of the last discontinuity to allow for PTS-based variant stream synchronization instead of the incorrect media sequence based method we're currently using. Stop rewriting timestamps in the transmuxed FLV tags for that reason as well. Add m3u8 parser support for EXT-X-DISCONTINUITY-SEQUENCE.
      David LaPalomento committed
  3. 02 Jun, 2015 1 commit
  4. 29 May, 2015 5 commits
  5. 28 May, 2015 10 commits
  6. 27 May, 2015 7 commits
  7. 22 May, 2015 6 commits
    • Closes #272.
      
      Squashed commit of the following:
      
      commit de597c3ee10075cece7036aeaacedb74f33d9ef5
      Author: David LaPalomento <dlapalomento@gmail.com>
      Date:   Fri May 22 14:02:27 2015 -0400
      
          Remove vim swap file
          Ignore them in version control in the future.
      
      commit fb189ba16330311371bb6b9cf1bb6248005e10b7
      Author: Gary Katsevman <git@gkatsev.com>
      Date:   Wed May 20 18:30:07 2015 -0400
      
          Default 'nextFrameKeyFrame' to false.
      
      commit 3788ad0607fabb2cde1a1d5eea4163ceafb5fab5
      Author: Gary Katsevman <git@gkatsev.com>
      Date:   Wed May 20 18:24:16 2015 -0400
      
          setNextFrameKeyFrame
      
      commit 6944234afd99285a448a9cf3adbcaf1eb26cfe33
      Author: Gary Katsevman <git@gkatsev.com>
      Date:   Wed May 20 18:06:26 2015 -0400
      
          Another camelcase usage
      
      commit da6e32a4d9024d859ca58bc1d4bc3fcbe1de7a33
      Author: Gary Katsevman <git@gkatsev.com>
      Date:   Wed May 20 18:05:30 2015 -0400
      
          Dont parse unused fields. Use camel case names
      
      commit fb7990b6606501a549d7448de6eec38784695896
      Author: Gary Katsevman <git@gkatsev.com>
      Date:   Wed May 20 16:28:28 2015 -0400
      
          ifs should have curly braces
      
      commit 92e40c642270e4ce4652a874073a66876312072f
      Author: Gary Katsevman <git@gkatsev.com>
      Date:   Wed May 20 15:58:18 2015 -0400
      
          Adaptation Field vars. Use Random Access Indicator
          The Random Access Indicator tells us whether something is a keyframe.
          Set the stream's frame's keyFrame property to true if the Random Access
          Indicator is set.
      
      commit 047a6d7771cd2d9c324b6da9bd76d4b6aeeadaf0
      Author: Gary Katsevman <git@gkatsev.com>
      Date:   Mon May 18 16:56:23 2015 -0400
      
          Set up the test with exact conditions
      
      commit e2f8b18656d4cdb830cd23013fe7e5fcfa599ca4
      Author: Gary Katsevman <git@gkatsev.com>
      Date:   Mon May 18 16:56:01 2015 -0400
      
          Restore stubbed out methods
      
      commit ff5f3b5fdb9dbe5e34447f8a4680c294163e0c46
      Author: Gary Katsevman <git@gkatsev.com>
      Date:   Mon May 18 16:50:22 2015 -0400
      
          prototypeify h264-stream
      
      commit 7ee359d582550474a33730547742ce3d656dad52
      Author: Gary Katsevman <git@gkatsev.com>
      Date:   Mon May 18 16:28:08 2015 -0400
      
          Initial test for metadata
      
      commit 0e3a961c7594d67280958cf21330fb347e1dda0a
      Author: Gary Katsevman <git@gkatsev.com>
      Date:   Mon May 18 16:21:55 2015 -0400
      
          Fix test properly
      
      commit 7e0de308227a4373c6abd71769ed474e59c7edeb
      Author: Gary Katsevman <git@gkatsev.com>
      Date:   Mon May 18 16:14:57 2015 -0400
      
          Move h264-extradata into separate file
      
      commit 66a676c234e6e087694611d710cad6414cbc984c
      Author: Gary Katsevman <git@gkatsev.com>
      Date:   Mon May 18 15:52:08 2015 -0400
      
          prototypeify H264ExtraData
      David LaPalomento committed
    • Closes #274.
      David LaPalomento committed
    • If mediaIndex was one position beyond the last segment because the player was waiting for a playlist update, it would be reset back to the "live" point. This test checks that the utility translation function does not change mediaIndex in that case.
      David LaPalomento committed
    • Make sure mediaupdatetimeout events don't get repeatedly triggered after frequent quality switches.
      David LaPalomento committed
  8. 21 May, 2015 2 commits
  9. 19 May, 2015 5 commits