How does streaming of web radio basically work? - objective-c

My sister is a totally internet radio freak. She listens to internet radio all the time. So I thought why not write a little funny styled app for her upcoming birthday ;-)
I'd like to understand the concept behind streaming online web radio. As I never listened to online radio myself I need some advice from you guys.
Questions in my mind:
Is a stream just a file which I "open"? Does it have an URL just like any other web ressource?
My goal is to write an application that takes an stream URL, and then just plays that stream. However, I was reading somewhere else that I need to have my own server hardware with complicated software to convert audio and stuff like that. I mean... really? Aren't there programs for windows already that play any web radio with a given URL out of the box with no third party server in between?
Note: I don't want to stream myself, but I want to listen to a stream. Sorry for my bad english. I don't want to send out a stream. Just receive one.

There are quite a lot stream software providers. Most are free. The most known are:
Shoutcast
Icecast
But if you are looking for a web application that does this someone made there while ago:
PHP radio
Also Wikipedia has a nice article about how webradio's work:
Wikipedia

Microsoft used to offer Windows Media Encoder (built with wma codec 9) that could stream and do static conversions. I haven't seen any recent update to this though....

Related

google home reading from website

I'm currently working on a project where my main focus is to create an Action for Google Home which can be invoked and asked to read out some articles (chosen previously from a list, also by voice) from a particular website.
I was wondering if it was possible, or if it were already some similar projects.
What I'd like to do is something like the feature in Pocket or instapaper, where you can make the device read the article for you.
I also thought to make something like a database with all the articles I'm interested in, which auto-updates itself whenever a new article is posted, but my main concern now is to be able to separate the articles in various lists, parse the article and in the end implement text to speech into the Action.
Also some implementations with 3rd party services and apps would be useful.
Please ask me if anything isn't exactly clear, english is not my first language.
Yes, this is possible. Not necessarily easy, but possible.
First - there is nothing in the Actions on Google library or in Google Home that will automatically scrape a website. That will be up to you.
Second - Responses from your Action are limited in how much they can send at a time.
If you're having it do text-to-speech, you're limited to two "text bubbles" of 640 characters each before the user has to reply. You should keep well below that and should probably stick to just one "text bubble".
If you're playing an audio cut, then you're limited to two minutes.
You can work around both of these limitations by using the Media Response. With TTS, you would play a portion of the text, a brief Media response, at the conclusion of which, your server would be triggered to send the next chunk of text. If it is all recorded, you can just send the longer audio as the Media.
Be advised, however, that if you're using the inline editor or using Firebase Cloud Functions (which the inline editor uses), that by default you're not able to access most sites outside Google's network. You need to upgrade to a paid plan to do so. I suggest the Blaze plan which is pay-as-you-go, but includes a free tier which is typically good enough for development work and light production usage.

Does WebRTC allow to create audio, video and text chat?

I want to create audio, video and text messagtes chat. Is it possible using WebRTC? Or it only allow audio and video chats?
One side of my app will be implemented using browser. An other one - using C++ native API.
Does anyone have examples in native C++ API and/or javascript?
The WebRTC specification is still very much in flux, but there's a DataChannel API in the spec that is implemented in an early form in both Firefox and Chrome. DataChannels are intended to allow you to send arbitrary bytes between peers, and the spec provides for both reliable (TCP-like) and unreliable (UDP-like) channels.
I am not sure if WebRTC allows for text chatting. I was able to successfully create an Android Application that performed all of this, but only with the combination of Google's Libjingle and WebRTC libraries. Within the Libjingle library there are several example programs/pieces of code that demonstrate the library's functionality. The call example in Libjingle sounds very similar to what you are wanting to do, and is what I built my Android application out of. The only thing is I have not yet ported it to an web browser, so I am not sure if Libjingle will work with that.
I have begun looking into it, and I have found some people on the WebRTC discussion group that have developed a very nice Multi-user video chat application for a web browser that is built using WebRTC. It is capable of video (along with voice) communications as well as text chatting. I do not know if this matters, but it all occurs within a single interface (meaning that it does not seem to allow for separated/singular form communications -- text only, voice only, video only). I am sure that it would not be too difficult to separate them all out if you wanted/needed. They have posted all of their code onto GitHub and seem to be actively updating and improving it.

I want to build a web service that sends articles to my Kindle

Where do I start?
Is there some sort of API - or something I can get access to that allows me to format articles and send them to my kindle?
I would like to do this in Rails.
Edit: For further clarity, I guess my real question is, how does instapaper.com get articles from the web to my kindle? Can someone explain the technology behind that please and do they have access to the Kindle SDK?
Take a look at Calibre (http://calibre-ebook.com/), runs on Linux, Win and OS X. Python based, has a GUI and a command line, suitable for automation. You can do all kind of conversions to .mobi format as well as fetching news from website and packing it to .mobi, which can be then transferred via USB or sent to kindle email address. It's very simple to fetch & send articles automatically either on a server system with cron or leaving it running on desktop (with GUI) for non-technical users.
Calibre's command line tools are your best bet: http://calibre-ebook.com/user_manual/cli/ebook-convert.html is the call you would most likely be interested in.
I believe all Instapaper does is convert to .mobi format, and then send mail (with the .mobi file attached) to your specified Kindle email address (eg. foo#kindle.com).
If you're more interested in specifics, Marco (Instapaper's author) tends to be very forthcoming when people ask him technical questions. His Twitter account is #marcoarment.
Check out this ruby gem, it seems to do what you want:
https://github.com/29decibel/kindler

VB.NET Use API Messenger

I know how you can use the api in vb.net IM
I wish simply by pressing a button sends a message to all my contacts.
I apologize for my ignorance but I'm still learning, thanks
You don't mention what IM network you're talking about so I'm assuming you're talking about Live Messenger. If that's not the case, only the bit about Pidgin might still be relevant.
Unfortunately, my understanding is that nowdays there's no easy API for doing what you want, and you might have to write your own client to do this, here's a website that discusses the protocol:
http://www.hypothetic.org/docs/msn/index.php
You might also want to look at Pidgin since it supports Messenger and is open source:
http://www.pidgin.im/download/source/
There's a Live Messenger API, but I don't think that can be used to send a message from a standalone VB.Net desktop client since it seems more for writing Addins to the standard Live Messenger client, but here's the information about it in case I'm wrong:
http://msdn.microsoft.com/en-us/library/aa905675.aspx
If you're running XP or earlier you might be able to use the Windows Messenger SDK:
http://msdn.microsoft.com/en-us/library/ms630961%28v=VS.85%29.aspx

Set instant messenger display message programmatically

Would a script that sets display messages for instant messengers be simple or complex? After some searching, there doesn't seem to be any information about this at all.
For the sake of an example, if I had a text file of quotations, would it be possible to have the google talk display message change to a different quotation hourly?
Depends on which client you're using. As far as I know, Google's client doesn't offer any interface for plugins, but the open source instant messenger Pidgin does. I think there already is a plugin for what you want to do, but you can write your own using the documentation and examples they give you.
The complexity of writing something like this is based on how much C or Perl you know, since you can program in either of those for Pidgin. Reading code from other people's plugins, you should be able to figure out the Pidgin API.
You can use Kik API to programmatically send rich content and files between mobile applications. It is available for iPhone and Android platforms and takes only about 5 lines of code to integrate into your app. There is more info at the API website: http://www.kik.com/dev
Disclaimer: I'm on of the developers behind Kik API :)