2016-02-25 27 views
6

Come ottengo il tipo Mime I need to pass toMediaSource.isTypeSupported con ffprobe/ffmpeg?Ottieni il tipo mime per MediaSource.isTypeSupported

Per esempio, sul mio computer, che restituisce true:

MediaSource.isTypeSupported('video/mp4; codecs="avc1.64000d,mp4a.40.2"') 

mentre quello non lo fa

MediaSource.isTypeSupported('video/mp4') 

non sono sicuro di come ottenere ciò corrisponderebbe alla parte avc1.64000d,mp4a.40.2 per un determinato video. Here è un elenco più ampio di come potrebbe essere questa parte.

ffprobe -show_streams -i video.mp4 restituisce una serie di informazioni interessanti, tra cui

codec_type=video 
codec_time_base=1/40 
codec_tag_string=avc1 
codec_tag=0x31637661 

e

codec_type=audio 
codec_time_base=1/48000 
codec_tag_string=mp4a 
codec_tag=0x6134706d 

Non sono sicuro che dovrei andare con 'video/mp4; codecs="avc1.0x31637661,mp4a.0x6134706d"' dal momento che questo torna false e non so se si tratta di perché non è l'argomento escluso o perché il video non è effettivamente supportato.

risposta

5

Utilizzando Bento4, posso ottenere il tipo MIME con

mp4info video.mp4 | grep Codec 

che restituirà qualcosa come

Codecs String: avc1.64001F 
Codecs String: mp4a.40.2 

E poi fare

MediaSource.isTypeSupported('video/mp4; codecs="avc1.64001F,mp4a.40.2"') 

che restituisce true :)

012.

Bento4 si concentra su mp4, quindi non sono sicuro di come sarebbe lavorare su altri formati

1

Qualsiasi altro modo per convertire la parte 0x31637661 a avc1.64001F?

EDIT: visto che non ho installato XCode di Apple e nessuna intenzione di - ho trovato il progetto javascript del MP4Box il modo migliore per trovare le informazioni di codec nel formato corretto:

http://download.tsi.telecom-paristech.fr/gpac/mp4box.js/filereader.html

+0

Non lo so. Cosa ti trattiene su Bento4? Sono d'accordo che sarebbe bello avere una risposta con strumenti più comuni, e che funziona con 'mp4'. Bento4 ha fatto il lavoro per me quindi ho smesso di cercare. (Inoltre dovresti scriverlo nei commenti vs la risposta :)) – Guig

+1

Su OSX per avere installato Bento4 (xbuild.proj) Dovrei scaricare Xcode di Apple, con la dimensione di file folle di 4,4 GB !!! Dopo molte più ricerche sembra che MP4BOX possa produrre il giusto formato Mime/codec necessario per il tag video HTML5. Hanno anche una versione JavaScript e una GUI che circonda https://gpac.wp.mines-telecom.fr/mp4box/ – FFish

+0

Oh sì, ho già avuto Xcode quindi non l'ho notato. Sì MP4BOX sembra abbastanza buono. Non esitare a condividere la tua risposta se trovi come farlo con MP4BOX :) – Guig