Alô!
Estou me aventurando agora pelo mundo do Python. Preciso fazer algo que, quando receber uma mensagem no MQTT, comece a gravar usando o ffmpeg no PC que ele está. O código abaixo funciona bem… para uma camera só! Com mais ele não executa (vou mostrar onde acho que to errando)
import paho.mqtt.client as paho
import json
import os
def on_message(client, userdata, message):
content = str(message.payload.decode("utf-8"))
conversor(content)
def on_connect(client, userdata, flags, rc):
client.subscribe("cameras/gravacao")
def on_disconnect():
connect_to_mqtt()
def connect_to_mqtt():
client = paho.Client("id")
client.username_pw_set("", "")
client.on_connect = on_connect
client.on_disconnect = on_disconnect
client.on_message = on_message
client.connect("localhost", 1883, 60)
client.loop_forever()
def conversor(content):
data = json.loads(content)
for n in range(data.get("videos")):
os.system("ffmpeg -i " + data.get("remote_urls")[n]['url'] + " -acodec copy -vcodec copy /home/user/Vídeos/cam.mp4")
//Aqui, eu sei que ele vai gravar tudo em um arquivo só, e não é o que eu quero. Então, eu tentei fazer:
//os.system("ffmpeg -i " + data.get("remote_urls")[n]['url'] + " -acodec copy -vcodec copy /home/user/Vídeos/cam" + n + ".mp4")
//Mas ele nem chegou a gravar :C
connect_to_mqtt()
To entrando no mundo python agora, vindo do Java, vocês poderiam me ajudar??