Care este diferența dintre mp4 și mpegts? (Programare, Mp4, Mpeg2 Ts)

vinit sharma a intrebat.

Recent, am avut o sarcină de a converti formatul de fișier în mp4 și de a-l transmite. Am folosit ffmpeg ca instrument de transcodare. Fișierul MP4 nu este transmis în flux prin protocolul http [am folosit php cgi wrapper], dar apoi formatul de ieșire este schimbat în mpegts, streamingul are loc și funcționează bine. O căutare rapidă pe net http://wiki.videolan.org/MPEG se referă și sfătuiește să folosiți mpegts pentru streamingul de fișiere mp4. Am nevoie de mai multe informații despre aceste două formate, avantajele și diferențele lor.

Mulțumesc, Peter

3 răspunsuri
Yavor Atov

MPEG-TS este conceput pentru streaming live de evenimente prin DVB, UDP multicast, dar și prin HTTP. Acesta împarte fluxul în fluxuri elementare, care sunt segmentate în bucăți mici. informațiile de sistem sunt trimise la intervale regulate, astfel încât receptorul poateîncepe redarea fluxului în orice moment.

MPEG-TS nu este bun pentru fișierele de streaming, deoarece nu oferă informații despre durata filmului sau a cântecului, precum și despre punctele pe care le puteți căuta.

Există câteva protocoale noi care pot utiliza MPEG-TS pentru streaming prin HTTP, care introduc metadate suplimentare în fișiere și care remediază dezavantajul de care am vorbit mai sus: HTTP Live Streaming și DASH (Dynamic adaptive streaming over HTTP).

Pe de altă parte, MP4 are aceste informații într-o parte a fluxului, numită atom moov.Ideea este că moov trebuie plasat înainte de conținutul media și descărcat mai întâi de pe server.În acest fel, playerul video cunoaște durata și poate căuta în orice punct fără a descărca întregul fișier (acest lucru se numește pseudostreaming HTTP).

Din păcate, ffmpeg plasează moov-ul la sfârșitul fișierului. Puteți rezolva acest lucru cu un software ca Xmoov-PHP.

Aici puteți găsi mai multe informații despre pseudostreaming.

Comentarii

  • Se poate face acest lucru în scopuri IPTV: să se creeze un flux MP4 continuu și, la fiecare cerere HTTP separată, să se servească cu un moov la început, cu durata setată la un număr foarte mare? –  > Por Ivo.
  • Atomul moov de la sfârșitul fișierului este o problemă doar pentru playerele primitive. Programele moderne, cum ar fi mplayer, pot detecta cu ușurință faptul că atomul moov se află la sfârșit și îl pot prelua folosind Range-ul vechi de zeci de ani: antet HTTP. –  > Por Mutant Bob.
  • Ivo, ceea ce ceri este similar cu MPEG DASH. DASH utilizează MP4-uri fragmentate care folosesc casetele „traf” și „sidx” pentru a împacheta bucăți scurte (2-10 secunde) de video. Este posibilă și concatenarea acestora într-un singur fișier MP4 în creștere: ‘moov’ ‘sidx’ ‘traf’ ‘sidx’ ‘sidx’ ‘traf’ … Playerul dumneavoastră trebuie doar să suporte secțiunile relevante din specificațiile HTTP și ISO 14496. –  > Por Mutant Bob.
  • 1-Ce este în neregulă cu moov la sfârșitul fișierului?! —- 2- Ce este extensia MPEG-TS? –  > Por Dr.jacky.
  • @Mr.Hyde – Atomul moov este locul în care sunt stocate toate metadatele. Acesta vă spune cum se calculează durata, punctele de căutare pentru salturi, etc. de care aveți nevoie pentru a reda sunetul. Dacă se află la sfârșitul fișierului, înseamnă că trebuie să descărcați fișierul complet înainte de a-l putea reda. Mutarea acestuia în față vă permite să începeți redarea înainte ca fișierul complet să fie descărcat (adică să transmiteți audio în flux continuu). ffmpeg vă permite să stocați atomul moov în față, dar în mod implicit este plasat la sfârșit. Este vorba doar de o linie de comandă pe care trebuie să o folosiți. –  > Por chubbsondubs.
Hudson Tavares

Puteți reordona fișierul MP4, punând secțiunea moov la începutul acestuia, folosind următoarea comandă FFMPEG:

ffmpeg -i your.mp4 -vcodec copy -acodec copy -movflags +faststart reordered.mp4

Comentarii

  • Acest lucru nu pare să răspundă la întrebarea lui OP. –  > Por Reîntoarce Monica.
Ujjwal Swami

.mp4 este extensia unui fișierîn timp ce mpeg ts este folosit pentru fluxurile de transport…..mpeg ts este un standard folosit pentru difuzarea video digitală pentru a trimite video mpeg și audio mpeg. există în principiu două tipuri de tsspts și mptsspts conține un singur program doar în timp ce mpts conține mai multe programe în el. cititorul ts și vlc media players sunt folosite pentru a reda mpeg tsif doriți să știți mai multe despre asta următoarele,MPEG TS SAU TRANSPORT STREAM MPTS SPTS MPEG TS SAU TRANSPORT STREAM MPTS SPTS

Extensia pentru fișierele de transport stream este .ts