Skip to content

GitLab

  • Projects
  • Groups
  • Snippets
  • Help
    • Loading...
  • Help
    • Help
    • Support
    • Community forum
    • Submit feedback
    • Contribute to GitLab
  • Sign in / Register
gst-plugins-bad
gst-plugins-bad
  • Project overview
    • Project overview
    • Details
    • Activity
    • Releases
  • Repository
    • Repository
    • Files
    • Commits
    • Branches
    • Tags
    • Contributors
    • Graph
    • Compare
  • Issues 994
    • Issues 994
    • List
    • Boards
    • Labels
    • Service Desk
    • Milestones
  • Merge Requests 192
    • Merge Requests 192
  • CI / CD
    • CI / CD
    • Pipelines
    • Jobs
    • Schedules
  • Operations
    • Operations
    • Incidents
    • Environments
  • Packages & Registries
    • Packages & Registries
    • Container Registry
  • Analytics
    • Analytics
    • CI / CD
    • Repository
    • Value Stream
  • Snippets
    • Snippets
  • Members
    • Members
  • Collapse sidebar
  • Activity
  • Graph
  • Create a new issue
  • Jobs
  • Commits
  • Issue Boards
  • GStreamer
  • gst-plugins-badgst-plugins-bad
  • Issues
  • #983

Closed
Open
Opened May 28, 2019 by Mark Goodall@mark-goodall

mpegtsmux: Regression between 1.8.3 and 1.14.1 with klv metadata

I cannot tell what change has broken this between the two releases, but here is the expected output on 1.8.3

$ GST_DEBUG=mpeg*:9 gst-launch-1.0 rtspsrc location=rtsp://..... name=input ! rtph265depay ! mpegtsmux name=mux ! filesink location=foo.ts input. ! rtpklvdepay ! mux. 2>&1 | head -n 40
Setting pipeline to PAUSED ...
Pipeline is live and does not need PREROLL ...
Progress: (open) Opening Stream
Progress: (connect) Connecting to rtsp://.....
Progress: (open) Retrieving server options
Progress: (open) Retrieving media info
Progress: (request) SETUP stream 0
Progress: (request) SETUP stream 1
Progress: (open) Opened Stream
Setting pipeline to PLAYING ...
New clock: GstSystemClock
Progress: (request) Sending PLAY request
Progress: (request) Sending PLAY request
Progress: (request) Sent PLAY request
0:00:00.174237807  5319 0x7f8f88003450 LOG                mpegtsmux mpegtsmux.c:1133:mpegtsmux_clip_inc_running_time:<mux:sink_66> buffer pts 0:00:00.008448070 ->  0:00:00.008448070 running time
0:00:00.174319690  5319 0x7f8f88003450 LOG                mpegtsmux mpegtsmux.c:1133:mpegtsmux_clip_inc_running_time:<mux:sink_66> buffer pts 0:00:00.008448070 ->  0:00:00.008448070 running time
0:00:00.174348253  5319 0x7f8f88003450 LOG                mpegtsmux mpegtsmux.c:1157:mpegtsmux_clip_inc_running_time:<mux:sink_66> buffer dts 0:00:00.008448070 -> +0:00:00.008448070 running time
0:00:02.187776703  5319 0x7f8f900018f0 LOG                mpegtsmux mpegtsmux.c:1133:mpegtsmux_clip_inc_running_time:<mux:sink_65> buffer pts 0:00:00.035003670 ->  0:00:00.035003670 running time
0:00:02.187853278  5319 0x7f8f900018f0 LOG                mpegtsmux mpegtsmux.c:1133:mpegtsmux_clip_inc_running_time:<mux:sink_65> buffer pts 0:00:00.035003670 ->  0:00:00.035003670 running time
0:00:02.187879206  5319 0x7f8f900018f0 LOG                mpegtsmux mpegtsmux.c:1157:mpegtsmux_clip_inc_running_time:<mux:sink_65> buffer dts 0:00:00.036371165 -> +0:00:00.036371165 running time
0:00:02.187974796  5319 0x7f8f900018f0 DEBUG              mpegtsmux mpegtsmux.c:1192:mpegtsmux_collected_buffer:<mux> Pads collected
0:00:02.188009369  5319 0x7f8f900018f0 DEBUG              mpegtsmux mpegtsmux.c:598:mpegtsmux_create_stream:<mux:sink_65> Creating stream with PID 0x0041 for caps video/x-h265, stream-format=(string)byte-stream, alignment=(string)nal
0:00:02.188052328  5319 0x7f8f900018f0 DEBUG              mpegtsmux mpegtsmux.c:598:mpegtsmux_create_stream:<mux:sink_66> Creating stream with PID 0x0042 for caps meta/x-klv, parsed=(boolean)true
0:00:02.188179813  5319 0x7f8f900018f0 DEBUG              mpegtsmux mpegtsmux.c:1275:mpegtsmux_collected_buffer:<mux:sink_66> Use stream (pid=66) from pad as PCR for program (prog_id = 0)
0:00:02.188210761  5319 0x7f8f900018f0 DEBUG              mpegtsmux mpegtsmux.c:1282:mpegtsmux_collected_buffer:<mux:sink_66> Chose stream for output (PID: 0x0042)
0:00:02.188231458  5319 0x7f8f900018f0 DEBUG              mpegtsmux mpegtsmux.c:1287:mpegtsmux_collected_buffer:<mux> Buffer has PTS  0:00:00.008448070 pts 760
0:00:02.188258146  5319 0x7f8f900018f0 DEBUG              mpegtsmux mpegtsmux.c:1293:mpegtsmux_collected_buffer:<mux> Buffer has DTS +0:00:00.008448070 dts 760
0:00:02.188284126  5319 0x7f8f900018f0 DEBUG              mpegtsmux mpegtsmux.c:1324:mpegtsmux_collected_buffer:<mux> delta: 1
0:00:02.188302442  5319 0x7f8f900018f0 DEBUG              mpegtsmux tsmux.c:985:tsmux_write_stream_packet: TS for PCR stream is 760
0:00:02.188354150  5319 0x7f8f900018f0 DEBUG              mpegtsmux tsmux.c:1156:tsmux_write_pat: PAT has 1 programs
0:00:02.188378238  5319 0x7f8f900018f0 DEBUG              mpegtsmux tsmux.c:879:tsmux_section_write_packet: Section buffer with size 16 created
0:00:02.188405864  5319 0x7f8f900018f0 DEBUG              mpegtsmux tsmux.c:766:tsmux_write_ts_header: PID 0x0000, counter = 0x0, 17 bytes avail
0:00:02.188428395  5319 0x7f8f900018f0 DEBUG              mpegtsmux tsmux.c:835:tsmux_write_ts_header: Adaptation field of size >= 167 + 17 bytes payload
0:00:02.188446049  5319 0x7f8f900018f0 DEBUG              mpegtsmux tsmux.c:907:tsmux_section_write_packet: Creating packet buffer at offset 0 with length 16
0:00:02.188473398  5319 0x7f8f900018f0 DEBUG              mpegtsmux tsmux.c:916:tsmux_section_write_packet: Writing 17 bytes to section. 0 bytes remaining
0:00:02.188513116  5319 0x7f8f900018f0 LOG                mpegtsmux mpegtsmux.c:1464:new_packet_common_init:<mux> Collecting packet with pid 0x0000 into streamheaders
0:00:02.188541488  5319 0x7f8f900018f0 LOG                mpegtsmux mpegtsmux.c:1479:new_packet_common_init:<mux> marking as delta unit
0:00:02.188559639  5319 0x7f8f900018f0 LOG                mpegtsmux mpegtsmux.c:1597:mpegtsmux_collect_packet:<mux> collecting packet size 188
0:00:02.188586059  5319 0x7f8f900018f0 DEBUG              mpegtsmux tsmuxstream.c:941:tsmux_stream_get_es_descrs: adding KLVA registration descriptor
0:00:02.188609965  5319 0x7f8f900018f0 DEBUG              mpegtsmux tsmux.c:1222:tsmux_write_pmt: PMT for program 1 has 2 streams

But on 1.14.1 It freezes here

$ GST_DEBUG=mpeg*:9 gst-launch-1.0 rtspsrc location=rtsp://..... name=input ! rtph265depay ! fakesink mpegtsmux name=mux ! filesink location=foo.ts input. ! queue ! rtpklvdepay ! mux.
Setting pipeline to PAUSED ...
Pipeline is live and does not need PREROLL ...
Progress: (open) Opening Stream
Progress: (connect) Connecting to rtsp://.....
Progress: (open) Retrieving server options
Progress: (open) Retrieving media info
Progress: (request) SETUP stream 0
Progress: (request) SETUP stream 1
Progress: (open) Opened Stream
Setting pipeline to PLAYING ...
New clock: GstSystemClock
Progress: (request) Sending PLAY request
Progress: (request) Sending PLAY request
Progress: (request) Sent PLAY request
0:00:00.339578256 13839   0x5591b6f5e0 LOG                mpegtsmux mpegtsmux.c:1256:mpegtsmux_clip_inc_running_time:<mux:sink_65> buffer pts 0:00:00.007385366 ->  0:00:00.007385366 running time
0:00:00.339663604 13839   0x5591b6f5e0 LOG                mpegtsmux mpegtsmux.c:1256:mpegtsmux_clip_inc_running_time:<mux:sink_65> buffer pts 0:00:00.007385366 ->  0:00:00.007385366 running time
0:00:00.339702901 13839   0x5591b6f5e0 LOG                mpegtsmux mpegtsmux.c:1280:mpegtsmux_clip_inc_running_time:<mux:sink_65> buffer dts 0:00:00.007385366 -> +0:00:00.007385366 running time
^Chandling interrupt.
Interrupt: Stopping pipeline ...
Execution ended after 0:00:03.628587646
Setting pipeline to PAUSED ...
Setting pipeline to READY ...
^C
Assignee
Assign to
None
Milestone
None
Assign milestone
Time tracking
None
Due date
None
Reference: gstreamer/gst-plugins-bad#983