78 lines
1.6 KiB
V
78 lines
1.6 KiB
V
module main
|
|
|
|
import os
|
|
import metadata
|
|
|
|
fn id3(){
|
|
// mut audio := os.open("./data/АЛИСА 11000.mp3") or { panic(err) }
|
|
// mut audio := os.open("./data/Глава 2. 16 и 17 июля.mp3") or { panic(err) }
|
|
mut audio := os.open("./data/01_01.mp3") or { panic(err) }
|
|
// mut audio := os.open("./test.mp3") or { panic(err) }
|
|
|
|
defer {
|
|
audio.close()
|
|
}
|
|
|
|
mut wav := metadata.Audio{}
|
|
wav.detect_tags(mut audio)
|
|
|
|
println(wav.id3v1.embedded)
|
|
println(wav.id3v23.embedded)
|
|
println(wav.id3v24.embedded)
|
|
|
|
if wav.id3v1.embedded {
|
|
last_bytes := metadata.get_bytes(mut audio, -128, 128)
|
|
wav.id3v1.get_metadata(last_bytes)
|
|
|
|
println(wav.id3v1)
|
|
}
|
|
|
|
if wav.id3v23.embedded {
|
|
wav.id3v23.get_full_size(mut audio)
|
|
wav.id3v23.fill_tag(mut audio)
|
|
println(wav.id3v23.to_v1())
|
|
wav.id3v23.tit2.encode_size(3)
|
|
// println(wav.id3v23.tit2)
|
|
}
|
|
|
|
if wav.id3v24.embedded {
|
|
wav.id3v24.get_full_size(mut audio)
|
|
wav.id3v24.fill_tag(mut audio)
|
|
println(wav.id3v24.to_v1())
|
|
wav.id3v24.tit2.encode_size(4)
|
|
// println(wav.id3v24.tit2)
|
|
}
|
|
|
|
|
|
|
|
// println(wav.id3v23)
|
|
// println(wav.id3v23.tit2)
|
|
|
|
|
|
// converted_idv31 := wav.id3v1.to_v23()
|
|
// println(converted_idv31)
|
|
// println(last_bytes)
|
|
|
|
// flex := wav.id3v1.to_bytes()
|
|
|
|
// audio.seek(-1, os.SeekMode.end) or { panic(err) }
|
|
|
|
// flex1 := audio.tell() or { panic(err) }
|
|
|
|
// mut all_bytes := audio.read_bytes(int(flex1))#[..-128]
|
|
|
|
// all_bytes << flex
|
|
|
|
// println(all_bytes.len)
|
|
// println(int(flex1))
|
|
|
|
// all_bytes := wav.id3v1.insert(mut audio, -128)
|
|
|
|
// os.write_bytes("./test.mp3", all_bytes) or { panic(err) }
|
|
|
|
}
|
|
|
|
fn main(){
|
|
id3()
|
|
}
|