Convert DNA/RNA sequences into sound using "oiia" phonetics. Each base maps to a sound: A=o, T/U=ii, C=a, G=e.
pip install dna2oiiaOptional extras:
pip install dna2oiia[mp3] # MP3 export (requires pydub + ffmpeg)
pip install dna2oiia[tui] # Interactive terminal UI
pip install dna2oiia[streamlit] # Streamlit web appdna2oiia -s ATCGGATTA -o my_dna # Convert sequence to WAV
dna2oiia -f example.fasta -o output # Convert FASTA file
echo "ATCGATCG" | dna2oiia --play # Pipe from stdin and play
dna2oiia -s ATCGATCG --play # Play audio directly
dna2oiia -s ATCGATCG --speed 2.0 # Double speed
dna2oiia -s ATCG --repeat 4 # Repeat 4 times
dna2oiia -s ATCGGATTA --reverse-complement # Reverse complement
dna2oiia -s ATCGATCG --visualize # Colored base-to-sound mapping
dna2oiia -s ATCGGATTA --format mp3 # MP3 output (requires pydub)Try famous sequences included in the repo:
dna2oiia -f examples/data/famous_sequences.fasta --play --visualizefrom dna2oiia import dna_to_oiia, process_fasta, reverse_complement, validate_dna_sequence
# Single sequence
dna_to_oiia({"example": "ATCGGATTA"}, "output") # Creates output.wav
# FASTA file
sequences = process_fasta("example.fasta")
dna_to_oiia(sequences, "output")
# Stream to buffer
import io
buf = io.BytesIO()
dna_to_oiia({"seq": "ATCGGATTA"}, output_buffer=buf)
# Speed, repeat, reverse complement
dna_to_oiia({"fast": "ATCGATCG"}, "out", speed=2.0, repeat=3)
rc = reverse_complement("ATCG") # "CGAT"pip install dna2oiia[tui]
dna2oiia-tui # or: dna2oiia --tuiKeyboard shortcuts: F5 Play | F6 Save WAV | F7 Reverse complement | Q Quit
Features: paste sequences or load FASTA files, live colored visualization, adjustable speed and repeat.
pip install dna2oiia[streamlit]
streamlit run st_dna2oiia.pyInspired by a conversation with IOB friends Nathan and Ibukun during a hackathon. The "oiia" sound is sourced from this YouTube video under fair use. Developed with AI assistance.
MIT License. Contributions welcome!
