frontendler
Goto Top

Streamlink Batchskript - Nach Aufnahme Datei convertieren nicht möglich (wegen Titel)

Moin,

ich bräuchte wieder eine kleine Hilfe.
Aktuell nutze ich Streamlink für Twitch Stream aufnahmen, was soweit auch gut funktioniert (mit eigen erstellter Batch damit alles automatisch abläuft).
(Kurze Erklärung zu Streamlink - Streamlink ist ein Befehlszeilen-Dienstprogramm, das Videostreams von verschiedenen Diensten in einen Videoplayer, wie z. B. VLC, leitet oder aufnimmt. https://streamlink.github.io/ )

Nun komme ich an einer Stelle nicht weiter.
Ich kriege die erstellte Datei nicht direkt konvertiert (mit ffmpeg) - nicht weil ich nicht weiß wie, sondern es liegt am Titel.
Grund dafür (Siehe hier):
@echo off
for /f "tokens=2 delims==" %%a in ('wmic OS Get localdatetime /value') do set "dt=%%a"  
set "DD=%dt:~6,2%" & set "MM=%dt:~4,2%" & set "YYYY=%dt:~0,4%" & set "YY=%dt:~2,2%"  
set "HH=%dt:~8,2%" & set "Min=%dt:~10,2%" & set "Sec=%dt:~12,2%"  
set "datestamp=%DD%%MM%%YYYY%"  
set "timestamp=%HH%%Min%%Sec%"  
set "fullstamp=%DD%-%MM%-%YYYY%__%HH%-%Min%-%Sec%"  

:loop
@echo off
 streamlink -o "C:\Users\NAME\Desktop\dracon__[%fullstamp%]__{title}__{category}.ts" twitch.tv/dracon best --twitch-disable-ads && cd C:\Users\NAME\Desktop\ffmpeg-master-latest-win64-gpl\bin\ && ffmpeg -i C:\Users\NAME\Desktop\dracon__[%fullstamp%]__{title}__{category}.ts -c copy C:\Users\NAME\Desktop\dracon__[%fullstamp%]__{title}__{category}.mp4  

echo:} 
timeout /t 5
 goto loop

Aktuell kenne ich die Probleme, allerdings weiß ich nicht wie ich diese Löse, weil wie man hier sieht:
dracon__[%fullstamp%]__{title}__{category}.ts
Wird {title} und {category} aus Twitch .tv Live ausgelesen und erstellt, wodurch ich nach der Streamlink Aufnahme, also nach diesen Zeilen:
streamlink -o "C:\Users\NAME\Desktop\dracon__[%fullstamp%]__{title}__{category}.ts" twitch.tv/draconas best --twitch-disable-ads  
Einen Titel habe, den ich in der Batch noch nicht kenne, jedoch auf dem Dektop schon erstellt wurde (weil der Stream ja schon aufgenommen wird und die Datei ja schon existiert).
Wodurch die folgenden Zeilen mir nichts bringen, habs ja versucht, aber er findet die Datei nicht, weil ich in der Batch noch keinen Titel habe.
Gibt es eine Möglichkeit wie ich den Titel der gerade erstellten Datei ausgelesen kriege?
Denn ich wollte möglichst wenigstens das Datum und wenn möglich die Uhrzeit im Titel haben, damit alles sortiert ist.
Oder hat da jemand eine einfachere Lösung die ich gerade nicht sehe?
(Dazu muss gesagt sein, es sind meist mehrere VoDs dort vorhanden, wodurch alle einen anderen Namen brauchen, daher wollte ich es mit einem Datum benennen, außer es geht nicht?)
Da ich hier gerade nicht weiter komme, konnte ich die Fehler die vllt danach kommen, noch nicht angehen (Also mit den "&&" meine ich es, oder ob ich wieder neue Zeilen nehmen muss wegen Verzeichnis wechseln etc.. Aber das kommt ja erst nach diesem Problem hier) .

Wäre super wenn mir da jemand helfen könnte.
Vielen Dank

Greetz

Content-Key: 43671707283

Url: https://administrator.de/contentid/43671707283

Printed on: May 3, 2024 at 06:05 o'clock

Member: CH3COOH
CH3COOH Nov 01, 2023 at 14:15:40 (UTC)
Goto Top
Hi,
verschieb doch einfach die Dateien nach jedem Download bzw. lösche die TS-Dateien, nachdem konvertieren ?
Da du dich in einem ForEach befindest sehe ich auch keinen Grund einen "Ein-Zeiler" mit && zu bauen.
Wenn es nur eine .TS-Datei gibt, gibt es keinen Grund den genauen Dateinamen direkt anzugeben face-wink der lässt sich ja schnell abgreifen.
Gruß
Member: FrontEndler
FrontEndler Nov 02, 2023 at 07:58:38 (UTC)
Goto Top
Hi, danke erstmal für deine Antwort.
Verschieben ist nur möglich wenn ich den Titel kenne.
Da der Titel {title}__{category} Live von Twitch tv abgefragt wird und dann in die Datei dessen Titel geschrieben wird, muss ich die Datei abfragen, damit ich sagen kann, Verschiebe XY nach B zb..
Klar kann ich den Titel auch lassen und sagen Channel.ts und dann verschieb die TS Datei nach B.
Allerdings wollte ich nicht alles selber einzeln beschriften. Nach der Arbeit bin ich erst in der Nacht Home sowie jetzt und da hab ich wenig Lust mich ran zusetzen und die Titel zu ändern xD.
Wenn ich allerdings den Titel abgegriffen kriege und in eine TXT dort bei der .TS Datei reinschreiben/erstellen kann, dann wäre das auch ok für mich, wichtig ist für mich aktuell nur:
Das er dann nach dem konvertieren zb den Text aus der TXT in die neue Datei schreibt.
Nur klingt das alles gerade sehr umständlich..
Zumal ich dann ein wenig Hilfe bräuchte :D.
Member: CH3COOH
CH3COOH Nov 02, 2023 at 10:32:20 (UTC)
Goto Top
Hi
Zitat von @FrontEndler:
Verschieben ist nur möglich wenn ich den Titel kenne.
Wie kommst du darauf?
In der CMD kannst du mit Befehle move Dateien bewegen.
https://learn.microsoft.com/en-us/windows-server/administration/windows- ...
Dies geht auch per Wildcard [*] zum Beispiel:
move %userprofile%\Downloads\Steamlink_draconas\*.ts F:\Video\Source\


Zitat von @FrontEndler:
Nur klingt das alles gerade sehr umständlich..
Könnte viel schlimmer sein. Du bist ja immer innerhalb des ForEach oder werden mehrere .ts-Dateien mit einem ForEach-Durchlauf erzeugt?

Gruß