Incorrect/Missing timestamps from tsdemux when transcoding 1080i .ts files

classic Classic list List threaded Threaded
2 messages Options
Reply | Threaded
Open this post in threaded view
|

Incorrect/Missing timestamps from tsdemux when transcoding 1080i .ts files

hilndr44
I have an HD-PVR which outputs a .ts stream (comprised of H.264 AVCHD video,
and AC-3 audio) in whatever resolution is connected to it's input. In this
case the feed is a 1080i video stream, and I pipe it to a file for
subsequent transcoding using gstreamer.

The problem is that, in the resultant mp4 file, the video is only half the
duration (even though the audio is the full 1 minute long). I have included
the mediainfo results for both the input and output files.
Playback is choppy, pixellated, and at twice the speed (with pauses in
video, but no pauses in audio).

The Nvidia devtalk forum has suggested that tsdemux might not give the
correct timestamps  :
https://devtalk.nvidia.com/default/topic/1031092/jetson-tx2/using-gstreamer-to-transcode-downscale-1080i-videos-on-jetson-tx2/1


Are there any alternatives to tsdemux that might handle timestamps better?



gst-launch-1.0 -v -e filesrc location=input.ts \
  ! tsparse \
  ! tsdemux name=demux \
demux. \
  ! queue \
  ! h264parse \
  ! avdec_h264 \
  ! nvvidconv \
  ! omxh264enc \
  ! mux.video_0 \
demux. \
  ! queue \
  ! aacparse \
  ! audio/mpeg \
  ! faad \
  ! audio/x-raw, format=S16LE, layout=interleaved, rate=48000, channels=2 \
  ! qtmux name=mux \
  ! filesink sync=false location=output.mp4




INPUT FILE mediainfo :  input.ts
------------------------------------------------------------
General
ID : 1 (0x1)
Complete name : input.ts
Format : MPEG-TS
File size : 53.5 MiB
Duration : 1mn 1s
Overall bit rate mode : Variable
Overall bit rate : 7 202 Kbps

Video
ID : 256 (0x100)
Menu ID : 1 (0x1)
Format : AVC
Format/Info : Advanced Video Codec
Format profile : Main@L4
Format settings, CABAC : Yes
Format settings, ReFrames : 4 frames
Format settings, GOP : M=4, N=32
Codec ID : 27
Duration : 1mn 2s                                              #####
Bit rate mode : Variable
Maximum bit rate : 20.0 Mbps
Width : 1 920 pixels
Height : 1 080 pixels
Display aspect ratio : 16:9
Frame rate : 30.000 fps                                      #####
Color space : YUV
Chroma subsampling : 4:2:0
Bit depth : 8 bits
Scan type : Interlaced                                        #####
Scan type, store method : Separated fields
Scan order : Top Field First
Color range : Limited
Color primaries : BT.709
Transfer characteristics : BT.709
Matrix coefficients : BT.709

Audio
ID : 257 (0x101)
Menu ID : 1 (0x1)
Format : AAC
Format/Info : Advanced Audio Codec
Format version : Version 2
Format profile : LC
Muxing mode : ADTS
Codec ID : 15
Duration : 1mn 1s
Bit rate mode : Variable
Channel(s) : 2 channels
Channel positions : Front: L R
Sampling rate : 48.0 KHz
Frame rate : 46.875 fps (1024 spf)
Compression mode : Lossy
Delay relative to video : -100ms

Menu
ID : 4096 (0x1000)
Menu ID : 1 (0x1)
Duration : 1mn 1s
List : 256 (0x100) (AVC) / 257 (0x101) (AAC)
Service name : Service01
Service provider : FFmpeg
Service type : digital television





OUTPUT FILE mediainfo :   output.mp4
-------------------------------------------------------------------------------
General
Complete name : output.mp4
Format : MPEG-4
Format profile : QuickTime
Codec ID : qt 2005.03 (qt )
File size : 41.0 MiB
Duration : 1mn 2s
Overall bit rate : 5 539 Kbps
Encoded date : UTC 2018-03-15 20:35:15
Tagged date : UTC 2018-03-15 20:35:15

Video
ID : 2
Format : AVC
Format/Info : Advanced Video Codec
Format profile : Baseline@L3.1
Format settings, CABAC : No
Format settings, ReFrames : 1 frame
Codec ID : avc1
Codec ID/Info : Advanced Video Coding
Duration : 30s 100ms                               #####  HALF THE SOURCE
DURATION
Bit rate : 2 048 Kbps
Maximum bit rate : 2 097 Kbps
Width : 1 280 pixels
Height : 720 pixels
Display aspect ratio : 16:9
Frame rate : 30.000 fps                            #####  BUT SAME FRAMERATE
Color space : YUV
Chroma subsampling : 4:2:0
Bit depth : 8 bits
Scan type : Progressive                            #####
Bits/(Pixel*Frame) : 0.074
Stream size : 29.5 MiB (72%)
Writing library : x264 core 148 r2643 5c65704
Encoding settings : cabac=0 / ref=1 / deblock=0:0:0 / analyse=0:0 / me=dia /
subme=0 / psy=1 / psy_rd=1.00:0.00 / mixed_ref=0 / me_range=16 / chroma_me=1
/ trellis=0 / 8x8dct=0 / cqm=0 / deadzone=21,11 / fast_pskip=1 /
chroma_qp_offset=0 / threads=4 / lookahead_threads=4 / sliced_threads=1 /
slices=4 / nr=0 / decimate=1 / interlaced=0 / bluray_compat=0 /
constrained_intra=0 / bframes=0 / weightp=0 / keyint=300 / keyint_min=30 /
scenecut=0 / intra_refresh=0 / rc_lookahead=0 / rc=cbr / mbtree=0 /
bitrate=2048 ratetol=1.0 / qcomp=0.60 / qpmin=0 / qpmax=69 / qpstep=4 /
vbv_maxrate=2048 / vbv_bufsize=1228 / nal_hrd=none / filler=0 /
ip_ratio=1.40 / aq=0
Language : English
Encoded date : UTC 2018-03-15 20:35:15
Tagged date : UTC 2018-03-15 20:35:15

Audio
ID : 1
Format : PCM
Format settings, Endianness : Little
Format settings, Sign : Signed
Codec ID : sowt
Duration : 1mn 2s
Bit rate mode : Constant
Bit rate : 1 536 Kbps
Channel(s) : 2 channels
Channel positions : Front: L R
Sampling rate : 48.0 KHz
Bit depth : 16 bits
Stream size : 11.4 MiB (28%)
Language : English
Encoded date : UTC 2018-03-15 20:35:15
Tagged date : UTC 2018-03-15 20:35:15




--
Sent from: http://gstreamer-devel.966125.n4.nabble.com/
_______________________________________________
gstreamer-devel mailing list
[hidden email]
https://lists.freedesktop.org/mailman/listinfo/gstreamer-devel
Reply | Threaded
Open this post in threaded view
|

Re: Incorrect/Missing timestamps from tsdemux when transcoding 1080i .ts files

Nicolas Dufresne-5
Le lundi 26 mars 2018 à 10:22 -0700, hilndr44 a écrit :

> I have an HD-PVR which outputs a .ts stream (comprised of H.264 AVCHD video,
> and AC-3 audio) in whatever resolution is connected to it's input. In this
> case the feed is a 1080i video stream, and I pipe it to a file for
> subsequent transcoding using gstreamer.
>
> The problem is that, in the resultant mp4 file, the video is only half the
> duration (even though the audio is the full 1 minute long). I have included
> the mediainfo results for both the input and output files.
> Playback is choppy, pixellated, and at twice the speed (with pauses in
> video, but no pauses in audio).
>
> The Nvidia devtalk forum has suggested that tsdemux might not give the
> correct timestamps  :
> https://devtalk.nvidia.com/default/topic/1031092/jetson-tx2/using-gstreamer-to-transcode-downscale-1080i-videos-on-jetson-tx2/1
>
>
> Are there any alternatives to tsdemux that might handle timestamps better?
No, the GStreamer project only provides one demuxer for MPEG Transport
Stream. This element should produce correct timestamps. Though, we
continuously improve this element and provide correction by making new
upstream release of GStreamer. You should, or NVidia should keep track
of these updates as it's likely your issue have been resolved. As a
reference, the current stable GStreamer is 1.14.0. If you can
reproduces these issues with latest GStreamer, then it would be worth
filing a bug on bugs.gnome.org so it can be addressed (or you could
address it too) and tracked properly.

>
>
>
> gst-launch-1.0 -v -e filesrc location=input.ts \
>   ! tsparse \
>   ! tsdemux name=demux \
> demux. \
>   ! queue \
>   ! h264parse \
>   ! avdec_h264 \
>   ! nvvidconv \
>   ! omxh264enc \
>   ! mux.video_0 \
> demux. \
>   ! queue \
>   ! aacparse \
>   ! audio/mpeg \
>   ! faad \
>   ! audio/x-raw, format=S16LE, layout=interleaved, rate=48000, channels=2 \
>   ! qtmux name=mux \
>   ! filesink sync=false location=output.mp4
>
>
>
>
> INPUT FILE mediainfo :  input.ts
> ------------------------------------------------------------
> General
> ID : 1 (0x1)
> Complete name : input.ts
> Format : MPEG-TS
> File size : 53.5 MiB
> Duration : 1mn 1s
> Overall bit rate mode : Variable
> Overall bit rate : 7 202 Kbps
>
> Video
> ID : 256 (0x100)
> Menu ID : 1 (0x1)
> Format : AVC
> Format/Info : Advanced Video Codec
> Format profile : Main@L4
> Format settings, CABAC : Yes
> Format settings, ReFrames : 4 frames
> Format settings, GOP : M=4, N=32
> Codec ID : 27
> Duration : 1mn 2s                                              #####
> Bit rate mode : Variable
> Maximum bit rate : 20.0 Mbps
> Width : 1 920 pixels
> Height : 1 080 pixels
> Display aspect ratio : 16:9
> Frame rate : 30.000 fps                                      #####
> Color space : YUV
> Chroma subsampling : 4:2:0
> Bit depth : 8 bits
> Scan type : Interlaced                                        #####
> Scan type, store method : Separated fields
> Scan order : Top Field First
> Color range : Limited
> Color primaries : BT.709
> Transfer characteristics : BT.709
> Matrix coefficients : BT.709
>
> Audio
> ID : 257 (0x101)
> Menu ID : 1 (0x1)
> Format : AAC
> Format/Info : Advanced Audio Codec
> Format version : Version 2
> Format profile : LC
> Muxing mode : ADTS
> Codec ID : 15
> Duration : 1mn 1s
> Bit rate mode : Variable
> Channel(s) : 2 channels
> Channel positions : Front: L R
> Sampling rate : 48.0 KHz
> Frame rate : 46.875 fps (1024 spf)
> Compression mode : Lossy
> Delay relative to video : -100ms
>
> Menu
> ID : 4096 (0x1000)
> Menu ID : 1 (0x1)
> Duration : 1mn 1s
> List : 256 (0x100) (AVC) / 257 (0x101) (AAC)
> Service name : Service01
> Service provider : FFmpeg
> Service type : digital television
>
>
>
>
>
> OUTPUT FILE mediainfo :   output.mp4
> -------------------------------------------------------------------------------
> General
> Complete name : output.mp4
> Format : MPEG-4
> Format profile : QuickTime
> Codec ID : qt 2005.03 (qt )
> File size : 41.0 MiB
> Duration : 1mn 2s
> Overall bit rate : 5 539 Kbps
> Encoded date : UTC 2018-03-15 20:35:15
> Tagged date : UTC 2018-03-15 20:35:15
>
> Video
> ID : 2
> Format : AVC
> Format/Info : Advanced Video Codec
> Format profile : Baseline@L3.1
> Format settings, CABAC : No
> Format settings, ReFrames : 1 frame
> Codec ID : avc1
> Codec ID/Info : Advanced Video Coding
> Duration : 30s 100ms                               #####  HALF THE SOURCE
> DURATION
> Bit rate : 2 048 Kbps
> Maximum bit rate : 2 097 Kbps
> Width : 1 280 pixels
> Height : 720 pixels
> Display aspect ratio : 16:9
> Frame rate : 30.000 fps                            #####  BUT SAME FRAMERATE
> Color space : YUV
> Chroma subsampling : 4:2:0
> Bit depth : 8 bits
> Scan type : Progressive                            #####
> Bits/(Pixel*Frame) : 0.074
> Stream size : 29.5 MiB (72%)
> Writing library : x264 core 148 r2643 5c65704
> Encoding settings : cabac=0 / ref=1 / deblock=0:0:0 / analyse=0:0 / me=dia /
> subme=0 / psy=1 / psy_rd=1.00:0.00 / mixed_ref=0 / me_range=16 / chroma_me=1
> / trellis=0 / 8x8dct=0 / cqm=0 / deadzone=21,11 / fast_pskip=1 /
> chroma_qp_offset=0 / threads=4 / lookahead_threads=4 / sliced_threads=1 /
> slices=4 / nr=0 / decimate=1 / interlaced=0 / bluray_compat=0 /
> constrained_intra=0 / bframes=0 / weightp=0 / keyint=300 / keyint_min=30 /
> scenecut=0 / intra_refresh=0 / rc_lookahead=0 / rc=cbr / mbtree=0 /
> bitrate=2048 ratetol=1.0 / qcomp=0.60 / qpmin=0 / qpmax=69 / qpstep=4 /
> vbv_maxrate=2048 / vbv_bufsize=1228 / nal_hrd=none / filler=0 /
> ip_ratio=1.40 / aq=0
> Language : English
> Encoded date : UTC 2018-03-15 20:35:15
> Tagged date : UTC 2018-03-15 20:35:15
>
> Audio
> ID : 1
> Format : PCM
> Format settings, Endianness : Little
> Format settings, Sign : Signed
> Codec ID : sowt
> Duration : 1mn 2s
> Bit rate mode : Constant
> Bit rate : 1 536 Kbps
> Channel(s) : 2 channels
> Channel positions : Front: L R
> Sampling rate : 48.0 KHz
> Bit depth : 16 bits
> Stream size : 11.4 MiB (28%)
> Language : English
> Encoded date : UTC 2018-03-15 20:35:15
> Tagged date : UTC 2018-03-15 20:35:15
>
>
>
>
> --
> Sent from: http://gstreamer-devel.966125.n4.nabble.com/
> _______________________________________________
> gstreamer-devel mailing list
> [hidden email]
> https://lists.freedesktop.org/mailman/listinfo/gstreamer-devel
_______________________________________________
gstreamer-devel mailing list
[hidden email]
https://lists.freedesktop.org/mailman/listinfo/gstreamer-devel

signature.asc (201 bytes) Download Attachment