# How to Stream

## Streaming in Linux.

Streaming inside of Linux is very simple, you can use `xdg-open` to find an app that supports this format by giving it the `Tune.m3u` file directly. You can view an implemented search and player made in bash on GitHub.&#x20;

### [Tunejack.sh](https://gist.github.com/xndc/c732204e274743204f1f)

&#x20;Instant radio streaming script using the TuneIn API by xndc.

## Streaming on non-Linux devices or the web.

To start off here, although some players support the M3U format, there is a simple way to do it on all platforms.

### URL Extraction and Usage.

If your player does not support M3U or you don't want to install additional software, you can extract the URL from the m3u file by simply viewing it inside of a text editor.&#x20;

It should give you a URL or multiple <mark style="color:yellow;">(some stations/streams have varying qualities)</mark> that you can open inside of your web browser to give you an mp3 audio control.&#x20;

You can also use this inside of an HTML <mark style="color:green;">`<audio>`</mark> tag, to play music on your own website.

```html
<audio controls autoplay>
    <source src="https://stream.url" type="audio/mpeg">
</audio>
```

{% hint style="info" %}
This is pretty much the basis for streaming, if you need the "rich" streaming experience, you will need to create a parser that can display this either in HTML or some other language you want.
{% endhint %}


---

# Agent Instructions: Querying This Documentation

If you need additional information that is not directly available in this page, you can query the documentation dynamically by asking a question.

Perform an HTTP GET request on the current page URL with the `ask` query parameter:

```
GET https://tunein-api.corehacked.com/endpoints-and-streaming/intro-to-streaming/how-to-stream.md?ask=<question>
```

The question should be specific, self-contained, and written in natural language.
The response will contain a direct answer to the question and relevant excerpts and sources from the documentation.

Use this mechanism when the answer is not explicitly present in the current page, you need clarification or additional context, or you want to retrieve related documentation sections.
