Получение сообщения «Система не может найти указанный файл» при преобразовании MIDI в mp3 с использованием Mido и pydub.Python

Программы на Python
Ответить Пред. темаСлед. тема
Anonymous
 Получение сообщения «Система не может найти указанный файл» при преобразовании MIDI в mp3 с использованием Mido и pydub.

Сообщение Anonymous »

Код: Выделить всё

import mido
from pydub import AudioSegment

def midi_to_mp3(midi_path, mp3_path):
# Load MIDI file
midi = mido.MidiFile(midi_path)

# Create an empty list to store notes
notes = []

for track in midi.tracks:
# Iterate through MIDI messages in track
for msg in track:
# Check if message is a note on event
if msg.type == 'note_on':
# Add note (pitch, velocity, time) to notes list
notes.append((msg.note, msg.velocity, msg.time))

tempo = 120
duration = 1000

segments = []

for note in notes:
pitch, velocity, time = note
# Calculate duration of note based on tempo and time
note_duration = int(duration * (mido.tick2second(time, midi.ticks_per_beat, tempo) * 1000))
# Create audio segment for note
segment = AudioSegment.silent(duration=note_duration)
segments.append(segment)

audio = sum(segments)

audio.export(mp3_path, format="mp3")

midi_to_mp3("melody.mid", "output.mp3")

Код: Выделить всё

This is the full error message:

C:\Dipika\Study\musicrypt\env\Scripts\python.exe "C:/Program Files/JetBrains/PyCharm 2023.1.3/plugins/python/helpers/pydev/pydevd.py" --multiprocess --qt-support=auto --client 127.0.0.1 --port 56448 --file C:\Dipika\Study\musicrypt\musicrypt.py
Connected to pydev debugger (build 231.9161.41)
C:\Dipika\Study\musicrypt\env\Lib\site-packages\pydub\utils.py:170: RuntimeWarning: Couldn't find ffmpeg or avconv - defaulting to ffmpeg, but may not work
warn("Couldn't find ffmpeg or avconv - defaulting to ffmpeg, but may not work", RuntimeWarning)
C:\Dipika\Study\musicrypt\env\Lib\site-packages\pydub\utils.py:198: RuntimeWarning: Couldn't find ffprobe or avprobe - defaulting to ffprobe, but may not work
warn("Couldn't find ffprobe or avprobe - defaulting to ffprobe, but may not work", RuntimeWarning)
Traceback (most recent call last):
File "C:\Program Files\JetBrains\PyCharm 2023.1.3\plugins\python\helpers\pydev\pydevd.py", line 1496, in _exec
pydev_imports.execfile(file, globals, locals)  # execute the script
^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
File "C:\Program Files\JetBrains\PyCharm 2023.1.3\plugins\python\helpers\pydev\_pydev_imps\_pydev_execfile.py", line 18, in execfile
exec(compile(contents+"\n", file, 'exec'), glob, loc)
File "C:\Dipika\Study\musicrypt\musicrypt.py", line 70, in 
convert_to_mp3('melody.mid', 'audio.mp3')
File "C:\Dipika\Study\musicrypt\musicrypt.py", line 46, in convert_to_mp3
midi_audio = AudioSegment.from_file(midi_path, format="midi")
^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
File "C:\Dipika\Study\musicrypt\env\Lib\site-packages\pydub\audio_segment.py", line 728, in from_file
info = mediainfo_json(orig_file, read_ahead_limit=read_ahead_limit)
^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
File "C:\Dipika\Study\musicrypt\env\Lib\site-packages\pydub\utils.py", line 274, in mediainfo_json
res = Popen(command, stdin=stdin_parameter, stdout=PIPE, stderr=PIPE)
^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
File "C:\Users\Admin\AppData\Local\Programs\Python\Python312\Lib\subprocess.py", line 1026, in __init__
self._execute_child(args, executable, preexec_fn, close_fds,
File "C:\Users\Admin\AppData\Local\Programs\Python\Python312\Lib\subprocess.py", line 1538, in _execute_child
hp, ht, pid, tid = _winapi.CreateProcess(executable, args,
^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
File "C:\Program Files\JetBrains\PyCharm 2023.1.3\plugins\python\helpers\pydev\_pydev_bundle\pydev_monkey.py", line 585, in new_CreateProcess
return getattr(_subprocess, original_name)(app_name, patch_arg_str_win(cmd_line), *args)
^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
FileNotFoundError: [WinError 2] The system cannot find the file specified
python-BaseException

Process finished with exit code 1

Я пытаюсь преобразовать текст в мелодию, используя библиотеку music21, которая, к сожалению, выдает на выходе формат среднего файла. Я не могу воспроизвести этот средний файл ни через один веб-браузер. Вот почему я попытался преобразовать файл Mid с помощью библиотек Mido и pydub. Но каждый раз, когда я запускаю это, моя система выдает ошибку «Система не может найти указанный файл». Мой файл melody.mid находится по тому же пути, что и файл Python.
Я ожидал получить в конце mp3-файл

Подробнее здесь: https://stackoverflow.com/questions/783 ... idi-to-mp3
Реклама
Ответить Пред. темаСлед. тема

Быстрый ответ

Изменение регистра текста: 
Смайлики
:) :( :oops: :roll: :wink: :muza: :clever: :sorry: :angel: :read: *x)
Ещё смайлики…
   
К этому ответу прикреплено по крайней мере одно вложение.

Если вы не хотите добавлять вложения, оставьте поля пустыми.

Максимально разрешённый размер вложения: 15 МБ.

  • Похожие темы
    Ответы
    Просмотры
    Последнее сообщение
  • Mido на Python 3.5.1: нет модуля с именем «mido»
    Anonymous » » в форуме Python
    0 Ответы
    20 Просмотры
    Последнее сообщение Anonymous
  • Mido на Python 3.5.1: нет модуля под названием «Mido»
    Anonymous » » в форуме Python
    0 Ответы
    6 Просмотры
    Последнее сообщение Anonymous
  • Как рассчитать продолжительность ноты в файле Midi с помощью Mido
    Anonymous » » в форуме Python
    0 Ответы
    50 Просмотры
    Последнее сообщение Anonymous
  • Если я напишу программу для перевода MIDI-последовательности, как мне превратить ее в виртуальное MIDI-устройство?
    Anonymous » » в форуме Linux
    0 Ответы
    69 Просмотры
    Последнее сообщение Anonymous
  • Библиотека C/C++ для чтения MIDI-сигналов с USB-MIDI-устройства.
    Anonymous » » в форуме C++
    0 Ответы
    28 Просмотры
    Последнее сообщение Anonymous

Вернуться в «Python»