Inhoudsopgave:
2025 Auteur: John Day | [email protected]. Laatst gewijzigd: 2025-01-13 06:57
Als je op mij lijkt, verwachten je bazen eigenlijk dat je werkt terwijl je aan het werk bent, en niet naar je favoriete radioprogramma zit te luisteren zoals je zou willen. In deze instructable laat ik zien hoe je elke audiostream automatisch kunt opnemen met mplayer, lame en cron om de taak te plannen.
Stap 1: Ubuntu downloaden, mappen maken
Voor deze instructable heb je Ubuntu Linux nodig. Ik voer 7.04 uit, maar dit kan ook voor andere versies werken. Als mensen geïnteresseerd lijken, zal ik een aparte instructie schrijven waarin ik laat zien hoe je dit met Windows kunt doen. Als je Ubuntu al gebruikt, zijn de enige dingen die je nodig hebt vrij beschikbaar via apt. Gebruik de volgende commando's op een terminal om Lame, Mplayer en KCron.sudo apt-get install lame mplayer kcron Typ je wachtwoord in en bevestig de installaties. Gebruik de volgende opdrachten om de mappen te maken die je nodig hebt.sudo mkdir /scriptsmkdir /home/ gebruikersnaam /Music/ NameOfShow En deze opdracht om eigenaar te worden van de map die je zojuist hebt gemaakt: sudo chown YourUserName /scripts
Stap 2: Streamrecord-script maken
De stappen voor het script dat we gebruiken zijn als volgt: 1. Open mplayer, wijs naar audiostream op internet2. Neem stream op naar wav-bestand in /tmp directory3. Dood het mplayer-proces wanneer de show eindigt4. Converteer /tmp/mystream.wav naar mp3-bestand, noem het met de datum van vandaag en verplaats het naar een meer 'gebruiksvriendelijke' map onder gebruikersmap.5. Verwijder het wav-bestand in de /tmp-directory. Om dit te bereiken, moet u eerst de URL achterhalen van de stream die u opent. Ik gebruik bijvoorbeeld de CSPAN-radiostream en neem deze op tussen 12.00 uur en 14.00 uur van maandag tot en met vrijdag. Hier is de tekst van het script:#!/bin/shNOW=$(date +"%b-%d-%y")mplayer " mms://rx-wes-sea20.rbn.com/farm/pull/tx -rbn-sea34:1259/wmtencoder/cspan/cspan/wmlive/cspan4db.asf " -ao pcm:file=/tmp/mystream.wav -vc dummy -vo null;lame -ms /tmp/mystream.wav -o " /home/ shawn /Music/CSPAN/My Show - $NOW.mp3";rm /tmp/mystream.wav;Kopieer deze tekst naar een leeg bestand met Gedit of Vi, en sla het op als "streamrecord". U moet de cursief gedrukte delen van het script bewerken, omdat deze niet op u van toepassing zijn. De tekst na mplayer is de URL naar de stream die u wilt opnemen, deze moet worden vervangen door de URL van uw stream, die u gemakkelijk kunt vinden door naar de stream in Firefox te gaan, de mplayer-plug-in te laten starten en vervolgens met de rechtermuisknop te klikken en kies "URL kopiëren".
Stap 3: Script opslaan, Pkill-script maken en scripts uitvoerbaar maken
Vervolgens slaan we het script op in de map /scripts. Ga na het opslaan naar een terminalsessie en typ het volgende:
cd /scripts chmod 700 streamrecord (Hierdoor wordt het script dat u zojuist hebt gemaakt een uitvoerbaar bestand.) Maak nog een bestand in de map /scripts. Dit wordt pkill genoemd en wordt je huurmoordenaar. Dat wil zeggen, het zal het mplayer-proces beëindigen zodat het eerste script kan doorgaan met het hernoemen en coderen van de vastgelegde stream. De volledige tekst van het pkill-script is precies als volgt: pkill mplayer Dit doorbreekt de scriptetiquette, omdat #!/bin/sh niet bovenaan staat, maar het werkt voor mij. Nadat u het bestand pkill in de /scripts-directory hebt opgeslagen, gebruikt u de opdracht chmod opnieuw om deze uitvoerbaar te maken. Je moet in een terminalsessie zijn, eerst in de /scripts directory, typ dan: chmod 700 pkill Een snelle "ls" toont je de bestanden die je zojuist hebt gemaakt, nu in een mooie groene kleur in plaats van het standaard zwart.
Stap 4: KCron gebruiken om uw taken te plannen
Cron, het prachtige maar uiterst verwarrende kleine tekstbestand en de bijbehorende service verdient een hele reeks instructies op zich. Om dingen eenvoudiger te maken, gaan we in plaats daarvan KCron gebruiken (die we eerder hebben geïnstalleerd). Als de installatie volgens plan verliep, zou u KCron moeten zien onder Systeemhulpprogramma's van toepassingen. Als alternatief kan het programma worden gestart vanaf een terminal door "kcron" te typen. Gebruik Ctrl+N om een nieuwe taak aan te maken en configureer de taak zoals weergegeven in de afbeelding. In de afbeelding kun je zien dat ik het programma /scripts/streamrecord heb geconfigureerd om alle maanden te draaien, ma-vr om 12.00 uur met 0 minuten.
Het tweede script dat je hebt gemaakt, 'pkill' genaamd, is wat mplayer feitelijk beëindigt en het eerste script laat doorgaan. U moet ook een andere cron-taak instellen om dat script uit te voeren. Voor mijn voorbeeld eindig ik met twee banen in KCron. (zie 2e afbeelding)
Stap 5: U bent in zaken
Dat is alles, om uw handwerk te testen, kunt u met de rechtermuisknop op de streamrecord-taak in Kcron klikken, 'nu uitvoeren' kiezen en zoeken naar mystream.wav in uw /tmp-map. Als het er is (en snel groeit), voer dan de pkill-taak uit en je zou spoedig de mystream.wav uit je /tmp-directory moeten zien verdwijnen, en een nieuw.mp3-bestand in de directory die je hebt opgegeven toen je het script aanpaste. Als je een lange show opneemt, houd er dan rekening mee dat het behoorlijk wat tijd kost om je.wav-bestand te coderen. Bij een show van 3 uur die ik opneem, duurt het ongeveer 10 minuten om naar mp3 te coderen. Als je problemen hebt om dit werkend te krijgen, neem dan gerust contact met me op.
Spullen PS Ik weet dat mijn methoden een beetje grof zijn, omdat er waarschijnlijk best-practices zijn die ik in sommige van mijn stappen niet volg, dus leer me alsjeblieft niet op Linux 101, dit is gewoon een snelle en vuile manier om nooit te missen uw favoriete audiostream.