Research
Recent Trends in Malicious Packages Targeting Discord
The Socket research team breaks down a sampling of malicious packages that download and execute files, among other suspicious behaviors, targeting the popular Discord platform.
Command-line interface (CLI) to modify TextGrids and their corresponding audio files.
Readme
Command-line interface (CLI) to modify TextGrids and their corresponding audio files.
merge
: merge grids togetherplot-durations
: plot durationsmark-durations
: mark intervals with specific durations with a textcreate-dictionary
: create pronunciation dictionary out of a word and a pronunciation tierplot-stats
: plot statisticsexport-vocabulary
: export vocabulary out of multiple grid filesexport-marks
: exports marks of a tier to a fileexport-durations
: exports durations of grids to a fileexport-paths
: exports grid paths to a fileexport-audio-paths
: exports audio paths to a fileimport-paths
: import grids from paths written in a fileimport-audio-paths
: import audio files from paths written in a filecreate
: convert text files to grid filessync
: synchronize grid minTime and maxTime according to the corresponding audio filesplit
: split a grid file on intervals into multiple grid files (incl. audio files)print-stats
: print statisticsapply-mapping
: apply mapping table to markstranscribe
: transcribe words of tiers using a pronunciation dictionaryremove
: remove tiersrename
: rename tierclone
: clone tiermap
: map tier to other tiersmove
: move tier to another positionexport
: export content of tier to a txt fileimport
: import content of tier from a txt filejoin
: join adjacent intervalsjoin-between-marks
: join intervals between marksjoin-by-boundary
: join intervals by boundaries of a tierjoin-by-duration
: join intervals by a durationjoin-marks
: join intervals containing specific marksjoin-symbols
: join intervals containing specific symbolsjoin-template
: join intervals according to a templatesplit
: split intervalsfix-boundaries
: align boundaries of tiers according to a reference tierremove
: remove intervalsplot-durations
: plot durationsreplace-text
: replace text using regex patternpip install textgrid-tools --user
usage: textgrid-tools-cli [-h] [-v] {grids,grid,tiers,tier,intervals} ...
This program provides methods to modify TextGrids (.TextGrid) and their corresponding audio files (.wav).
positional arguments:
{grids,grid,tiers,tier,intervals} description
grids execute commands targeted at multiple grids at once
grid execute commands targeted at single grids
tiers execute commands targeted at multiple tiers at once
tier execute commands targeted at single tiers
intervals execute commands targeted at intervals of tiers
optional arguments:
-h, --help show this help message and exit
-v, --version show program's version number and exit
numpy>=1.18.5
scipy>=1.8.0
tqdm>=4.63.0
TextGrid>=1.5
pandas>=1.4.0
ordered_set>=4.1.0
matplotlib>=3.5.0
pronunciation_dictionary>=0.0.5
If you notice an error, please don't hesitate to open an issue.
# update
sudo apt update
# install Python 3.8, 3.9, 3.10 & 3.11 for ensuring that tests can be run
sudo apt install python3-pip \
python3.8 python3.8-dev python3.8-distutils python3.8-venv \
python3.9 python3.9-dev python3.9-distutils python3.9-venv \
python3.10 python3.10-dev python3.10-distutils python3.10-venv \
python3.11 python3.11-dev python3.11-distutils python3.11-venv
# install pipenv for creation of virtual environments
python3.8 -m pip install pipenv --user
# check out repo
git clone https://github.com/stefantaubert/textgrid-ipa.git
cd textgrid-ipa
# create virtual environment
python3.8 -m pipenv install --dev
# first install the tool like in "Development setup"
# then, navigate into the directory of the repo (if not already done)
cd textgrid-ipa
# activate environment
python3.8 -m pipenv shell
# run tests
tox
Final lines of test result output:
py38: commands succeeded
py39: commands succeeded
py310: commands succeeded
py311: commands succeeded
congratulations :)
If recordings/audio files are not in .wav
format they need to be converted, e.g.:
sudo apt install ffmpeg -y
# e.g., mp3 to wav conversion
ffmpeg -i *.mp3 -acodec pcm_s16le -ar 22050 *.wav
MIT License
Funded by the Deutsche Forschungsgemeinschaft (DFG, German Research Foundation) – Project-ID 416228727 – CRC 1410
If you want to cite this repo, you can use this BibTeX-entry generated by GitHub (see About => Cite this repository).
intervals remove
copying on different in/out-locationsimport-paths
and import-audio-paths
option --symlink
is now creating symbolic links instead of hard linksimport-paths
and import-audio-paths
grids plot-stats
grids export-durations
grids import-paths
and grids import-audio-paths
--ignore
to ignore custom marks in grids export-vocabulary
--mode
to intervals replace-text
to replace text on different interval positionstiers mark-silence
because grids mark-durations
should be usedtiers remove-symbols
because intervals replace-text
should be usedintervals join-between-pauses
because join-between-marks
should be usedintervals remove
: added parameter mode
to better choose which intervals should be removedtiers transcribe
: added option assign-mark-to-missing
to replace missing transcriptions with a custom markmark-durations
empty couldn't be assigned--min-count
to mark-durations
--dry
option to most methodsinclude-empty
on vocabulary export1
__init__.py
filesFAQs
Command-line interface (CLI) to modify TextGrids and their corresponding audio files.
We found that textgrid-tools demonstrated a healthy version release cadence and project activity because the last version was released less than a year ago. It has 1 open source maintainer collaborating on the project.
Did you know?
Socket for GitHub automatically highlights issues in each pull request and monitors the health of all your open source dependencies. Discover the contents of your packages and block harmful activity before you install or update your dependencies.
Research
The Socket research team breaks down a sampling of malicious packages that download and execute files, among other suspicious behaviors, targeting the popular Discord platform.
Security News
Socket CEO Feross Aboukhadijeh joins a16z partners to discuss how modern, sophisticated supply chain attacks require AI-driven defenses and explore the challenges and solutions in leveraging AI for threat detection early in the development life cycle.
Security News
NIST's new AI Risk Management Framework aims to enhance the security and reliability of generative AI systems and address the unique challenges of malicious AI exploits.