Page 1 sur 1
Stream Audio (VLC) + Unity
Publié : 01 Mars 2013 12:43
par piranh4
Bonjour, j'ai lancé un stream sous VLC , qui fonctionne parfaitement malheureusement et c'est pour cela que je suis la ça ne fonctionne pas :
Code : Tout sélectionner
using UnityEngine;
using System.Collections;
public class Stream_audio : MonoBehaviour {
public string url_stream = "http://****:8080/stream.ogg";
void Start ()
{
WWW stream_audio = new WWW(url_stream);
AudioClip stream_audio_clip = stream_audio.GetAudioClip(false, true);
audio.clip = stream_audio_clip;
}
void Update ()
{
if (!audio.isPlaying && audio.clip.isReadyToPlay)
{
audio.Play();
}
else
{
Debug.Log("waiting - isplaying : " + audio.isPlaying + " isreadyToPlay : " + audio.clip.isReadyToPlay);
}
}
}
Quelqu'un aurait il dejà utilisé cette fonctionnalité, si oui pourriez vous m'aider.
Re: Stream Audio (VLC) + Unity
Publié : 01 Mars 2013 21:12
par ZJP
Bonjour, j'ai lancé un stream sous VLC , qui fonctionne parfaitement malheureusement et c'est pour cela que je suis la ça ne fonctionne pas :
Cela fonctionne ou pas?!
Re: Stream Audio (VLC) + Unity
Publié : 02 Mars 2013 00:10
par piranh4
Oula oui je me suis mal exprimé
. Le stream VLC marche , le script non , pas d'erreur de compilation mais on entend rien. Désolé du cafouillage
Re: Stream Audio (VLC) + Unity
Publié : 02 Mars 2013 18:35
par ZJP
Nanh, j'avais compris. Je "faisais" mon modo chieur.
J'ai cherché sans vraiment trouver de réponses satisfaisantes. On est carrément dans le "ça fonctionne/ça fonctionne pas" avec ce sujet. J'ai une solution possible, mais cela passe par l'usage d'une DLL avec
Bass (solution super efficace essayée en streaming à l'époque sous
BlitzBasic). Donc Win32/64 seulement. A voir.
JP
Edit :
Voici une solution avec la DLL Bass. Fonctionne sous Unity V3, V4, V5.
Code : Tout sélectionner
// Bass_Dll (c) ZJP //
// Windows 32B >> Copy 'bass_2302.dll' in windows\system32 folder
// Windows 64B >> Copy 'bass_2302.dll' in windows\SysWOW64 folder
//
using UnityEngine;
using System;
using System.Collections;
using System.Runtime.InteropServices;
public class Bass_Dll_Stream : MonoBehaviour
{
private int bass_stream = 0;
[DllImport ("bass_2302.dll", EntryPoint="BASS_Init")] private static extern void BASS_Init(int bass_device, int bass_freq, int bass_flag, int bass_win, int bass_clsid);
[DllImport ("bass_2302.dll", EntryPoint="BASS_StreamCreateURL")] private static extern int BASS_StreamCreateURL(string bass_url, int bass_offset, int bass_flag, int bass_proc, int bass_user);
[DllImport ("bass_2302.dll", EntryPoint="BASS_ChannelPlay")] private static extern void BASS_ChannelPlay(int bass_handle, int bass_restart);
[DllImport ("bass_2302.dll", EntryPoint="BASS_Free")] private static extern void BASS_Free();
void Start ()
{
BASS_Init(-1,44100,0,0,0);
// http://185.33.22.15:10108
// http://185.33.22.15:10084
// http://185.33.22.22:8680
// http://185.33.22.15:8075
//
bass_stream = BASS_StreamCreateURL("http://hi5.adagio.fm:80",0,4,0,0); // url du stream a écouter.
BASS_ChannelPlay(bass_stream ,1);
}
void OnDisable()
{
BASS_Free();
}
}
DLL en pièce jointe :
Re: Stream Audio (VLC) + Unity
Publié : 04 Mars 2013 11:24
par piranh4
Merci pour cette solution simple et efficace !
Re: Stream Audio (VLC) + Unity
Publié : 04 Mars 2013 15:10
par ZJP
A ton service.
J'étofferais le script en CS avec les autres fonctions de la DLL (Si je trouve le temps)
Je démarrerai alors un nouveau sujet.
Edit :
Finalement.....
Re: Stream Audio (VLC) + Unity
Publié : 25 Mars 2017 22:12
par ZJP
MAJ Lien DLL.