In iPhone OS 3, Apple ha introdotto HTTP Live Streaming che dovrebbe consentire lo streaming live di video da Internet. Attualmente sto operando una webcam, che si alimenta nel mio server, e viene quindi convertita in un flusso flv da ffmpeg, e in streaming indietro usando ffserver. Qualcuno sa come configurare un flusso video che l'iPhone può usare usando ffmpeg e ffserver? Dovrei essere in grado di ricodificare in qualsiasi formato al volo.HTTP Live Streaming, FFMPEG e FFSERVER e iPhone OS 3
risposta
Avrai bisogno di costruire una copia di ffmpeg con una versione> = e109a29d6ddb02b2dd58c6c385ebec27f2d23b58 (Git) o 18793 (SVN). Assicurati di specificare anche il flag --enable-libx264 quando stai costruendo. Una volta che hai installato e funzionante che, si può fare più o meno il seguente:
ffmpeg -i <input video> -acodec libmp3lame -ac 1 -vcodec libx264 -s 320x240 \
-level 30 -f mpegts - | \
segmenter - 10 test test.m3u8 http://example.com/path/to/your/files/
cioè Portare un file di flusso in entrata o in ffmpeg e tubo un video H.264 con audio MP3 in segmenter di Apple. Il segmentatore sputa file video segmentati e playlist M3U che puntano ai file segmentati. Serviresti i file segmentati e le playlist tramite un server web come Apache.
Ovviamente ti consigliamo di modificare sostanzialmente le opzioni ffmpeg e segmenter per ottenere i risultati che desideri.
Per chi è interessato, ho raggruppato un segmenter open source con uno script che consente di utilizzare ffmpeg per fare ciò, vedere il mio progetto segmented streaming on the iphone. Può eseguire segmenti multi-bitrate per i flussi di input e trasferire i segmenti del flusso in una destinazione configurabile tramite scp, ftp e anche fino a aws s3.
Cosa c'è di sbagliato nell'usare QuickTime per convertire i film in formato "iPhone"? Devi solo fare File> Esporta> formato iPhone ... Mi manca qualcosa?
Dopo la conversione in formato iPhone, ho tritarlo con mediafilesegmenter (che si trova a Apple Developer Connection, Http Live Streaming Tools):
mediafilesegmenter -t 10 -f folderName/ nameOfInputFile.m4v
(Nota: il nomeCartella/cartella deve esistere)
Poi puntare il vostro iPhone a un sito web con
<video src='folderName/prog_index.m3u8' height=45 width=70
controls='on'>Your browser does not support the video tag</video>
Questo è piuttosto un argomento vecchio, ma il supporto HLS, un apparentemente nuova caratteristica di FFmpeg potrebbe essere utile a qualcuno.
Un esempio di utilizzo potrebbe essere il seguente:
ffmpeg -i <input_file> -c:v libx264 -preset slow -map 0 -an -flags -global_header -f hls -hls_time <segment_length> <m3u8_file>
Se volete fare lo streaming dal vivo, questo sarebbe un altro esempio:
ffmpeg -i <input_stream> -c:v libx264 -preset ultrafast -map 0 -an -flags -global_header -f hls -hls_time <segment_length> -hls_list_size <playlist_entries> -hls_wrap <wrap> <m3u8_file>
L'argomento -hls_list_size
limita il numero di file in la playlist e l'argomento -hls-wrap
limita il numero di file totali e avvolgerà i nomi dei file una volta arrivati a quel punto (es: test0.ts, test1.ts ... test7.ts, test0.ts, test1.ts ... quando l'involucro è 8).
Per ulteriori informazioni, vedere the documentation. Si prega di notare che gli esempi sopra riportati escludono l'audio con il flag , poiché personalmente non ne avevo mai avuto bisogno.
risposta perfetta ... funziona bene –
Sembra bello, ma sembra che il formato di output non sia corretto per HLS; Ottengo "plugin mancante" quando guardo il file m3u8 con Safari? – Jonny
- 1. Live Video Chat per iPhone e HTTP Live Streaming
- 2. Server di streaming live HTTP su iPhone
- 3. HTTP Live Streaming: l'incubo di Linux
- 4. ffmpeg HTTP STREAMING DIRETTA rimuovere vecchi segmenti
- 5. Come riprodurre il video utilizzando "HTTP Live Streaming" in iphone?
- 6. Dove si trovano gli strumenti di streaming live HTTP di OS OS
- 7. Android 2.2 Streaming HTTP progressivo = HTTP Live Streaming?
- 8. Implementazione di streaming live HTTP in iOS
- 9. Come implementare il server HTTP Live Streaming su Unix?
- 10. Streaming live tramite MP4
- 11. Standard di streaming live HTTP con HTML5
- 12. Rilevamento streaming live HTTP sui telefoni cellulari
- 13. Come eseguire lo streaming con ffmpeg tramite il protocollo http
- 14. MediaPlayer Framework su GingerBread e supporto HTTP Live Streaming di Apple
- 15. Connessione TCP rifiutata quando si utilizza ffserver/ffmpeg
- 16. Stream video live per smartphone Android e iPhone
- 17. Come ridurre al minimo il ritardo in streaming con ffmpeg
- 18. HLS (streaming live http) su Android 3.0 e in cerca di
- 19. Configurare un server Red5 con FFmpeg per lo streaming live su iOS
- 20. Come utilizzare il protocollo HTTP Live Streaming in iPhone SDK 3.0
- 21. iPhone - App rifiutata di nuovo, HTTP Live Streaming feed di base 64kbps
- 22. URL http live streaming in tempo reale utilizzando mediaplayer
- 23. Utilizzo della crittografia openssl per HTTP Live Streaming di Apple
- 24. Latenza video streaming live
- 25. FFmpeg Live Stream - Loop Video?
- 26. muting una riproduzione di video AVPlayer Http Live Streaming
- 27. iphone invia video a ipad live streaming e controllo wireless (come AR Drone)
- 28. Live Streaming (Socket) - Come sincronizzare audio e video?
- 29. Streaming video live tra server e client - Utilizzo di Java
- 30. Come ottenere Rails 4 ActionController :: Lo streaming live funziona con Thin e Ruby 2? E come scala Thin e Puma in scala con lo streaming live?
Qualsiasi soluzione per server Windows? – postalservice14
Chiunque ha ancora funzionato con un live streaming da una fonte dv? Ho cercato e continuo a ricevere errori dal segmenter ... –
Ho trovato che la versione FFmpeg SVN-r21627 funziona con il segmentatore open source http://code.google.com/p/httpsegmenter/ Qualcuno ha un'idea di cosa è cambiato da quella versione? –