ragan62
Lieutenant
- Registriert
- Jan. 2019
- Beiträge
- 621
Hallo, folgende Sache.
Ich speichere Aufnahmen vom Sat-Receiver auf meinem NAS/Server mit Debian 9.
Die Dateien liegen als .TS-Dateien mit h264/ac3 vor.
Damit sich andere die Aufnahmen im Webbrowser ansehen können, wandeln sie die Aufnahmen nach Bedarf
mit ffmpeg in .mp4-Dateien um, die dann per HTML5-Player gestreamt werden.
Das Kommando lautet dabei: ffmpeg -y -i input.ts -c:v copy -c:a aac output.mp4
Ich hatte mir gedacht: Wandel alle .ts in .mp4 und das Umwandeln auf dem Server entfällt.
War wohl nichts: Bei ALLEN anderen Abspielern (auch VLC) ist der Ton ca. 1 Sekunde asynchron.
Die Fragen:
1. Wo liegt mein Fehler? (wenn´s mein Fehler ist)
2. Wie geht dann Richtig?
Danke, ragan62
Ich speichere Aufnahmen vom Sat-Receiver auf meinem NAS/Server mit Debian 9.
Die Dateien liegen als .TS-Dateien mit h264/ac3 vor.
Damit sich andere die Aufnahmen im Webbrowser ansehen können, wandeln sie die Aufnahmen nach Bedarf
mit ffmpeg in .mp4-Dateien um, die dann per HTML5-Player gestreamt werden.
Das Kommando lautet dabei: ffmpeg -y -i input.ts -c:v copy -c:a aac output.mp4
<?php
sleep(5);
if(isset($_GET["id"])) $alt = $_GET["id"];
$path_parts = pathinfo("$alt");
$dateiname = $path_parts['filename'];
$neu = "/MP4/$dateiname.mp4";
$alt = escapeshellarg($alt);
$neu = escapeshellarg($neu);
exec("ffmpeg -y -i $alt -c:v copy -c:a aac $neu > /dev/null & echo $!", $output);
?>
sleep(5);
if(isset($_GET["id"])) $alt = $_GET["id"];
$path_parts = pathinfo("$alt");
$dateiname = $path_parts['filename'];
$neu = "/MP4/$dateiname.mp4";
$alt = escapeshellarg($alt);
$neu = escapeshellarg($neu);
exec("ffmpeg -y -i $alt -c:v copy -c:a aac $neu > /dev/null & echo $!", $output);
?>
Ich hatte mir gedacht: Wandel alle .ts in .mp4 und das Umwandeln auf dem Server entfällt.
War wohl nichts: Bei ALLEN anderen Abspielern (auch VLC) ist der Ton ca. 1 Sekunde asynchron.
Die Fragen:
1. Wo liegt mein Fehler? (wenn´s mein Fehler ist)
2. Wie geht dann Richtig?
Danke, ragan62