कंप्यूटर संगीत



कॉर्ड से मिडी

MIDI नोट संयोजन उत्पन्न करने के लिए कॉर्ड इनपुट करने के लिए कई प्रकार के सॉफ़्टवेयर हैं। कुछ लोकप्रिय उपकरणों में शामिल हैं:
  • कैप्टन कॉर्ड्स (मिक्स्ड इन की): यह एक पेशेवर कॉर्ड प्रोग्रेस जनरेटर है जो आपको कॉर्ड प्रोग्रेस बनाने और उन्हें मिडी नोट्स में बदलने में मदद करता है। इसे आमतौर पर प्लग-इन के रूप में डिजिटल ऑडियो वर्कस्टेशन (DAW) में एकीकृत किया जाता है, जैसे कि एबलटन लाइव, FL स्टूडियो, आदि।
  • स्केलर 2: यह एक शक्तिशाली कॉर्ड प्रोग्रेस जेनरेशन टूल है जिसका उपयोग कॉर्ड के विभिन्न रूपों और संयोजनों का पता लगाने के लिए किया जा सकता है। स्केलर 2 जेनरेटेड कॉर्ड्स को MIDI में परिवर्तित करने का भी समर्थन करता है।
  • ऑर्ब कंपोज़र: यह कृत्रिम बुद्धिमत्ता तत्वों वाला एक कॉर्ड जेनरेशन सॉफ्टवेयर है। यह उपयोगकर्ता चयन के आधार पर नई कॉर्ड प्रगति और धुन उत्पन्न कर सकता है और उन्हें MIDI फ़ाइलों के रूप में निर्यात कर सकता है।
  • रैपिडकंपोज़र: यह एक संगीत निर्माण उपकरण है जिसका उपयोग तार, धुन और संगत उत्पन्न करने के लिए किया जा सकता है। इसमें एक सहज उपयोगकर्ता इंटरफ़ेस है और MIDI निर्यात का समर्थन करता है।
  • Cthulhu (Xfer रिकॉर्ड्स द्वारा): यह एक MIDI कॉर्ड जनरेटर है जिसे VST प्लग-इन के रूप में डिज़ाइन किया गया है जिसे विभिन्न डिजिटल ऑडियो वर्कस्टेशन में एकीकृत किया जा सकता है। इसमें शक्तिशाली कॉर्ड प्रोग्रेस जेनरेशन और संपादन क्षमताएं हैं।
  • MIDIculous: हालाँकि यह मुख्य रूप से संगीत वाद्ययंत्र बजाना सीखने के लिए एक सॉफ्टवेयर है, इसमें कुछ कॉर्ड जेनरेशन फ़ंक्शंस भी हैं जिनका उपयोग जल्दी से कॉर्ड प्रोग्रेस बनाने के लिए किया जा सकता है।

    MIDI को आवाज दें

    स्पीच-टू-मिडी तकनीक आपकी आवाज़ में ऑडियो सिग्नल को मिडी नोट्स और डेटा में परिवर्तित करती है। यह आपको किसी राग को गाने या गुनगुनाने और उसे वास्तविक समय में संगीत नोट्स में बदलने की अनुमति देता है, जिसे बाद में संपादित किया जा सकता है या किसी वाद्ययंत्र को डिजिटल रूप से बजाने के लिए उपयोग किया जा सकता है।
  • MIDI के लिए भाषण का उपयोग क्यों करें? रचनात्मक इनपुट: विचारों को व्यक्त करना किसी वाद्ययंत्र पर बजाने की तुलना में तेज़ है, खासकर यदि आप एक प्रशिक्षित वाद्यवादक नहीं हैं। सुधार: गायन या वेंट्रिलोक्विज़म के माध्यम से विचारों को त्वरित रूप से कैप्चर करें और उन्हें प्रयोग करने योग्य MIDI डेटा में परिवर्तित करें। आभासी उपकरणों को नियंत्रित करें: सिंथेसाइज़र, ड्रम, या किसी भी उपकरण को नियंत्रित करने के लिए अपनी आवाज़ का उपयोग करें जो MIDI डेटा प्राप्त कर सकता है।
  • यह कैसे काम करता है? ऑडियो इनपुट: आप सिस्टम को ऑडियो सिग्नल (अपनी आवाज़) प्रदान करते हैं। पिच का पता लगाना: सॉफ़्टवेयर या प्लग-इन आपकी आवाज़ की पिच का पता लगाता है। MIDI रूपांतरण: पता लगाए गए पिचों और लय को संबंधित MIDI नोट्स में बदलें। आउटपुट: MIDI डेटा किसी भी MIDI-संगत उपकरण को ट्रिगर कर सकता है, जैसे वर्चुअल सिंथेसाइज़र या सैंपलर।
  • स्पीच-टू-मिडी के लिए उपकरण और सॉफ्टवेयर यहां कुछ लोकप्रिय उपकरण दिए गए हैं जो इस प्रक्रिया में आपकी सहायता कर सकते हैं: एबलटन लाइव (लाइव डिवाइस के लिए अधिकतम): एबलटन कुछ पिच-टू-मिडी प्लग-इन प्रदान करता है। मैक्स फॉर लाइव डिवाइस जैसे ऑडियो से मिडी, वोकल्स या ऑडियो को मिडी में बदल सकते हैं। मेलोडीन: एक शक्तिशाली पिच सुधार उपकरण जो ऑडियो फ़ाइलों से MIDI डेटा भी निर्यात कर सकता है। एंटारेस ऑटो-ट्यून: इस प्रसिद्ध पिच सुधार उपकरण में कुछ MIDI निर्यात क्षमताएं हैं। WIDI ऑडियो से MIDI VST: किसी भी ऑडियो इनपुट को तुरंत MIDI में बदलें। रीपर (प्लग-इन के साथ): रीपर DAW रीट्यून जैसे प्लग-इन का उपयोग करके त्वरित पिच ट्रैकिंग और रूपांतरण को सक्षम बनाता है।
  • बुनियादी सेटिंग्स माइक्रोफ़ोन: अपनी आवाज़ कैप्चर करने के लिए माइक्रोफ़ोन सेट करें। ऑडियो इंटरफ़ेस: DAW (डिजिटल ऑडियो वर्कस्टेशन) में ऑडियो सिग्नल पेश करने के लिए एक इंटरफ़ेस का उपयोग करें। स्पीच-टू-मिडी सॉफ़्टवेयर: ऐसा टूल चुनें जो ऑडियो इनपुट को MIDI में परिवर्तित कर सके। आने वाले संदेशों का विश्लेषण करने के लिए प्लग-इन या सॉफ़्टवेयर कॉन्फ़िगर करें। आभासी उपकरण: आभासी उपकरणों को नियंत्रित करने के लिए MIDI आउटपुट को रूट करें।
  • आपके DAW में MIDI के लिए भाषण का उपयोग करने के चरण अपनी आवाज़ रिकॉर्ड करें या टाइप करें: माइक्रोफ़ोन में गाएँ या गुनगुनाएँ। ऑडियो का विश्लेषण करें: ऑडियो का विश्लेषण करने के लिए स्पीच-टू-मिडी प्लग-इन या सॉफ़्टवेयर का उपयोग करें। यह इसे MIDI सिग्नल में बदल देगा। MIDI डेटा संपादित करें: रूपांतरण के बाद, MIDI डेटा को आपके DAW में किसी भी अन्य MIDI की तरह संपादित किया जा सकता है। आप समय को सही कर सकते हैं, नोट्स बदल सकते हैं, या मॉड्यूलेशन जोड़ सकते हैं। ट्रिगर उपकरण: अपने DAW में किसी भी आभासी उपकरण को चलाने के लिए MIDI का उपयोग करें।
  • चुनौती सटीकता: वाक् से मिडी रूपांतरण हमेशा 100% सटीक नहीं होता है। पिच या लय की गलतफहमी हो सकती है, खासकर जटिल ध्वनि इनपुट के साथ। विलंब: आपकी सेटिंग्स के आधार पर, जब आप गाते हैं और जब मिडी नोट उत्पन्न होता है, तब के बीच थोड़ा विलंब (विलंब) हो सकता है। पिच रेंज: कुछ सॉफ़्टवेयर को बहुत अधिक या बहुत कम टोन का पता लगाने में कठिनाई हो सकती है। बेहतर परिणाम के लिए युक्तियाँ गाते या गुनगुनाते समय स्पष्ट, अद्वितीय स्वर का प्रयोग करें। यदि आप एकल-स्वर राग को परिवर्तित कर रहे हैं, तो स्वरों के बीच भ्रम से बचने के लिए मोनोफोनिक मोड में काम करें। बीटबॉक्सर्स या पर्क्युसिनिस्ट MIDI ट्रांज़िशन सेट करके ड्रम ध्वनियों को ट्रिगर करने के लिए अपनी आवाज़ का उपयोग कर सकते हैं जो वोकल्स को विशिष्ट ड्रम ध्वनियों में मैप करते हैं। लिजिआंग - 2024/10/14

    voice-to-MIDI converter using Python

    1. **Capture Audio Input**: We'll use a microphone to record the voice input.
    2. **Analyze Audio**: The audio needs to be analyzed for its frequency (pitch detection).
    3. **Convert Frequency to MIDI Notes**: The detected frequency can be mapped to MIDI notes.
    4. **Create MIDI File**: After converting the frequencies to MIDI notes, we can save them in a `.mid` file.
    
    We'll need some Python libraries to accomplish this:
    
    - `sounddevice`: For recording the audio.
    - `numpy` and `scipy`: For working with and analyzing audio signals.
    - `mido`: To create MIDI files.
    - `aubio`: For pitch detection (aubio specializes in audio-to-note detection).
    
    ### Step-by-Step Process
    
    #### Step 1: Install the Required Libraries
    First, we need to install the necessary Python libraries:
    
    ```bash
    pip install sounddevice numpy scipy mido python-rtmidi aubio
    ```
    
    #### Step 2: Capture Audio Input
    
    Here’s how you can capture audio input using `sounddevice`:
    
    ```python
    import sounddevice as sd
    import numpy as np
    
    def record_audio(duration, sample_rate=44100):
        print("Recording...")
        audio = sd.rec(int(duration * sample_rate), samplerate=sample_rate, channels=1, dtype='float32')
        sd.wait()  # Wait until recording is finished
        print("Recording finished.")
        return audio.flatten()
    ```
    
    This function records audio from the microphone for a specified duration.
    
    #### Step 3: Analyze Audio for Pitch (Using `aubio`)
    
    Now, let's detect the pitch of the recorded audio using the `aubio` library:
    
    ```python
    import aubio
    
    def detect_pitch(audio, sample_rate=44100):
        pitch_detector = aubio.pitch("default", 2048, 512, sample_rate)
        pitch_detector.set_unit("Hz")
        pitch_detector.set_silence(-40)  # Adjust silence threshold if needed
        
        pitches = []
        for i in range(0, len(audio), 512):
            sample = audio[i:i + 512]
            pitch = pitch_detector(sample)[0]
            if pitch > 0:  # Only consider non-zero pitch values
                pitches.append(pitch)
        return pitches
    ```
    
    This function processes the audio and detects the pitch at regular intervals.
    
    #### Step 4: Convert Pitch to MIDI Notes
    
    MIDI notes correspond to specific frequencies. We can map detected frequencies to their nearest MIDI note numbers:
    
    ```python
    def frequency_to_midi(frequency):
        if frequency <= 0:
            return None
        midi_note = 69 + 12 * np.log2(frequency / 440.0)  # A4 = 440Hz corresponds to MIDI note 69
        return round(midi_note)
    ```
    
    #### Step 5: Create a MIDI File
    
    We can now convert the detected MIDI notes into a MIDI file using the `mido` library:
    
    ```python
    from mido import MidiFile, MidiTrack, Message
    
    def create_midi_from_pitches(pitches):
        midi_file = MidiFile()
        track = MidiTrack()
        midi_file.tracks.append(track)
        
        # Add some basic track information
        track.append(Message('program_change', program=12, time=0))
        
        # Convert each pitch to a MIDI note and add to the track
        for pitch in pitches:
            midi_note = frequency_to_midi(pitch)
            if midi_note is not None:
                track.append(Message('note_on', note=midi_note, velocity=64, time=100))
                track.append(Message('note_off', note=midi_note, velocity=64, time=200))
        
        return midi_file
    ```
    
    This function takes the detected pitches, converts them to MIDI notes, and creates a MIDI file. The `note_on` and `note_off` events are added to simulate playing and releasing the note.
    
    #### Step 6: Putting It All Together
    
    Now, we can record audio, detect the pitch, convert it to MIDI notes, and save it as a `.mid` file:
    
    ```python
    def voice_to_midi(duration):
        # Step 1: Record audio
        audio = record_audio(duration)
        
        # Step 2: Detect pitch from the recorded audio
        pitches = detect_pitch(audio)
        
        # Step 3: Create a MIDI file from the detected pitches
        midi_file = create_midi_from_pitches(pitches)
        
        # Step 4: Save the MIDI file
        midi_file.save('output.mid')
        print("MIDI file saved as 'output.mid'")
    
    # Record and convert voice to MIDI for 5 seconds
    voice_to_midi(5)
    ```
    
    ### Explanation:
    - **Step 1**: Records audio from your microphone for the given duration.
    - **Step 2**: The recorded audio is split into frames, and each frame is analyzed for its pitch.
    - **Step 3**: The detected pitch is converted to a MIDI note.
    - **Step 4**: A MIDI file is created with `note_on` and `note_off` events for each detected note.
    
    ### Notes:
    - The code is designed for monophonic melodies (i.e., one note at a time). For polyphonic melodies (multiple notes at once), more advanced techniques are required.
    - **Noise sensitivity**: Ensure that the environment is relatively quiet, as background noise can interfere with pitch detection.
    
    This script should give you a basic starting point for voice-to-MIDI conversion in Python.
    

    離蒄-柔音美景@Youtube
    . email: [email protected]
    
    T:0000
    資訊與搜尋 | 回music首頁
    email: Yan Sa [email protected] Line: 阿央
    電話: 02-27566655 ,03-5924828