একটি বিশ্বে যেখানে ভিডিও 240p MPEG থেকে অ্যাডাপ্টিভ 8K HDR স্ট্রিমে বিবর্তিত হয়েছে, অডিও ফাইল স্ট্যান্ডার্ডগুলি আশ্চর্যজনকভাবে স্থির রয়েছে। আমরা এখনও দশক আগে ডিজাইন করা কন্টেইনারগুলির উপর নির্ভর করি, যা প্লেব্যাকের জন্য দুর্দান্ত, কিন্তু ইন্টারঅ্যাক্টিভিটি এর জন্য খারাপ।
আপনি যদি একটি VR অভিজ্ঞতা, একটি রিদম গেম, বা একটি অ্যাডাপ্টিভ সাউন্ডস্কেপ তৈরি করছেন, আপনি সম্ভবত BPM, লুপ পয়েন্ট, বা স্থানিক কোঅর্ডিনেটের মতো মৌলিক ডেটা ট্র্যাক করার জন্য JSON "সাইডকার" এর পাশাপাশি WAV ফাইলগুলি নিয়ে জাগলিং করছেন।
এই কারণেই আমি বিটওয়েভ তৈরি করেছি: একটি উচ্চ-নিষ্ঠাবান, ভবিষ্যত-প্রুফ অডিও ফরম্যাট যা আধুনিক ডেভেলপমেন্ট ওয়ার্কফ্লোর জন্য ডিজাইন করা হয়েছে। এটি শুধুমাত্র একটি র্যাপার নয়; এটি একটি হাইব্রিড পাইথন/রাস্ট আর্কিটেকচার যা অডিওকে স্ব-বর্ণনামূলক, স্থানিক-সচেতন এবং ডেভেলপার-বান্ধব করে তোলে।
ট্র্যাডিশনাল ফরম্যাটগুলি (WAV, FLAC, MP3) মূলত প্যাসিভ ডেটা স্ট্রিম। তারা সময়ের সাথে অ্যাম্পলিটিউড সংরক্ষণ করে, কিন্তু তারা জানে না কী তারা প্লে করছে।
বিটওয়েভ ফাইলকে শব্দ এবং আচরণের একটি কাঠামোগত ডাটাবেস হিসাবে বিবেচনা করে এই প্যারাডাইম পরিবর্তন করে।
.bwx আর্কিটেকচারপ্রকল্পের মূলে রয়েছে .bwx (বিটওয়েভ এক্সটেন্ডেড) ফরম্যাট। একটি লিনিয়ার স্ট্রিমের পরিবর্তে, এটি এক্সটেনসিবিলিটির জন্য ডিজাইন করা একটি চাঙ্ক-ভিত্তিক আর্কিটেকচার ব্যবহার করে।
SPATIAL_BLOCK)এটি ইমার্সিভ ডেভেলপারদের জন্য গেম-চেঞ্জার। বিটওয়েভ পজিশনাল ডেটা সরাসরি ফাইল স্ট্রাকচারে এমবেড করে।
// Simplified representation of the spatial data block struct SpatialBlock { x_pos: f32, y_pos: f32, z_pos: f32, velocity_vector: [f32; 3], // For Doppler effects }
যখন আপনার গেম ইঞ্জিন একটি .bwx ফাইল লোড করে, এটি শুধু শব্দ লোড করে না; এটি সঠিকভাবে জানে যে শব্দটি 3D স্পেসে কোথায় স্পন করা উচিত।
META_BLOCK)আমরা ডাইনামিক প্রপার্টিগুলি স্ট্যান্ডার্ডাইজ করেছি। প্রতিটি বিটওয়েভ ফাইল বহন করতে পারে:
অডিও ডেভে সবচেয়ে বড় বাধাগুলির মধ্যে একটি হল প্রবেশের বাধা। C++ হল DSP এর জন্য ইন্ডাস্ট্রি স্ট্যান্ডার্ড, কিন্তু এটি দ্রুত প্রোটোটাইপিং ধীর করে দেয়।
বিটওয়েভ একটি হাইব্রিড আর্কিটেকচার ব্যবহার করে:
এর মানে আপনি একটি সাধারণ পাইথন অটোমেশন স্ক্রিপ্ট লেখার মতো সহজেই উচ্চ-পারফরম্যান্স অডিও স্ক্রিপ্ট লিখতে পারেন।
from bitwave import BitwaveFile, AudioAnalyzer # Load high-performance Rust backend via Python bw = BitwaveFile("spatial_track.bwx") bw.read() # Detect BPM using FFT analysis bpm = AudioAnalyzer.detect_bpm(bw.audio_data, bw.sample_rate) print(f"Detected Tempo: {bpm}")
টুল ছাড়া একটি ফাইল ফরম্যাট অকেজো। আমরা একটি ব্যাপক CLI তৈরি করেছি নিশ্চিত করতে যে বিটওয়েভ বিদ্যমান CI/CD পাইপলাইনে ফিট করে।
বিটওয়েভ বর্তমানে আলফা তে রয়েছে, এবং এটি MIT লাইসেন্সের অধীনে সম্পূর্ণ ওপেন সোর্স। এমন ক্রিয়েটরদের খোঁজ করছে যারা 1990-এর প্রযুক্তি হ্যাক করে 2025-এর সমস্যাগুলি সমাধান করতে ক্লান্ত।
রোডম্যাপে রিয়েল-টাইম স্ট্রিমিং সাপোর্ট, বাইনরাল অডিওর জন্য HRTF (হেড-রিলেটেড ট্রান্সফার ফাংশন) ইন্টিগ্রেশন, এবং প্রধান DAW-এর জন্য ডাইরেক্ট প্লাগইন অন্তর্ভুক্ত রয়েছে।
আপনি যদি একজন রাস্টাসিয়ান, পাইথনিস্টা, বা অডিও ইঞ্জিনিয়ার হন, আমরা আপনার চোখ কোডে চাই।
রেপো দেখুন এবং প্রকল্পে স্টার দিন:
[https://github.com/makalin/Bitwave]()
\


