2017-06-14 4 views
0

Derzeit kämpfe ich mit einer Aufgabe, die ich mit einem Perl-Skript auf einer Synology DiskStation implementieren möchte. Worüber ich nicht sicher bin, ist der zu verwendende Befehl ffmpeg. Eigentlich unterstützt die DiskStation die Hardware-Kodierung und es funktioniert recht gut in MKV-Dateien. Das einzige, was fehlt: Ich möchte nicht in MKV kodieren, da es schwierig ist, mit meiner anderen Software zum Schneiden an diesen Dateien zu arbeiten. Daher möchte ich wieder zu einem Transportstream codieren. Ich verwende diesen Befehl zur Zeit:ffmpeg: Transport-Stream (MPEG2 oder h264) in einen anderen Transportstream umwandeln (h264)

sudo ffmpeg -hide_banner -loglevel verbose -vaapi_device /dev/dri/renderD128 -i my_input_file.ts -map 0:v -map 0:a -c:v h264_vaapi -vf yadif,format=nv12,hwupload -y -b:v my_bitrate my_output_file.ts 

Nun bekomme ich immer eine Fehlermeldung:

Automatic encoder selection failed for output stream #0:1. Default encoder for format mpegts (codec mp2) is probably disabled. Please choose an encoder manually. 
Error selecting an encoder for stream 0:1 

Für mich sieht es aus wie es nicht ist zu erkennen, dass ich mit h264 codieren möchten und nicht der Standard-Encoder für Transportströme.

Irgendwelche Ideen dazu?

Erläuterung:

  • Die Zuordnung erfolgt loswerden nicht unterstützten Ströme wie Teletext und auch einige Ströme zu reduzieren, wie ich mehr als eine Sprache Strom normalerweise bekommen.
  • Das sudo ist erforderlich, da nur root vaapi Gerät auf der Synology (vielleicht auf allen Systemen)

Es wäre toll verwenden darf, wenn mir jemand eine helfende Hand auf diese geben könnte.

Danke, Matthias

Antwort

0

Der Fehler zu dem Audiostrom bezieht. Standard-Encoder ist mp2, aber Ihr Build scheint es nicht zu haben. Fügen Sie -c:a aac (sicherer) oder -c:a copy hinzu. Letzteres funktioniert, wenn der Eingangs-Audiocodec von ffmpegs MPEG-TS-Muxer unterstützt wird.

+0

Großartig, vielen Dank! Das hat den Trick gemacht. Obwohl ich natürlich den mp2-Codec kenne, habe ich einfach nicht über die Möglichkeit nachgedacht, dass es ein Problem mit dem Audio geben könnte. – MatMike

Verwandte Themen