Innehållsförteckning:
- Steg 1: Vad du behöver och vad du får
- Steg 2: Skaffa programvaran och verktygen för att sätta in på Sdcard
- Steg 3: Uppdatera och konfigurera allt
- Steg 4: Anpassning
- Steg 5: Så här använder du det:
- Steg 6: Lista över kommandon som ska läggas i appar
- Steg 7: Några fler saker … WEB -gränssnitt
Video: Gör en Chromecast som Raspberry Pi -enhet: 7 steg
2024 Författare: John Day | [email protected]. Senast ändrad: 2024-01-30 12:44
Jag äger redan en Chromecast v2 (den runda, USB -minnet är v1 och v3 ser ut som v2 men med ett G på i och har en power brick med Ethernet -port på det) och jag älskar det, det är väldigt roligt att använda och enkel att installera, MEN …
Ja det finns ett MEN, när jag är på en plats där jag inte har tillgång till internet och inte kan använda min dataplan, kan jag inte använda den för att strömma lokala medier från min telefon eller surfplatta, även när jag inte gör det behöver inte internet alls, google i "stor visdom" av dem bestämde sig för att inte låta det starta utan internet, det är dåligt om du slutar behöva det för att strömma
Jag har en GL-MT300A mini-router, är väldigt liten och kan drivas av en telefon, ett externt batteri eller en telefonladdare, jag använder den för att koppla ihop min Chromecast med den och när jag behöver internet ansluter jag bara routern till den trådbundna nätverk eller om de bara har WiFi, stöder det att ansluta till det som klient och fungera som en router samtidigt, nu kvarstår problemet, inget internet = ingen chromecast av lokala medier för dig. Här kommer Raspberry Pi Zero W i spel (W kommer från Wireless, det har ett build it -kort, * yaay *, Bluetooth också men jag behöver det inte: P)
Steg 1: Vad du behöver och vad du får
Du behöver:
- Raspberry Pi Zero W (min är i akrylfodral)
- HDMI -kabel (en med plastlock är bra att ha)
- Strömkälla (telefonladdare i mitt fall)
- Mini HDMI (hane) till full HDMI (hona) adapter (levereras med PI)
- SD -kort på 8 GB eller mer (jag använder 16 GB från Medion)
- SD -kortläsare (jag fick min gåva med en powerbank från Hama)
- Internetanslutning och PC för att ladda ner "Raspbian Stretch Lite"
- Etcher Portable (sd card image writer) -> få Etcher för Windows x86 (32 -bitars) (Portable) fungerar också på x64
- Ladda ner Putty från länken eller googla för det
Du kommer att få:
Ett castingmål för videofiler från onlinetjänster som YouTube och lokala medier (video, ljud och bilder) för Android (Raspicast), Windows och alla operativsystem som stöder en SSH -klientapp
Det kräver inte internet om media du skickar till det lagras på din enhet eller någonstans i det lokala nätverket
Du kan få en fjärrkontroll av målet som uppspelning, välja källa, spela/pausa, volym, sluta. (Hallon SSH- eller SSH -knapp, spackel)
Du får en mycket snabb starttid för enheten, för en Raspberry Pi Zero, cirka 10 sekunder
Du får en standardbakgrund och ett sätt att visa slumpmässiga bakgrundsbilder genom att trycka på en knapp som inte tar något utrymme på din enhet och förblir där tills omstart. (det kan ändras till att vara ihållande, jag visar senare hur)
Den accepterar olika typer av strömmar (som HTTP, HTTPS, RTSP) och med hjälp av en dator, bärbar dator i mitt fall, Sopcast, Acestream samt lokala medier med externa undertexter (som srt, sub)
Du kan till och med ge filer via HTTP lagrad på din dator, med hjälp av en bärbar, enkel fil, webbserver till spelaren
Det finns mer att upptäcka, lägga till eller ta bort, beroende på dina behov
Steg 2: Skaffa programvaran och verktygen för att sätta in på Sdcard
Nedladdningar:
Nu går du till https://www.raspberrypi.org/downloads/raspbian/ och laddar ner "Raspbian Stretch Lite"
Gå till https://www.balena.io/etcher/ och hämta Etcher för Windows x86 (32-bitars) (bärbar) (det finns även Linux- och mac-versioner)
Ladda ner kitt från
Nu när du har allt detta ska vi starta Etcher och sätta in kortet i kortläsaren och läsaren i datorn: P
I Etcher klickar du på välj bild och väljer den nedladdade zip-filen (för mig när jag skriver detta är "2018-11-13-raspbian-stretch-lite.zip", välj sedan kortläsaren från listan som visas och klicka minst flash, det kommer att be om tillåtelse av användarkontokontrollen (UAC), tillåta det, det måste fysiskt komma åt sd -kortet i exklusivt läge för att skriva bilden. När det är klart kopplar du bort det, det matas redan ut av Etcher och sätter tillbaka det i, det kommer att finnas en startpartition på ~ 50Mb och du kommer att uppmanas att formatera en "oformaterad partition" FORMATERA INTE DET, Windows kan inte läsa Linux -partitioner och det finns en ext4 -partition.
Du måste skapa 2 filer i startpartitionen.
en ny fil utan tillägg som heter ssh
en annan som heter wpa_supplicant.conf
Innehållet i "wpa_supplicant.conf" är följande
land = GB
ctrl_interface = DIR =/var/run/wpa_supplicant GROUP = netdev update_config = 1 nätverk = {ssid = "YOUR_WIFI_SSID" psk = "YOUR_SUPER_SECRET_PASSWORD"}
Anslut nu din Raspberry Pi och anslut HDMI -utmatningsenhet (aka TV, projektor, etc.) och till ström.
Den sista raden före inloggningen kommer att visas en IP. (Som en tumregel är det bra att göra den adressallokeringen statisk från din router, se bilden av en Linksys -router.
Steg 3: Uppdatera och konfigurera allt
Uppdatera ditt system:
sudo apt-get uppdatering
sudo apt-get upgrade sudo apt-get update sudo rpi-update
När allt är klart startas det om och du kommer att ha ett kittfönster som är inaktivt, stäng det och börja om med samma data från föregående steg.
Nu ska vi installera omxplayer, inget behov av att kompilera det från källan är en del av Raspbian -arkiv.
sudo apt-get install omxplayer fonts-freefont-ttf
Jag vill ha ett sätt att ändra HDMI -porten på min TV, med hjälp av mitt hallon, som om jag vill kasta något på den och inte vill använda fjärrkontrollen för att ändra källa till den där den är ansluten. Det finns ett sätt att göra det från Pi och med hjälp av ett kommando från min valda app. Lång historia kort gör följande:
sudo apt-get install cec-utils
Nu följer den framebuffer image viewer som heter fbi (det finns en mer avancerad version som heter fim också)
sudo apt-get install fbi
Samba -support, Windows -delning för åtkomst till och ha en delad mapp.
sudo apt-get install samba samba-common-bin
cd /home /pi
sudo mkdir -m 1777/home/pi/share
Redigera samba -konfigurationsfil
sudo nano /etc/samba/smb.conf
infoga följande rader i slutet (de som börjar med # är kommentarer och kan ignoreras)
[dela med sig]
Kommentar = Pi delad mapp Sökväg =/home/pi/dela Bläddringsbar = ja Skrivbar = Ja bara gäst = nej skapa mask = 0777 katalogmask = 0777 Allmän = ja Gäst ok = ja
Slutligen, spara det; använder nano i terminal:
tryck på "Ctrl+X" för att stänga filen, sedan "Y" för att bekräfta sparandet, sedan "Enter" för att spara filen under rätt filnamn.
Ställ nu in lösenordet för samba samma som för användarens pi (standard: hallon)
sudo smbpasswd -a pi
starta om samba -tjänsten
sudo /etc/init.d/samba starta om
Nu har du grunderna, anpassning följer.
Steg 4: Anpassning
gör att stänkskärmen visas vid start istället för en svart skärm med vit text.
Ladda ner WinSCP och logga in med samma IP, användare och lösenord från SSH/Putty -inloggningen.
Gå/home/pi/och ladda upp bilden som finns i zip -filen vid det här steget efter att du packat upp. Gå sedan ut. Bilden är 1080p som upplösning.
skriv följande kommando i kitt:
nano ~/.bashrc
bläddra till sista raden med piltangenterna infoga följande rader där (de som börjar med # är kommentarer och kan ignoreras)
# fifo för kommandon över ssh till omxplayer
mkfifo/tmp/cmd # stänkskärm för att ersätta den svarta skärmen och texten sudo/usr/bin/fbi -noverbose -a -T 1 /home/pi/splashscreen.jpg
Slutligen, spara det; med nano i terminalen: tryck på "Ctrl+X" för att stänga filen, sedan "Y" för att bekräfta sparandet, sedan "Enter" för att spara filen under rätt filnamn.
Nu gör vi användarens 'pi' automatisk inloggning vid start, vi behöver detta för att visa bilden, det kan göras på ett sätt utan automatisk inloggning men det är svårare och kan bli dåligt snabbt av ett enda skrivfel.
sudo raspi-config
- Välj startalternativ
- Välj Desktop/CLI
- Välj Console auto-login för CLI
Nu ska vi starta om och vi är klara med pi och ska göra godsaker för att spela.
sudo starta om
Tanken med mitt projekt är att de flesta sakerna görs i SSH -klienten eftersom de kan anpassas och ändras hur det behövs.
Steg 5: Så här använder du det:
Jag kommer att visa kommandona och vad de gör och hur jag konfigurerar den extra programvaran från strömningsenheten.
Jag använder 3 Android -appar och 4 PC -appar för mina ändamål men du implementerar vad du behöver från vad jag kommer att visa dig eller du kan ha allt och till och med lägga till mer till det.
• YouTube: under Android använder Raspcast, under PC använder du en webbplats som https://www.onlinevideoconverter.com/ eller
www.youtubnow.com/ eller https://youtubemp4.to eller ännu bättre https://mpgun.com/youtube-to-mp4.html?yid=hTJAnWWK7YQ (hTJAnWWK7YQ är youtube-id) du får en direktlänk till media som kan spelas upp med följande kommando:
omxplayer -o hdmi "https://sv89.onlinevideoconverter.com/download?file=f5a0d3c2e4d3g6h7"/tmp/cmd
Om du lägger till < /tmp /cmd aktiveras fjärrkontroll och; eko. > /tmp /cmd börjar spela upp strömmen annars väntar det på ett kommando från fifo. -O hdmi -parametern för omxplayer kommer att matas ut till HDMI -video OCH ljud går dit, detta är viktigt för människor som använder de större varianterna av Raspberry Pi Zero W.
Nu visar jag dig hur du konfigurerar Raspicast för Android, är gratis och har inga annonser.
Installera Raspicast från Google Play Store och konfigurera det som på bilderna.
play.google.com/store/apps/details?id=at.huber.raspicast
• Sopcast: starta Sopcast på PC välj en kanal och ge följande kommando när du ser en bild
IP 192.168.1.6 är din dators IP -adress. LAPTOP INTE DEN FRÅN PI: n, i mitt exempel har Pi 192.168.1.9 och den bärbara datorn är 192.168.1.6
omxplayer -o hdmi "192.168.1.6:8902" /tmp /cmd
• AcePlayer: starta den, välj en kanal och … det finns en engångsinställning du behöver ändra för att den ska fungera, gå till Verktyg -> Inställningar -> Tjocka alla, Strömutgång -> Standardströmutmatningskedja, där du matar in följande
#duplicate {dst = "http {mux = ts, dst =: 8902/tv.asf}", dst = display}
Klicka på Spara. Nu kommandot som visar dig strömmen, efter att du startade den på AcePlayer ofc:
omxplayer -o hdmi "https://192.168.1.6:8902/tv.asf"/tmp/cmd
• Casta från en dator från en fil Du behöver Putty, Zervit, VLC installerad (inte bärbar)
Zervit får du från
Först måste du lägga zervit.exe i mappen med de mediefiler du vill skicka till din Raspberry PI, sedan köra den, det kommer att ställa några frågor. "Portnummer för att lyssna (80):" typ 80 och ange "Acceptera katalogförteckning [Y/N]:" skriv y och ange nu öppna en webbläsare och skriv in din LAN IP -adress https://192.168.1.6 du kommer att se alla mediefiler där, kopiera länken till en av dem med högerklick -> kopiera länk, sedan ssh med kitt och skriv
omxplayer -o hdmi "https://192.168.1.6/Movie.mp4"/tmp/cmd < - eller vad din mediefil heter
för filer med undertexter lägger du till undertexter, samma namn som videofil med tillägg srt i Windows delade mapp på hallon
RASPBERRYPI / dela
eller
192.168.1.9 / dela
där 192.168.1.9 är din hallons ip.
i din hemmapp (/home/pi)
winscp med pi: rasspberry och ladda upp ett python -skript som heter 'omxplayersub.py' med följande innehåll:
importera delprocess
import sys import urllib2 if (len (sys.argv)! = 2): skriv ut "Inget filnamn anges" quit () file = sys.argv [1] subfile = "/home/pi/share/"+ file.split ("/") [-1] underfil = underfil [: -3] + "srt" underfil = urllib2.unquote (underfil) subprocess. Popen ('omxplayer -o hdmi -r --font "/home/pi/Segoe UI, Medium.ttf "--italic-font"/home/pi/Segoe UI, Italic.ttf "-align center ' +'" ' +file +' "' +'-subtitles ' +'" ' + underfil +'"', shell = True)
ladda nu upp detta med Segoe UI- och FreeSans-familjeteckensnitt till din hemmapp (/home/pi) Ändra teckensnittsnamn för önskad typsnitt och lägg vid behov till-teckenstorlek 55 (standard: 55) efter --justera med önskad storlek.
och använd följande kommando för att spela:
python omxplayersub.py "https://192.168.1.6/Defiance%20S01E02.mp4" </tmp/cmd <- eller vad din mediefil heter
Om du inte ser det på skärmen spelas det upp ett kompatibilitetsproblem, på vissa h264 -filer visas profilen av h264 -omx som -99, ja negativ 99, och den spelas inte, i det här fallet och i händelse av en fil med externa undertexter du kommer att behöva använda VLC stream välj fil/filer, välj HTTP, låt standardport, h.264/AAC (TS), håll skala till 1, Trans -kodning - Inställningar tjocka undertexter, tryck på strömningsknappen och låt den kör i några sekunder.
omxplayer -o hdmi "https://192.168.1.6:8080/"/tmp/cmd < - det kommer att börja spela
Vi gör transkodning, det blir en liten kvalitetsförlust på displayen och CPU: n kommer att fungera mer på PC men det fungerar.
CEC - Kontroller
Slå på TV: n
eko på 0 | cec -client -s -d 1
Stäng av TV: n
eko standby 0 | cec -client -s -d 1
Ändra HDMI -källa
HDMI1
eko "tx 4F: 82: 10: 00" | cec -client -s -d 1
HDMI2
eko "tx 4F: 82: 20: 00" | cec -client -s -d 1
HDMI3
eko "tx 4F: 82: 30: 00" | cec -client -s -d 1
HDMI4
eko "tx 4F: 82: 40: 00" | cec -client -s -d 1
Precis som du ser den tredje byten i hexsträngen som vi ekar är numret på HDMI -kontakten som ska aktiveras.
Steg 6: Lista över kommandon som ska läggas i appar
Du har redan installerat Raspicast i föregående steg, nu måste du välja mellan Raspberry SSH (det är en betald) eller SSH -knappen (det är gratis och jag gillar det mer, men jag har redan köpt Raspberry SSH tidigare för att upptäcka det här).
Hallon SSH
play.google.com/store/apps/details?id=uk.co.knowles_online.raspberryssh
Denna app, eller SSH -knapp, krävs om du behöver kasta saker från PC och behöver en fjärrkontroll från en Android -enhet, den kan användas utan den via spackel från PC.
Konfigurationen för båda är nära samma.
Knapp 1 Btn -text: Starta om
Btn Cmd:
sudo starta om
Knapp 2
Btn -text: Poweroff
Btn Cmd:
sudo poweroff
Knapp 3
Btn -text: HDMI1
Btn Cmd:
eko "tx 4F: 82: 10: 00" | cec -client -s -d 1
Knapp 4
Btn -text: HDMI2
Btn Cmd:
eko "tx 4F: 82: 20: 00" | cec -client -s -d 1
Knapp 5
Btn -text: HDMI3
Btn Cmd:
eko "tx 4F: 82: 30: 00" | cec -client -s -d 1
Knapp 6
Btn Text: Kill omxplayer
Btn Cmd:
sudo killall -s 9 omxplayer.bin
Knapp 7
Btn -text: Sopcast
Btn Cmd:
omxplayer -o hdmi "https://192.168.1.6:8902"/tmp/cmd
Knapp 8
Btn -text: AcePlayer
Btn Cmd:
omxplayer -o hdmi "https://192.168.1.6:8902/tv.asf"/tmp/cmd
Knapp 9
Btn -text: VLC Stream
Btn Cmd:
omxplayer -o hdmi "https://192.168.1.6:8080/"/tmp/cmd
Knapp 10
Btn Text: Play/Pause
Btn Cmd:
echo -n p> /tmp /cmd
Knapp 11
Btn -text: Volym +
Btn Cmd:
echo -n +> /tmp /cmd
Knapp 12
Btn -text: Volym -
Btn Cmd:
echo -n -> /tmp /cmd
Knapp 13
Btn -text: Avsluta Omxplayer
Btn Cmd:
echo -n q> /tmp /cmd
Knapp 14
Btn Text: Random Wallpaper
Btn Cmd:
wget -O DELME.jpg https://source.unsplash.com/random/1920x1080 &>/dev/null; sudo killall fbi &> /dev /null; sudo fbi -noverbose -a -T 1 DELME.jpg &> /dev /null; sleep 1; rm DELME.jpg
Knapp 15
Btn Text: Standard Bakgrund
Btn Cmd:
sudo killall fbi &> /dev /null; sudo fbi -noverbose -a -T 1 splashscreen.jpg &> /dev /null
Knapp 16 Btn Text: Bildspel Bakgrund
Btn Cmd:
cd/home/pi/bildspel/; sudo killall fbi &> /dev /null; sudo fbi -noverbose -a -T 1 -t 5 *.jpg &> /dev /null
-t 5 i 5 sekunder
Button 17 Btn Text: SUBTITLE HTTP PLAY (Redigera)
Btn Cmd:
python omxplayersub.py "https://192.168.1.6/Some%20video%20with%20subtitle.mp4" </tmp/cmd
När du redigerar ändrar du "https://192.168.1.6/Some%20video%20with%20subtitle.mp4" med url för filen från extern källa eller ändrar den till något liknande/home/pi/share. Undertexten måste vara i/home/pi/share, ALLTID.
Freeware -alternativ till Raspberry SSHttps: //play.google.com/store/apps/details? Id = com.pd7l.sshbutton & hl = sv_US
Fungerar exakt samma som Raspberry SSH, har inga annonser, färre färger och alla knappar finns på en enda rad inte 2 men det är gratis och fungerar utmärkt.
Nu i slutet några exotiska saker, strömma det du spelar in med din telefon i realtid, det finns några sekunder av fördröjning, till din TV.
IP WEBCAMERA PRO (betald)
play.google.com/store/apps/details?id=com.pas.webcam.pro
Börja strömma och använd följande kommando för att casta den till TV: n
omxplayer -o hdmi rtsp: //192.168.1.8: 8080/h264_ulaw.sdp
RTSP kameraserver (gratis)
play.google.com/store/apps/details?id=com.miv.rtspcamera&hl=sv&rdid=com.miv.rtspcamera
Gör samma sak som den betalda men gratis, inga annonser
omxplayer -o hdmi "rtsp: //192.168.1.8: 5554/kamera"
Aktiv kamera - rtsp: // (enhetens IP -adress): 5554/kamera Bakre kamera - rtsp: // (enhetens IP -adress): 5554/bak Framkamera - rtsp: // (enhetens IP -adress): 5554/front
Kamerans URL -parametrar:
res Upplösning - bredd (antal) x höjd (antal)
fps Bild per sekund - fps (antal) mikrofon Aktivera/inaktivera mikrofon - på (sträng) eller av (sträng)
Exempel: rtsp: // (enhetens IP -adress): 5554/back? Res = 640x480 & fps = 10 & mic = on
Steg 7: Några fler saker … WEB -gränssnitt
Installera det med en enda rad från git
wget https://raw.githubusercontent.com/brainfoolong/omxwebgui-v2/master/install.sh && clear && sh install.sh
Standard användargränssnitt i port 4321, det behöver ingen webbserver och fungerar allt under php
Krav:
sudo apt-get install php-cli
sudo apt-get install php-mbstring sudo apt-get install php5-cli sudo apt-get install php5-mbstring
Ladda ner/Klona/Packa upp hela skriptet till en mapp du gillar. Ställ in rätt chmod för skripten med
chmod +x *.sh
Skapa en php -webbserver som lyssnar på port 4321, du kan ändra porten till vad du vill. Starta detta med samma användare som du behöver för att spela upp videoklippen. Använd inte apache eller andra server för att köra php -skriptet, det kommer förmodligen inte att fungera.
php -S 0.0.0.0:4321 -t/home/pi/omxwebgui>/dev/null 2> & 1 &
Öppna webbsidan med https://192.168.1.9:4321 (där 192.168.1.9 är hallon pi IP)
För att aktivera autostart vid omstart, lägg bara till följande rad i din crontab. Gör detta med samma användare som du behöver för att spela upp videorna. Ingen sudo krävs. Lägg till följande rad till crontab med crontab -e för att starta den enkla php -webbservern vid omstart.
crontab -e
lägg nu till med
@reboot php -S 0.0.0.0:4321 -t omxwebgui> /dev /null 2> & 1 &
Lägg till filerna i inställningarna, bara lokala värdade eller kartade resurser och ofc -strömmar kan läggas till. Lägg till/home/pi/dela till undertextsmappen också och vid behov aktivera fix för 2x uppspelningshastighet och ingen ljudbugg.
Rekommenderad:
Renegade-i (programmerbar IC-testare som känns som den riktiga saken): 3 steg (med bilder)
Renegade-i (programmerbar IC-testare som känns som den verkliga saken): MILLIONS DOLLAR DREAM. Har du någonsin drömt om att ha din egen IC-testare hemma? Inte bara en pryl som kan testa IC, utan en "programmerbar" maskin som känns som en av flaggskeppsprodukterna för de största aktörerna i semikon -testindustrin, lyckas
En Raspberry Pi NAS som verkligen ser ut som en NAS: 13 steg (med bilder)
En Raspberry Pi NAS som verkligen ser ut som en NAS: Varför en Raspberry Pi NAS Tja, jag har letat efter en vacker men ändå platsbesparande Raspberry Pi NAS från internet och jag hittade ingenting. Jag hittade någon NAS -design med en Raspberry Pi som limmades på en träbaserad men det är inte vad jag vill. Jag vill
Lär dig hur du gör en bärbar batteridriven bildskärm som också kan driva en Raspberry Pi: 8 steg (med bilder)
Lär dig hur du gör en bärbar batteridriven bildskärm som också kan driva en Raspberry Pi: Har någonsin velat koda python, eller ha en displayutgång för din Raspberry Pi Robot, på språng, eller behövde en bärbar sekundär skärm för din bärbara dator eller kamera? I det här projektet kommer vi att bygga en bärbar batteridriven bildskärm och
Raspberry Pi som Chromecast -alternativ (Raspicast): 10 steg (med bilder)
Raspberry Pi Som Chromecast -alternativ (Raspicast): I denna instruktion visar jag dig hur du använder hallon pi 3 som Chromecast -alternativ. Det är också värt att nämna att detta inte är en direktklon till Chromecast och att det finns begränsningar. Denna metod stöder inte cast -knappen men
Hur man gör en autonom basketboll som spelar robot med hjälp av en IRobot Skapa som bas: 7 steg (med bilder)
Hur man gör en autonom basketboll som spelar robot med hjälp av en IRobot Skapa som bas: Detta är min post för iRobot Create -utmaningen. Den svåraste delen av hela processen för mig var att bestämma vad roboten skulle göra. Jag ville demonstrera de häftiga funktionerna i Create, samtidigt som jag lade till lite robo -stil. Alla mina