Beiträge von strohi

    Version v0.1.2 BETA ist raus!


    Sie kann vom Drive heruntergeladen werden und enthält die Möglichkeit, neben meiner billigen DIY-Skriptsprache auch C# zum Skripten zu verwenden.
    C#-Code muss mittels <<< oder <<<C eingeleitet werden und mit >>> abgeschlossen.


    Damit der Code am Ende auch durch den richtigen Wert ersetzt wird, nutzt man einfach ein return-Statement:

    Code
    // Hier würde statt des Skriptes vom einleitenden <<< bis zum abschließenden >>> eine 7 eingefügt werden.
    return 3 + 4;

    Ob yield return geht, habe ich noch nicht ausprobiert. Mir wäre allerdings auch nicht bewusst, in welchen Situationen man an der Stelle des Skriptes ein Array ohne weitere Formatierung einfügen wollte.


    Zusätzlich gibt es einen neuen Tab für Vor- und Nachbereitungen. In den Vorbereitungen können Statements definiert werden, die in mehreren Codeschnippseln benötigt werden, diese stehen dann überall zur Verfügung. Der Code für die Nachbereitungen wird ganz am Ende aufgerufen und kann z. B. zum Disposen genutzt werden.


    Evtl. werde ich demnächst ein paar Beispiele-Snippets raushauen.


    Sollte es im C#-Code Fehler geben, die dazu führen, dass der Code nicht funktioniert, werden Fehlermeldungen in einen Ordner "errors" geloggt. Der Ordner wird erstellt, sobald er das erste mal gebraucht wird. ;)


    ---


    Nachdem die Aussagen über LUA eher durchwachsen sind und bisher auch noch keiner geschrien hat, dass er es unbedingt haben möchte, schieb ich das mal auf. :D
    Theoretisch kann man in dieser Version schon LUA coden, allerdings gibt es die Variablen noch nicht (z. B. Filename usw.) und halt auch keine Vor- und Nachbereitungen. Von daher werd ichs wohl einfach rausnehmen. :D
    Sollte es doch jemand unbedingt haben wollen, hab ich die Änderungen weiterhin in meiner Versionshistorie und kann sie einfach wieder einbauen, außerdem sollte es schnell fertigzuschreiben sein.


    Ich würde mich als nächstes erst mal auf ein Auto-Update konzentrieren, sofern keiner schreit und was anderes dringend braucht.

    Warum packstes nicht auf ein Repository wie GitHub oder BitBucket? Da ist auch das Versionieren der Downloads leichter, du kannst da die Software besser dokumentieren und man könnte das Ding eventuell OpenSource bzw. "für einen inneren Kreis"-Source verfügbar machen. (Heißt, ich will den Code sehen und Bugs fixen, bzw. eher Bugs fixen, ich werd das Tool eh decompilen, so wie jedes .Net Tool, das interessant ist :P ).

    Ich habs auf einem Repo, aber das ist privat auf meinem Server. :D
    OpenSource will ich es erst mal nicht machen, vielleicht später mal. @CHAOSFISCH meinte damals ja, dass sich für ihn beim SJYU durch OpenSource nicht wirklich Vorteile ergeben hätten, von daher warte ich damit erst mal noch ab.


    Alternativ zu LUA (das ich persönlich gar nicht so mag, aber da würd ich mich nicht gegen sträuben) kannste auch gleich C# für Scripting einbauen, soweit ich weiß. Allerdings stellt sich die Frage, ob C# eine "leichte Skriptsprache" ist...

    Naja, für das, was damit gemacht wird, wird die Sprache wahrscheinlich kaum einen Unterschied machen. Für mehr als ein bisschen String-Manipulation ist das ja gar nicht gedacht und das ist in C# auch nicht komplexer, als in anderen Sprachen. :D
    C# hab ich mir gestern ein bisschen angeschaut, dank Roselyn sieht das echt super aus, allerdings pustet es den Download einfach mal auf 15 MB hoch. 8|


    Heute schau ich mir mal LUA und moonsharp an und dann werd ich mir überlegen, wie ich es mache. Theoretisch könnte ich auch beide reinbringen und dann einfach mal schauen, was genutzt wird. Bisher ist das so meine präferierte Idee.

    Übersehe ich da ein Problem?

    Ja, nein, vielleicht. :D
    Ich hab mich etwas ungünstig ausgedrückt.


    Im Programm kannst du bisher in den Templates Texte aus Dateien nachladen, indem du eine Art ganz primitive Skriptsprache benutzt (die aktuell noch selbstgeschrieben ist. :D ). Diese ganz primitive Sprache kam bisher noch komplett ohne Anführungszeichen für Strings aus (für Dateien einlesen, Zahlen finden und führende Nullen entfernen wurden die bisher nicht benötigt).
    Und Valcry hatte jetzt den Wunsch, dass ich da irgendwie Regex reinbringe, bzw. eben ein Ersetzen ermögliche..


    Aber "JS" bringt mich auf eine Idee - vielleicht gibts von C# ja einen Interpreter, der irgendeine einfache Programmiersprache nutzen könnte. Dann würde ich mir viel Arbeit sparen können. Ich setz mich morgen hin und gucke mal, was ich da tun kann. :)

    Guten Morgen und danke für die lieben Antworten! :)


    (Was ich auch als Lob verstehe )

    Ist es auch. :)


    Ja, die Youtube-API stinkt manchmal echt.
    Wobei sie im Moment wenigstens stabil läuft. Gab mal eine Zeit, bei der komplett zufällig laufende Uploads bei Abschluss mit Fehler beendet und dann im Video-Manager als "vom Benutzer abgebrochen" gelistet wurden. Das war nervig wie sonst was. :D


    Und .NET ist noch besser

    Oh ja. Das beste, was Microsoft je geschaffen hat. Hätten sie es von Anfang an plattformunabhängig gemacht, ich würde ihnen die Füße dafür knutschen. So ziehe ich nur meinen Hut. :D


    Wenn Du .NET nimmst, wäre es nicht möglich da einfach Regex zu ermöglichen? Klar, das ist dann für Fortgeschrittene, aber damit wäre es ja "einfach" machbar die Folgennummer und den Titel zu extrahieren und dabei gleich noch die Unterstriche durch Leerzeichen zu tauschen. Muss man halt nur noch Regex können, aber das ist ja Fleißarbeit und man könnte dann ja hier nach und nach ein paar Expressions bereitstellen. Zudem gibt's ja schöne Webseiten zum testen dafür.

    An Regex hatte ich noch gar nicht gedacht.
    Replace geht bisher allgemein noch nicht, weil ich mir noch nicht sicher bin, wie ich das mit den Strings am besten hinbekomme. Eigentlich wollte ich auf Strings, bzw. auf " komplett verzichten, damit ich das + zum Verketten von Strings und das \" zum Escapen eines Anführungszeichens nicht implementieren muss, aber ich fürchte fast, dass ich nicht drum rum kommen werde. Bisher sind ja auch die Argumente in den drei Funktionen, die ich habe, komplett ohne ".


    Ich denk mir was aus! :)


    Zum Thema "ist dann für Fortgeschrittene": das ist kein Problem. Ich ziele nicht wirklich drauf ab, die große Masse zu bedienen, von daher muss es nicht unbedingt der einfachste Weg sein. Es muss der Weg sein, der am stabilsten, performantesten und konsistentesten funktioniert. :)

    Beim YTC schaue ich ab und zu mal vorbei, ja. Bin ja auch auf der Liste für die Vorab-Versionen. :)


    Was ist der Vorteil von deinem Tool gegenüber dem YouTube Center?

    Soweit ich das bisher sehe (evtl. kann @VincentLP da ja was zu sagen), zielt das YTC eher darauf ab, auf ein angenehmes Studio zum Verwalten des kompletten Youtube-Kontos für jedermann und -frau zu sein.


    Mein Tool fokussiert sich rein aufs komplett automatische Hochladen von Videos, sprich man plant die Videos vorab zum Upload (zu diesem Zeitpunkt müssen sie noch nicht mal kodiert sein), drückt dann irgendwann auf "Start" und mein Uploader kümmert sich dann komplett selbstständig darum, dass die Videos mit richtigem Titel, Beschreibung, Tags, Thumbnail und Sichtbarkeitsstatus auf Youtube landen. Das ist, soweit ich das bisher sehen konnte, beim YTC bisher eher bedingt möglich.


    Gibt es entscheidende Vorteile außer wohl die üblichen "verschiedene, auswählbare Schablonen"?

    • Videos und Thumbnails müssen, wenn man den Upload plant, noch nicht fertig kodiert sein, da das Planen des Uploads und das Hochladen an sich komplett voneinander entkoppelt sind
    • Zur Planung neuer Videos muss man mein Programm nicht unbedingt bedienen. Je nachdem, wie man es verwendet, muss man gar nichts machen oder nur Textdateien in einen Ordner erstellen. Es reicht je nach Bedienungsart, pro Projekt einmal am Anfang ein paar Einstellungen zu treffen.
    • Veröffentlichung der Videos kann vom Uploader vollkommen automatisch geplant werden
    • Das Runterfahren nach dem Upload kann auch Prozesse überwachen, sodass man den PC erst dann runterfahren lassen kann, wenn z. B. das Schnittprogramm sich beendet hat und danach alle Videos hochgeladen wurden


    Gibts den Code auch auf Github?

    • In einer alten Version. Ich bin vor einiger Zeit auf ein privates Repo umgezogen.


    Das Tutorial hab ich jetzt noch nicht gesehen aber ich empfehle dir ebenso wie Demon immer: Lieber so kurz wie möglich.

    Danke für den Tipp!
    Ja, das ist ein bisschen kompliziert, weil mein Uploader eben kein typischer Uploader ist, sondern durch den Fokus auf vollständige Automatisierung anders zu bedienen ist.
    Vorerst habe ich ein Inhaltsverzeichnis in der Beschreibung und im angepinnten Kommentar, der das Video in vier Hauptkapitel unterteilt.


    Meinst du, es könnte helfen, stattdessen vier einzelne Videos für die Hauptfunktionalitäten hochzuladen? Diese hätten dann so ungefähr 10 Minuten pro Video.


    ---


    Zu deiner Frage, ob du den Uploader brauchst, wenn du nur eher selten Massen an Videos hochlädst:
    Ja und nein. :D
    Auch bei wenigen Videos kann eine Automatisierung ganz praktisch sein, weil du dir dann je nach genauem Vorgehen den Teil zum Hochladen vereinfachen kannst. Du würdest dann nicht mehr die Videos planen, während sie hochladen, sondern wenn sie bereits auf Youtube sind. Kommt halt drauf an, wie genau du deine Videos bearbeitest und hochlädst.


    Aber das meiste werden wohl die Leute gewinnen, die so wie ich acht bis zwölf Folgen in einem Rutsch aufnehmen, kodieren und dann direkt hochladen, das stimmt.

    Ich habe jetzt ein erstes Tutorial-Video erstellt und im Startbeitrag verlinkt.


    Außerdem ist Version 0.1.1 Beta fertiggestellt und auf dem Drive zur Verfügung gestellt.


    Änderungen:

    • Im Pfad-Fenster kann man nun Videos zum zugehörigen Pfad direkt als hochgeladen markieren
    • Bugfix: Der Link zum Kanal im Hauptfenster funktioniert nun
    • Bugfix: Der Uploader stürzt nun nicht mehr ab, wenn das hochzuladene Video gerade im Schreibzugriff eines anderen Programms ist
    • Bugfix: Das erneute Hochladen von Videos nach Umbenennen geht nun auch dann, wenn der Uploader seitdem nicht neugestartet wurde
    • Bugfix: Pfade, die im Pfad-Fenster inaktiv gesetzt werden, tauchen nun nicht mehr in der Überwachung auf

    Ok. Bin aufs Ergebnis gespannt. :)
    Falls du dann Fragen hast, kannst du die dann natürlich gerne stellen. Ich schau mal, ob ich es hinbekomme, dass ich E-Mail-Benachrichtungen für dieses Thema aktivieren kann, damit ich es auch möglichst schnell mitbekomme.


    Als ich einen Namen für das Programm gesucht habe, was "Strohis Toolset Für Uploads" natürlich definitiv das naheliegenste. Das fällt einem doch als allererstes ein. :D
    *hüstel*

    Disclaimer: Dieses Programm befindet sich aktuell im Beta-Status. Es werden noch nicht alle Bedingungen der Youtube-Developer-Api-Bedingungen erfüllt.

    Übersicht


    Strohis Toolset Für Uploads ist ein Youtube-Uploader mit dem Ziel, den Upload von Youtube-Videos möglichst vollständig zu automatisieren und als flexibles Programm für verschiedenste Situationen geeignet zu sein. Ich entwickle und verwende ihn nun schon seit ca. 2 Jahren und habe ihn mittlerweile auch so angepasst, dass ich ihn anderen zugänglich machen kann. :)


    Der STFU ist ein Programm, das von euch festgelegte Ordner überwacht und nach Videos durchsucht, die auf Youtube hochgeladen werden können. Sobald welche gefunden werden, wird der Upload automatisch gestartet und durchgeführt.

    Dabei könnt ihr mittels eines umfangreichen Templatesystems bereits im Voraus festlegen, welche Werte (Titel, Beschreibung, Thumbnails usw.) das Video erhalten soll, sodass ihr während des eigentlichen Uploads nichts mehr tun müsst. Auch Veröffentlichungszeiten kann der Uploader entsprechend eines von euch eingestellten Plans selbstständig berechnen.


    Für ganz erfahrene Experten wurde der Roslyn-Compiler von Microsoft eingebunden. Mit diesem ist es möglich, C#-Skripte direkt im Uploader einzugeben, um eure eigenen Programme direkt in den Upload-Mechanismus einzubauen.

    Download

    Links für den Uploader:

    .NET Framework Version 4.6.1 oder höher: link
    STFU runterladen: link


    Links für den Playlistservice:

    Java in mindestens Version 11: link

    SPS runterladen: link

    Weitere Links

    Datenschutzerklärung: link

    Tutorial-Playlist

    Eine Playlist mit Tutorials für das Programm ist hier zu finden:

    Geplante Funktionen in den nächsten Versionen

    • Die Entwicklung des Programms wurde eingestellt
    • Eventuell eines Tages: Restart des Programms als Java- oder Kotlin-Anwendung, um es plattformunabhängig zu machen.

    Im Moment ist es Fit For A King - Tower Of Pain.
    Hole mir da demnächst auch das Album (das ist leider nicht auf Bandcamp und jetzt muss ich schauen, wo ich das herbekomme...).



    Architects haben vor kurzem auch ne neue Single rausgehauen, das wird auch ein tolles Album, allerdings hab ich bei denen ein bisschen die Sorge, dass sie musikalisch stagnieren.