Jun 24, 2018 - 07:59 AM

This forum is locked: you cannot post, reply to, or edit topics.   This topic is locked: you cannot edit posts or make replies.
View previous topic Printable version Log in to check your private messages View next topic
Author Message
Witwe_Bolte
Post subject: toolame oggdec; leerzeichen parameter shell  PostPosted: Jun 25, 2006 - 10:44 AM




Joined: Apr 09, 2005
Posts: 41

mein 1. Versuch mit sed hakt vielleicht doch nur an toolame:
meine ogg-Dateien werden im aktuellen Verzeichnis so in wav umgewandelt:
find -type f|sed -e 's/['.']['/']//' -e 's/Joss/"&/g' -e 's/ogg/&"/g'|xargs oggdec
(Nicht auf die Détails in sed achten. Damit setz ich die Dateinamen nur in Doublequotes, weil sie Leerzeichen enthalten und die fangen halt alle mit 'Joss' an.)
soweit so gut. um die wav-dateien jetzt in mp3 umzuwandeln, hab ich es so versucht:
find -type f|grep wav|sed -e 's/['.']['/']//' -e 's/Joss/"&/g' -e 's/wav/&"/g'|toolame
Da antwortet mir toolame mit "USAGE usw."
Soweit ersichtlich hab ich auch alle Varianten mit xargs oder xargs -0 vor toolame durch, egal, ob ich wav mit grep oder mit find *wav rausfiltere.
Bei diesen Varianten meldet toolame "excess arg". Für Exzesse hab ich ja grds eine Schwäche.
Aber hilft mir hier einer?

_________________
unsensibel, aber empfindlich
 
 View user's profile Send private message Send e-mail  
Reply with quote Back to top
makke
Post subject: toolame oggdec; leerzeichen parameter shell  PostPosted: Jun 25, 2006 - 11:17 AM
Team Member
Team Member



Joined: Jan 02, 2005
Posts: 660
Location: Hagen
Ich würde eine einfache for-schleife machen.
 
 View user's profile Send private message  
Reply with quote Back to top
Witwe_Bolte
Post subject: RE: toolame oggdec; leerzeichen parameter shell  PostPosted: Jun 25, 2006 - 12:31 PM




Joined: Apr 09, 2005
Posts: 41

danke für die prompte antwort. damit hatte ich erstmal angefangen. hab das ergebnis von find und sed in ne variable eingelesen und über die die for-schleife laufen lassen. toolame $datei in der schleife führte aber zum gleichen ergebnis, obwohl zwei echos sowohl die liste als auch den dateinamen richtig ausgegeben haben.
beim versuch, find an ein array zu übergeben, bin ich trotz D i c k e m shell-buch wohl an der syntax gescheitert.

_________________
unsensibel, aber empfindlich
 
 View user's profile Send private message Send e-mail  
Reply with quote Back to top
makke
Post subject: RE: toolame oggdec; leerzeichen parameter shell  PostPosted: Jun 25, 2006 - 01:53 PM
Team Member
Team Member



Joined: Jan 02, 2005
Posts: 660
Location: Hagen
wobei ich den sinn: ogg -> wav -> mp3 nicht ganz verstehe
jede kodierung bringt wieder einen qualitätsverlust
http://kanotix.com/index.php?name=PNphp ... mp;t=15873
 
 View user's profile Send private message  
Reply with quote Back to top
Witwe_Bolte
Post subject:   PostPosted: Jun 26, 2006 - 08:16 AM




Joined: Apr 09, 2005
Posts: 41

Schon klar. Das ist auch der Weisheit letzter Schluß.
**censored** bekomme ich sonst auf 64bit nicht hin. Und meine CDs habe ich zum großen Teil als ogg auf der Platte. Hab nix gefunden, was direkt von ogg nach mp3 konvertiert. Der Player im neuen Auto von Weibi kann entgegen meinem Auftrag aber doch nur mp3 spielen. Keine Lust mit dem Autohaus zu streiten, weil ich schon hauptberuflich streite.
Außerdem wollte ich endlich mal was mit der Shell machen außer an fertigen Skripten rumzufummeln. ( Deinen Link kannte ich schon. Hab natürlich vorher das Forum durchwühlt.)

_________________
unsensibel, aber empfindlich
 
 View user's profile Send private message Send e-mail  
Reply with quote Back to top
Witwe_Bolte
Post subject: Bitte nochmal:  PostPosted: Jun 29, 2006 - 09:55 PM




Joined: Apr 09, 2005
Posts: 41

Jetzt hab ich es mit Variablen und Pipes direkt aufgegeben.
Mit
ls -1Q>>dirliste
hab ich erstmal alle Dateinamen in Anführungszeichen zeilenweise in dirliste.
Mache ich dann
while read i
do
oggdec $i
done < dirliste
beklagt sich oggdec, daß es die Datei nicht findet.
Mache ich in der while-schleife statt oggdec echo, wird brav zeilenweise in Anführungszeichen ausgegeben.
Daß oggdec * im CWD brav seine Arbeit versieht, bringt mich nicht weiter. Dann lern ich das ja nie Traurig

_________________
unsensibel, aber empfindlich
 
 View user's profile Send private message Send e-mail  
Reply with quote Back to top
Kano
Post subject: Bitte nochmal:  PostPosted: Jun 29, 2006 - 09:56 PM
Developer
Developer



Joined: Dec 17, 2003
Posts: 10903

toolame ist kein mp3, das ist mpeg 1 layer 2 und nicht 3.
 
 View user's profile Send private message Send e-mail  
Reply with quote Back to top
Witwe_Bolte
Post subject:   PostPosted: Jul 09, 2006 - 07:40 AM




Joined: Apr 09, 2005
Posts: 41

stimmt schon. Weil es aber problemlos abgespielt wird, ist mir das egal.
Das mit den Leerzeichen hab ich zwischenzeitlich mit Python erledigt. Ist eh hübscher.

_________________
unsensibel, aber empfindlich
 
 View user's profile Send private message Send e-mail  
Reply with quote Back to top
schnorrer
Post subject:   PostPosted: Jul 09, 2006 - 12:52 PM




Joined: Jan 09, 2006
Posts: 1539

problem von tolame es kann Leehrzeichen nicht richtig verarbeiten, vor allem wenn sie per Pipe übergeben werden.
wandle alle filenamen mit leerzeichen in solche mit '_'.

ine einer Schleife:

for $datei
do
tolame $datei -weitere_parameter -parameter
shift $datei
done
 
 View user's profile Send private message  
Reply with quote Back to top
Kano
Post subject:   PostPosted: Jul 09, 2006 - 03:44 PM
Developer
Developer



Joined: Dec 17, 2003
Posts: 10903

Man kann sich auch mit dem Fuss am Kopf kratzen, wenn man will Winken

toolame erstellt mp2, ergo - direkt ohne wav:

for x in *.ogg; do ogg123 "$x" -dwav -f-|toolame - "$(echo $x|sed s/ogg/mp2/)" ; done

Wer aus was für Gründen auch immer mit nem wav Zwischenfile arbeiten will:

for x in *.ogg; do oggdec "$x"; toolame "$(echo $x|sed s/ogg/wav/)" "$(echo $x|sed s/ogg/mp2/)" ; done
 
 View user's profile Send private message Send e-mail  
Reply with quote Back to top
Witwe_Bolte
Post subject:   PostPosted: Jul 09, 2006 - 03:47 PM




Joined: Apr 09, 2005
Posts: 41

Danke Schnorrer. Glaube ich eher nicht, weil toolame keine Probleme hat, wenn direkt eine Datei in Anführungszeichen mitgegeben wird.
Die Umbennung gefällt mir ebensowenig wie mit $IFS rumzuhantieren. Ursprungsdatei und Shell-Umgebung sollen unberührt bleiben. Fall es einer brauchen kann, hier meine python Lösung:
#!/usr/bin/env python
import os, string, re

def main():

liste=os.listdir(os.getcwd())
for datei in liste:
if re.search('.ogg',datei) is False:
continue
eingabe='"'+datei+'"'
kommando='oggdec '+eingabe
os.popen(kommando,'w')
liste=os.listdir(os.getcwd())
for datei in liste:
if re.search('.wav',datei) is False:
continue
eingabe='"'+datei+'"'
kommando='toolame '+eingabe
os.popen(kommando,'w')
main()

Wer bei Python ähnlich neu ist: Die Einrückungen werden beim Schriben zwar angezeigt, im Forum dann aber nicht. Muscha von Hand machen. (Aber das kennen wir Computer-Menschen ja nicht anders Smilie)
Beim Aufruf aus ner Shell muß man also in dem verzeichnis sein, in dem die Dateien liegen.
Ob re hier überhaupt richtig verwendet wurde, weiß ich nicht. Ist aber nicht so tragisch, da das Skript jedenfalls nicht abbricht.

_________________
unsensibel, aber empfindlich


Last edited by Witwe_Bolte on Jul 09, 2006 - 06:31 PM; edited 3 times in total
 
 View user's profile Send private message Send e-mail  
Reply with quote Back to top
Kano
Post subject:   PostPosted: Jul 09, 2006 - 03:53 PM
Developer
Developer



Joined: Dec 17, 2003
Posts: 10903

Was für ne schöne kurze Scriptsprache Winken
 
 View user's profile Send private message Send e-mail  
Reply with quote Back to top
slam
Post subject:   PostPosted: Jul 09, 2006 - 06:09 PM
Webmaster
Webmaster



Joined: Oct 05, 2004
Posts: 1620
Location: w3
Man könnte auch code-Boxen verwenden, die hier im Forum freizügig und gratis angeboten werden - dann wird die Wurst wenigstens leserlich ...
Greetings,
Chris

_________________
"An operating system must operate."
http://kanotix.com/module-pncPayPal.html
Support Kanotix!
 
 View user's profile Send private message Visit poster's website  
Reply with quote Back to top
Witwe_Bolte
Post subject: liest ja jetzt eh keiner mehr  PostPosted: Jul 18, 2006 - 12:19 PM




Joined: Apr 09, 2005
Posts: 41

...dann kann ich das ja jetzt mal mit dieser Code-Box probieren.
Here we go:
Code:

#!/usr/bin/env python
import os, string

def main():
   
   liste=os.listdir(os.getcwd())
   for datei in liste:
      if datei.endswith('ogg') == False:
         continue
      eingabe='"'+datei+'"'
      kommando='oggdec '+eingabe
      os.popen(kommando,'w')
      
   liste=os.listdir(os.getcwd())
   for datei in liste:
      if datei.endswith('wav') == False:
         continue
      eingabe='"'+datei+'"'
      kommando='**censored** '+eingabe
      os.popen(kommando,'w')
      
   kommando='rm -f *.wav'
   os.popen(kommando,'w')
   
main()


_________________
unsensibel, aber empfindlich
 
 View user's profile Send private message Send e-mail  
Reply with quote Back to top
Kano
Post subject: RE: liest ja jetzt eh keiner mehr  PostPosted: Jul 18, 2006 - 12:29 PM
Developer
Developer



Joined: Dec 17, 2003
Posts: 10903

Kleine Variante mit basename statt sed:

for x in *.ogg; do ogg123 "$x" -dwav -f-|toolame - "$(basename "$x" .ogg).mp2"; done
 
 View user's profile Send private message Send e-mail  
Reply with quote Back to top
Display posts from previous:     
Jump to:  
All times are GMT + 1 Hour
This forum is locked: you cannot post, reply to, or edit topics.   This topic is locked: you cannot edit posts or make replies.
View previous topic Printable version Log in to check your private messages View next topic
Powered by PNphpBB2 © 2003-2006 The PNphpBB Group
Credits
 
RSS All News | English News | Deutsche News | All Forum Topics | English Forum Topics | Deutsche Forum Topics
Logos and trademarks are the property of their respective owners, comments are property of their posters, the rest is © 2004 - 2006 by Jörg Schirottke (Kano).
Consult Impressum and Legal Terms for details. Kanotix is Free Software released under the GNU/GPL license.
This CMS is powered by PostNuke, all themes used at this site are released under the GNU/GPL license. designed and hosted by w3you

Fatal error: Call to a member function Execute() on a non-object in /srv/www/subdomains/archive/includes/pnSession.php on line 378