Ant-Media-Server icon indicating copy to clipboard operation
Ant-Media-Server copied to clipboard

PTS and DTS timestamps wrong on WebM records

Open SelimEmre opened this issue 3 years ago • 0 comments

Short description

It's happening when using enableRecording(https://antmedia.io/rest/#/BroadcastRestService/enableRecording) REST API.

Environment

  • Ant Media Server version: v2.4.3 Cluster Environment

Steps to reproduce

  1. Enable VP8 and add 15 FPS, 480p adaptive default settings
  2. Send RTMP stream via OBS
  3. Call EnableRecording REST API.

Expected behavior

It should create WebM records without error

Actual behavior

It's creating WebM records, but it's not playing.

Here are the WebM FFprobe results:

mypc@mypc:~/git/ManagementConsole_AngularApp$ ffprobe http://ams-server.com:5080/LiveApp/streams/p0Nxwv3UBsP81589404772598_480p1500kbps_1.webm
ffprobe version 4.2.7-0ubuntu0.1 Copyright (c) 2007-2022 the FFmpeg developers
  built with gcc 9 (Ubuntu 9.4.0-1ubuntu1~20.04.1)
  configuration: --prefix=/usr --extra-version=0ubuntu0.1 --toolchain=hardened --libdir=/usr/lib/x86_64-linux-gnu --incdir=/usr/include/x86_64-linux-gnu --arch=amd64 --enable-gpl --disable-stripping --enable-avresample --disable-filter=resample --enable-avisynth --enable-gnutls --enable-ladspa --enable-libaom --enable-libass --enable-libbluray --enable-libbs2b --enable-libcaca --enable-libcdio --enable-libcodec2 --enable-libflite --enable-libfontconfig --enable-libfreetype --enable-libfribidi --enable-libgme --enable-libgsm --enable-libjack --enable-libmp3lame --enable-libmysofa --enable-libopenjpeg --enable-libopenmpt --enable-libopus --enable-libpulse --enable-librsvg --enable-librubberband --enable-libshine --enable-libsnappy --enable-libsoxr --enable-libspeex --enable-libssh --enable-libtheora --enable-libtwolame --enable-libvidstab --enable-libvorbis --enable-libvpx --enable-libwavpack --enable-libwebp --enable-libx265 --enable-libxml2 --enable-libxvid --enable-libzmq --enable-libzvbi --enable-lv2 --enable-omx --enable-openal --enable-opencl --enable-opengl --enable-sdl2 --enable-libdc1394 --enable-libdrm --enable-libiec61883 --enable-nvenc --enable-chromaprint --enable-frei0r --enable-libx264 --enable-shared
  WARNING: library configuration mismatch
  avcodec     configuration: --prefix=/usr --extra-version=0ubuntu0.1 --toolchain=hardened --libdir=/usr/lib/x86_64-linux-gnu --incdir=/usr/include/x86_64-linux-gnu --arch=amd64 --enable-gpl --disable-stripping --enable-avresample --disable-filter=resample --enable-avisynth --enable-gnutls --enable-ladspa --enable-libaom --enable-libass --enable-libbluray --enable-libbs2b --enable-libcaca --enable-libcdio --enable-libcodec2 --enable-libflite --enable-libfontconfig --enable-libfreetype --enable-libfribidi --enable-libgme --enable-libgsm --enable-libjack --enable-libmp3lame --enable-libmysofa --enable-libopenjpeg --enable-libopenmpt --enable-libopus --enable-libpulse --enable-librsvg --enable-librubberband --enable-libshine --enable-libsnappy --enable-libsoxr --enable-libspeex --enable-libssh --enable-libtheora --enable-libtwolame --enable-libvidstab --enable-libvorbis --enable-libvpx --enable-libwavpack --enable-libwebp --enable-libx265 --enable-libxml2 --enable-libxvid --enable-libzmq --enable-libzvbi --enable-lv2 --enable-omx --enable-openal --enable-opencl --enable-opengl --enable-sdl2 --enable-libdc1394 --enable-libdrm --enable-libiec61883 --enable-nvenc --enable-chromaprint --enable-frei0r --enable-libx264 --enable-shared --enable-version3 --disable-doc --disable-programs --enable-libaribb24 --enable-liblensfun --enable-libopencore_amrnb --enable-libopencore_amrwb --enable-libtesseract --enable-libvo_amrwbenc
  libavutil      56. 31.100 / 56. 31.100
  libavcodec     58. 54.100 / 58. 54.100
  libavformat    58. 29.100 / 58. 29.100
  libavdevice    58.  8.100 / 58.  8.100
  libavfilter     7. 57.100 /  7. 57.100
  libavresample   4.  0.  0 /  4.  0.  0
  libswscale      5.  5.100 /  5.  5.100
  libswresample   3.  5.100 /  3.  5.100
  libpostproc    55.  5.100 / 55.  5.100
[vp8 @ 0x558a9d8403c0] Invalid sync code e461f0.
[vp8 @ 0x558a9d8403c0] Invalid sync code e461cd.
[vp8 @ 0x558a9d8403c0] Invalid sync code e461da.
[vp8 @ 0x558a9d8403c0] Invalid sync code e461cd.
[vp8 @ 0x558a9d8403c0] Invalid sync code e4618c.
[vp8 @ 0x558a9d8403c0] Invalid sync code e461ad.
[vp8 @ 0x558a9d8403c0] Invalid sync code 646710.
[vp8 @ 0x558a9d8403c0] Invalid sync code e0614e.
[vp8 @ 0x558a9d8403c0] Invalid sync code e061da.
[vp8 @ 0x558a9d8403c0] Invalid sync code e061cf.
[vp8 @ 0x558a9d8403c0] Invalid sync code e061e6.
[vp8 @ 0x558a9d8403c0] Invalid sync code e061b5.
[vp8 @ 0x558a9d8403c0] Invalid sync code e0610d.
[vp8 @ 0x558a9d8403c0] Invalid sync code e0619d.
[vp8 @ 0x558a9d8403c0] Invalid sync code e16110.
[vp8 @ 0x558a9d8403c0] Invalid sync code e161d7.
[vp8 @ 0x558a9d8403c0] Invalid sync code e16125.
[vp8 @ 0x558a9d8403c0] Invalid sync code e161e6.
[vp8 @ 0x558a9d8403c0] Invalid sync code e161cf.
[vp8 @ 0x558a9d8403c0] Invalid sync code e161af.
[vp8 @ 0x558a9d8403c0] Invalid sync code e1610c.
[vp8 @ 0x558a9d8403c0] Invalid sync code e161f4.
[vp8 @ 0x558a9d8403c0] Invalid sync code e26138.
[vp8 @ 0x558a9d8403c0] Invalid sync code e26168.
[vp8 @ 0x558a9d8403c0] Invalid sync code e2618a.
[vp8 @ 0x558a9d8403c0] Invalid sync code e2619a.
[vp8 @ 0x558a9d8403c0] Invalid sync code e2617c.
[vp8 @ 0x558a9d8403c0] Invalid sync code e2614b.
[vp8 @ 0x558a9d8403c0] Invalid sync code e26193.
[vp8 @ 0x558a9d8403c0] Invalid sync code e2610e.
[vp8 @ 0x558a9d8403c0] Invalid sync code e361c2.
Input #0, matroska,webm, from 'http://ams-server.com:5080/LiveApp/streams/p0Nxwv3UBsP81589404772598_480p1500kbps_1.webm':
  Metadata:
    ENCODER         : Lavf58.45.100
  Duration: 00:56:42.67, start: -0.007000, bitrate: 2 kb/s
    Stream #0:0: Video: vp8, yuv420p(progressive), 854x480, SAR 1:1 DAR 427:240, 1.50 tbr, 1k tbn, 1k tbc (default)
    Metadata:
      DURATION        : 00:56:42.672000000
    Stream #0:1: Audio: opus, 48000 Hz, mono, fltp (default)
    Metadata:
      DURATION        : 00:49:16.199000000

Logs

2022-09-03 10:52:37,814 [http-nio2-0.0.0.0-5080-exec-8] INFO  io.antmedia.rest.RestServiceBase - Recording method is called for p0Nxwv3UBsP81589404772598 to make it true and record Type: webm
2022-09-03 10:52:37,815 [http-nio2-0.0.0.0-5080-exec-8] INFO  i.a.e.adaptive.EncoderAdaptor - start recording video stream index: 0 audio stream index:1
2022-09-03 10:52:37,815 [http-nio2-0.0.0.0-5080-exec-8] INFO  io.antmedia.muxer.WebMMuxer - Adding timebase to the input time base map index:0 value: 1/15 for stream:p0Nxwv3UBsP81589404772598
2022-09-03 10:52:37,815 [http-nio2-0.0.0.0-5080-exec-8] INFO  io.antmedia.muxer.WebMMuxer - Adding timebase to the input time base map index:1 value: 1/48000 for stream:p0Nxwv3UBsP81589404772598
2022-09-03 10:52:37,815 [http-nio2-0.0.0.0-5080-exec-8] INFO  io.antmedia.muxer.WebMMuxer - Header is written for stream:p0Nxwv3UBsP81589404772598 and url:/usr/local/antmedia/webapps/LiveApp/streams/p0Nxwv3UBsP81589404772598_480p1500kbps.webm.tmp_extension
2022-09-03 10:52:37,816 [http-nio2-0.0.0.0-5080-exec-8] WARN  io.antmedia.rest.RestServiceBase - webm recording is started for stream: p0Nxwv3UBsP81589404772598
2022-09-03 10:52:37,834 [vert.x-worker-thread-57] INFO  io.antmedia.muxer.WebMMuxer - First video packet is not key frame. It will drop for direct muxing. Stream p0Nxwv3UBsP81589404772598
2022-09-03 10:52:37,854 [vert.x-worker-thread-5] INFO  io.antmedia.muxer.WebMMuxer - First video packet is not key frame. It will drop for direct muxing. Stream p0Nxwv3UBsP81589404772598
2022-09-03 10:52:37,854 [vert.x-worker-thread-5] INFO  io.antmedia.muxer.WebMMuxer - First video packet is not key frame. It will drop for direct muxing. Stream p0Nxwv3UBsP81589404772598
2022-09-03 10:52:37,856 [vert.x-worker-thread-27] WARN  io.antmedia.muxer.WebMMuxer - First key frame received for stream: p0Nxwv3UBsP81589404772598
2022-09-03 10:52:37,883 [vert.x-worker-thread-35] INFO  io.antmedia.muxer.WebMMuxer - cannot write audio frame to muxer(p0Nxwv3UBsP81589404772598_480p1500kbps.webm). Error is Invalid argument 
2022-09-03 10:52:37,883 [vert.x-worker-thread-35] INFO  io.antmedia.muxer.WebMMuxer - cannot write audio frame to muxer(p0Nxwv3UBsP81589404772598_480p1500kbps.webm). Error is Invalid argument 
2022-09-03 10:52:37,933 [vert.x-worker-thread-8] INFO  io.antmedia.muxer.WebMMuxer - cannot write audio frame to muxer(p0Nxwv3UBsP81589404772598_480p1500kbps.webm). Error is Invalid argument 
2022-09-03 10:52:37,934 [vert.x-worker-thread-8] INFO  io.antmedia.muxer.WebMMuxer - cannot write audio frame to muxer(p0Nxwv3UBsP81589404772598_480p1500kbps.webm). Error is Invalid argument 
2022-09-03 10:52:37,963 [vert.x-worker-thread-26] INFO  io.antmedia.muxer.WebMMuxer - cannot write audio frame to muxer(p0Nxwv3UBsP81589404772598_480p1500kbps.webm). Error is Invalid argument 
2022-09-03 10:52:38,004 [vert.x-worker-thread-54] INFO  io.antmedia.muxer.WebMMuxer - cannot write audio frame to muxer(p0Nxwv3UBsP81589404772598_480p1500kbps.webm). Error is Invalid argument 
2022-09-03 10:52:38,014 [vert.x-worker-thread-17] INFO  io.antmedia.muxer.WebMMuxer - cannot write audio frame to muxer(p0Nxwv3UBsP81589404772598_480p1500kbps.webm). Error is Invalid argument 
2022-09-03 10:52:38,041 [vert.x-worker-thread-60] WARN  io.antmedia.muxer.WebMMuxer - cannot write video frame to muxer(p0Nxwv3UBsP81589404772598_480p1500kbps.webm). Pts: -125965133 dts:-125965133  Error is Invalid argument 
2022-09-03 10:52:38,053 [vert.x-worker-thread-57] INFO  io.antmedia.muxer.WebMMuxer - cannot write audio frame to muxer(p0Nxwv3UBsP81589404772598_480p1500kbps.webm). Error is Invalid argument 
2022-09-03 10:52:38,053 [vert.x-worker-thread-57] INFO  io.antmedia.muxer.WebMMuxer - cannot write audio frame to muxer(p0Nxwv3UBsP81589404772598_480p1500kbps.webm). Error is Invalid argument 
2022-09-03 10:52:38,063 [vert.x-worker-thread-44] WARN  io.antmedia.muxer.WebMMuxer - cannot write video frame to muxer(p0Nxwv3UBsP81589404772598_480p1500kbps.webm). Pts: -125965067 dts:-125965067  Error is Invalid argument 
2022-09-03 10:52:38,069 [vert.x-worker-thread-44] WARN  io.antmedia.muxer.WebMMuxer - cannot write video frame to muxer(p0Nxwv3UBsP81589404772598_480p1500kbps.webm). Pts: -125965000 dts:-125965000  Error is Invalid argument 
2022-09-03 10:52:38,084 [vert.x-worker-thread-0] INFO  io.antmedia.muxer.WebMMuxer - cannot write audio frame to muxer(p0Nxwv3UBsP81589404772598_480p1500kbps.webm). Error is Invalid argument 
2022-09-03 10:52:38,104 [vert.x-worker-thread-23] INFO  io.antmedia.muxer.WebMMuxer - cannot write audio frame to muxer(p0Nxwv3UBsP81589404772598_480p1500kbps.webm). Error is Invalid argument 
2022-09-03 10:52:38,133 [vert.x-worker-thread-13] INFO  io.antmedia.muxer.WebMMuxer - cannot write audio frame to muxer(p0Nxwv3UBsP81589404772598_480p1500kbps.webm). Error is Invalid argument 
2022-09-03 10:52:38,133 [vert.x-worker-thread-13] INFO  io.antmedia.muxer.WebMMuxer - cannot write audio frame to muxer(p0Nxwv3UBsP81589404772598_480p1500kbps.webm). Error is Invalid argument 
2022-09-03 10:52:38,183 [vert.x-worker-thread-50] INFO  io.antmedia.muxer.WebMMuxer - cannot write audio frame to muxer(p0Nxwv3UBsP81589404772598_480p1500kbps.webm). Error is Invalid argument 

SelimEmre avatar Sep 03 '22 11:09 SelimEmre