Antworten ohne Registrierung

YouTube Dump (Audiospuren von YouTube-Videos als MP3 speichern)




Liikaa
17.04.2010, 17:48 Uhr
YouTube Dump

Ich möchte euch ein Programm vorstellen, mit welchem ihr die Möglichkeit habt, die jeweils beste verfügbare Audiospur eines beliebigen YouTube-Videos zu extrahieren und vollautomatisch in eine MP3-Datei zu konvertieren. Alles was dazu nötig ist, ist der entsprechende Link aus der Adresszeile des Browsers.

Die Software nutzt freie Demuxer und Encoder, welche bei Bedarf selbst aktualisiert werden können. Mittels einer Config-Datei lässt sich der Speicherort der erstellten MP3 anpassen.


YouTube Dump benötigt das .NET Framework in der Version 2.0, welches auf den meisten Windows-Rechnern bereits vorhanden sein sollte. Ansonsten einfach von der Microsoft-Homepage nachinstallieren.

Es handelt sich um ein Standalone-Programm. Einfach den kompletten Ordner aus dem Archiv entpacken. Bugreports und Featurerequests einfach in diesen Thread oder per PM an mich.




[Zur Link-Ansicht bitte registrieren.]

#1




Gast
17.04.2010, 19:17 Uhr
Ein echt cooles Programm - vielen Dank!
#2

clown
20.04.2010, 19:24 Uhr
das geht auch mit cdex ganz gut und einfach und man benötigt kein netframe dort kann man sie auch als wmv dateien abspeichern. einfach das lied abspielen und auf aufnahme drücken. speicherort kann über eigenschaften festgelegt werden.
zudem kann man mit cdex alles aufnehmen, was über den soundbus läuft.
#3

Xiaolong
20.04.2010, 21:02 Uhr
Hätte das Programm noch eine Einstellung für Proxys wäre es schon fast perfekt =)
#4




Liikaa
20.04.2010, 22:39 Uhr
Zitat:
Zitat von Gast
Ein echt cooles Programm - vielen Dank!
Danke für das positive Feedback.

Zitat:
Zitat von clown
das geht auch mit cdex ganz gut und einfach und man benötigt kein netframe dort kann man sie auch als wmv dateien abspeichern. einfach das lied abspielen und auf aufnahme drücken. speicherort kann über eigenschaften festgelegt werden.
zudem kann man mit cdex alles aufnehmen, was über den soundbus läuft.
Das von dir beschriebene Programm und meines verfolgen grundlegend verschiedene Ansätze und sind damit, abgesehen vom Ergebnis, nicht beziehungsweise kaum miteinander vergleichbar.
Dieses erläuterte Vorgehen lässt sich sogar mit Windows-Boardmitteln realisieren, wenn auch etwas umständlicher.

Zitat:
Zitat von Xiaolong
Hätte das Programm noch eine Einstellung für Proxys wäre es schon fast perfekt =)
Werde ich bei Gelegenheit nachrüsten.

EDIT:
Habe dir eben schnell Support für einen HTTP-Proxy eingebaut. SOCKS kommt bei Bedarf. Kann derzeit nur über die 'youtubedumpgui.exe.config' konfiguriert werden.

Beispielsweise:
Code:
<?xml version="1.0" encoding="utf-8"?>
<configuration>
	<startup>
		<supportedRuntime version="v2.0.50727"/>
	</startup>
	<appSettings>
		<add key="folder" value="default" /> <!-- 'default' / 'desktop' / 'mydocuments' -->
		<add key="subfolder" value="YouTube Dump MP3s" />
		<add key="proxy_enabled" value="true" />
		<add key="proxy_address" value="http://89.222.216.101:3128" />
	</appSettings>
</configuration>

Funktionierte hier im Test problemlos, bitte allerdings trotzdem um eine kurze Rückmeldung.




[Zur Link-Ansicht bitte registrieren.]

#5

clown
21.04.2010, 01:08 Uhr
funzt dein prog auch bei anderen anbietern von viedeoprtalen?
geb zu ist nicht schlecht, aber es gibt bereits bessere progs.
ergebniss ist das gleiche. hast musi geklaut, was eigentlich nicht erlaubt ist und umgehst itunestore oder ähnliches, um es dir aufs mobiltelefon zu ziehen.
wenn dich mal mit cdex auseinandersetzt, wirst merken was dieses kleine prog alles kann.
sag nur kopierschutz von cd/dvd.
hast aber gut programmiert. hut ab.
#6

Liikaa
21.04.2010, 09:49 Uhr
Funktioniert bislang nur bei YouTube, da ich dieses Programm ursprünglich nur für den Eigenbedarf erstellt habe, da ich kein anderes finden konnte, welches meinen Ansprüchen (Standalone/Portable, Freeware, Einfach, vollautomatisch) genügt hat und ich keine anderen Videoportale nutze. Wenn du Lust auf etwas Reverse Engineering hast, kann ich den Support leicht nachrüsten. Ist alles modular aufgebaut.
Da einige meiner Kollegen ihr Interesse an dem Tool geäußert haben, habe ich es einfach mal ins Inet gestellt, ohne irgendwelche Konkurrenzgedanken.
Das mit dem 'Klauen' stimmt so nicht. Wenn du dir ein Video ansieht, lädt der Flash/HTML5-Player einen MP4/FLV-Container und spielt diesen ab. Mein Tool macht nichts anderes, bloß extrahiert es den Audiostream und konvertiert ihn, anstatt ihn wiederzugeben. Eine rechtliche Grauzone würde ich behaupten. Unter Linux beispielsweise kannst du dir den beschriebenen Container auch während der Wiedergabe direkt aus /tmp holen.
Der Kopierschutz von CDs und DVDs lässt sich auch anders umgehen, als das Material stumpf abzuspielen und mitzuschneiden. Vor allem geht es nicht nur schneller, sondern auch ohne all zu starken merklichen Qualitätsverlust. Aber das ist ein anderes Thema, was hier im Forum wohl nichts zu suchen hat.
Vielen Dank für dein Feedback.
#7

Xiaolong
21.04.2010, 10:14 Uhr
Zitat:
sag nur kopierschutz von cd/dvd.
Das ist aber nicht der Sinn dieses Programms hier, sondern nur das extrahieren einer Audiospur aus einem YT-Video, nicht mehr und nicht weniger ^^ Genauso könnte man anfangen Paint vs. Photoshop

Zitat:
Funktionierte hier im Test problemlos, bitte allerdings trotzdem um eine kurze Rückmeldung.
Hier auch SOCKS tut eigentlich nicht nötig, so wie es jetzt ist reichts auch ^^

Noch ein kleiner Tipp: Vielleicht solltest du irgendwo einen Button machen für Speicherort und Proxy. Nicht jeder kann, bzw mag es in den config Dateien zu werkeln (mir persönlich ist das wurscht ^^)

Auf jeden Fall gutes Programm
#8

Liikaa
21.04.2010, 15:37 Uhr
Joa, über eine Config-Form habe ich auch schon nachgedacht. Werde ich mal machen wenn ich Zeit dafür übrig habe. Freut mich, dass alles läuft wie es soll.
#9

giggler
21.04.2010, 15:46 Uhr
habs mir runtergeladen und möchte mich bedanken. echt cooles programm
#10

Liikaa
26.04.2010, 16:44 Uhr
Nun mit Config-Form (Screenshot siehe 1. Post) und einigen Performance-Optimierungen.



[Zur Link-Ansicht bitte registrieren.]

(unstable)
#11

Xiaolong
26.04.2010, 17:51 Uhr
Was soll das hab vorhin gepostet und nu ist der Post weg.... egal

Vorschlag für weiteres Feature. Eine Möglichkeit ID3-Tags manuell hinzuzufügen oder per RegEx. Eventuell noch eine Möglichkeit Linklisten zu bearbeiten, aber dann wirkt das Prog wieder so "aufgebläht", naja ma sehen =) Auf jeden Fall schonmal gut
Zitat:
einigen Performance-Optimierungen.
Ist darin auch enthalten, dass der mir erstmal 20 Sekunden lang "keine Rückmeldung" ausspuckt bevor er anfängt runterzuladen? ^^ Das ist bis jetzt das einzige Manko welches ich gefunden habe.
#12

Liikaa
26.04.2010, 19:01 Uhr
Zitat:
Zitat von Xiaolong
Was soll das hab vorhin gepostet und nu ist der Post weg.... egal

Vorschlag für weiteres Feature. Eine Möglichkeit ID3-Tags manuell hinzuzufügen oder per RegEx. Eventuell noch eine Möglichkeit Linklisten zu bearbeiten, aber dann wirkt das Prog wieder so "aufgebläht", naja ma sehen =) Auf jeden Fall schonmal gut


Ist darin auch enthalten, dass der mir erstmal 20 Sekunden lang "keine Rückmeldung" ausspuckt bevor er anfängt runterzuladen? ^^ Das ist bis jetzt das einzige Manko welches ich gefunden habe.
Als nächstes kommt erstmal eine Batcherweiterung, die hier ja auch schon erwünscht wurde. Werde die Main-Form aber so lassen wie sie ist. Batch wird wie der Config-Dialog eine eigene Form bekommen. Kannst ja gerne nochmal ausführen wie du dir das ID3-Tagging vorstellst. Also der Videotitel wird schon ins Title-Attribut der MP3 geschrieben, und da die Tracks bei YouTube nicht einheitlich benannt sind, ist es schwer da den Interpreten rauszuziehen. Manuelles Tagging kann ich aber gern einbauen.

Zum von dir beschriebenen Lag hab ich dir mal eine PN geschickt. Ich schätze mal es hängt beim Auflösen der Variablen, aber kannst es mit der Debug-Version ja selber testen.
#13

Xiaolong
26.04.2010, 19:21 Uhr
Zitat:
Manuelles Tagging kann ich aber gern einbauen
Wie bereits oben erwähnt. Per (manueller ^^) RegEx oder manuel, war schon richtig so

Bezüglich PN hast du schon eine Antwort.
#14

ch.ho
27.04.2010, 07:45 Uhr


[Zur Link-Ansicht bitte registrieren.]



Das ist der Freeyoutube2mp3converter. Das Programm benutze ich seit Ewigkeiten und bin begeistert davon. Ich hab schon mehrere probiert aber das ist meiner Meinung nach echt das Beste.
Vielleicht gefällt´s ja hier auch jemandem.
#15

Xiaolong
27.04.2010, 19:16 Uhr
Was mir noch bei der DeBug Version aufgefallen ist. Eventuell solltest du statt "&fmt=18" ein "&hd=1" verwenden. Und der Output landet bei mir immer bei ca. 150 kBit/s obwohl das Video mehr hat.
#16

Liikaa
28.04.2010, 13:25 Uhr
Hoi. Also fmt=18 bietete zumindest bei meinen Tests eben eine höhere Qualität als hd=1.



[Zur Link-Ansicht bitte registrieren.]

(besser)


[Zur Link-Ansicht bitte registrieren.]

(schlechter)

Beim Konvertieren in MP3 wird das "Hifi"-Present von Lame genutzt, was eigentlich ein gutes Mittelmaß zwischen Qualität und Speicherbedarf darstellen sollte, zumal ich kein Video kenne, bei welchem es dort zu Qualitätsverlust kommen würde (abgesehen von dem unvermeidbaren durch das erneute Encoding). Kannst mir gerne mal ein entsprechendes Video zeigen, bzw. ich werd einfach mal ne Option einbauen, dass man die Parameter selber festlegen kann.
#17

Xiaolong
28.04.2010, 14:06 Uhr
Beispiel:

[Zur Link-Ansicht bitte registrieren.]



Nachdem dein Prog diese Audiospur bearbeitet hat hört man einen kleinen Unterschied beim Sound (Gut, ich hab hier eine etwas bessere Anlage stehen vielleicht deswegen oder es ist Einbildung, seis drum ^^), hab aber nicht bedacht dass bei Konvertierung immer Qualität verloren geht. Zudem sieht es so aus als ob Windows die ABR anzeigt, da die MP3's nachher aber VBR haben ist alles in Ordnung ^^

Wird es auch eine Möglichkeit geben Linklisten einzufügen? Wenn nein könntest du mir sagen mit welchen Parameter ich die *.exe aufrufen kann?

Zitat:
start youtubedumpgui.exe -l youtubelink -q qualität -r regex / tagginginfos
so in der Art etwa ^^
#18

Liikaa
29.04.2010, 16:14 Uhr
Habe nun die Möglichkeit eingebaut, Link sowie Qualität per Parameter zu übergeben. Zudem lässt sich die Qualität (Lame) auch im Config-Dialog ändern. Ein Regex zum extrahieren von Titel und Künstler kann in der Config-Datei festgelegt werden. Es gilt zu beachten, dass es sich um eine XML-Datei handelt, und daher alle Sonderzeichen via HTML-Entities verarbeitet werden müssen (siehe Beispiel in der Config-Datei).
Code:
<add key="regex" value="(?&lt;artist&gt;.*) - (?&lt;title&gt;.*)" />
Die Gruppen sind mit "artist" oder "title" zu benennen.

Ein Aufruf mit Parametern startet den entsprtechenden Download sofort und überschreibt die voreingestellte Qualität mit der per Parameter übergebenen
Code:
.\youtubedumpgui.exe http://www.youtube.com/watch?v=OagijDvlQgU
bzw. mit Qualitätsstufe
Code:
.\youtubedumpgui.exe http://www.youtube.com/watch?v=OagijDvlQgU insane
Folgende Qualitätsstufen sind möglich (Lame-Presets):
  • hifi - ~160 kbps VBR
  • extreme - ~245 kbps VBR
  • insane - 320 kbps CBR

Die nächste Version wird eine integrierte Automatisierungslösung enthalten.



[Zur Link-Ansicht bitte registrieren.]

(unstable)
#19

Xiaolong
29.04.2010, 19:51 Uhr
Zitat:
Die nächste Version wird eine integrierte Automatisierungslösung enthalten.
Danke =) Dann muss ich net ständig die Linklisten per PHP an das Programm schicken, solange nehm ich aber damit vorlieb =)

So kleiner Zwischenbericht:

Starte ich das Programm per Batchscript mit Parametern kommt 1x ein Fenster wo stumpf "Error!" steht und 1x startet das programm normal und lädt auch direkt runter!

Noch ein Nachtrag: 2x gings gut letzt kommt nur noch das Fenster mit "Error!" Der part nach dem "?v" wird nicht übertragen, auch nicht das " = ", kann aber sein, dass Batch hier rumzickt....
#20

Liikaa
29.04.2010, 21:53 Uhr
Da musst du wohl was escapen. Ich arbeite mit PowerShell und mit folgendem Script lässt sich das hier problemlos automatisieren:
Code:
Set-ExecutionPolicy unrestricted
$ids = "OagijDvlQgU", "M5HAveREsJo", "YRTSu7i8pRE"
$prefix = "http://www.youtube.com/watch?v="
$quality = "hifi"
foreach ($id in $ids) {
    ./youtubedumpgui.exe $prefix$id $quality
}
Zeigt also, dass es von Programmseite aus kein Problem darstellen sollte.
#21

Xiaolong
29.04.2010, 22:34 Uhr
Hej, danke für den Tipp mit der PowerShell, ist ja ein wirklich nützliches Werkzeug, wenn ich so lese was man alles damit anstellen kann ^^

Ja, von Programmseite ist alles in Ordnung, Batch hat da vorhin irgendwie rumgezickt, aber mit der PowerShell ist echt einfacher. Was auch positiv zu erwähnen ist, ist die Parallelisierung (Nutzung von mehr als 1 Kern) =)
#22

Liikaa
29.04.2010, 22:44 Uhr
Ja richtig. Für jemanden wie mich, erleichtert einem die PowerShell einiges, da man nicht immer zwischen Linux und Windows umdenken muss (zumindest deutlich weniger).
#23


Facebook

Jahresarchive