pysdif3


Namepysdif3 JSON
Version 1.0.1 PyPI version JSON
download
home_pagehttps://github.com/gesellkammer/pysdif
SummaryWrapper for the SDIF library for audio analysis
upload_time2024-07-16 06:43:49
maintainerNone
docs_urlNone
authorEduardo Moguillansky
requires_python>=3.9
licenseNone
keywords
VCS
bugtrack_url
requirements No requirements were recorded.
Travis-CI No Travis.
coveralls test coverage No coveralls.
            |sh-month| |sh-wheel|

.. |sh-month| image:: https://static.pepy.tech/badge/pysdif3/month
.. |sh-wheel| image:: https://img.shields.io/badge/binary%20wheel-linux%20win64%20macos--x86--64%20macos--arm64-green

SDIF for Python
===============

-  Author: Eduardo Moguillansky
-  Contact: ``eduardo.moguillansky@gmail.com``

This is a python wrapper to IRCAM’s sdif library
(http://sourceforge.net/projects/sdif/files/sdif/) to read and write
SDIF files. It consists of a core written in Cython and some other
utilities written in Python. The SDIF library is included in the package
and built together with the python wrapper. 

**NB**: This software is released under the GPL v3 license.

--------------

Install
-------

.. code:: bash


   pip install pysdif3



--------------

Build from source
-----------------

.. code:: bash


   git clone https://github.com/gesellkammer/pysdif3
   cd pysdif3

   python3 setup.py install

--------------

Introduction
------------

Sdif files are used to store time-based analysis. A Sdif file consists
of time-tagged frames, each frame consisting of one or more matrices.

Read a Sdif file, read only selected matrices
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~

.. code:: python

       
   from pysdif import *
   sdif = SdifFile("path.sdif")
   # get metadata
   print(sdif.get_NVTs())
   for frame in sdif:
       print(frame.time, frame.signature)
       for matrix in frame:
           if matrix.signature == b'1MAT':
               print(matrix.get_data())

Write a Sdif file modifying a previous one
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~

.. code:: python


   from pysdif import *
   infile = SdifFile("source.sdif")
   outfile = SdifFile("out.sdif", "w").clone_definitions(infile)
   for inframe in infile:
       if inframe.signature != b'1TRC':
           continue
       with outfile.new_frame(inframe.signature, inframe.time) as outframe:
           for matrix in inframe:
               # 1TRC has columns index, freq, amp, phase
               data = matrix.get_data(copy=True)
               # modify frequency
               data[:,1] *= 2
               outframe.add_matrix(matrix.signature, data)
   outfile.close()

Write a SDIF file from scratch
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~

.. code:: python


   from pysdif import *
   import numpy as np

   sdif = SdifFile("rbep.sdif", "w")

   # Add some metadata. This is optional
   sdif.add_NVT({'creator': 'pysdif3'})

   # Add any matrix definitions. In this case we add only one definition
   # This is a matrix named "RBEP" with 6 columns
   # Each row in this matrix represents a breakpoint within a frame
   # Index: partial index to which a breakpoint belongs
   # Frequency: the freq. of the breakpoint
   # Amplitude: the amplitude of the breakpoint
   # Phase: the phase
   # Bandwidth: the "noisyness" of the breakpoint
   # Offset: the time offset in relation to the frame time
   sdif.add_matrix_type("RBEP", "Index, Frequency, Amplitude, Phase, Bandwidth, Offset")

   # After all matrix types are defined we define the frames. A frame is defined
   # in terms of the matrices it accepts.
   # Here we define a frame named "RBEP" which takes only matrices of type "RBEP"
   sdif.add_frame_type("RBEP", ["RBEP ReassignedBandEnhancedPartials"])

   # Now we need to add the data. Since there is just one matrix per frame
   # in this sdif we can use the shortcut sdif.new_frame_one_matrix which 
   # creates a frame and adds a matrix all at once
   # The data is just fake data for the sake of an example
   data = np.array([
       [1, 440, 0.1, 0, 0, 0],
       [2, 1000, 0.2, 0, 0, 0], 
   ], dtype=float)
   sdif.new_frame_one_matrix(frame_sig="RBEP", time=0.5, matrix_sig="RBEP", data=data)

   # A second frame
   data = np.array([
       [1, 442, 0.1, 0, 0, 0],
       [2, 1100, 0.1, 0, 0, 0]
   ], dtype=float)
   sdif.new_frame_one_matrix(frame_sig="RBEP", time=0.6, matrix_sig="RBEP", data=data)

   sdif.close()

--------------

Documentation
-------------

https://pysdif3.readthedocs.io/

            

Raw data

            {
    "_id": null,
    "home_page": "https://github.com/gesellkammer/pysdif",
    "name": "pysdif3",
    "maintainer": null,
    "docs_url": null,
    "requires_python": ">=3.9",
    "maintainer_email": null,
    "keywords": null,
    "author": "Eduardo Moguillansky",
    "author_email": "eduardo.moguillansy@gmail.com",
    "download_url": null,
    "platform": null,
    "description": "|sh-month| |sh-wheel|\n\n.. |sh-month| image:: https://static.pepy.tech/badge/pysdif3/month\n.. |sh-wheel| image:: https://img.shields.io/badge/binary%20wheel-linux%20win64%20macos--x86--64%20macos--arm64-green\n\nSDIF for Python\n===============\n\n-  Author: Eduardo Moguillansky\n-  Contact: ``eduardo.moguillansky@gmail.com``\n\nThis is a python wrapper to IRCAM\u2019s sdif library\n(http://sourceforge.net/projects/sdif/files/sdif/) to read and write\nSDIF files. It consists of a core written in Cython and some other\nutilities written in Python. The SDIF library is included in the package\nand built together with the python wrapper. \n\n**NB**: This software is released under the GPL v3 license.\n\n--------------\n\nInstall\n-------\n\n.. code:: bash\n\n\n   pip install pysdif3\n\n\n\n--------------\n\nBuild from source\n-----------------\n\n.. code:: bash\n\n\n   git clone https://github.com/gesellkammer/pysdif3\n   cd pysdif3\n\n   python3 setup.py install\n\n--------------\n\nIntroduction\n------------\n\nSdif files are used to store time-based analysis. A Sdif file consists\nof time-tagged frames, each frame consisting of one or more matrices.\n\nRead a Sdif file, read only selected matrices\n~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~\n\n.. code:: python\n\n       \n   from pysdif import *\n   sdif = SdifFile(\"path.sdif\")\n   # get metadata\n   print(sdif.get_NVTs())\n   for frame in sdif:\n       print(frame.time, frame.signature)\n       for matrix in frame:\n           if matrix.signature == b'1MAT':\n               print(matrix.get_data())\n\nWrite a Sdif file modifying a previous one\n~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~\n\n.. code:: python\n\n\n   from pysdif import *\n   infile = SdifFile(\"source.sdif\")\n   outfile = SdifFile(\"out.sdif\", \"w\").clone_definitions(infile)\n   for inframe in infile:\n       if inframe.signature != b'1TRC':\n           continue\n       with outfile.new_frame(inframe.signature, inframe.time) as outframe:\n           for matrix in inframe:\n               # 1TRC has columns index, freq, amp, phase\n               data = matrix.get_data(copy=True)\n               # modify frequency\n               data[:,1] *= 2\n               outframe.add_matrix(matrix.signature, data)\n   outfile.close()\n\nWrite a SDIF file from scratch\n~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~\n\n.. code:: python\n\n\n   from pysdif import *\n   import numpy as np\n\n   sdif = SdifFile(\"rbep.sdif\", \"w\")\n\n   # Add some metadata. This is optional\n   sdif.add_NVT({'creator': 'pysdif3'})\n\n   # Add any matrix definitions. In this case we add only one definition\n   # This is a matrix named \"RBEP\" with 6 columns\n   # Each row in this matrix represents a breakpoint within a frame\n   # Index: partial index to which a breakpoint belongs\n   # Frequency: the freq. of the breakpoint\n   # Amplitude: the amplitude of the breakpoint\n   # Phase: the phase\n   # Bandwidth: the \"noisyness\" of the breakpoint\n   # Offset: the time offset in relation to the frame time\n   sdif.add_matrix_type(\"RBEP\", \"Index, Frequency, Amplitude, Phase, Bandwidth, Offset\")\n\n   # After all matrix types are defined we define the frames. A frame is defined\n   # in terms of the matrices it accepts.\n   # Here we define a frame named \"RBEP\" which takes only matrices of type \"RBEP\"\n   sdif.add_frame_type(\"RBEP\", [\"RBEP ReassignedBandEnhancedPartials\"])\n\n   # Now we need to add the data. Since there is just one matrix per frame\n   # in this sdif we can use the shortcut sdif.new_frame_one_matrix which \n   # creates a frame and adds a matrix all at once\n   # The data is just fake data for the sake of an example\n   data = np.array([\n       [1, 440, 0.1, 0, 0, 0],\n       [2, 1000, 0.2, 0, 0, 0], \n   ], dtype=float)\n   sdif.new_frame_one_matrix(frame_sig=\"RBEP\", time=0.5, matrix_sig=\"RBEP\", data=data)\n\n   # A second frame\n   data = np.array([\n       [1, 442, 0.1, 0, 0, 0],\n       [2, 1100, 0.1, 0, 0, 0]\n   ], dtype=float)\n   sdif.new_frame_one_matrix(frame_sig=\"RBEP\", time=0.6, matrix_sig=\"RBEP\", data=data)\n\n   sdif.close()\n\n--------------\n\nDocumentation\n-------------\n\nhttps://pysdif3.readthedocs.io/\n",
    "bugtrack_url": null,
    "license": null,
    "summary": "Wrapper for the SDIF library for audio analysis",
    "version": "1.0.1",
    "project_urls": {
        "Homepage": "https://github.com/gesellkammer/pysdif"
    },
    "split_keywords": [],
    "urls": [
        {
            "comment_text": "",
            "digests": {
                "blake2b_256": "2c3096057d886fbbc835c5fba6b55028759393d238d7201bac4019f0ab14b60f",
                "md5": "a6baabd419af4eb08983b970d28884f3",
                "sha256": "454e8aa0d073dc8dd45ae0926cb48afb6b3e591fd0ebdf3693d4229a4d73e39a"
            },
            "downloads": -1,
            "filename": "pysdif3-1.0.1-cp310-cp310-macosx_10_9_x86_64.whl",
            "has_sig": false,
            "md5_digest": "a6baabd419af4eb08983b970d28884f3",
            "packagetype": "bdist_wheel",
            "python_version": "cp310",
            "requires_python": ">=3.9",
            "size": 537333,
            "upload_time": "2024-07-16T06:43:49",
            "upload_time_iso_8601": "2024-07-16T06:43:49.614546Z",
            "url": "https://files.pythonhosted.org/packages/2c/30/96057d886fbbc835c5fba6b55028759393d238d7201bac4019f0ab14b60f/pysdif3-1.0.1-cp310-cp310-macosx_10_9_x86_64.whl",
            "yanked": false,
            "yanked_reason": null
        },
        {
            "comment_text": "",
            "digests": {
                "blake2b_256": "6f084d4aea16debd3590fb43e5d22e16086689c2a2a322ac251269f77c01e175",
                "md5": "f36e3cae878030512215188c85d54f54",
                "sha256": "a8f040158b0682b557deb06e02aae99e6096d7b0cbbc333860ccaa4d4f9d69fe"
            },
            "downloads": -1,
            "filename": "pysdif3-1.0.1-cp310-cp310-macosx_11_0_arm64.whl",
            "has_sig": false,
            "md5_digest": "f36e3cae878030512215188c85d54f54",
            "packagetype": "bdist_wheel",
            "python_version": "cp310",
            "requires_python": ">=3.9",
            "size": 520450,
            "upload_time": "2024-07-16T06:44:18",
            "upload_time_iso_8601": "2024-07-16T06:44:18.021414Z",
            "url": "https://files.pythonhosted.org/packages/6f/08/4d4aea16debd3590fb43e5d22e16086689c2a2a322ac251269f77c01e175/pysdif3-1.0.1-cp310-cp310-macosx_11_0_arm64.whl",
            "yanked": false,
            "yanked_reason": null
        },
        {
            "comment_text": "",
            "digests": {
                "blake2b_256": "6dd54582a508b9eec0000f4c1410815590b1a07882eb8fef4d216fee581da154",
                "md5": "dc4b5d5d1f971f1d38f414f001571cf9",
                "sha256": "36b178101bef9f5a405f9e070b03a1a3f6bfe55dee02f68b4cf585c193ea638e"
            },
            "downloads": -1,
            "filename": "pysdif3-1.0.1-cp310-cp310-manylinux_2_17_x86_64.manylinux2014_x86_64.whl",
            "has_sig": false,
            "md5_digest": "dc4b5d5d1f971f1d38f414f001571cf9",
            "packagetype": "bdist_wheel",
            "python_version": "cp310",
            "requires_python": ">=3.9",
            "size": 1597341,
            "upload_time": "2024-07-16T06:43:34",
            "upload_time_iso_8601": "2024-07-16T06:43:34.221500Z",
            "url": "https://files.pythonhosted.org/packages/6d/d5/4582a508b9eec0000f4c1410815590b1a07882eb8fef4d216fee581da154/pysdif3-1.0.1-cp310-cp310-manylinux_2_17_x86_64.manylinux2014_x86_64.whl",
            "yanked": false,
            "yanked_reason": null
        },
        {
            "comment_text": "",
            "digests": {
                "blake2b_256": "dbc34ecc9be8867a034bf64b4500e4b7a1c23ecdf145eb085340cb14c4b9c3c0",
                "md5": "52cf94fffaad46d732e5e1ed3d5588be",
                "sha256": "93c55c2ebfd58a0e60402118f4ef822bc88bcf18eb66f70a526a57fcdb2260ff"
            },
            "downloads": -1,
            "filename": "pysdif3-1.0.1-cp310-cp310-win32.whl",
            "has_sig": false,
            "md5_digest": "52cf94fffaad46d732e5e1ed3d5588be",
            "packagetype": "bdist_wheel",
            "python_version": "cp310",
            "requires_python": ">=3.9",
            "size": 446906,
            "upload_time": "2024-07-16T06:47:04",
            "upload_time_iso_8601": "2024-07-16T06:47:04.496433Z",
            "url": "https://files.pythonhosted.org/packages/db/c3/4ecc9be8867a034bf64b4500e4b7a1c23ecdf145eb085340cb14c4b9c3c0/pysdif3-1.0.1-cp310-cp310-win32.whl",
            "yanked": false,
            "yanked_reason": null
        },
        {
            "comment_text": "",
            "digests": {
                "blake2b_256": "05a69173983e3e8e71a2d71ba2ca44dc76ac87c3356736c3537dc2cd12852e9a",
                "md5": "c920e1d64af52c5d08566de55304564e",
                "sha256": "a32eabfe64b9933f7ad6dc39ed258edd5d577550a11b230c0db6cc50f629d7fa"
            },
            "downloads": -1,
            "filename": "pysdif3-1.0.1-cp310-cp310-win_amd64.whl",
            "has_sig": false,
            "md5_digest": "c920e1d64af52c5d08566de55304564e",
            "packagetype": "bdist_wheel",
            "python_version": "cp310",
            "requires_python": ">=3.9",
            "size": 476938,
            "upload_time": "2024-07-16T06:47:06",
            "upload_time_iso_8601": "2024-07-16T06:47:06.533233Z",
            "url": "https://files.pythonhosted.org/packages/05/a6/9173983e3e8e71a2d71ba2ca44dc76ac87c3356736c3537dc2cd12852e9a/pysdif3-1.0.1-cp310-cp310-win_amd64.whl",
            "yanked": false,
            "yanked_reason": null
        },
        {
            "comment_text": "",
            "digests": {
                "blake2b_256": "6bede85e844df5ce7a9239776a0dd63663e1faaeb659e14f2114219816a41120",
                "md5": "a17b7f10fc9dcbd26bcc41cc34a1a962",
                "sha256": "085bc799abf62a29c0f5dafdb536a341a35e901560b0ff0941c5368bfaf1fc9f"
            },
            "downloads": -1,
            "filename": "pysdif3-1.0.1-cp311-cp311-macosx_10_9_x86_64.whl",
            "has_sig": false,
            "md5_digest": "a17b7f10fc9dcbd26bcc41cc34a1a962",
            "packagetype": "bdist_wheel",
            "python_version": "cp311",
            "requires_python": ">=3.9",
            "size": 539285,
            "upload_time": "2024-07-16T06:44:23",
            "upload_time_iso_8601": "2024-07-16T06:44:23.224988Z",
            "url": "https://files.pythonhosted.org/packages/6b/ed/e85e844df5ce7a9239776a0dd63663e1faaeb659e14f2114219816a41120/pysdif3-1.0.1-cp311-cp311-macosx_10_9_x86_64.whl",
            "yanked": false,
            "yanked_reason": null
        },
        {
            "comment_text": "",
            "digests": {
                "blake2b_256": "a4fde58cd4d4dbfa753f754477b3adb312fa2b0cf2c3acad6e5c60b8e7eb043a",
                "md5": "ba359c409d44b534b5431b1cfafd7c0e",
                "sha256": "1e3841e6f2cc6a7dd440be51a382fa764972d254d5c23716e0d978d0d2c78b3f"
            },
            "downloads": -1,
            "filename": "pysdif3-1.0.1-cp311-cp311-macosx_11_0_arm64.whl",
            "has_sig": false,
            "md5_digest": "ba359c409d44b534b5431b1cfafd7c0e",
            "packagetype": "bdist_wheel",
            "python_version": "cp311",
            "requires_python": ">=3.9",
            "size": 522049,
            "upload_time": "2024-07-16T06:44:27",
            "upload_time_iso_8601": "2024-07-16T06:44:27.569669Z",
            "url": "https://files.pythonhosted.org/packages/a4/fd/e58cd4d4dbfa753f754477b3adb312fa2b0cf2c3acad6e5c60b8e7eb043a/pysdif3-1.0.1-cp311-cp311-macosx_11_0_arm64.whl",
            "yanked": false,
            "yanked_reason": null
        },
        {
            "comment_text": "",
            "digests": {
                "blake2b_256": "10419ea2c36ea4dca08a8c72025b83c88355fbc5bc9969b9b7e75037d520ac57",
                "md5": "2ed05e82e0da7cf322eef491a19e8b24",
                "sha256": "55cfb05cea3db37a2d51b64fea9fa9fa69585822363c7d9ad9d1714600d6494d"
            },
            "downloads": -1,
            "filename": "pysdif3-1.0.1-cp311-cp311-manylinux_2_17_x86_64.manylinux2014_x86_64.whl",
            "has_sig": false,
            "md5_digest": "2ed05e82e0da7cf322eef491a19e8b24",
            "packagetype": "bdist_wheel",
            "python_version": "cp311",
            "requires_python": ">=3.9",
            "size": 1669384,
            "upload_time": "2024-07-16T06:44:18",
            "upload_time_iso_8601": "2024-07-16T06:44:18.099088Z",
            "url": "https://files.pythonhosted.org/packages/10/41/9ea2c36ea4dca08a8c72025b83c88355fbc5bc9969b9b7e75037d520ac57/pysdif3-1.0.1-cp311-cp311-manylinux_2_17_x86_64.manylinux2014_x86_64.whl",
            "yanked": false,
            "yanked_reason": null
        },
        {
            "comment_text": "",
            "digests": {
                "blake2b_256": "6b26a5a058a6c10c70e8928a0b2833fb574d89308996c89a336b724f593f6c2e",
                "md5": "0416c6461d79f4ecf3bc91e531a75665",
                "sha256": "e1843fcb2116e07b5a73dd6d949624d700e25c82fc88b5d73c1d08464c687b6f"
            },
            "downloads": -1,
            "filename": "pysdif3-1.0.1-cp311-cp311-win32.whl",
            "has_sig": false,
            "md5_digest": "0416c6461d79f4ecf3bc91e531a75665",
            "packagetype": "bdist_wheel",
            "python_version": "cp311",
            "requires_python": ">=3.9",
            "size": 446858,
            "upload_time": "2024-07-16T06:47:08",
            "upload_time_iso_8601": "2024-07-16T06:47:08.305429Z",
            "url": "https://files.pythonhosted.org/packages/6b/26/a5a058a6c10c70e8928a0b2833fb574d89308996c89a336b724f593f6c2e/pysdif3-1.0.1-cp311-cp311-win32.whl",
            "yanked": false,
            "yanked_reason": null
        },
        {
            "comment_text": "",
            "digests": {
                "blake2b_256": "1fca4da9bdd185523e89ca21012cd6c74dde57af3c4022b33a5b0f1e0be08eb7",
                "md5": "fb4e833f43ed65a618022c68194f78de",
                "sha256": "ad7cb34a89693059fce3820052722cd5c7acecbf2ac4a5db59b9edf441866769"
            },
            "downloads": -1,
            "filename": "pysdif3-1.0.1-cp311-cp311-win_amd64.whl",
            "has_sig": false,
            "md5_digest": "fb4e833f43ed65a618022c68194f78de",
            "packagetype": "bdist_wheel",
            "python_version": "cp311",
            "requires_python": ">=3.9",
            "size": 476864,
            "upload_time": "2024-07-16T06:47:09",
            "upload_time_iso_8601": "2024-07-16T06:47:09.965713Z",
            "url": "https://files.pythonhosted.org/packages/1f/ca/4da9bdd185523e89ca21012cd6c74dde57af3c4022b33a5b0f1e0be08eb7/pysdif3-1.0.1-cp311-cp311-win_amd64.whl",
            "yanked": false,
            "yanked_reason": null
        },
        {
            "comment_text": "",
            "digests": {
                "blake2b_256": "91b83197be00a3c9535f3369ab544682b99e7ef3213a1ae79c4449033d92f666",
                "md5": "242640544bf4530cdec65988a1c7fd97",
                "sha256": "16971aeac279c58c5f9f83e7c0b8ca1fc7dac7f526cbfd1a61136fb83ce66f75"
            },
            "downloads": -1,
            "filename": "pysdif3-1.0.1-cp312-cp312-macosx_10_9_x86_64.whl",
            "has_sig": false,
            "md5_digest": "242640544bf4530cdec65988a1c7fd97",
            "packagetype": "bdist_wheel",
            "python_version": "cp312",
            "requires_python": ">=3.9",
            "size": 538178,
            "upload_time": "2024-07-16T06:44:32",
            "upload_time_iso_8601": "2024-07-16T06:44:32.057098Z",
            "url": "https://files.pythonhosted.org/packages/91/b8/3197be00a3c9535f3369ab544682b99e7ef3213a1ae79c4449033d92f666/pysdif3-1.0.1-cp312-cp312-macosx_10_9_x86_64.whl",
            "yanked": false,
            "yanked_reason": null
        },
        {
            "comment_text": "",
            "digests": {
                "blake2b_256": "51dc27896bf04c59286c9392502e79af562527dd696c171f35ef60238d64da89",
                "md5": "5aed50a3e9a5bf218a83ab91b0ee160b",
                "sha256": "56b36a3de18fdd04b7e7c165fb13035bebe5d486f2149a01490594502384257e"
            },
            "downloads": -1,
            "filename": "pysdif3-1.0.1-cp312-cp312-macosx_11_0_arm64.whl",
            "has_sig": false,
            "md5_digest": "5aed50a3e9a5bf218a83ab91b0ee160b",
            "packagetype": "bdist_wheel",
            "python_version": "cp312",
            "requires_python": ">=3.9",
            "size": 521691,
            "upload_time": "2024-07-16T06:44:37",
            "upload_time_iso_8601": "2024-07-16T06:44:37.966401Z",
            "url": "https://files.pythonhosted.org/packages/51/dc/27896bf04c59286c9392502e79af562527dd696c171f35ef60238d64da89/pysdif3-1.0.1-cp312-cp312-macosx_11_0_arm64.whl",
            "yanked": false,
            "yanked_reason": null
        },
        {
            "comment_text": "",
            "digests": {
                "blake2b_256": "bb90f1977b8331c3ddcb84ed6acaf031771e9941ab39c2c7e93881ad57976411",
                "md5": "ad750fd7bbadd079e2ba01ccbd958f04",
                "sha256": "4e02d161f8a9711b5e516afd38c3bfda536c64f6232dd4ad7bda206809f24c85"
            },
            "downloads": -1,
            "filename": "pysdif3-1.0.1-cp312-cp312-manylinux_2_17_x86_64.manylinux2014_x86_64.whl",
            "has_sig": false,
            "md5_digest": "ad750fd7bbadd079e2ba01ccbd958f04",
            "packagetype": "bdist_wheel",
            "python_version": "cp312",
            "requires_python": ">=3.9",
            "size": 1634730,
            "upload_time": "2024-07-16T06:44:21",
            "upload_time_iso_8601": "2024-07-16T06:44:21.145848Z",
            "url": "https://files.pythonhosted.org/packages/bb/90/f1977b8331c3ddcb84ed6acaf031771e9941ab39c2c7e93881ad57976411/pysdif3-1.0.1-cp312-cp312-manylinux_2_17_x86_64.manylinux2014_x86_64.whl",
            "yanked": false,
            "yanked_reason": null
        },
        {
            "comment_text": "",
            "digests": {
                "blake2b_256": "5e0b5566e434b9f554179733b0fdfe34c317661e6dd3b4e4aeeef492a6d36fab",
                "md5": "64f5edaccc31fd129137c970831b5cbd",
                "sha256": "3d55a1d3aa3f15999c04c25c66b2fbebce87e145483cffcd2e58a3b3bc2e9465"
            },
            "downloads": -1,
            "filename": "pysdif3-1.0.1-cp312-cp312-win32.whl",
            "has_sig": false,
            "md5_digest": "64f5edaccc31fd129137c970831b5cbd",
            "packagetype": "bdist_wheel",
            "python_version": "cp312",
            "requires_python": ">=3.9",
            "size": 443707,
            "upload_time": "2024-07-16T06:47:12",
            "upload_time_iso_8601": "2024-07-16T06:47:12.138107Z",
            "url": "https://files.pythonhosted.org/packages/5e/0b/5566e434b9f554179733b0fdfe34c317661e6dd3b4e4aeeef492a6d36fab/pysdif3-1.0.1-cp312-cp312-win32.whl",
            "yanked": false,
            "yanked_reason": null
        },
        {
            "comment_text": "",
            "digests": {
                "blake2b_256": "2fea012e7200446fc235eabb13039f9310894fd616dc9a9e6a8d5f918a2f6c5f",
                "md5": "cf2f9b75251a0996dbfd87bc870c0eb5",
                "sha256": "cab83773a696ea3165f888d3c4f89e40d94e167c867d39608b22f5568410ad34"
            },
            "downloads": -1,
            "filename": "pysdif3-1.0.1-cp312-cp312-win_amd64.whl",
            "has_sig": false,
            "md5_digest": "cf2f9b75251a0996dbfd87bc870c0eb5",
            "packagetype": "bdist_wheel",
            "python_version": "cp312",
            "requires_python": ">=3.9",
            "size": 472783,
            "upload_time": "2024-07-16T06:47:13",
            "upload_time_iso_8601": "2024-07-16T06:47:13.560019Z",
            "url": "https://files.pythonhosted.org/packages/2f/ea/012e7200446fc235eabb13039f9310894fd616dc9a9e6a8d5f918a2f6c5f/pysdif3-1.0.1-cp312-cp312-win_amd64.whl",
            "yanked": false,
            "yanked_reason": null
        },
        {
            "comment_text": "",
            "digests": {
                "blake2b_256": "e517f761dce216bf6d9bc657d49afa5f3a728594d33b42b808830a969c1367a6",
                "md5": "275d75a74e533e3c1812e4468e35ce08",
                "sha256": "563a0d4b3dd6e4f0ae6d3be98a1248b73616e0ee35c726e4b8de6215e194a369"
            },
            "downloads": -1,
            "filename": "pysdif3-1.0.1-cp39-cp39-macosx_10_9_x86_64.whl",
            "has_sig": false,
            "md5_digest": "275d75a74e533e3c1812e4468e35ce08",
            "packagetype": "bdist_wheel",
            "python_version": "cp39",
            "requires_python": ">=3.9",
            "size": 270695,
            "upload_time": "2024-07-16T06:44:40",
            "upload_time_iso_8601": "2024-07-16T06:44:40.622817Z",
            "url": "https://files.pythonhosted.org/packages/e5/17/f761dce216bf6d9bc657d49afa5f3a728594d33b42b808830a969c1367a6/pysdif3-1.0.1-cp39-cp39-macosx_10_9_x86_64.whl",
            "yanked": false,
            "yanked_reason": null
        },
        {
            "comment_text": "",
            "digests": {
                "blake2b_256": "831f972518aef8fef3ccdba7ee022d8621d0412d6287bd7986d82fa7a1892627",
                "md5": "6071f220f87507815e962512b4f1a255",
                "sha256": "6e88912570a8b1ee46aae85adf1932be4869ae98230410cdc86d250cd8ed796f"
            },
            "downloads": -1,
            "filename": "pysdif3-1.0.1-cp39-cp39-macosx_11_0_arm64.whl",
            "has_sig": false,
            "md5_digest": "6071f220f87507815e962512b4f1a255",
            "packagetype": "bdist_wheel",
            "python_version": "cp39",
            "requires_python": ">=3.9",
            "size": 520572,
            "upload_time": "2024-07-16T06:44:43",
            "upload_time_iso_8601": "2024-07-16T06:44:43.081246Z",
            "url": "https://files.pythonhosted.org/packages/83/1f/972518aef8fef3ccdba7ee022d8621d0412d6287bd7986d82fa7a1892627/pysdif3-1.0.1-cp39-cp39-macosx_11_0_arm64.whl",
            "yanked": false,
            "yanked_reason": null
        },
        {
            "comment_text": "",
            "digests": {
                "blake2b_256": "2c23fc898c6329eed9800f6b03b72d917aaa1d1d1002a873da11b531a0094154",
                "md5": "d40945e6c836680d3a4932fe4ab25842",
                "sha256": "fd4d275596dbfbdb68312999861141b66b6bedda764eebc32a0c904c5b70ebae"
            },
            "downloads": -1,
            "filename": "pysdif3-1.0.1-cp39-cp39-manylinux_2_17_x86_64.manylinux2014_x86_64.whl",
            "has_sig": false,
            "md5_digest": "d40945e6c836680d3a4932fe4ab25842",
            "packagetype": "bdist_wheel",
            "python_version": "cp39",
            "requires_python": ">=3.9",
            "size": 1330115,
            "upload_time": "2024-07-16T06:44:25",
            "upload_time_iso_8601": "2024-07-16T06:44:25.246497Z",
            "url": "https://files.pythonhosted.org/packages/2c/23/fc898c6329eed9800f6b03b72d917aaa1d1d1002a873da11b531a0094154/pysdif3-1.0.1-cp39-cp39-manylinux_2_17_x86_64.manylinux2014_x86_64.whl",
            "yanked": false,
            "yanked_reason": null
        },
        {
            "comment_text": "",
            "digests": {
                "blake2b_256": "b0884540cd1864b7d8a23b75fbc9fdef22b8b5988438612a946306ebf225a531",
                "md5": "6cfcf365c506922977f4be92c5a2623a",
                "sha256": "c44946087f06bec11edbf37ab79a2cf9fd2859d5a242a51470184b583379d7ee"
            },
            "downloads": -1,
            "filename": "pysdif3-1.0.1-cp39-cp39-win32.whl",
            "has_sig": false,
            "md5_digest": "6cfcf365c506922977f4be92c5a2623a",
            "packagetype": "bdist_wheel",
            "python_version": "cp39",
            "requires_python": ">=3.9",
            "size": 180067,
            "upload_time": "2024-07-16T06:47:15",
            "upload_time_iso_8601": "2024-07-16T06:47:15.288327Z",
            "url": "https://files.pythonhosted.org/packages/b0/88/4540cd1864b7d8a23b75fbc9fdef22b8b5988438612a946306ebf225a531/pysdif3-1.0.1-cp39-cp39-win32.whl",
            "yanked": false,
            "yanked_reason": null
        },
        {
            "comment_text": "",
            "digests": {
                "blake2b_256": "07066e6410dbda6e5ff5fde1f9a1362dd12321023268c3d78c9948bca316c116",
                "md5": "a683172f1825d50d7202293d01913744",
                "sha256": "5ec3d4f9213aef5422fc230f538d791ff877f2a1347e4eb8c3aa1b86e5988e6c"
            },
            "downloads": -1,
            "filename": "pysdif3-1.0.1-cp39-cp39-win_amd64.whl",
            "has_sig": false,
            "md5_digest": "a683172f1825d50d7202293d01913744",
            "packagetype": "bdist_wheel",
            "python_version": "cp39",
            "requires_python": ">=3.9",
            "size": 476934,
            "upload_time": "2024-07-16T06:47:16",
            "upload_time_iso_8601": "2024-07-16T06:47:16.953326Z",
            "url": "https://files.pythonhosted.org/packages/07/06/6e6410dbda6e5ff5fde1f9a1362dd12321023268c3d78c9948bca316c116/pysdif3-1.0.1-cp39-cp39-win_amd64.whl",
            "yanked": false,
            "yanked_reason": null
        }
    ],
    "upload_time": "2024-07-16 06:43:49",
    "github": true,
    "gitlab": false,
    "bitbucket": false,
    "codeberg": false,
    "github_user": "gesellkammer",
    "github_project": "pysdif",
    "travis_ci": false,
    "coveralls": false,
    "github_actions": true,
    "lcname": "pysdif3"
}
        
Elapsed time: 0.87988s