This repository contains three scripts: two Bash scripts (begin_the_day.sh
and end_the_day.sh
) for tracking daily activities, and one Python script (mkv_tag_extractor.py
) for extracting metadata from .mkv
files.
These two Bash scripts help track your day by collecting relevant information, one at the start and one at the end.
- Creates a folder named
JPC_AV_YYYYMMDD
in the user's home directory. - Collects the user's name and thoughts about the day ahead using a graphical dialog.
- Saves the collected information in both
.json
and.txt
formats.
- Similar to
begin_the_day.sh
, but collects reflections on the work completed during the day. - Saves the collected information in
.json
and.txt
formats.
- Both scripts:
- Check for existing folders and provide feedback.
- Use
dialog
for user input andjq
for parsing JSON. - Display color-coded success/error messages.
The mkv_tag_extractor.py
script extracts metadata from .mkv
files using ffprobe
. It processes files in a given directory (and subdirectories) and saves the extracted metadata in both .json
and .txt
formats.
- Extracts metadata from
.mkv
files usingffprobe
. - Saves metadata in both JSON and TXT formats.
- Warns when output files exist and will be overwritten.
- Processes
.mkv
files in directories and subdirectories. - Outputs messages with color coding for clarity.
- colorama: Install via
pip install colorama
for terminal color output. - ffprobe: Install as part of FFmpeg:
- macOS:
brew install ffmpeg
- Linux:
sudo apt-get install ffmpeg
- Windows: Download FFmpeg from FFmpeg.org.
- macOS:
-
Clone the repository:
git clone https://github.com/yourusername/jpc-av-scripts.git cd jpc-av-scripts
-
Install required dependencies:
-
For MKV Tag Extractor:
pip install colorama
-
For Bash Scripts: Ensure
zsh
,dialog
, andjq
are installed.
-
- Begin The Day:
./begin_the_day.sh
- End The Day:
./end_the_day.sh
Run the Python script with the directory path:
python3 mkv_tag_extractor.py /path/to/your/directory
Both scripts save the collected data in:
- JSON: Structured metadata.
- TXT: Plain-text file with the same data.
- JSON: Contains metadata like
ENCODER
,DESCRIPTION
, etc. - TXT: Structured plain-text metadata, including tags such as
ENCODER
,AUDIO_STREAM_HASH
,DESCRIPTION
, etc.
JSON Output:
{
"file": "JPC_AV_01563.mkv",
"tags": {
"ENCODER": "Lavf59.27.100",
"DESCRIPTION": "Recap of Thirteenth Annual Black Achievement Awards.",
"TERMS_OF_USE": "Subject to copyright."
}
}
TXT Output:
file: JPC_AV_01563.mkv
ENCODER: Lavf59.27.100
DESCRIPTION: Recap of Thirteenth Annual Black Achievement Awards.
TERMS_OF_USE: Subject to copyright.
You can customize the scripts by editing:
- Dialog text and options for the Bash scripts.
- Output file paths and names.