পাইথনের সাথে অডিও খেলুন


107

আমি কীভাবে পাইথন স্ক্রিপ্ট থেকে অডিও (এটি 1 সেকেন্ড শব্দের মতো হবে) প্লে করতে পারি?

এটি সর্বোত্তম হবে যদি এটি প্ল্যাটফর্মটি স্বতন্ত্র ছিল তবে প্রথমে এটি ম্যাকের জন্য কাজ করা দরকার।

আমি জানি আমি afplay file.mp3পাইথনের মধ্যে থেকে কেবল কমান্ডটি কার্যকর করতে পারলাম , তবে এটি কি কাঁচা পাইথনে করা সম্ভব? আমি যদি বাহ্যিক গ্রন্থাগারের উপর নির্ভর না করি তবে আমি আরও ভাল হতে পারি।


Pyglet নামক একটি বহিস্থিত গ্রন্থাগার মাধ্যমে ফিরে অডিও প্লে করার ক্ষমতা থাকবে AVbin । পাইগলেট হ'ল এটির সমর্থন করে এমন প্রতিটি প্ল্যাটফর্মে নেটিভ সিস্টেম কলগুলির চারপাশে একটি সিটিপস মোড়ক। দুর্ভাগ্যক্রমে, আমি ভাবি না যে স্ট্যান্ডার্ড লাইব্রেরিতে কোনও কিছুই অডিও ব্যাক খেলবে।
টেকনোমোলজিকাল

আপনার যদি পোর্টেবল পাইথন অডিও লাইব্রেরির দরকার হয় তবে PyAudio ব্যবহার করে দেখুন । এটি অবশ্যই একটি ম্যাক পোর্ট আছে। এমপি 3 ফাইলগুলির জন্য: এটি অবশ্যই "কাঁচা" পাইথনে কার্যকর, কেবলমাত্র আমি ভয় করি যে আপনি নিজেরাই কোডিং করতে চাইবেন :)। আপনি যদি কিছু বাহ্যিক গ্রন্থাগার বহন করতে পারেন তবে আমি এখানে কিছু পাইআডিও - পাইল্যাম নমুনা পেয়েছি ।
গ্রেজগোর্জ গ্যাসেক

উত্তর:


17

পাইথন অডিও সম্পর্কে আপনি এখানে তথ্য পেতে পারেন: http://wiki.python.org/moin/Audio/

দেখে মনে হচ্ছে এটি বাহ্যিক লাইব্রেরি ছাড়া এমপি 3 ফাইল খেলতে পারে। আপনি আপনার .mp3 ফাইলটিকে একটি .wav বা অন্য ফর্ম্যাটে রূপান্তর করতে পারেন, বা পাইমিডিয়া এর মতো লাইব্রেরি ব্যবহার করতে পারেন ।


12
তবে আমি কীভাবে একটি .wavফাইল খেলব ?
theonlygusti

@ থিওনলিগাস্টি উদাহরণস্বরূপ, এখানে দেখুন ।
অ্যান্ডারসন সবুজ

42

আপনার সেরা বাজি সম্ভবত পিগেম / এসডিএল ব্যবহার করা । এটি একটি বাহ্যিক গ্রন্থাগার, তবে এটির প্ল্যাটফর্ম জুড়ে দুর্দান্ত সমর্থন রয়েছে।

pygame.mixer.init()
pygame.mixer.music.load("file.mp3")
pygame.mixer.music.play()

Pygame.mixer.music ডকুমেন্টেশনে অডিও মিশুক সমর্থন সম্পর্কে আপনি আরও সুনির্দিষ্ট ডকুমেন্টেশন পেতে পারেন


2
আমার জন্য, এটি কাজ করে না। মানে, এটি বাজছিল কিন্তু শব্দ নেই। আমি time.sleep(5)শেষে যুক্ত করেছি এবং এটি কাজ করেছে। উইন্ডোজ 8.1
নাগভূষণ এসএন

ফায়ার প্যাকেজ! ধন্যবাদ!
Зеленчук

এটি স্ট্যান্ডার্ড ".wav", ".mp3" এবং ".ogg" দিয়ে ফেডোরায় কাজ করে না (ফাইল 'ফাইলের নাম.ফর্ম্যাট' খুলতে অক্ষম)
ক্যালভিন-রুইজ

1
@ ক্যালভিন-রুইজ আমি ঠিকই নিশ্চিত করেছি যে আমি এমপি 3 এবং ওগ ফাইল খেলতে FC31 এ উপরের কোডটি ব্যবহার করতে সক্ষম। আমি মনে করি আপনার একটি বৃহত্তর সমস্যা রয়েছে যার সম্ভবত আপনার প্ল্যাটফর্মটি সম্পর্কে কিছু বিশদ জ্ঞানের প্রয়োজন।
টিএমএল

18

সিম্পলডাডিওতে একবার দেখুন , যা এই উদ্দেশ্যে তুলনামূলকভাবে সাম্প্রতিক এবং লাইটওয়েট লাইব্রেরি:

> pip install simpleaudio

তারপর:

import simpleaudio as sa

wave_obj = sa.WaveObject.from_wave_file("path/to/file.wav")
play_obj = wave_obj.play()
play_obj.wait_done()

সঙ্কুচিত 16 বিট পিসিএম ফাইলগুলি ব্যবহার করার বিষয়টি নিশ্চিত করুন।


সুন্দর, ধন্যবাদ - গেমগুলির জন্য দরকারী যা সংক্ষিপ্ত সাউন্ড এফেক্ট খেলতে হবে এবং পাইথন 3 সমর্থন করে
টমাস পার্ল

18

ব্যবহার করে দেখুন playsound শব্দসমূহ খেলার জন্য কোন নির্ভরতা সঙ্গে যা বিশুদ্ধ পাইথন, ক্রস প্ল্যাটফর্ম, একক কার্যকারিতা মডিউল।

পাইপের মাধ্যমে ইনস্টল করুন:

$ pip install playsound

একবার ইনস্টল হয়ে গেলে আপনি এটি ব্যবহার করতে পারেন:

from playsound import playsound
playsound('/path/to/a/sound/file/you/want/to/play.mp3')

36
এটি পড়ে আমার এতটা আবেগ হয়। আক্ষরিক অর্থে আমার চোখগুলি সুখের সাথে ক্লান্ত হয়ে উঠল। আমার কাছ থেকে এই জাতীয় প্রতিক্রিয়া আশা করিনি। (তারা আমার তৈরি মডিউলের সাথে লিঙ্ক করেছে))
আর্টঅফ ওয়ারফেয়ার

+1 এর জন্য playsound। আমি এখানে কয়েকটি সমাধান সমাধান করেছি এবং এটি আমার জন্য সবচেয়ে সহজ কাজ করেছে। দুর্ভাগ্যক্রমে pygameসংক্ষিপ্ত পরীক্ষার সময় সমাধানটি আমার পক্ষে কার্যকর হয়নি।
ট্রেভর সুলিভান

13

ইন pydub আমরা সম্প্রতি থাকেন (subprocess মাধ্যমে) ffplay ব্যবহার করতে নির্বাচিত সরঞ্জামের ffmpeg স্যুট, যা অভ্যন্তরীণভাবে এল ব্যবহার থেকে।

এটি আমাদের উদ্দেশ্যে কাজ করে - মূলত ইন্টারেক্টিভ মোডে পাইডাব কোডের ফলাফলগুলি পরীক্ষা করা আরও সহজ করে তোলে - তবে এর মস্তিষ্কে রয়েছে যেমন ম্যাক অন ডকটিতে একটি নতুন প্রোগ্রাম প্রদর্শিত হওয়ার মতো।

আমি উপরের প্রয়োগটি সংযুক্ত করেছি, তবে একটি সরলীকৃত সংস্করণ নিম্নলিখিত:

import subprocess

def play(audio_file_path):
    subprocess.call(["ffplay", "-nodisp", "-autoexit", audio_file_path])

-nodispপতাকা একটি নতুন উইন্ডোতে দেখানো থেকে ffplay স্টপ, এবং -autoexitপতাকা প্রস্থান ffplay ঘটায় এবং একটি স্থিতি কোড ফেরত যখন অডিও ফাইল সম্পন্ন পালন করছে।

সম্পাদনা করুন : পাইডুব ইনস্টল হয়ে গেলে প্লেব্যাকের জন্য এখন পিউডিও ব্যবহার করে এবং আমি উল্লিখিত ডাউনসাইডগুলি এড়াতে এফফ্লেতে ফিরে পড়ি। উপরের লিঙ্কটি সেই সাথে বাস্তবায়নও দেখায়।


1
পাইডুব দেখে মনে হচ্ছে এটি একটি মোড়ক লাইব্রেরি হিসাবে যথেষ্ট সম্ভাবনা রয়েছে - আমি এখন এটি ইনস্টল করছি।
ছায়া

1
জঘন্য পাইডাব দেখতে দুর্দান্ত দেখাচ্ছে এবং এটি এখনও সত্যই সক্রিয়।
করিশিম্মন

13

দেরিতে জবাবের জন্য দুঃখিত, তবে আমি মনে করি এটি আমার লাইব্রেরির বিজ্ঞাপন দেওয়ার জন্য ভাল জায়গা ...

আফাইক, স্ট্যান্ডার্ড লাইব্রেরিতে অডিও বাজানোর জন্য একটিমাত্র মডিউল রয়েছে: ওসৌডিওদেব । দুঃখের বিষয়, এটি কেবল লিনাক্স এবং ফ্রিবিএসডি-তে কাজ করে।

আপডেট: এখানে উইনসাউন্ডও রয়েছে তবে স্পষ্টতই এটি প্ল্যাটফর্ম-নির্দিষ্ট।

প্ল্যাটফর্ম-স্বতন্ত্র কিছু করার জন্য আপনাকে একটি বাহ্যিক গ্রন্থাগার ব্যবহার করতে হবে।

আমার প্রস্তাবটি সাউন্ডভাইস মডিউল (তবে সাবধান, আমি লেখক)।

প্যাকেজটিতে ম্যাক ওএস এক্স এবং উইন্ডোজের প্রাক-সংকলিত পোর্টঅডিও লাইব্রেরি অন্তর্ভুক্ত রয়েছে এবং এটি সহজেই ইনস্টল করা যেতে পারে:

pip install sounddevice --user

এটি NumPy অ্যারে থেকে শব্দটি প্লে করতে পারে তবে এটি প্লেইন পাইথন বাফারও ব্যবহার করতে পারে (যদি NumPy উপলব্ধ না থাকে)।

একটি নুমপি অ্যারের পিছনে খেলতে, আপনার যা যা প্রয়োজন তা হ'ল (ধরে নিই যে অডিও ডেটাতে 44100 হার্জ-এর নমুনা নমুনা রয়েছে):

import sounddevice as sd
sd.play(myarray, 44100)

আরও বিশদের জন্য ডকুমেন্টেশনটি দেখুন

এটি সাউন্ড ফাইলগুলি পড়তে / লিখতে পারে না, এর জন্য আপনার একটি পৃথক গ্রন্থাগার প্রয়োজন need


গ্রেট! তরঙ্গ সম্পর্কে একটি ক্লাস ডেমো প্রোগ্রাম করার জন্য আমার যা প্রয়োজন ছিল তা ঠিক।
বিল এন

5

আপনি এটি দেখতে পারেন: http://www.speech.kth.se/snack/

s = Sound() 
s.read('sound.wav') 
s.play()

3
দেখতে অনেক পরিষ্কার দেখাচ্ছে, আমি চাই এর জন্য কোনও পাইপ প্যাকেজ থাকত। সহজেই ইনস্টল করা কী
জোনাথন

4

হারুনের উত্তর প্রয়োজনের চেয়ে প্রায় 10x বেশি জটিল বলে মনে হচ্ছে। আপনার কেবলমাত্র ওএস এক্স-তে কাজ করে এমন কোনও উত্তর প্রয়োজন হলে এটি করুন:

from AppKit import NSSound

sound = NSSound.alloc()
sound.initWithContentsOfFile_byReference_('/path/to/file.wav', True)
sound.play()

একটি জিনিস ... এটি সঙ্গে সঙ্গে ফিরে আসে। সুতরাং আপনি এটি করতেও চাইতে পারেন, যদি আপনি শব্দটি শেষ না হওয়া পর্যন্ত কলটি ব্লক করতে চান।

from time import sleep

sleep(sound.duration())

সম্পাদনা করুন: আমি এই ফাংশনটি নিয়েছি এবং এটি উইন্ডোজ এবং লিনাক্সের রূপগুলির সাথে সংযুক্ত করেছি। ফলাফলটি খাঁটি অজগর, ক্রস প্ল্যাটফর্ম মডিউল যার কোনও নির্ভরতা নেই প্লেসাউন্ড । আমি এটি পাইপিতে আপলোড করেছি।

pip install playsound

তারপরে এটি চালান:

from playsound import playsound
playsound('/path/to/file.wav', block = False)

ওএস এক্স-তে এমপি 3 ফাইলগুলিও কাজ করে W প্ল্যাটফর্ম / ফাইল ফর্ম্যাটের অন্যান্য সংমিশ্রণগুলি কী করে বা কাজ করে না আমি তা জানি না - আমি এখনও সেগুলি চেষ্টা করি নি।


আমি নিম্নলিখিত ত্রুটিটি পেয়েছি: পাইথন 3.5 (উইন্ডোজ) এ "'বাইটস' অবজেক্টটিকে" স্পিষ্টলি রূপান্তর করতে পারি না "।
এরউইন মায়ার

@ ইরউনমায়ার - আপনি যে playsoundমডিউলটি লিখেছেন তা নিয়ে কি আপনি কথা বলছেন ? পাইথন ২.7.১১ এর চেয়ে নতুন কোনও কিছুর জন্য আমি এটি পরীক্ষা করে দেখিনি ... আমি অবশ্যই এটি 3.5 তে ঠিক করার চেষ্টা করতে পারি ...
আর্টঅফ ওয়ারফেয়ার

প্রকৃতপক্ষে. এটি অবশ্যই পাইথন 3 পার্থক্যের কারণে হওয়া উচিত।
এরউইন মায়ার

AppKit হয় নির্ভরশীলতার।
ক্রিস লারসন

2
@ আর্টঅফ ওয়ারফেয়ার এটি সহজ নয় । এটি পাইথন.আর.র অফিসিয়াল ডিস্ট্রিবিউশন সহ বেশিরভাগ ডিস্ট্রিবিউশন সহ সিস্টেম অজগর দিয়ে ইনস্টল করা আছে। আমি জানি যে বেশিরভাগ লোকেরা এসআইপি নিষেধাজ্ঞাগুলি অতিক্রম করার জন্য পাইথন ব্যবহার করেন যারা বিতরণগুলির মধ্যে একটি ইনস্টল করুন। বেশিরভাগ বিতরণের জন্য অ্যাপকিট পেতে কোনও ব্যবহারকারীর পাইপজেসি ইনস্টল করতে হবে। যার ফলে এটি সবচেয়ে তোলে স্পষ্টভাবে নির্ভরশীলতার।
ক্রিস লারসন

3

এটি সবচেয়ে সহজ এবং সেরা iv'e পাওয়া গেছে। এটি লিনাক্স / পলসৌদিও, ম্যাক / কোরআডিও এবং উইন্ডোজ / ওয়াসাপি সমর্থন করে।

import soundfile as sf
import soundcard as sc

default_speaker = sc.default_speaker()
samples, samplerate = sf.read('bell.wav')

default_speaker.play(samples, samplerate=samplerate)

অন্যান্য অতি-দরকারী বৈশিষ্ট্যগুলির জন্য https://github.com/bastibe/PySoundFile এবং https://github.com/bastibe/SoundCard দেখুন ।


যে কেউ এর জন্য যাচ্ছেন (কেবল আমি যেমন আছি) তার জন্য কেবল একটি শিরোনাম। সমস্ত libs এবং তাদের নির্ভরতা চিরকালের জন্য একটি রাস্পবেরি পাই 1B + - বিশেষত অদ্ভুত উপর তৈরি করতে লাগে।
pojda

পিএস: এটি রাস্পবেরি পাইয়ের জন্য কাজ করেনি "NotImplementedError: সাউন্ডকার্ড এখনও লিনাক্স 2 সমর্থন করে না", এবং এটি ঠিক করার কোনও উপায় বের করতে পারেনি। আমি ওএস.সিস্টেমের সাথে যাচ্ছি ("mpg123 file.mp3")
পোজদা

আহ, যে স্তন্যপান। আমার ধারণা রাস্পবেরি পাই কিছুটা বিশেষ পরিবেশ। সম্ভবত আপনি ইস্যুতেট্র্যাকারে কোনও সমস্যা পোস্ট করলে আপনি তা বাছাই বা স্থির করতে পারেন।
n00p

আরও চিন্তা করার পরে, সম্ভবত সমস্যাটি হ'ল আপনি একটি পুরানো কার্নেল বা পুরাতন পাইথন সংস্করণ ব্যবহার করছেন। নতুন পাইথন সংস্করণগুলির সাথে সেই ত্রুটিটি আমার মনে হয় এমন হওয়া উচিত নয়।
n00p

এটি রাস্পবিয়ান চলছে, যা মূলত একটি ডেবিয়ান স্ট্রেচ কাঁটাচামচ। আমি হাল ছেড়ে দিয়ে ওএস.সিস্টেমের পথে চলেছি যা ঠিক এটিএম কাজ করে working আমাকে সাহায্য করার জন্য ধন্যবাদ!
পোজদা

2

নিম্নলিখিত কোডের অ্যানালগ ব্যবহার করে কোনও তৃতীয় পক্ষের লাইব্রেরি ছাড়াই ওএস এক্সে অডিও চালানো সম্ভব। কাঁচা অডিও ডেটা ওয়েভ_উভ.উরাইটফ্রেমগুলির সাথে ইনপুট হতে পারে। এই কোডটি ইনপুট ফাইল থেকে 4 সেকেন্ডের অডিও উত্তোলন করে।

import wave
import io
from AppKit import NSSound


wave_output = io.BytesIO()
wave_shell = wave.open(wave_output, mode="wb")
file_path = 'SINE.WAV'
input_audio = wave.open(file_path)
input_audio_frames = input_audio.readframes(input_audio.getnframes())

wave_shell.setnchannels(input_audio.getnchannels())
wave_shell.setsampwidth(input_audio.getsampwidth())
wave_shell.setframerate(input_audio.getframerate())

seconds_multiplier = input_audio.getnchannels() * input_audio.getsampwidth() * input_audio.getframerate()

wave_shell.writeframes(input_audio_frames[second_multiplier:second_multiplier*5])

wave_shell.close()

wave_output.seek(0)
wave_data = wave_output.read()
audio_stream = NSSound.alloc()
audio_stream.initWithData_(wave_data)
audio_stream.play()

এটি প্রয়োজনীয়তার চেয়ে অনেক জটিল - তারা জিজ্ঞাসা করেছিল কীভাবে কীভাবে শব্দ বাজাতে হয়, কীভাবে এটি পরিচালনা করতে হবে এবং তারপরে এটি কীভাবে বাজানো যায়। আমার উত্তরটি এই উত্তর থেকে অপ্রয়োজনীয় 90% কে ছাঁটাই করে এবং প্রশ্নকর্তা যা চান তা ঠিক ছেড়ে দেয় - পাইথন ব্যবহার করে ওএস এক্সের একটি ফাইল থেকে একটি শব্দ বাজানো। stackoverflow.com/a/34984200/901641
ArtOfWarfare

2

পাইসাউন্ডকার্ড চেষ্টা করুন যা প্লেব্যাকের জন্য ব্যবহার করে যা অনেক প্ল্যাটফর্মে উপলব্ধ। তদতিরিক্ত, এটি প্রচুর চ্যানেল সহ "পেশাদার" সাউন্ড ডিভাইসগুলি সনাক্ত করে।

এখানে রেডমি থেকে একটি ছোট উদাহরণ:

from pysoundcard import Stream

"""Loop back five seconds of audio data."""

fs = 44100
blocksize = 16
s = Stream(samplerate=fs, blocksize=blocksize)
s.start()
for n in range(int(fs*5/blocksize)):
    s.write(s.read(blocksize))
s.stop()

আকর্ষণীয় হলেও লিঙ্ক-কেবল উত্তর নিরুৎসাহিত করা হয়। সর্বনিম্ন, আপনার উত্তরটিতে এটি ব্যবহারের একটি সংক্ষিপ্ত উদাহরণ অন্তর্ভুক্ত করা উচিত। এটি আপনার উত্তরটির সমস্ত মান হারাতে বাঁচায়, ভান্ডারটির পুনরায় নামকরণ করা উচিত এবং লিঙ্কটি ঝুঁকতে দেওয়া উচিত।
স্পেকট্রা

2

ওএসএক্স- এও , এসও থেকে , ওএসএক্সের অফপ্লে কমান্ডটি ব্যবহার করে :

import subprocess
subprocess.call(["afplay", "path/to/audio/file"])

আপডেট: ওপি প্রথম স্থানে যা করা এড়াতে চেয়েছিল তা কীভাবে করা যায় তা এই সমস্ত কিছুই নির্দিষ্ট করে । আমি অনুমান করি যে আমি এটি এখানে পোস্ট করেছি কারণ ওপি যা এড়াতে চেয়েছিল তা হ'ল আমার অনুসন্ধান করা তথ্য। উপস।


এটি খেলে অজু স্থগিত করে যদিও দুর্দান্ত কাজ করে। সম্ভবত এটি কল করার একটি অ্যাসিঙ্ক উপায় আছে?
প্রেক্সাইটেলস

প্রশ্নগুলি @ প্রক্সাইটেলস। সম্ভবত থ্রেডিং সহ। এখানে দেখুন দয়া করে আপনার সাথে এটির পরীক্ষার সুযোগ পেলে প্রতিবেদন করুন।
মাইকিএলএল

ওপি স্পষ্টতই এর বিকল্পগুলির জন্য বলেছে।
হোয়াইট04

ওপি "পাইথনের মধ্যে থেকে অফপ্লে ফাইল.এমপি 3 কমান্ড কার্যকর করার" বিকল্পের সন্ধান করছে এবং পাইথনের মধ্যে সাব-প্রসেসিং এখনও ঘটে, তাই না। আমি সংশোধন করেছি. তবে এই ছোট্ট পোস্টটি সম্ভবত অন্যকে যেমন সহায়তা করতে পারে তেমন ক্ষতি করে না।
মাইকিএলএল

@ হোয়াইট04 আমি (অবশেষে) দেখছি আপনি কী বলছেন।
মাইকিএলএল

1

পাইপির সংগীতে অজগরটির জন্য মডিউলগুলির একটি তালিকা রয়েছে। আমার প্রিয়টি জাইথন ​​হবে কারণ এতে সংগীতের জন্য আরও সংস্থান এবং গ্রন্থাগার রয়েছে। পাঠ্যপুস্তক থেকে একটি নোট খেলতে কোডের উদাহরণ হিসাবে :

# playNote.py 
# Demonstrates how to play a single note.

from music import *   # import music library
note = Note(C4, HN)   # create a middle C half note 
Play.midi(note)       # and play it!

1

ম্যাক ওএস আমি প্রচুর কোড চেষ্টা করেছি কিন্তু এটি কেবল আমার উপর কাজ করে

import pygame
import time
pygame.mixer.init()
pygame.init()
pygame.mixer.music.load('fire alarm sound.mp3') *On my project folder*
i = 0
while i<10:
    pygame.mixer.music.play(loops=10, start=0.0)
    time.sleep(10)*to protect from closing*
    pygame.mixer.music.set_volume(10)
    i = i + 1

1

playsoundপ্যাকেজটি ব্যবহার করে ইনস্টল করুন :

pip install playsound

ব্যবহার:

from playsound import playsound
playsound("file location\audio.p3")

0
আপনি যে পাইথন স্ক্রিপ্টটি লিখছেন তার শীর্ষে এটি রাখুন:
import subprocess
পাইথন স্ক্রিপ্টের ডিরেক্টরিতে যদি wav ফাইল IS হয়:
f = './mySound.wav'
subprocess.Popen(['aplay','-q',f)
ওয়াভ ফাইলটি পাইথন স্ক্রিপ্টের ডিরেক্টরিতে না থাকলে:
f = 'mySound.wav'
subprocess.Popen(['aplay','-q', 'wav/' + f)
আপনি যদি অ্যাপলে সম্পর্কে আরও জানতে চান:
man aplay

0

পাইথন ব্যবহার করে একটি বিজ্ঞপ্তি শব্দ বাজানোর জন্য, কোনও সঙ্গীত প্লেয়ারকে কল করুন, যেমন ভিএলসি। ভিএলসি আমাকে পরিবর্তে এর কমান্ডলাইন সংস্করণ সিভিএলসি ব্যবহার করতে অনুরোধ করেছিল।

from subprocess import call
call(["cvlc", "--play-and-exit", "myNotificationTone.mp3"])

এটি ডিভাইসে vlc পুনরায় ইনস্টল করা প্রয়োজন। লিনাক্সে পরীক্ষিত (উবুন্টু 16.04 এলটিএস); পাইথন চলমান ৩.৫


0

সাউন্ডভাইস চেষ্টা করুন

আপনার যদি pip install sounddeviceটার্মিনালে মডিউলটি প্রবেশ না করে।

তারপরে আপনার পছন্দসই পাইথন স্ক্রিপ্টে (আমি জুপ্টার ব্যবহার করি) প্রবেশ করান

import sounddevice as sd

sd.play(audio, sr) পাইথনের মাধ্যমে আপনি যা চান তা খেলবে

আপনি যে অডিওটি চান এবং নমুনাতে চান তার সর্বোত্তম উপায় হ'ল লাইব্রোসা মডিউল। আপনার যদি লাইব্রোসা মডিউল না থাকে তবে এটি টার্মিনালে প্রবেশ করুন।

pip install librosa

audio, sr = librosa.load('wave_file.wav')

আপনি যে ওয়াভ ফাইলটি খেলতে চান তা নিশ্চিত করুন এটি আপনার পাইথন স্ক্রিপ্টের একই ডিরেক্টরিতে রয়েছে। এটি আপনাকে পাইথনের মাধ্যমে আপনার পছন্দসই wav ফাইলটি খেলতে দেয়

চিয়ার্স, চার্লি

পুনশ্চ

অডিও একবার "লাইব্রোসা" ডেটা অবজেক্ট হয়ে গেলে পাইথন এটিকে একটি অদ্ভুত অ্যারে হিসাবে দেখে। একটি পরীক্ষা হিসাবে, একটি এলোমেলো নাম্পার অ্যারের দীর্ঘ (20,000 ডেটা পয়েন্ট ব্যবহার করে দেখুন) চেষ্টা করুন। পাইথনের এটিকে সাদা গোলমাল হিসাবে চালানো উচিত। সাউন্ডভাইস মডিউলটি অসাধারণ অ্যারে এবং তালিকাগুলিও অভিনয় করে।


এটি করেছে, কিন্তু এটি কিছুই খেলছে না। এটি কেবল sd.play কলটি এড়িয়ে চলেছে
টোবিয়াস কলব


0

আমি সম্প্রতি আমার সংগীত প্লেয়ারকে স্থানীয়ভাবে সমস্ত অডিও ফাইল সমর্থন করি support আমি ভিএলসি পাইথন মডিউল এবং ভিএলসি dll ফাইলগুলি ব্যবহার করার উপায় খুঁজে বের করে এটি করেছি। আপনি এটি পরীক্ষা করে দেখতে পারেন: https://github.com/elibroftw/music-caster/blob/master/audio_player.py


-1

যদি আপনি ওএসএক্সে থাকেন তবে আপনি ওএসএক্সকে "প্লে" কমান্ড কল করতে "ওএস" মডিউল বা "সাবপ্রসেস" ইত্যাদি ব্যবহার করতে পারেন। ওএসএক্স শেল থেকে দেখে মনে হচ্ছে

"বাহ.ওয়াভ" খেলুন

এটি আমার মেশিনে প্রায় দেড় সেকেন্ডে খেলতে শুরু করে।


1
আমি এই দুটি পদ্ধতির সিনট্যাক্সটি দেখতে আগ্রহী হব।
মাইকিএলএল

-1

কেবলমাত্র আপনি এটি সিভিএলসি-র সাহায্যে করতে পারেন- আমি এটি এইভাবে করেছি:

import os
os.popen2("cvlc /home/maulo/selfProject/task.mp3 --play-and-exit")

/home/maulo/selfProject/task.mp3। এটি আমার এমপি 3 ফাইলের অবস্থান। "--play-and-প্রস্থান" এর সাহায্যে আপনি ভিএলসি প্রক্রিয়াটি শেষ না করেই আবার শব্দটি চালাতে সক্ষম হবেন।

আমাদের সাইট ব্যবহার করে, আপনি স্বীকার করেছেন যে আপনি আমাদের কুকি নীতি এবং গোপনীয়তা নীতিটি পড়েছেন এবং বুঝতে পেরেছেন ।
Licensed under cc by-sa 3.0 with attribution required.