German Blutiger Anfänger

fabs222

Member
Licensed User
Longtime User
Hallo erstmal,

seit ca. 5 Tagen "spiele" ich mit B4A herrum und komme irgendwie nicht weiter.

Mein Vorhaben:
Ich möchte gerne ein Webradio App für mein Soli schaffen (habe hier 4 7" Tablets) welches einfach 4-6 Buttons anzeigt und wenn man raufklickt soll der fest programmierte Sender anfangen zu spielen. Es braucht keine weiteren Anzeigen geben.

Das Layout bekomme ich auch hin. Auch das HelloWorld womit ich gespielt habe kommt, aber es soll ja nicht helloworld sonder Musik kommen.

Kann mir mal bitte jemand auf die Sprünge helfen, bitte für Anfänger.

Es sollte so wie das hier nur ohne Rec sein.

https://market.android.com/details?...EsImluZm8ubWF1bGFkaS5yYWRpb2Rha3dhaGlzbGFtIl0.
 
Last edited:

Kiffi

Well-Known Member
Licensed User
Longtime User
man korrigiere mich, wenn ich irre, aber dafür wirst Du wohl
Funktionen aus der Audio-Lib benötigen. Vielleicht
den MediaPlayerStream. Allerdings sind Lib-Funktionalitäten
in der Demo-Version nicht verfügbar.

Grüße ... Kiffi
 

fabs222

Member
Licensed User
Longtime User
schade. ich dachte wenn ich hier:

MediaPlayer1.Load(File.DirAssets, "IsawHerStandingThere.mid")

den richtigen Pfad eintrage würde es gehen. Aber leider finde ich nicht herraus mit welchem Befehl man den Pfad zur Url gibt.

Wie müsste es den aussehen wenn ich die Vollversion hätte?
 

Kiffi

Well-Known Member
Licensed User
Longtime User
den MediaPlayer gibt es nicht in der unregistrierten Version.

Grüße ... Kiffi
 

fabs222

Member
Licensed User
Longtime User
okay, wenn ich mir die Vollversion kaufen würde, wie müsste dann der String aufgebaut sein??

Ich möchte nur sicher gehen, dass wenn ich das Prog kaufe dass danach auch geht, mit meinem WEB Radio


Gruss
Fabs
 

Kiffi

Well-Known Member
Licensed User
Longtime User
okay, wenn ich mir die Vollversion kaufen würde, wie müsste dann der String aufgebaut sein??

beispielsweise so:
B4X:
Sub Process_Globals
   Dim MPS As MediaPlayerStream
End Sub

Sub Activity_Create(FirstTime As Boolean)
   MPS.Initialize("MPS")
   MPS.SetVolume(1,1)
   MPS.Load("http://relay.181.fm:8004/")
End Sub

Sub MPS_StreamReady
   MPS.Play
End Sub

Sub MPS_StreamError (ErrorCode As String, ExtraData As Int)
   Msgbox (ErrorCode, "")
End Sub

Ich möchte nur sicher gehen, dass wenn ich das Prog kaufe dass danach auch geht, mit meinem WEB Radio
Du hast ein 30(!)-tägiges Rückgaberecht, wenn Basic4Android nicht
Deinen Erwartungen entspricht.

Grüße ... Kiffi
 

fabs222

Member
Licensed User
Longtime User
Vielen Dank.
Habe mir das Prog gekauft und mein Web Radio, dank Deiner Hilfe, gut hinbekommen.

Da ich auf dem Display nun noch Platz habe, würde ich gerne seine Diashow mit einbauen, wo alle 5 Sec. das Bild gewechselt werden soll.

Leider finde ich hier überhaubt keine Anhaltspunkt wie ich das machen kann.

Wenn du nochmals so nett wärest???

Was ich auch noch nicht gut hinbekomme sind die Button Designs. Ich würde gerne die Button von der Form so lassen und diese nur weiß machen und in der Mitte ein Senderlogo einbinden. Das Problem ist nur, wenn ich ich das Grau zu Weiß ändere sind die Button platt also keine Buttons mehr sondern Bildchen.
Wie kann man das anders machen?

Vielen Dank

Grüße
Fabs
 

kgb666

Banned
Ich danke euch beiden erstmal für diesen Fred.
Anbei das Grundgerüst für diesen WebRadio Player mit der RadioQuelle von Kiffi

http://relay.181.fm:8004

Was mich jetzt noch glücklich machen würde, wäre eine Möglichkeit den
"Current Song:" und ggf. den " Stream Status:" auslesen und anzeigen zu lassen.

Seht ihr da eine Möglichkeit ? Klar man könnte den Webviewer nehmen und sich
die Shoutcast Seite in einem Aktualisierungsintervall anzeigen lassen, aber das sieht eigendlich nicht so toll aus.
 

Attachments

  • Webradio.zip
    7.3 KB · Views: 242

kgb666

Banned
So wie gesagt eine unschöne , aber funktionale Lösung den Stream / Titel anzeigen zu lassen

B4X:
<?php
## Streamanzeiger PHP Seite ##
$server = "relay.181.fm";
$port = 8004;
    $fp = @fsockopen($server, $port, $errno, $errstr, 30);
    
    if ($fp) {
        fputs($fp, "GET /7.html HTTP/1.0\r\nUser-Agent: XML Getter (Mozilla Compatible)\r\n\r\n");
        while(!feof($fp))
            $page .= fgets($fp, 1000);
        fclose($fp);
        $page = ereg_replace(".*<body>", "", $page);
        $page = ereg_replace("</body>.*", ",", $page);
        $numbers = explode(",", $page);
        $shoutcast_currentlisteners = $numbers[0];
        $connected = $numbers[1];
        if($connected == 1) {
            $radio_status = 1;
            $wordconnected = "yes";
        }
        else
            $wordconnected = "no";
        $shoutcast_peaklisteners = $numbers[2];
        $shoutcast_maxlisteners = $numbers[3];
        $shoutcast_reportedlisteners = $numbers[4];
        $shoutcast_bitrate = $numbers[5];
        $shoutcast_cursong = $numbers[6];
        $shoutcast_curbwidth = $shoutcast_bitrate * $shoutcast_currentlisteners;
        $shoutcast_peakbwidth = $shoutcast_bitrate * $shoutcast_peaklisteners;
    }

## output on ##    

echo '<meta http-equiv="refresh" content=5;><html><head><title>Streamanzeiger</title></head><body>';
echo 'Anzahl der hoerer: ' . $shoutcast_currentlisteners . '<br />';
echo 'Bitrate: ' . $shoutcast_bitrate .'kb/s <br />';
echo 'Zuhoerer Peak: ' . $shoutcast_peaklisteners . '<br />';
echo 'Maximale Zuhoerer: ' . $shoutcast_maxlisteners . '<br />';
echo 'Aktueller Song: >>' . $shoutcast_cursong . '<< <br />';
echo '</body></html>';
## output off ##

Wenn wer weis wie es besser geht, wäre ich für die lösung echt dankbar
 

Attachments

  • Webradio-funzt.zip
    7.4 KB · Views: 224
Top