Skip to content

Tags: pyfave/timecode

Tags

1.3.1

Toggle 1.3.1's commit message
* **Fix:** Fixed 23.98, 29.97 DF, 29.97 NDF, 59.94 and 59.94 NDF roll…

…over to ``00:00:00:00`` after 24 hours.

1.3.0

Toggle 1.3.0's commit message
* **Fix:** Fixed a huge bug in 29.97 NDF and 59.97 NDF calculations i…

…ntroduced

  in v1.2.3.

* **Fix:** Fixed ``Timecode.framerate`` when it is given as ``23.98``. The
  ``framerate`` attribute will not be forced to ``24`` and it will stay
  ``23.98``.

* **Update:** ``Timecode.tc_to_frames()`` method now accepts Timecode instances
  with possibly different frame rates then the instance itself.

* **Fix:** Fixed ``Timecode.div_frames()`` method.

* **Update:** Test coverage has been increased to 100% (yay!)

1.2.5

Toggle 1.2.5's commit message
* **Fix:** Fixed ``Timecode.float`` property for drop frames.

1.2.4

Toggle 1.2.4's commit message
* **Update:** It is now possible to supply a ``Fraction`` instances f…

…or the ``framerate`` argument.

1.2.3

Toggle 1.2.3's commit message
1.2.3

=====
* **Update:** Passing ``frames=0`` will now raise a ValueError. This hopefully
  will clarify the usage of the TimeCode as a duration. If there is no
  duration, hence the ``frames=0``, meaning that the number of frames of the
  duration that this TimeCode represents is 0, which is meaningless.
* **Update:** Also added some validation for the ``frames`` property
  (oh yes it is a property now).

0.4.2

Toggle 0.4.2's commit message
* **Update:** Version bump for PyPI.

0.4.1

Toggle 0.4.1's commit message
* **Fix:** Fixed a test that was testing overloaded operators.

0.4.0

Toggle 0.4.0's commit message
0.4.0 release update

0.3.1

Toggle 0.3.1's commit message
**Update:** Updated ``Timecode.framerate`` attribute to be a property…

… which allows the user to change the framerate of the Timecode easily without breaking anything.

v0.2.0

Toggle v0.2.0's commit message
0.2.0

=====

* **New:** Rewritten the whole library from scratch.

* **New:** Most important change is the licencing. There was now license
  defined in the previous implementation. The library is now licensed under MIT
  license.

* **Update:** PyTimeCode.__init__() arguments has been changed, removed the
  unnecessary ``drop_frame``, ``iter_returns`` arguments.

  Drop frame can be interpreted from the ``framerate`` argument and
  ``iter_returns`` is unnecessary cause any iteration on the object will return
  another ``PyTimeCode`` instance.

  If you want to get a string representation use ``PyTimeCode.__str__()`` or
  ``str(PyTimeCode)`` or ``PyTimeCode.__repr__()`` or ``\`PyTimeCode\``` or
  ``'%s' % PyTimeCode`` any other thing that will convert it to a string.

  If you want to get an integer use ``PyTimeCode.frames`` or
  ``PyTimeCode.frame_count`` depending on what you want to get out of it.

  So setting the ``iter_returns`` to something and nailing the output was
  unnecessary.

* **Update:** Updated the drop frame calculation to a much better one, which
  is based on to the blog post of David Heidelberger at
  http://www.davidheidelberger.com/blog/?p=29

* **New:** Added ``PyTimeCode.__eq__()`` so it is now possible to check the
  equality of two timecode instances or a timecode and a string or a timecode
  and an integer (which will check the total frame count).

* **Update:** ``PyTimeCode.tc_to_frames()`` now needs a timecode as a string
  and will return an integer value which is the number of frames in that
  timecode.

* **Update:** ``PyTimeCode.frames_to_tc()`` now needs an integer frame count
  and returns 4 integers for hours, minutes, seconds and frames.

* **Update:** ``PyTimeCode.hrs``, ``PyTimeCode.mins``, ``PyTimeCode.secs`` and
  ``PyTimeCode.frs`` attributes are now properties. Because it was so rare to
  check the individual hours, minutes, seconds or frame values, their values
  are calculated with ``PyTimeCode.frames_to_tc()`` method. But in future they
  can still be converted to attributes and their value will be updated each
  time the ``PyTimeCode.frames`` attribute is changed (so add a ``_frames``
  attribute and make ``frames`` a property with a getter and setter, and update
  the hrs, mins, secs and frs in setter etc.).

* **Update:** Removed ``PyTimeCode.calc_drop_frame()`` method. The drop frame
  calculation is neatly done inside ``PyTimeCode.frames_to_tc()`` and
  ``PyTimeCode.tc_to_frames()`` methods.

* **Update:** Updated ``PyTimeCode.parse_timecode()`` method to a much simpler
  algorithm.

* **Update:** Removed ``PyTimeCode.__return_item__()`` method. It is not
  necessary to return an item in that way anymore.

* **Update:** Removed ``PyTimeCode.make_timecode()`` method. It was another
  unnecessary method, so it is removed. Now using simple python string
  templates for string representations.

* **New:** Added ``pytimecode.__version__`` string, and set the value to
  "0.2.0".

* **Update:** Removed ``PyTimeCode.set_int_framerate()`` method. Setting the
  framerate will automatically set the ``PyTimeCode.int_framerate`` attribute.