Skip to content

Cum să muxezi streamuri în MPEG-TS cu GStreamer

DodaTech Updated 2025-01-15 1 min read

In this tutorial, you'll learn about Cum să muxezi streamuri în MPEG. We cover key concepts, practical examples, and best practices.

În acest ghid vei învăța cum să muxezi streamuri audio și video în format MPEG-TS folosind elementul mpegtsmux în GStreamer. MPEG-TS (Transport Stream) este standardul pentru broadcasting digital TV și streaming prin rețea.

The Wrong Way

Multiplexare directă fără parsare și codare corectă:

gst-launch-1.0 videotestsrc ! mpegtsmux ! filesink location=output.ts

Videotestsrc produce date raw, nu comprimate, iar MPEG-TS necesită date codate.

The Right Way

Multiplexare corectă în MPEG-TS cu stream video codat:

gst-launch-1.0 videotestsrc num-buffers=200 ! videoconvert ! x264enc ! mpegtsmux ! filesink location=output.ts

Output:

Setting pipeline to PAUSED ...
Setting pipeline to PLAYING ...
Got EOS from element "pipeline0".
Fișierul output.ts a fost generat cu succes.

Cu audio și video:

gst-launch-1.0 videotestsrc ! videoconvert ! x264enc ! queue ! mpegtsmux name=mux ! filesink location=output.ts audiotestsrc ! audioconvert ! voaacenc ! queue ! mux.

Prevenție

  • Codifică video și audio înainte de a le trimite la mpegtsmux
  • Folosește queue între elemente pentru sincronizare corectă
  • MPEG-TS suportă multiple programe — folosește program-number pentru a le configura
  • Setează alignment=7 pentru pachete TS de 188 bytes (standard DVB)

Greșeli Comune

  1. Date necomprimate la intrare — mpegtsmux așteaptă date codate (H264, AAC, MPEG2)
  2. Fără parsare — adaugă h264parse și aacparse înainte de muxer
  3. Program number greșit — pentru multiple streamuri, program-number diferă
  4. Lipsa PAT/PMT — mpegtsmux generează automat, dar configurări avansate pot fi necesare

FAQ

### Care este diferența dintre MPEG-TS și MP4?

MPEG-TS este conceput pentru streaming live și broadcasting (toleranță la pierderi), iar MP4 pentru stocare și redare locală.

Pot face streaming live cu mpegtsmux?

Da, MPEG-TS este ideal pentru streaming live. Combină cu udpsink sau tcpsink pentru transmisie în rețea.

Cum adaug metadate în MPEG-TS?

Folosește elementul mpegtsmux cu proprietatea program-name sau adaugă elemente de taginject înainte de codare.

Construit de dezvoltatorii Doda Browser, DodaZIP și Durga Antivirus Pro. Uneltele DodaTech se integrează perfect cu GStreamer pentru productivitate și securitate sporite.

Built by the developers of DodaTech

Doda Browser, DodaZIP & Durga Antivirus Pro