
Rio
09.07.2018
14:56:16
Поражает упорство

Ser
09.07.2018
14:57:08
на винде ставится k-lite и в нем есть медиаинфо который появлятеся в контекстном меню и показывают всю подноготную про файл

Alex
09.07.2018
14:57:19
у тебя ffmpeg должен быть скомпилирован с поддержкой opus кодека

Denis
09.07.2018
14:58:24

Google

Alex
09.07.2018
14:58:38

Denis
09.07.2018
14:58:55
'ffmpeg' is not recognized
у меня винда

Ser
09.07.2018
14:59:36

Alex
09.07.2018
14:59:37

Rio
09.07.2018
15:01:15
https://www.ffmpeg.org/ffmpeg-codecs.html
https://www.webmproject.org/docs/webm-sdk/group__decoder.html
Это читал?

Влад
09.07.2018
15:03:54
https://habr.com/post/171213/

Denis
09.07.2018
15:04:13
ffmpeg -codecs выдал кучу коддеков

Alex
09.07.2018
15:06:28
ищи среди них opus, раз не умеешь в grep

Google

Rio
09.07.2018
15:07:36
opus y тебя. Уноси обратно

Denis
09.07.2018
15:08:07
ffmpeg -i vid.webm vid.avi
вот так в ави конвертит

Alex
09.07.2018
15:08:35
ии? avi - это просто контейнер

Rio
09.07.2018
15:08:55
wow! It's a magic!

Влад
09.07.2018
15:10:38
вот так в ави конвертит
Присоединюсь к остальным товарищам. Почитай теорию по хранению видеофайлов (контейнеров) и что они собой представляют.

Denis
09.07.2018
15:11:03
ffmpeg -i vid.webm -vn -ab 128k -ar 44100 -y vid.wav
а как в питоне это запустить

Alex
09.07.2018
15:13:12
а как ты в питоне запускаешь внешние программы?

Denis
09.07.2018
15:15:58

Alex
09.07.2018
15:16:10
еще учебник почитай
или загугли

Denis
09.07.2018
15:18:19
chmod

Вадим
09.07.2018
15:18:34

Ser
09.07.2018
15:19:44
os.system()
а если ффмпег не установлен тогда ведь все сломается?

Вадим
09.07.2018
15:20:27
есть гугл-дривен-девелопмент, а тут похоже чат-дривен-девелопмент :)

Alex
09.07.2018
15:21:17

Не Глеб
09.07.2018
15:21:18

Alex
09.07.2018
15:21:35

Google

Alex
09.07.2018
15:21:40

Denis
09.07.2018
15:21:45
крайне не рекомендуется
os.system('ffmpeg -i JChA5jbRoG.webm -vn -ab 128k -ar 44100 -y JChA5jbRoG.wav')
'ffmpeg' is not recognized as an internal or external command,

Проксимов
09.07.2018
15:21:46

Не Глеб
09.07.2018
15:21:52

Alex
09.07.2018
15:21:54

Проксимов
09.07.2018
15:21:58

Denis
09.07.2018
15:22:09
а в консоле винды работает

Вадим
09.07.2018
15:22:32

Alex
09.07.2018
15:22:33

Вадим
09.07.2018
15:22:38
сабпроцесс лучше

Alex
09.07.2018
15:22:43

Вадим
09.07.2018
15:22:43
конечно

Не Глеб
09.07.2018
15:22:55

Alex
09.07.2018
15:23:21
дык если в PATH есть, то все ок

Ser
09.07.2018
15:23:24
лучше написать конвертер на питоне и импортнуть его или воткнуть исходники ффмпег как вставку кода C или на чем он там написан

Вадим
09.07.2018
15:23:37
+1
начать с os.system если не хватит - то subprocess

Denis
09.07.2018
15:25:20
FileNotFoundError: [WinError 2] The system cannot find the file specified
subprocess.run(["ffmpeg" "-i" "JChA5jbRoG.webm" "-vn" "-ab" "128k" "-ar" "44100" "-y" "JChA5jbRoG.wav"])

Не Глеб
09.07.2018
15:25:53
?♂

Alex
09.07.2018
15:25:57
во-первых у тебя ffmpeg в PATH должен быть или укажи полный путь.

Denis
09.07.2018
15:26:11
а файл в той же папке лежит что и скрипт

Google

Проксимов
09.07.2018
15:26:11

Alex
09.07.2018
15:26:12
во-вторых, ты запятые в списке пропустил что ли?

Проксимов
09.07.2018
15:26:22
Mmpeg в path закинь

Denis
09.07.2018
15:26:27

Проксимов
09.07.2018
15:26:39
он там
Ну тогда какие проблемы?

Denis
09.07.2018
15:26:41
без него cmd не запустилось бы

Не Глеб
09.07.2018
15:26:42

Проксимов
09.07.2018
15:26:51

Вадим
09.07.2018
15:28:35

Alex
09.07.2018
15:28:59
ок
в общем случае использовать os.system или subprocess с shell=True небезопасно

Denis
09.07.2018
15:31:12
subprocess.run(["C:/ffmpeg/bin/ffmpeg" "-i" "vid.webm" "-vn" "-b:a" "128k" "-ar" "44100" "-y" "vid.wav"])
аналогично

Ser
09.07.2018
15:32:04
там наверное прав не хватает на запуск

Alex
09.07.2018
15:34:08
во-вторых еще раз ты запятые не забыл в списке?

Denis
09.07.2018
15:34:32
import shlex
from subprocess import check_call
command = 'ffmpeg -i vid.webm -vn -ab 128k -ar 44100 -y vid.wav'
check_call(shlex.split(command))
работает

Alex
09.07.2018
15:34:52
нафига тебе shlex?

Rio
09.07.2018
15:35:12
Питон через что к процесам подключается? Лень гуглить

Google

Alex
09.07.2018
15:35:23
man 3 popen же

Denis
09.07.2018
15:36:03
нафига тебе shlex?
check_call(['ffmpeg', '-i', 'vid.webm', '-vn', '-ab', '128k', '-ar', '44100', '-y', 'vid.wav'])

Alex
09.07.2018
15:36:38
check_call(['ffmpeg', '-i', 'vid.webm', '-vn', '-ab', '128k', '-ar', '44100', '-y', 'vid.wav'])
мне вот интересно, ты наобум пытаешься тыкать? авось получится?

Denis
09.07.2018
15:37:11

Rio
09.07.2018
15:37:25

Denis
09.07.2018
15:37:28
и вставил его в код

Alex
09.07.2018
15:37:49
найди ошибку, сделай выводы

Denis
09.07.2018
15:38:40

Alex
09.07.2018
15:38:56
(facepalm)

Denis
09.07.2018
15:39:15

Alex
09.07.2018
15:39:53
похоже ты безнадежен

Denis
09.07.2018
15:40:08

Rio
09.07.2018
15:41:27
Если тебе 12 то все норм

Alex
09.07.2018
15:42:48
ну subprocess.run() возвращает объект CompletedProcess, subprocess.check_call() выбросит испключене, если процесс завершится с ошибкой. как бы и все.
ты сделал неправильный вывод

Denis
09.07.2018
15:44:33
ну subprocess.run() возвращает объект CompletedProcess, subprocess.check_call() выбросит испключене, если процесс завершится с ошибкой. как бы и все.
ты сделал неправильный вывод
import subprocess
subprocess.run(['ffmpeg', '-i', 'vid.webm', '-vn', '-ab', '128k', '-ar', '44100', '-y', 'vid.wav'])

Rio
09.07.2018
15:44:37
Где все? В пробках, в метро?

Denis
09.07.2018
15:44:43
работает