Indholdsfortegnelse:

Lav en Chromecast som en Raspberry Pi -enhed: 7 trin
Lav en Chromecast som en Raspberry Pi -enhed: 7 trin

Video: Lav en Chromecast som en Raspberry Pi -enhed: 7 trin

Video: Lav en Chromecast som en Raspberry Pi -enhed: 7 trin
Video: How I Play Games in 2022!! Modern CRT Gaming! 2024, Juli
Anonim
Lav en Chromecast -lignende Raspberry Pi -enhed
Lav en Chromecast -lignende Raspberry Pi -enhed
Lav en Chromecast -lignende Raspberry Pi -enhed
Lav en Chromecast -lignende Raspberry Pi -enhed
Lav en Chromecast -lignende Raspberry Pi -enhed
Lav en Chromecast -lignende Raspberry Pi -enhed
Lav en Chromecast -lignende Raspberry Pi -enhed
Lav en Chromecast -lignende Raspberry Pi -enhed

Jeg ejer allerede en Chromecast v2 (den runde, USB -nøglen ligner v1 og v3 ligner v2, men med en G på i og har en power brick med Ethernet -port på den), og jeg elsker den, den er sjov at bruge og let at opsætte, MEN …

Ja, der er et MEN, når jeg er et sted, hvor jeg ikke har internetadgang og ikke kan bruge min dataplan, kan jeg IKKE BRUGE det til at streame lokale medier fra min telefon eller tablet, selv når jeg ikke gør det behøver slet ikke internet, google i den "store visdom" af dem besluttede ikke at lade det starte selv uden internet, det er dårligt, hvis du ender med at få det til at streame

Jeg har en GL-MT300A mini-router, er meget meget lille og kan drives af en telefon, eksternt batteri eller telefonoplader, jeg bruger den til at få min Chromecast parret med den, og når jeg har brug for internet, skal jeg bare slutte routeren til den kablede netværk, eller hvis de kun har WiFi, understøtter det at oprette forbindelse til det som klient og fungere som en router på samme tid også, nu er problemet stadig, intet internet = ingen chromecast af lokale medier til dig. Her kommer Raspberry Pi Zero W i spil (W kommer fra Wireless, det har et build it -kort, * yaay *, Bluetooth også, men jeg har ikke brug for det: P)

Trin 1: Hvad du har brug for, og hvad du får

Hvad du har brug for, og hvad du får
Hvad du har brug for, og hvad du får
Hvad du har brug for, og hvad du får
Hvad du har brug for, og hvad du får
Hvad du har brug for, og hvad du får
Hvad du har brug for, og hvad du får

Du mangler:

  • Raspberry Pi Zero W (min er i akryl etui)
  • HDMI -kabel (et med plasthætter er rart at have)
  • Strømkilde (telefonoplader i mit tilfælde)
  • Mini HDMI (han) til fuld HDMI (hun) adapter (leveres med PI)
  • SD -kort på 8 GB eller mere (jeg bruger et 16 GB fra Medion)
  • SD -kortlæser (jeg fik min i gave med en powerbank fra Hama)
  • Internetforbindelse og pc til download af "Raspbian Stretch Lite"
  • Etcher Portable (sd card image writer) -> få Etcher til Windows x86 (32 -bit) (Portable) fungerer også på x64
  • Download Putty fra det medfølgende link, eller google efter det

Du vil få:

Et castingmål for videofiler fra onlinetjenester som YouTube og lokale medier (video, lyd og billeder) til Android (Raspicast), windows og ethvert operativsystem, der understøtter en SSH -klientapp

Det kræver ikke internet, hvis de medier, du sender til det, er gemt på din enhed eller et sted i det lokale netværk

Du kan få en fjernbetjening af målet som afspilning, vælge kilden, afspil/pause, lydstyrke, afslut. (Hindbær SSH eller SSH knap, spartel)

Du får en meget hurtig opstartstid på enheden for en Raspberry Pi Zero, omkring 10 sekunder

Du får et standardbaggrund og en måde at vise tilfældige baggrunde ved at trykke på en knap, der ikke tager plads på din enhed og forbliver der, indtil genstart. (det kan ændres til at være vedholdende, jeg viser senere hvordan)

Det accepterer forskellige typer streams (som HTTP, HTTPS, RTSP) og ved hjælp af en computer, bærbar computer i mit tilfælde, Sopcast, Acestream samt lokale medier med eksterne undertekster (som srt, sub)

Du kan endda give filer via HTTP gemt på din computer ved hjælp af en bærbar, enkelt fil, webserver til afspilleren

Der er mere at opdage, tilføje eller fjerne, afhængigt af dine behov

Trin 2: Henter softwaren og værktøjerne til at indsætte på Sdcard

Henter softwaren og værktøjerne til at indsætte på Sdcard
Henter softwaren og værktøjerne til at indsætte på Sdcard
Henter softwaren og værktøjerne til at indsætte på Sdcard
Henter softwaren og værktøjerne til at indsætte på Sdcard
Henter softwaren og værktøjerne til at indsætte på Sdcard
Henter softwaren og værktøjerne til at indsætte på Sdcard

Downloads:

Nu går du til https://www.raspberrypi.org/downloads/raspbian/ og downloader "Raspbian Stretch Lite"

Gå til https://www.balena.io/etcher/ og få etcher til Windows x86 (32-bit) (bærbar) (der er også linux- og mac-versioner)

Download kit fra

Nu hvor du har alt dette, starter vi Etcher og sætter kortet i kortlæseren og læseren i computeren: P

I Etcher klik på vælg billede, og vælg den downloadede zip-fil (for mig på det tidspunkt, hvor jeg skriver, er dette "2018-11-13-raspbian-stretch-lite.zip", vælg derefter kortlæseren fra listen, og klik i det mindste på flash, vil det bede om tilladelse til brugerkontokontrollen (UAC), tillade det, det skal fysisk have adgang til sdcard i eksklusiv tilstand for at skrive billedet. Når det er gjort, fjernes stikket, det er allerede skubbet ud af Etcher, og sætter det tilbage i, vil der være en bootpartition på ~ 50Mb, og du bliver bedt om at formatere en "uformateret partition" FORMAT IKKE DET, Windows kan ikke læse linux -partitioner, og der er en ext4 -partion.

Du skal lave 2 filer i bootpartitionen.

en ny fil uden udvidelse kaldet ssh

en anden kaldet wpa_supplicant.conf

Indholdet af "wpa_supplicant.conf" er som følger

land = GB

ctrl_interface = DIR =/var/run/wpa_supplicant GROUP = netdev update_config = 1 netværk = {ssid = "YOUR_WIFI_SSID" psk = "YOUR_SUPER_SECRET_PASSWORD"}

Tilslut den nu til din Raspberry Pi, og tilslut HDMI -outputenhed (alias tv, projektor osv.) Og til strøm.

Den sidste linje før login vil blive vist en IP. (Som en tommelfingerregel er det godt at gøre denne adressetildeling statisk fra din router, se billede af en Linksys -router.

Trin 3: Opdatering og opsætning af alt

Opdatering og opsætning af alt
Opdatering og opsætning af alt

Opdater dit system:

sudo apt-get opdatering

sudo apt-get upgrade sudo apt-get update sudo rpi-opdatering

Når alt er gjort, genstarter det, og du får et kittvindue, der er inaktivt, lukker det og starter igen med samme data fra forrige trin.

Nu installerer vi omxplayer, ingen grund til at kompilere det fra kilden er en del af Raspbian's lagre.

sudo apt-get install omxplayer fonts-freefont-ttf

Jeg vil gerne have en måde at ændre HDMI -porten på mit tv ved hjælp af mit hindbær, som om jeg vil kaste noget til det og ikke vil bruge fjernbetjeningen til at skifte kilde til den, hvor det er tilsluttet. Der er en måde at gøre det fra Pi og ved hjælp af en kommando fra min app til valg. Lang historie kort gør følgende:

sudo apt-get install cec-utils

Nu følger det framebuffer image viewer kaldet fbi (der er også en mere avanceret version kaldet fim)

sudo apt-get install fbi

Samba support, windows share for at få adgang til og have en delt mappe.

sudo apt-get install samba samba-common-bin

cd /home /pi

sudo mkdir -m 1777/home/pi/share

Rediger samba -konfigurationsfil

sudo nano /etc/samba/smb.conf

indsæt følgende linjer i slutningen (dem der starter med # er kommentarer og kan ignoreres)

[del]

Kommentar = Pi delt mappe Sti =/home/pi/del Gennemsigtig = ja Skrivbar = Ja kun gæst = nej opret maske = 0777 biblioteksmaske = 0777 Offentlig = ja Gæst ok = ja

Endelig gem det; ved hjælp af nano i terminal:

tryk på "Ctrl+X" for at lukke filen, derefter "Y" for at bekræfte gemningen, derefter "Enter" for at gemme filen under det rigtige filnavn.

Indstil nu adgangskoden til samba den samme som for brugeren pi (standard: hindbær)

sudo smbpasswd -a pi

genstart samba -tjenesten

sudo /etc/init.d/samba genstart

Nu har du det grundlæggende, tilpasning følger.

Trin 4: Tilpasning

Tilpasning
Tilpasning

få stænkskærmen vist ved opstart i stedet for en sort skærm med hvid tekst.

Download WinSCP og log ind med samme IP, bruger og adgangskode fra SSH/Putty -login.

Gå/home/pi/og upload billedet i zip -filen på dette trin efter udpakning. Afslut derefter. Billedet er 1080p som opløsning.

skriv følgende kommando i kitt:

nano ~/.bashrc

rul til den sidste linje med piletasterne indsæt følgende linjer der (dem der starter med # er kommentarer og kan ignoreres)

# fifo for kommandoer over ssh til omxplayer

mkfifo/tmp/cmd # stænkskærm for at erstatte den sorte skærm og tekst sudo/usr/bin/fbi -noverbose -a -T 1 /home/pi/splashscreen.jpg

Endelig gem det; ved hjælp af nano i terminal: tryk på "Ctrl+X" for at lukke filen, derefter "Y" for at bekræfte gemningen, derefter "Enter" for at gemme filen under det rigtige filnavn.

Nu laver vi bruger 'pi' automatisk login ved opstart, vi har brug for dette for at vise billedet, det kan gøres på en måde uden automatisk login, men det er sværere og kan blive dårligt hurtigt ved en enkelt skrivefejl.

sudo raspi-config

  1. Vælg Boot Option
  2. Vælg Desktop/CLI
  3. Vælg konsolens auto-login til CLI

Nu skal vi genstarte, og vi er færdige med pi'en og laver godbidder til leg.

sudo genstart

Ideen med mit projekt er, at de fleste ting udføres i SSH -klienten, da det kan tilpasses og ændres, hvordan det er nødvendigt.

Trin 5: Sådan bruges det:

Sådan bruges det
Sådan bruges det
Sådan bruges det
Sådan bruges det
Sådan bruges det
Sådan bruges det
Sådan bruges det
Sådan bruges det

Jeg vil vise kommandoerne og hvad de gør, og hvordan jeg konfigurerer den ekstra software fra streaming -enheden.

Jeg bruger 3 Android -apps og 4 PC -apps til mine formål, men du implementerer, hvad du har brug for, fra det, jeg vil vise dig, eller du kan få det hele og endda tilføje mere til det.

• YouTube: under Android brug Raspcast, under pc brug et websted som https://www.onlinevideoconverter.com/ eller

www.youtubnow.com/ eller https://youtubemp4.to eller endnu bedre https://mpgun.com/youtube-to-mp4.html?yid=hTJAnWWK7YQ (hTJAnWWK7YQ er youtube id) du får en direkte link til de medier, der kan afspilles med følgende kommando:

omxplayer -o hdmi "https://sv89.onlinevideoconverter.com/download?file=f5a0d3c2e4d3g6h7"/tmp/cmd

Tilføjelse af < /tmp /cmd aktiverer fjernbetjening og; ekko. > /tmp /cmd starter afspilningen af strømmen, ellers venter den på en kommando fra fifoen. -O hdmi -parameteren til omxplayer udsendes til HDMI -video OG der går lyd, det er vigtigt for folk, der bruger de større varianter af Raspberry Pi Zero W.

Nu viser jeg dig, hvordan du konfigurerer Raspicast til Android, er gratis og har ingen annoncer.

Installer Raspicast fra Google Play Store, og konfigurer det som på de medfølgende billeder.

play.google.com/store/apps/details?id=at.huber.raspicast

• Sopcast: Start Sopcast på pc, vælg en kanal, og giv følgende kommando, når du ser et billede

IP 192.168.1.6 er din pc's IP -adresse. BÆRBARE IKKE DEN FRA PI'en, i mit eksempel har Pi 192.168.1.9 og den bærbare computer er 192.168.1.6

omxplayer -o hdmi "192.168.1.6:8902" /tmp /cmd

• AcePlayer: start den, vælg en kanal og … der er en engangsindstillinger, du skal ændre for at få den til at fungere, gå til Værktøjer -> Præferencer -> Tyk alt, Stream output -> Standard stream output kæde, hvor du indtaster følgende

#duplicate {dst = "http {mux = ts, dst =: 8902/tv.asf}", dst = display}

Klik på Gem. Nu er kommandoen, der viser dig strømmen, efter at du startede den på AcePlayer ofc:

omxplayer -o hdmi "https://192.168.1.6:8902/tv.asf"/tmp/cmd

• Casting fra en pc til en fil Du skal installere Putty, Zervit, VLC (ikke bærbar)

Zervit får du fra

Først skal du lægge zervit.exe i mappen med de mediefiler, du vil sende til din Raspberry PI, derefter køre det, det vil stille nogle spørgsmål. "Portnummer for at lytte (80):" skriv 80 og indtast "Accepter biblioteksfortegnelse [Y/N]:" skriv y, og indtast nu, åbn en browser og indtast din LAN IP -adresse https://192.168.1.6, du vil se alle mediefiler der, kopier linket til en af det med højreklik -> kopier link, derefter ssh med spartel og skriv

omxplayer -o hdmi "https://192.168.1.6/Movie.mp4"/tmp/cmd < - eller hvad din mediefil hedder

for filer med undertekster skal du sætte underteksterne, samme navn som videofil med filtypenavn srt i den delte mappe i hindbæret

RASPBERRYPI / share

eller

192.168.1.9 / share

hvor 192.168.1.9 er din hindbærs ip.

i din hjemmemappe (/home/pi)

winscp med pi: rasspberry og upload et python -script kaldet 'omxplayersub.py' med følgende indhold:

import delproces

import sys import urllib2 if (len (sys.argv)! = 2): print "Intet filnavn angivet" 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 "--juster center ' +'" ' +fil +' "' +'-undertekster ' +'" ' + underfil +'"', shell = True)

upload nu dette med Segoe UI og FreeSans familie skrifttyper til din hjemmemappe (/home/pi) Skift skrifttypenavne for den ønskede skrifttype og tilføj om nødvendigt-fontstørrelse 55 (standard: 55) efter --juster med den ønskede størrelse.

og brug følgende kommando til at afspille:

python omxplayersub.py "https://192.168.1.6/Defiance%20S01E02.mp4" </tmp/cmd <- eller hvad din mediefil hedder

Hvis du ikke kan se det på skærmen, er der et kompatibilitetsproblem, på nogle h264 -filer vises profilen af h264 -omx som -99, ja negativ 99, og den afspilles ikke i dette tilfælde og i tilfælde af en fil med eksterne undertekster skal du bruge VLC stream vælg fil/filer, vælg HTTP, lad standardport, h.264/AAC (TS), hold skala til 1, Trans -kodning - Indstillinger tykke undertekster, tryk på stream -knappen og lad det kører i nogle sekunder.

omxplayer -o hdmi "https://192.168.1.6:8080/"/tmp/cmd < - det begynder at spille

Vi laver transkodning, det bliver et lille kvalitetstab på displayet, og CPU'en vil arbejde mere på pc, men det virker.

CEC - Kontrol

Tænd fjernsynet

ekko på 0 | cec -client -s -d 1

Sluk for fjernsynet

ekko standby 0 | cec -client -s -d 1

Skift HDMI -kilde

HDMI1

ekko "tx 4F: 82: 10: 00" | cec -client -s -d 1

HDMI2

ekko "tx 4F: 82: 20: 00" | cec -client -s -d 1

HDMI3

ekko "tx 4F: 82: 30: 00" | cec -client -s -d 1

HDMI4

ekko "tx 4F: 82: 40: 00" | cec -client -s -d 1

Ligesom du ser den tredje byte i hex -strengen, vi ekko, er nummeret på HDMI -stikket, der skal indstilles aktivt.

Trin 6: Liste over kommandoer, der skal indsættes i apps

Liste over kommandoer, der skal indsættes i apps
Liste over kommandoer, der skal indsættes i apps

Du har allerede installeret Raspicast på det foregående trin, nu skal du vælge mellem Raspberry SSH (det er en betalt) eller SSH -knap (den er gratis og jeg kan lide den mere, men jeg har allerede købt Raspberry SSH før for at opdage denne).

Hindbær SSH

play.google.com/store/apps/details?id=uk.co.knowles_online.raspberryssh

Denne app eller SSH -knap er påkrævet, hvis du har brug for at caste ting fra pc'en og har brug for en fjernbetjening fra en Android -enhed, den kan bruges uden den gennem spartel fra pc.

Konfiguration for begge er nær det samme.

Knap 1 Btn -tekst: Genstart

Btn Cmd:

sudo genstart

Knap 2

Btn -tekst: Poweroff

Btn Cmd:

sudo poweroff

Knap 3

Btn -tekst: HDMI1

Btn Cmd:

ekko "tx 4F: 82: 10: 00" | cec -client -s -d 1

Knap 4

Btn -tekst: HDMI2

Btn Cmd:

ekko "tx 4F: 82: 20: 00" | cec -client -s -d 1

Knap 5

Btn -tekst: HDMI3

Btn Cmd:

ekko "tx 4F: 82: 30: 00" | cec -client -s -d 1

Knap 6

Btn -tekst: Dræb omxplayer

Btn Cmd:

sudo killall -s 9 omxplayer.bin

Knap 7

Btn -tekst: Sopcast

Btn Cmd:

omxplayer -o hdmi "https://192.168.1.6:8902"/tmp/cmd

Knap 8

Btn -tekst: AcePlayer

Btn Cmd:

omxplayer -o hdmi "https://192.168.1.6:8902/tv.asf"/tmp/cmd

Knap 9

Btn -tekst: VLC Stream

Btn Cmd:

omxplayer -o hdmi "https://192.168.1.6:8080/"/tmp/cmd

Knap 10

Btn -tekst: Afspil/pause

Btn Cmd:

ekko -n p> /tmp /cmd

Knap 11

Btn -tekst: Lydstyrke +

Btn Cmd:

echo -n +> /tmp /cmd

Knap 12

Btn -tekst: Lydstyrke -

Btn Cmd:

echo -n -> /tmp /cmd

Knap 13

Btn -tekst: Afslut Omxplayer

Btn Cmd:

ekko -n q> /tmp /cmd

Knap 14

Btn -tekst: Tilfældigt tapet

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

Knap 15

Btn -tekst: Standardbaggrund

Btn Cmd:

sudo killall fbi &> /dev /null; sudo fbi -noverbose -a -T 1 splashscreen-j.webp

Knap 16 Btn -tekst: Baggrund til diasshow

Btn Cmd:

cd/home/pi/diasshow/; sudo killall fbi &> /dev /null; sudo fbi -noverbose -a -T 1 -t 5 *-j.webp

-t 5 i 5 sekunder

Button 17 Btn Text: SUBTITLE HTTP PLAY (Rediger)

Btn Cmd:

python omxplayersub.py "https://192.168.1.6/Some%20video%20with%20subtitle.mp4" </tmp/cmd

Når du redigerer, skal du ændre "https://192.168.1.6/Some%20video%20with%20subtitle.mp4" med url for filen fra ekstern kilde eller ændre den til noget som/home/pi/share. Undertekster skal altid være i/home/pi/share, ALTID.

Freeware -alternativ til Raspberry SSHhttps://play.google.com/store/apps/details? Id = com.pd7l.sshbutton & hl = da_US

Virker nøjagtig det samme som Raspberry SSH, har ingen annoncer, færre farver og alle knapper er på en enkelt række ikke 2, men den er gratis og fungerer fantastisk.

Nu til sidst nogle eksotiske ting, stream det, du optager med din telefon i realtid, der er nogle sekunder forsinkelse til dit tv.

IP WEBCAMERA PRO (betalt)

play.google.com/store/apps/details?id=com.pas.webcam.pro

Start streaming og brug følgende kommando til at caste den til tv

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=da&rdid=com.miv.rtspcamera

Gør det samme som den betalte, men gratis, ingen annoncer

omxplayer -o hdmi "rtsp: //192.168.1.8: 5554/kamera"

Aktivt kamera - rtsp: // (enhedens IP -adresse): 5554/kamera Bagkamera - rtsp: // (enhedens IP -adresse): 5554/tilbage Frontkamera - rtsp: // (enhedens IP -adresse): 5554/front

Kamera URL -parametre:

res Opløsning - bredde (antal) x højde (tal)

fps Ramme pr. sekund - fps (antal) mikrofon Aktiver/deaktiver mikrofon - til (streng) eller fra (streng)

Eksempel: rtsp: // (enhedens IP -adresse): 5554/back? Res = 640x480 & fps = 10 & mic = on

Trin 7: Nogle flere ting … WEB -grænseflade

Nogle flere ting … WEB -grænseflade
Nogle flere ting … WEB -grænseflade

Installer det med en enkelt linje fra git

wget https://raw.githubusercontent.com/brainfoolong/omxwebgui-v2/master/install.sh && clear && sh install.sh

Standard brugergrænseflade på port 4321, den behøver ingen webserver og fungerer alt 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

Download/Klon/Pak hele scriptet ud til en mappe, du kan lide. Indstil korrekt chmod for scripts med

chmod +x *.sh

Opret en php webserver, der lytter på port 4321, du kan ændre porten til, hvad du vil. Start denne med den samme bruger, som du har brug for for at afspille videoerne. Brug venligst ikke apache eller andre servere til at køre php -scriptet, det vil sandsynligvis ikke fungere.

php -S 0.0.0.0:4321 -t/home/pi/omxwebgui>/dev/null 2> & 1 &

Åbn websiden med https://192.168.1.9:4321 (hvor 192.168.1.9 er hindbær pi IP)

For at aktivere autostart ved genstart skal du blot tilføje følgende linje til din crontab. Gør dette med den samme bruger, som du har brug for for at afspille videoerne. Ingen sudo påkrævet. Tilføj følgende linje til crontab med crontab -e for at starte den enkle php webserver ved genstart.

crontab -e

tilføj nu med

@reboot php -S 0.0.0.0:4321 -t omxwebgui> /dev /null 2> & 1 &

Tilføj filerne i indstillinger, kun lokale hostede eller kortlagte aktier og ofc -streams kan tilføjes. Add/home/pi/share til undertekstmappen også, og om nødvendigt aktiver fix til 2x afspilningshastighed og ingen lydfejl.

Anbefalede: