2008-12-24 10 views
9

चलाता है क्या कोई पीसी या मैक पर क्रिसमस ट्यून खेलने के लिए कोई पूर्व-रिकॉर्ड की गई ध्वनि फ़ाइल नहीं है? (नहीं। एमपी 3 या। वाव या जो भी ध्वनि फ़ाइल)पोस्ट कोड जो क्रिसमस ट्यून

मुझे अपने टीआई 99/4 ए और ऐप्पल II लगता है (संगीत जैसा दिखता है) पर याद किया जा सकता है। सुनिश्चित नहीं है कि आधुनिक कंप्यूटरों में ये क्षमताएं हैं (बीप से अलग)।

उत्तर

1

MIDI एक विकल्प है, हालांकि एक पीसी पर यह आमतौर पर बीप के रूप में लगभग खराब लगता है।

+1

यह एक बुरा साउंडबा होने का एक आर्टिफैक्ट है nk। एक उच्च गुणवत्ता वाली ध्वनिबैंक के साथ, MIDI वास्तविक संगीत के रूप में लगभग उतना ही अच्छा लग सकता है। वास्तव में, संगीत समुदाय हर दिन MIDI का उपयोग करता है; उनके पास एमआईडीआई के समान नकारात्मक विचार नहीं हैं जो प्रोग्रामर अक्सर होते हैं। –

3

हां, आप मिडी खेल सकते हैं।

मिडी प्रति सेकेंड एन्कोड नहीं करता है, यह संगीत चलाने के लिए उपयोग की जाने वाली जानकारी को एन्कोड करता है; पिच, टोन, तीव्रता, आदि

पर codeplex पर एक सी # मिडी टूलकिट है: http://www.codeproject.com/KB/audio-video/MIDIToolkit.aspx

ध्वनि की गुणवत्ता मिडी यह खेलने के लिए प्रयुक्त उपकरण पर पूरी तरह से निर्भर है, इसलिए यह गुणवत्ता में अलग अलग होंगे कंप्यूटर से कंप्यूटर तक।

आपको कम से क्रिसमस मिडी फ़ाइलों का एक अच्छा सूची पा सकते हैं: http://www.lockergnome.com/midi/

विंडोज मीडिया प्लेयर के रूप में मिडी फ़ाइलों खेल सकते हैं कर सकते हैं त्वरित समय (मेरा मानना ​​है कि)।

3
PLAY "e4 e4 e2 e4 e4 e2 e4 g4 c4 d4 e2" 
+0

यह कौन सी भाषा है? – Ricket

+0

@Ricket: यह मेरे लिए QBASIC है। शायद यह किसी और के लिए एक और बुनियादी है। –

2

फ्लाई पर पीसीएम डेटा उत्पन्न करने के बारे में क्या? पीसीएम - पल्स कोड मॉड्यूलेटेड - ध्वनि एनालॉग ध्वनि प्रणाली में वोल्टेज के नमूने का सिर्फ एक गुच्छा है।

एक स्पीकर के बारे में सोचें। जैसे ही ध्वनि खेला जाता है, यह कंपन करता है। क्या होगा यदि आपने शासक को लिया और स्पीकर के स्थान को तेज़ी से दर पर मापा तो ध्वनि की आवृत्ति? आपको एक तरंग की तस्वीर मिल जाएगी। यह बिल्कुल ठीक है कि पीसीएम डेटा कैसा दिखता है, प्रत्येक माप 8 या 16 बिट int के रूप में संग्रहीत किया जाता है। आवृत्ति, 44khz प्रति सेकेंड नमूने की संख्या है। सीडी 44khz नमूना आवृत्ति और 16 बिट नमूने का उपयोग करें।

DirectSound (विंडोज़ पर) और OpenAL (क्रॉस प्लेटफार्म) दो पुस्तकालय हैं जिनका उपयोग आप पीसीएम डेटा से भरा डेटाबेस डाउनलोड करने के लिए कर सकते हैं। मैंने अतीत में डायरेक्टसाउंड का उपयोग किया है, डेटा चलाने के लिए नहीं बल्कि वॉल्यूम स्तर प्राप्त करने के लिए माइक्रोफ़ोन से डेटा में पढ़ने के लिए।

यदि आप किसी निश्चित नोट के लिए पीसीएम नमूना बनाना चाहते हैं, तो आप केवल आवृत्ति की गणना करें (यहां एक table है), और उसके बाद अपने बफर में साइनवेव डालें। आप अलग-अलग आवृत्तियों को एक साथ जोड़कर जोड़ सकते हैं (क्लिपिंग से बचने के लिए योग अधिकतम मात्रा से कम है)

7

जावा में "जिंगल बेल" (सामान्य रूप से फूला हुआ), JFugue का उपयोग करके, ट्यूबलर घंटी और xylophones के साथ (पॉलीफोनिक!):

import org.jfugue.*; 

public class JingleBells 
{ 
    public static void main(String[] args) 
    { 
     Player player = new Player(); 
     player.play("T170 "+ 
        "  V0 I[XYLOPHONE] C4q C4q C3h C4q C4q C3h C3q B3q A3q G3q C4h "+ 
        "  V1 I[TUBULAR_BELLS] E5q E5q E5h E5q E5q E5h E5q G5q C5q D5q Eqh "+ 
        "  V2 I[XYLOPHONE] G3h  G2q G3q G3h  G3h"); 
    } 
} 
6

, की "बीप के रूप में के रूप में बुरा" बात हो रही है अगर आप अपने linux बॉक्स पर स्थापित beep है, तो आपको निम्न खोल स्क्रिप्ट (जेरेमी Ruten के जवाब के रूप में ही नस में) चला सकते हैं:

#!/bin/sh 
beep -f 659 -l 400 
sleep 0.05 
beep -f 659 -l 400 
sleep 0.05 
beep -f 659 -l 800 
sleep 0.05 
beep -f 659 -l 400 
sleep 0.05 
beep -f 659 -l 400 
sleep 0.05 
beep -f 659 -l 800 
sleep 0.05 
beep -f 659 -l 400 
sleep 0.05 
beep -f 783 -l 400 
sleep 0.05 
beep -f 523 -l 400 
sleep 0.05 
beep -f 587 -l 400 
sleep 0.05 
beep -f 659 -l 800 
संबंधित मुद्दे