From e9e4b4bcbb69c30b1b1ec2ad673b4bfa012c1ff9 Mon Sep 17 00:00:00 2001 From: Jamie Hardt Date: Thu, 8 Oct 2020 21:31:32 -0700 Subject: [PATCH 01/14] Made quick fixes of these to get tests working --- .idea/wavinfo.iml | 6 +++-- requirements.txt | 3 +++ setup.py | 2 +- wavinfo/dolby_parser.py | 54 +++++++++++++------------------------ wavinfo/wave_axml_reader.py | 9 +++++++ wavinfo/wave_ixml_reader.py | 1 - 6 files changed, 35 insertions(+), 40 deletions(-) create mode 100644 requirements.txt create mode 100644 wavinfo/wave_axml_reader.py diff --git a/.idea/wavinfo.iml b/.idea/wavinfo.iml index 930f09b..0e4e9fa 100644 --- a/.idea/wavinfo.iml +++ b/.idea/wavinfo.iml @@ -1,8 +1,10 @@ - - + + + + \ No newline at end of file diff --git a/requirements.txt b/requirements.txt new file mode 100644 index 0000000..9af7d93 --- /dev/null +++ b/requirements.txt @@ -0,0 +1,3 @@ +lxml~=4.5.2 +setuptools~=49.6.0 +ear~=2.0.0 \ No newline at end of file diff --git a/setup.py b/setup.py index 4913c23..467f049 100644 --- a/setup.py +++ b/setup.py @@ -31,7 +31,7 @@ setup(name='wavinfo', "Programming Language :: Python :: 3.7", "Programming Language :: Python :: 3.8"], keywords='waveform metadata audio ebu smpte avi library film tv editing editorial', - install_requires=['lxml'], + install_requires=['lxml', 'ear'], entry_points={ 'console_scripts': [ 'wavinfo = wavinfo.__main__:main' diff --git a/wavinfo/dolby_parser.py b/wavinfo/dolby_parser.py index f70abeb..220c0ed 100644 --- a/wavinfo/dolby_parser.py +++ b/wavinfo/dolby_parser.py @@ -21,12 +21,15 @@ class _DPPGenericDownMixLevel(Enum): MUTE = 0b111 -class _DPPGenericInUseIndicator(Enum): +class DPPDolbySurroundEncodingMode(Enum): RESERVED = 0b11 IN_USE = 0b10 NOT_IN_USE = 0b01 NOT_INDICATED = 0b00 +# DPPLoRoDownMixCenterLevel +# DPPLtRtCenterMixLevel +# DPPLtRtSurroundMixLevel class DolbyMetadataSegmentTypes(IntEnum): END_MARKER = 0 @@ -88,13 +91,6 @@ class DPPSurroundDownMixLevel(Enum): RESERVED = 0b11 -class DPPDolbySurroundEncodingMode(_DPPGenericInUseIndicator): - """ - `dsurmod` § 4.3.3.3 - """ - pass - - class DPPLanguageCode(Enum): """ § 4.3.4.1 , 4.3.5 (always 0xFF) @@ -122,20 +118,6 @@ class DPPRoomTime(Enum): RESERVED = 0b11 -class DPPLoRoDownMixCenterLevel(_DPPGenericDownMixLevel): - """ - `lorocmixlev` § 4.3.7.1 - """ - pass - - -class DPPLoRoDownMixSurroundLevel(_DPPGenericDownMixLevel): - """ - `lorosurmixlev` 4.3.7.2 - """ - pass - - class DPPPreferredDownMixMode(Enum): """ § 4.3.8.1 @@ -146,20 +128,20 @@ class DPPPreferredDownMixMode(Enum): PRO_LOGIC_2 = 0b11 -class DPPLtRtCenterMixLevel(_DPPGenericDownMixLevel): - pass - - -class DPPLtRtSurroundMixLevel(_DPPGenericDownMixLevel): - pass - - -class DPPSurroundEXMode(_DPPGenericInUseIndicator): - pass - - -class DPPHeadphoneMode(_DPPGenericInUseIndicator): - pass +# class DPPLtRtCenterMixLevel(_DPPGenericDownMixLevel): +# pass +# +# +# class DPPLtRtSurroundMixLevel(_DPPGenericDownMixLevel): +# pass +# +# +# class DPPSurroundEXMode(_DPPGenericInUseIndicator): +# pass +# +# +# class DPPHeadphoneMode(_DPPGenericInUseIndicator): +# pass class DPPADConverterType(Enum): diff --git a/wavinfo/wave_axml_reader.py b/wavinfo/wave_axml_reader.py new file mode 100644 index 0000000..eb07289 --- /dev/null +++ b/wavinfo/wave_axml_reader.py @@ -0,0 +1,9 @@ +from lxml import etree as ET +from collections import namedtuple + +from ear.fileio.bw64 import Bw64Reader + + + + + diff --git a/wavinfo/wave_ixml_reader.py b/wavinfo/wave_ixml_reader.py index d086d50..042a17d 100644 --- a/wavinfo/wave_ixml_reader.py +++ b/wavinfo/wave_ixml_reader.py @@ -1,4 +1,3 @@ -# import xml.etree.ElementTree as ET from lxml import etree as ET import io from collections import namedtuple From 0788613ea336f91d0c4aba507d75486f363cab73 Mon Sep 17 00:00:00 2001 From: Jamie Hardt Date: Thu, 8 Oct 2020 21:37:01 -0700 Subject: [PATCH 02/14] Update setup.py --- setup.py | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/setup.py b/setup.py index 467f049..ccf7595 100644 --- a/setup.py +++ b/setup.py @@ -26,7 +26,7 @@ setup(name='wavinfo', 'License :: OSI Approved :: MIT License', 'Topic :: Multimedia', 'Topic :: Multimedia :: Sound/Audio', - "Programming Language :: Python :: 3.5", +# "Programming Language :: Python :: 3.5", "Programming Language :: Python :: 3.6", "Programming Language :: Python :: 3.7", "Programming Language :: Python :: 3.8"], From cfc1a451bc0a5e864bcfb124e84ea014f549d5bd Mon Sep 17 00:00:00 2001 From: Jamie Hardt Date: Thu, 8 Oct 2020 21:37:50 -0700 Subject: [PATCH 03/14] Update .travis.yml --- .travis.yml | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/.travis.yml b/.travis.yml index fd3334a..e23fe2a 100644 --- a/.travis.yml +++ b/.travis.yml @@ -2,7 +2,7 @@ dist: xenial language: python python: # - "2.7" - - "3.5" +# - "3.5" - "3.6" - "3.7" - "3.8" From 1b25b8214dbd8ec397045835ea824147c82976e7 Mon Sep 17 00:00:00 2001 From: Jamie Hardt Date: Mon, 19 Oct 2020 21:25:44 -0700 Subject: [PATCH 04/14] Update .travis.yml Added 3.9 --- .travis.yml | 1 + 1 file changed, 1 insertion(+) diff --git a/.travis.yml b/.travis.yml index e23fe2a..1207669 100644 --- a/.travis.yml +++ b/.travis.yml @@ -6,6 +6,7 @@ python: - "3.6" - "3.7" - "3.8" + - "3.9" script: - "gunzip tests/test_files/rf64/*.gz" - "python setup.py test" From 06835ffe11215b01e6189ffd7edfd813137d4879 Mon Sep 17 00:00:00 2001 From: Jamie Hardt Date: Mon, 19 Oct 2020 21:26:22 -0700 Subject: [PATCH 05/14] Update setup.py Added 3.9 --- setup.py | 3 ++- 1 file changed, 2 insertions(+), 1 deletion(-) diff --git a/setup.py b/setup.py index ccf7595..d8e3987 100644 --- a/setup.py +++ b/setup.py @@ -29,7 +29,8 @@ setup(name='wavinfo', # "Programming Language :: Python :: 3.5", "Programming Language :: Python :: 3.6", "Programming Language :: Python :: 3.7", - "Programming Language :: Python :: 3.8"], + "Programming Language :: Python :: 3.8", + "Programming Language :: Python :: 3.9"], keywords='waveform metadata audio ebu smpte avi library film tv editing editorial', install_requires=['lxml', 'ear'], entry_points={ From 5a1a12e21eef43425b0b0a6261ac2aeed1df840d Mon Sep 17 00:00:00 2001 From: Jamie Hardt Date: Mon, 19 Oct 2020 21:28:58 -0700 Subject: [PATCH 06/14] Update __init__.py Version 1.6.1 --- wavinfo/__init__.py | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/wavinfo/__init__.py b/wavinfo/__init__.py index 571a434..5179741 100644 --- a/wavinfo/__init__.py +++ b/wavinfo/__init__.py @@ -7,6 +7,6 @@ Go to the documentation for wavinfo.WavInfoReader for more information. from .wave_reader import WavInfoReader from .riff_parser import WavInfoEOFError -__version__ = '1.6' +__version__ = '1.6.1' __author__ = 'Jamie Hardt ' __license__ = "MIT" From 84a76f9c749338f232420935702ec94012a16682 Mon Sep 17 00:00:00 2001 From: Jamie Hardt Date: Mon, 19 Oct 2020 21:29:40 -0700 Subject: [PATCH 07/14] Update __init__.py Version 1.6.2 --- wavinfo/__init__.py | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/wavinfo/__init__.py b/wavinfo/__init__.py index 5179741..44f7ace 100644 --- a/wavinfo/__init__.py +++ b/wavinfo/__init__.py @@ -7,6 +7,6 @@ Go to the documentation for wavinfo.WavInfoReader for more information. from .wave_reader import WavInfoReader from .riff_parser import WavInfoEOFError -__version__ = '1.6.1' +__version__ = '1.6.2' __author__ = 'Jamie Hardt ' __license__ = "MIT" From b8cb585d5022f0c1dc3e4554332609b7b01a915b Mon Sep 17 00:00:00 2001 From: Jamie Hardt Date: Wed, 9 Dec 2020 19:47:23 -0800 Subject: [PATCH 08/14] idea target stuff --- .idea/misc.xml | 2 +- .../shelved.patch | 103 ++++++++++++++++++ ..._10_8_20__9_25_PM__Default_Changelist_.xml | 4 + 3 files changed, 108 insertions(+), 1 deletion(-) create mode 100644 .idea/shelf/Uncommitted_changes_before_Update_at_10_8_20,_9_25_PM_[Default_Changelist]/shelved.patch create mode 100644 .idea/shelf/Uncommitted_changes_before_Update_at_10_8_20__9_25_PM__Default_Changelist_.xml diff --git a/.idea/misc.xml b/.idea/misc.xml index 7b33659..d1e22ec 100644 --- a/.idea/misc.xml +++ b/.idea/misc.xml @@ -1,4 +1,4 @@ - + \ No newline at end of file diff --git a/.idea/shelf/Uncommitted_changes_before_Update_at_10_8_20,_9_25_PM_[Default_Changelist]/shelved.patch b/.idea/shelf/Uncommitted_changes_before_Update_at_10_8_20,_9_25_PM_[Default_Changelist]/shelved.patch new file mode 100644 index 0000000..833b53a --- /dev/null +++ b/.idea/shelf/Uncommitted_changes_before_Update_at_10_8_20,_9_25_PM_[Default_Changelist]/shelved.patch @@ -0,0 +1,103 @@ +Index: wavinfo/wave_ixml_reader.py +IDEA additional info: +Subsystem: com.intellij.openapi.diff.impl.patch.BaseRevisionTextPatchEP +<+># import xml.etree.ElementTree as ET\nfrom lxml import etree as ET\nimport io\nfrom collections import namedtuple\n\n\nIXMLTrack = namedtuple('IXMLTrack', ['channel_index', 'interleave_index', 'name', 'function'])\n\n\nclass WavIXMLFormat:\n \"\"\"\n iXML recorder metadata.\n \"\"\"\n def __init__(self, xml):\n \"\"\"\n Parse iXML.\n :param xml: A bytes-like object containing the iXML payload.\n \"\"\"\n self.source = xml\n xml_bytes = io.BytesIO(xml)\n parser = ET.XMLParser(recover=True)\n self.parsed = ET.parse(xml_bytes, parser=parser)\n\n def _get_text_value(self, xpath):\n e = self.parsed.find(\"./\" + xpath)\n if e is not None:\n return e.text\n\n @property\n def raw_xml(self):\n \"\"\"\n The root entity of the iXML document.\n \"\"\"\n return self.parsed\n\n @property\n def track_list(self):\n \"\"\"\n A description of each track.\n :return: An Iterator\n \"\"\"\n for track in self.parsed.find(\"./TRACK_LIST\").iter():\n if track.tag == 'TRACK':\n yield IXMLTrack(channel_index=track.xpath('string(CHANNEL_INDEX/text())'),\n interleave_index=track.xpath('string(INTERLEAVE_INDEX/text())'),\n name=track.xpath('string(NAME/text())'),\n function=track.xpath('string(FUNCTION/text())'))\n\n @property\n def project(self):\n \"\"\"\n The project/film name entered for the recording.\n \"\"\"\n return self._get_text_value(\"PROJECT\")\n\n @property\n def scene(self):\n \"\"\"\n Scene/slate.\n \"\"\"\n return self._get_text_value(\"SCENE\")\n\n @property\n def take(self):\n \"\"\"\n Take number.\n \"\"\"\n return self._get_text_value(\"TAKE\")\n\n @property\n def tape(self):\n \"\"\"\n Tape name.\n \"\"\"\n return self._get_text_value(\"TAPE\")\n\n @property\n def family_uid(self):\n \"\"\"\n The globally-unique ID for this file family. This may be in the format\n of a GUID, or an EBU Rec 9 source identifier, or some other dumb number.\n \"\"\"\n return self._get_text_value(\"FILE_SET/FAMILY_UID\")\n\n @property\n def family_name(self):\n \"\"\"\n The name of this file's file family.\n \"\"\"\n return self._get_text_value(\"FILE_SET/FAMILY_NAME\")\n +Subsystem: com.intellij.openapi.diff.impl.patch.CharsetEP +<+>UTF-8 +=================================================================== +--- wavinfo/wave_ixml_reader.py (revision 4576d65da6f00e00fcd6651a890776175ed1ed76) ++++ wavinfo/wave_ixml_reader.py (date 1598075713197) +@@ -1,4 +1,3 @@ +-# import xml.etree.ElementTree as ET + from lxml import etree as ET + import io + from collections import namedtuple +Index: setup.py +IDEA additional info: +Subsystem: com.intellij.openapi.diff.impl.patch.BaseRevisionTextPatchEP +<+>from setuptools import setup\nfrom wavinfo import __author__, __license__, __version__\n\nwith open(\"README.md\", \"r\") as fh:\n long_description = fh.read()\n\nsetup(name='wavinfo',\n version=__version__,\n author=__author__,\n author_email='jamiehardt@me.com',\n description='Probe WAVE Files for iXML, Broadcast-WAVE and other metadata.',\n long_description_content_type=\"text/markdown\",\n long_description=long_description,\n license=__license__,\n url='https://github.com/iluvcapra/wavinfo',\n project_urls={\n 'Source':\n 'https://github.com/iluvcapra/wavinfo',\n 'Documentation':\n 'https://wavinfo.readthedocs.io/',\n 'Issues':\n 'https://github.com/iluvcapra/wavinfo/issues',\n },\n packages=['wavinfo'],\n classifiers=['Development Status :: 5 - Production/Stable',\n 'License :: OSI Approved :: MIT License',\n 'Topic :: Multimedia',\n 'Topic :: Multimedia :: Sound/Audio',\n \"Programming Language :: Python :: 3.5\",\n \"Programming Language :: Python :: 3.6\",\n \"Programming Language :: Python :: 3.7\",\n \"Programming Language :: Python :: 3.8\"],\n keywords='waveform metadata audio ebu smpte avi library film tv editing editorial',\n install_requires=['lxml'],\n entry_points={\n 'console_scripts': [\n 'wavinfo = wavinfo.__main__:main'\n ]\n }\n )\n +Subsystem: com.intellij.openapi.diff.impl.patch.CharsetEP +<+>UTF-8 +=================================================================== +--- setup.py (revision 4576d65da6f00e00fcd6651a890776175ed1ed76) ++++ setup.py (date 1598414202839) +@@ -31,7 +31,7 @@ + "Programming Language :: Python :: 3.7", + "Programming Language :: Python :: 3.8"], + keywords='waveform metadata audio ebu smpte avi library film tv editing editorial', +- install_requires=['lxml'], ++ install_requires=['lxml', 'ear'], + entry_points={ + 'console_scripts': [ + 'wavinfo = wavinfo.__main__:main' +Index: wavinfo/wave_axml_reader.py +IDEA additional info: +Subsystem: com.intellij.openapi.diff.impl.patch.CharsetEP +<+>UTF-8 +=================================================================== +--- wavinfo/wave_axml_reader.py (date 1598414561019) ++++ wavinfo/wave_axml_reader.py (date 1598414561019) +@@ -0,0 +1,12 @@ ++from lxml import etree as ET ++from collections import namedtuple ++ ++from ear.fileio.bw64 import Bw64Reader ++ ++with Bw64Reader(file) as f: ++ pass ++ ++ ++ ++ ++ +Index: .idea/wavinfo.iml +IDEA additional info: +Subsystem: com.intellij.openapi.diff.impl.patch.BaseRevisionTextPatchEP +<+>\n\n \n \n \n \n \n +Subsystem: com.intellij.openapi.diff.impl.patch.CharsetEP +<+>UTF-8 +=================================================================== +--- .idea/wavinfo.iml (revision 4576d65da6f00e00fcd6651a890776175ed1ed76) ++++ .idea/wavinfo.iml (date 1598074780168) +@@ -1,8 +1,10 @@ + + + +- +- ++ ++ ++ ++ + + + +\ No newline at end of file +Index: requirements.txt +IDEA additional info: +Subsystem: com.intellij.openapi.diff.impl.patch.CharsetEP +<+>UTF-8 +=================================================================== +--- requirements.txt (date 1598414216509) ++++ requirements.txt (date 1598414216509) +@@ -0,0 +1,3 @@ ++lxml~=4.5.2 ++setuptools~=49.6.0 ++ear~=2.0.0 +\ No newline at end of file +Index: .idea/misc.xml +IDEA additional info: +Subsystem: com.intellij.openapi.diff.impl.patch.BaseRevisionTextPatchEP +<+>\n\n \n +Subsystem: com.intellij.openapi.diff.impl.patch.CharsetEP +<+>UTF-8 +=================================================================== +--- .idea/misc.xml (revision 4576d65da6f00e00fcd6651a890776175ed1ed76) ++++ .idea/misc.xml (date 1598074780171) +@@ -1,4 +1,4 @@ + + +- ++ + +\ No newline at end of file diff --git a/.idea/shelf/Uncommitted_changes_before_Update_at_10_8_20__9_25_PM__Default_Changelist_.xml b/.idea/shelf/Uncommitted_changes_before_Update_at_10_8_20__9_25_PM__Default_Changelist_.xml new file mode 100644 index 0000000..aa7ace6 --- /dev/null +++ b/.idea/shelf/Uncommitted_changes_before_Update_at_10_8_20__9_25_PM__Default_Changelist_.xml @@ -0,0 +1,4 @@ + + \ No newline at end of file From a76f3b15186ec0ef373c57805d1017a71c32dfbb Mon Sep 17 00:00:00 2001 From: Jamie Hardt Date: Wed, 9 Dec 2020 20:16:35 -0800 Subject: [PATCH 09/14] Fixed idea interpreter again --- .idea/misc.xml | 5 +- .../shelved.patch | 103 ------------------ ..._10_8_20__9_25_PM__Default_Changelist_.xml | 4 - .idea/wavinfo.iml | 2 +- 4 files changed, 5 insertions(+), 109 deletions(-) delete mode 100644 .idea/shelf/Uncommitted_changes_before_Update_at_10_8_20,_9_25_PM_[Default_Changelist]/shelved.patch delete mode 100644 .idea/shelf/Uncommitted_changes_before_Update_at_10_8_20__9_25_PM__Default_Changelist_.xml diff --git a/.idea/misc.xml b/.idea/misc.xml index d1e22ec..ba4550d 100644 --- a/.idea/misc.xml +++ b/.idea/misc.xml @@ -1,4 +1,7 @@ - + + + \ No newline at end of file diff --git a/.idea/shelf/Uncommitted_changes_before_Update_at_10_8_20,_9_25_PM_[Default_Changelist]/shelved.patch b/.idea/shelf/Uncommitted_changes_before_Update_at_10_8_20,_9_25_PM_[Default_Changelist]/shelved.patch deleted file mode 100644 index 833b53a..0000000 --- a/.idea/shelf/Uncommitted_changes_before_Update_at_10_8_20,_9_25_PM_[Default_Changelist]/shelved.patch +++ /dev/null @@ -1,103 +0,0 @@ -Index: wavinfo/wave_ixml_reader.py -IDEA additional info: -Subsystem: com.intellij.openapi.diff.impl.patch.BaseRevisionTextPatchEP -<+># import xml.etree.ElementTree as ET\nfrom lxml import etree as ET\nimport io\nfrom collections import namedtuple\n\n\nIXMLTrack = namedtuple('IXMLTrack', ['channel_index', 'interleave_index', 'name', 'function'])\n\n\nclass WavIXMLFormat:\n \"\"\"\n iXML recorder metadata.\n \"\"\"\n def __init__(self, xml):\n \"\"\"\n Parse iXML.\n :param xml: A bytes-like object containing the iXML payload.\n \"\"\"\n self.source = xml\n xml_bytes = io.BytesIO(xml)\n parser = ET.XMLParser(recover=True)\n self.parsed = ET.parse(xml_bytes, parser=parser)\n\n def _get_text_value(self, xpath):\n e = self.parsed.find(\"./\" + xpath)\n if e is not None:\n return e.text\n\n @property\n def raw_xml(self):\n \"\"\"\n The root entity of the iXML document.\n \"\"\"\n return self.parsed\n\n @property\n def track_list(self):\n \"\"\"\n A description of each track.\n :return: An Iterator\n \"\"\"\n for track in self.parsed.find(\"./TRACK_LIST\").iter():\n if track.tag == 'TRACK':\n yield IXMLTrack(channel_index=track.xpath('string(CHANNEL_INDEX/text())'),\n interleave_index=track.xpath('string(INTERLEAVE_INDEX/text())'),\n name=track.xpath('string(NAME/text())'),\n function=track.xpath('string(FUNCTION/text())'))\n\n @property\n def project(self):\n \"\"\"\n The project/film name entered for the recording.\n \"\"\"\n return self._get_text_value(\"PROJECT\")\n\n @property\n def scene(self):\n \"\"\"\n Scene/slate.\n \"\"\"\n return self._get_text_value(\"SCENE\")\n\n @property\n def take(self):\n \"\"\"\n Take number.\n \"\"\"\n return self._get_text_value(\"TAKE\")\n\n @property\n def tape(self):\n \"\"\"\n Tape name.\n \"\"\"\n return self._get_text_value(\"TAPE\")\n\n @property\n def family_uid(self):\n \"\"\"\n The globally-unique ID for this file family. This may be in the format\n of a GUID, or an EBU Rec 9 source identifier, or some other dumb number.\n \"\"\"\n return self._get_text_value(\"FILE_SET/FAMILY_UID\")\n\n @property\n def family_name(self):\n \"\"\"\n The name of this file's file family.\n \"\"\"\n return self._get_text_value(\"FILE_SET/FAMILY_NAME\")\n -Subsystem: com.intellij.openapi.diff.impl.patch.CharsetEP -<+>UTF-8 -=================================================================== ---- wavinfo/wave_ixml_reader.py (revision 4576d65da6f00e00fcd6651a890776175ed1ed76) -+++ wavinfo/wave_ixml_reader.py (date 1598075713197) -@@ -1,4 +1,3 @@ --# import xml.etree.ElementTree as ET - from lxml import etree as ET - import io - from collections import namedtuple -Index: setup.py -IDEA additional info: -Subsystem: com.intellij.openapi.diff.impl.patch.BaseRevisionTextPatchEP -<+>from setuptools import setup\nfrom wavinfo import __author__, __license__, __version__\n\nwith open(\"README.md\", \"r\") as fh:\n long_description = fh.read()\n\nsetup(name='wavinfo',\n version=__version__,\n author=__author__,\n author_email='jamiehardt@me.com',\n description='Probe WAVE Files for iXML, Broadcast-WAVE and other metadata.',\n long_description_content_type=\"text/markdown\",\n long_description=long_description,\n license=__license__,\n url='https://github.com/iluvcapra/wavinfo',\n project_urls={\n 'Source':\n 'https://github.com/iluvcapra/wavinfo',\n 'Documentation':\n 'https://wavinfo.readthedocs.io/',\n 'Issues':\n 'https://github.com/iluvcapra/wavinfo/issues',\n },\n packages=['wavinfo'],\n classifiers=['Development Status :: 5 - Production/Stable',\n 'License :: OSI Approved :: MIT License',\n 'Topic :: Multimedia',\n 'Topic :: Multimedia :: Sound/Audio',\n \"Programming Language :: Python :: 3.5\",\n \"Programming Language :: Python :: 3.6\",\n \"Programming Language :: Python :: 3.7\",\n \"Programming Language :: Python :: 3.8\"],\n keywords='waveform metadata audio ebu smpte avi library film tv editing editorial',\n install_requires=['lxml'],\n entry_points={\n 'console_scripts': [\n 'wavinfo = wavinfo.__main__:main'\n ]\n }\n )\n -Subsystem: com.intellij.openapi.diff.impl.patch.CharsetEP -<+>UTF-8 -=================================================================== ---- setup.py (revision 4576d65da6f00e00fcd6651a890776175ed1ed76) -+++ setup.py (date 1598414202839) -@@ -31,7 +31,7 @@ - "Programming Language :: Python :: 3.7", - "Programming Language :: Python :: 3.8"], - keywords='waveform metadata audio ebu smpte avi library film tv editing editorial', -- install_requires=['lxml'], -+ install_requires=['lxml', 'ear'], - entry_points={ - 'console_scripts': [ - 'wavinfo = wavinfo.__main__:main' -Index: wavinfo/wave_axml_reader.py -IDEA additional info: -Subsystem: com.intellij.openapi.diff.impl.patch.CharsetEP -<+>UTF-8 -=================================================================== ---- wavinfo/wave_axml_reader.py (date 1598414561019) -+++ wavinfo/wave_axml_reader.py (date 1598414561019) -@@ -0,0 +1,12 @@ -+from lxml import etree as ET -+from collections import namedtuple -+ -+from ear.fileio.bw64 import Bw64Reader -+ -+with Bw64Reader(file) as f: -+ pass -+ -+ -+ -+ -+ -Index: .idea/wavinfo.iml -IDEA additional info: -Subsystem: com.intellij.openapi.diff.impl.patch.BaseRevisionTextPatchEP -<+>\n\n \n \n \n \n \n -Subsystem: com.intellij.openapi.diff.impl.patch.CharsetEP -<+>UTF-8 -=================================================================== ---- .idea/wavinfo.iml (revision 4576d65da6f00e00fcd6651a890776175ed1ed76) -+++ .idea/wavinfo.iml (date 1598074780168) -@@ -1,8 +1,10 @@ - - - -- -- -+ -+ -+ -+ - - - -\ No newline at end of file -Index: requirements.txt -IDEA additional info: -Subsystem: com.intellij.openapi.diff.impl.patch.CharsetEP -<+>UTF-8 -=================================================================== ---- requirements.txt (date 1598414216509) -+++ requirements.txt (date 1598414216509) -@@ -0,0 +1,3 @@ -+lxml~=4.5.2 -+setuptools~=49.6.0 -+ear~=2.0.0 -\ No newline at end of file -Index: .idea/misc.xml -IDEA additional info: -Subsystem: com.intellij.openapi.diff.impl.patch.BaseRevisionTextPatchEP -<+>\n\n \n -Subsystem: com.intellij.openapi.diff.impl.patch.CharsetEP -<+>UTF-8 -=================================================================== ---- .idea/misc.xml (revision 4576d65da6f00e00fcd6651a890776175ed1ed76) -+++ .idea/misc.xml (date 1598074780171) -@@ -1,4 +1,4 @@ - - -- -+ - -\ No newline at end of file diff --git a/.idea/shelf/Uncommitted_changes_before_Update_at_10_8_20__9_25_PM__Default_Changelist_.xml b/.idea/shelf/Uncommitted_changes_before_Update_at_10_8_20__9_25_PM__Default_Changelist_.xml deleted file mode 100644 index aa7ace6..0000000 --- a/.idea/shelf/Uncommitted_changes_before_Update_at_10_8_20__9_25_PM__Default_Changelist_.xml +++ /dev/null @@ -1,4 +0,0 @@ - - \ No newline at end of file diff --git a/.idea/wavinfo.iml b/.idea/wavinfo.iml index 0e4e9fa..23b4337 100644 --- a/.idea/wavinfo.iml +++ b/.idea/wavinfo.iml @@ -4,7 +4,7 @@ - + \ No newline at end of file From 4809bb484478cc11f9f0fecbaa3deee556da16be Mon Sep 17 00:00:00 2001 From: Jamie Hardt Date: Thu, 6 Jan 2022 11:01:28 -0800 Subject: [PATCH 10/14] Bumped lxml requirements re CVE-2021-43818 --- requirements.txt | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/requirements.txt b/requirements.txt index 9af7d93..d66dfb8 100644 --- a/requirements.txt +++ b/requirements.txt @@ -1,3 +1,3 @@ -lxml~=4.5.2 +lxml>=4.6.5 setuptools~=49.6.0 -ear~=2.0.0 \ No newline at end of file +ear~=2.0.0 From 31493f7cf437ec9ae5647c5a26760f031426bc7c Mon Sep 17 00:00:00 2001 From: Jamie Hardt Date: Thu, 6 Jan 2022 11:05:17 -0800 Subject: [PATCH 11/14] Create python-package-conda.yml --- .github/workflows/python-package-conda.yml | 34 ++++++++++++++++++++++ 1 file changed, 34 insertions(+) create mode 100644 .github/workflows/python-package-conda.yml diff --git a/.github/workflows/python-package-conda.yml b/.github/workflows/python-package-conda.yml new file mode 100644 index 0000000..9bd6d2b --- /dev/null +++ b/.github/workflows/python-package-conda.yml @@ -0,0 +1,34 @@ +name: Python Package using Conda + +on: [push] + +jobs: + build-linux: + runs-on: ubuntu-latest + strategy: + max-parallel: 5 + + steps: + - uses: actions/checkout@v2 + - name: Set up Python 3.10 + uses: actions/setup-python@v2 + with: + python-version: 3.10 + - name: Add conda to system path + run: | + # $CONDA is an environment variable pointing to the root of the miniconda directory + echo $CONDA/bin >> $GITHUB_PATH + - name: Install dependencies + run: | + conda env update --file environment.yml --name base + - name: Lint with flake8 + run: | + conda install flake8 + # stop the build if there are Python syntax errors or undefined names + flake8 . --count --select=E9,F63,F7,F82 --show-source --statistics + # exit-zero treats all errors as warnings. The GitHub editor is 127 chars wide + flake8 . --count --exit-zero --max-complexity=10 --max-line-length=127 --statistics + - name: Test with pytest + run: | + conda install pytest + pytest From 623a8569fdb067febe0aad7f8a5e8811d059977f Mon Sep 17 00:00:00 2001 From: Jamie Hardt Date: Thu, 6 Jan 2022 11:06:31 -0800 Subject: [PATCH 12/14] Create python-package.yml --- .github/workflows/python-package.yml | 40 ++++++++++++++++++++++++++++ 1 file changed, 40 insertions(+) create mode 100644 .github/workflows/python-package.yml diff --git a/.github/workflows/python-package.yml b/.github/workflows/python-package.yml new file mode 100644 index 0000000..fa14147 --- /dev/null +++ b/.github/workflows/python-package.yml @@ -0,0 +1,40 @@ +# This workflow will install Python dependencies, run tests and lint with a variety of Python versions +# For more information see: https://help.github.com/actions/language-and-framework-guides/using-python-with-github-actions + +name: Python package + +on: + push: + branches: [ master ] + pull_request: + branches: [ master ] + +jobs: + build: + + runs-on: ubuntu-latest + strategy: + fail-fast: false + matrix: + python-version: ["3.8", "3.9", "3.10"] + + steps: + - uses: actions/checkout@v2 + - name: Set up Python ${{ matrix.python-version }} + uses: actions/setup-python@v2 + with: + python-version: ${{ matrix.python-version }} + - name: Install dependencies + run: | + python -m pip install --upgrade pip + python -m pip install flake8 pytest + if [ -f requirements.txt ]; then pip install -r requirements.txt; fi + - name: Lint with flake8 + run: | + # stop the build if there are Python syntax errors or undefined names + flake8 . --count --select=E9,F63,F7,F82 --show-source --statistics + # exit-zero treats all errors as warnings. The GitHub editor is 127 chars wide + flake8 . --count --exit-zero --max-complexity=10 --max-line-length=127 --statistics + - name: Test with pytest + run: | + pytest From 261572cff31ae1d5486b7369d7d6784fc21a0efe Mon Sep 17 00:00:00 2001 From: Jamie Hardt Date: Thu, 6 Jan 2022 11:06:47 -0800 Subject: [PATCH 13/14] Delete python-package-conda.yml --- .github/workflows/python-package-conda.yml | 34 ---------------------- 1 file changed, 34 deletions(-) delete mode 100644 .github/workflows/python-package-conda.yml diff --git a/.github/workflows/python-package-conda.yml b/.github/workflows/python-package-conda.yml deleted file mode 100644 index 9bd6d2b..0000000 --- a/.github/workflows/python-package-conda.yml +++ /dev/null @@ -1,34 +0,0 @@ -name: Python Package using Conda - -on: [push] - -jobs: - build-linux: - runs-on: ubuntu-latest - strategy: - max-parallel: 5 - - steps: - - uses: actions/checkout@v2 - - name: Set up Python 3.10 - uses: actions/setup-python@v2 - with: - python-version: 3.10 - - name: Add conda to system path - run: | - # $CONDA is an environment variable pointing to the root of the miniconda directory - echo $CONDA/bin >> $GITHUB_PATH - - name: Install dependencies - run: | - conda env update --file environment.yml --name base - - name: Lint with flake8 - run: | - conda install flake8 - # stop the build if there are Python syntax errors or undefined names - flake8 . --count --select=E9,F63,F7,F82 --show-source --statistics - # exit-zero treats all errors as warnings. The GitHub editor is 127 chars wide - flake8 . --count --exit-zero --max-complexity=10 --max-line-length=127 --statistics - - name: Test with pytest - run: | - conda install pytest - pytest From f65665a06c0221a3a9d1648cce22279fba497f16 Mon Sep 17 00:00:00 2001 From: Jamie Hardt Date: Thu, 6 Jan 2022 11:08:48 -0800 Subject: [PATCH 14/14] Delete python-package.yml --- .github/workflows/python-package.yml | 40 ---------------------------- 1 file changed, 40 deletions(-) delete mode 100644 .github/workflows/python-package.yml diff --git a/.github/workflows/python-package.yml b/.github/workflows/python-package.yml deleted file mode 100644 index fa14147..0000000 --- a/.github/workflows/python-package.yml +++ /dev/null @@ -1,40 +0,0 @@ -# This workflow will install Python dependencies, run tests and lint with a variety of Python versions -# For more information see: https://help.github.com/actions/language-and-framework-guides/using-python-with-github-actions - -name: Python package - -on: - push: - branches: [ master ] - pull_request: - branches: [ master ] - -jobs: - build: - - runs-on: ubuntu-latest - strategy: - fail-fast: false - matrix: - python-version: ["3.8", "3.9", "3.10"] - - steps: - - uses: actions/checkout@v2 - - name: Set up Python ${{ matrix.python-version }} - uses: actions/setup-python@v2 - with: - python-version: ${{ matrix.python-version }} - - name: Install dependencies - run: | - python -m pip install --upgrade pip - python -m pip install flake8 pytest - if [ -f requirements.txt ]; then pip install -r requirements.txt; fi - - name: Lint with flake8 - run: | - # stop the build if there are Python syntax errors or undefined names - flake8 . --count --select=E9,F63,F7,F82 --show-source --statistics - # exit-zero treats all errors as warnings. The GitHub editor is 127 chars wide - flake8 . --count --exit-zero --max-complexity=10 --max-line-length=127 --statistics - - name: Test with pytest - run: | - pytest