Opened 2 years ago

Last modified 5 months ago

#7309 open defect

FFmpeg failing to detect mp2 audio with stream identifier "AC-3"

Reported by: barhom Owned by:
Priority: normal Component: avformat
Version: git-master Keywords: mpegts regression
Cc: Blocked By:
Blocking: Reproduced by developer: yes
Analyzed by developer: no

Description

Summary of the bug:

Stream has audio+video tracks.
When copying (-c copy) audio track is not being identified and therefore skipped in the output

How to reproduce:
ffmpeg -i input.ts -c copy -f mpegts output.ts

Expected behavior:
output.ts should have both an audio and a video stream. Currently it has only a video stream.

This has been tested on ffmpeg master

Attachments (2)

ffmpeg-20180709-151907.log (41.2 KB) - added by barhom 2 years ago.
log
input_cut.ts (2.4 MB) - added by cehoyos 2 years ago.

Change History (9)

Changed 2 years ago by barhom

log

comment:2 Changed 2 years ago by cehoyos

  • Component changed from undetermined to avformat
  • Keywords mpegts regression added
  • Priority changed from normal to minor
  • Reproduced by developer set
  • Status changed from new to open
  • Summary changed from FFmpeg failing to detect audio for a particular input stream to FFmpeg failing to detect mp2 audio with stream identifier "AC-3"
  • Version changed from unspecified to git-master

For future tickets: Please remember to always test current FFmpeg git head.

Can be considered a regression since 4bec36f98c5150b09d45740f3e1c80526e85b676 related to ticket #4864 but the sample looks invalid with mp2 audio using AC-3 as stream identifier.

$ ffmpeg -i input_cut.ts
ffmpeg version N-91445-g6cc6b61 Copyright (c) 2000-2018 the FFmpeg developers
  built with gcc 4.3 (SUSE Linux)
  configuration: --enable-gpl
  libavutil      56. 18.102 / 56. 18.102
  libavcodec     58. 21.104 / 58. 21.104
  libavformat    58. 17.101 / 58. 17.101
  libavdevice    58.  4.101 / 58.  4.101
  libavfilter     7. 25.100 /  7. 25.100
  libswscale      5.  2.100 /  5.  2.100
  libswresample   3.  2.100 /  3.  2.100
  libpostproc    55.  2.100 / 55.  2.100
[h264 @ 0x9a9b780] SPS unavailable in decode_picture_timing
[h264 @ 0x9a9b780] non-existing PPS 0 referenced
[h264 @ 0x9a9b780] SPS unavailable in decode_picture_timing
[h264 @ 0x9a9b780] non-existing PPS 0 referenced
[h264 @ 0x9a9b780] decode_slice_header error
[h264 @ 0x9a9b780] no frame!
[h264 @ 0x9a9b780] SPS unavailable in decode_picture_timing
[h264 @ 0x9a9b780] non-existing PPS 0 referenced
[h264 @ 0x9a9b780] SPS unavailable in decode_picture_timing
[h264 @ 0x9a9b780] non-existing PPS 0 referenced
[h264 @ 0x9a9b780] decode_slice_header error
[h264 @ 0x9a9b780] no frame!
[h264 @ 0x9a9b780] SPS unavailable in decode_picture_timing
[h264 @ 0x9a9b780] non-existing PPS 0 referenced
[h264 @ 0x9a9b780] SPS unavailable in decode_picture_timing
[h264 @ 0x9a9b780] non-existing PPS 0 referenced
[h264 @ 0x9a9b780] decode_slice_header error
[h264 @ 0x9a9b780] no frame!
[h264 @ 0x9a9b780] sps_id 0 out of range
[h264 @ 0x9a9b780] SPS unavailable in decode_picture_timing
[h264 @ 0x9a9b780] non-existing PPS 1 referenced
[h264 @ 0x9a9b780] sps_id 0 out of range
[h264 @ 0x9a9b780] SPS unavailable in decode_picture_timing
[h264 @ 0x9a9b780] non-existing PPS 1 referenced
[h264 @ 0x9a9b780] decode_slice_header error
[h264 @ 0x9a9b780] no frame!
[h264 @ 0x9a9b780] SPS unavailable in decode_picture_timing
[h264 @ 0x9a9b780] non-existing PPS 1 referenced
[h264 @ 0x9a9b780] SPS unavailable in decode_picture_timing
[h264 @ 0x9a9b780] non-existing PPS 1 referenced
[h264 @ 0x9a9b780] decode_slice_header error
[h264 @ 0x9a9b780] no frame!
[mpegts @ 0x9a96200] PES packet size mismatch
[ac3 @ 0x9a9a900] frame sync error
[mpegts @ 0x9a96200] decoding for stream 0 failed
[mpegts @ 0x9a96200] PES packet size mismatch
[mpegts @ 0x9a96200] Could not find codec parameters for stream 0 (Audio: ac3 (AC-3 / 0x332D4341), 0 channels, fltp): unspecified sample rate
Consider increasing the value for the 'analyzeduration' and 'probesize' options
Input #0, mpegts, from 'input_cut.ts':
  Duration: 00:00:04.45, start: 19690.439156, bitrate: 4601 kb/s
  Program 7
    Metadata:
      service_name    : OMAN TV HD
      service_provider: ARABSAT
    Stream #0:0[0x6b8](ara): Audio: ac3 (AC-3 / 0x332D4341), 0 channels, fltp
    Stream #0:1[0x6e0]: Video: h264 (High) ([27][0][0][0] / 0x001B), yuv420p(tv, bt709, top first), 1920x1080 [SAR 1:1 DAR 16:9], 25 fps, 25 tbr, 90k tbn, 50 tbc
At least one output file must be specified
$ ffmpeg -acodec mp2 -i input_cut.ts
ffmpeg version N-91445-g6cc6b61 Copyright (c) 2000-2018 the FFmpeg developers
  built with gcc 4.3 (SUSE Linux)
  configuration: --enable-gpl
  libavutil      56. 18.102 / 56. 18.102
  libavcodec     58. 21.104 / 58. 21.104
  libavformat    58. 17.101 / 58. 17.101
  libavdevice    58.  4.101 / 58.  4.101
  libavfilter     7. 25.100 /  7. 25.100
  libswscale      5.  2.100 /  5.  2.100
  libswresample   3.  2.100 /  3.  2.100
  libpostproc    55.  2.100 / 55.  2.100
[h264 @ 0x9a9b700] SPS unavailable in decode_picture_timing
[h264 @ 0x9a9b700] non-existing PPS 0 referenced
[h264 @ 0x9a9b700] SPS unavailable in decode_picture_timing
[h264 @ 0x9a9b700] non-existing PPS 0 referenced
[h264 @ 0x9a9b700] decode_slice_header error
[h264 @ 0x9a9b700] no frame!
[h264 @ 0x9a9b700] SPS unavailable in decode_picture_timing
[h264 @ 0x9a9b700] non-existing PPS 0 referenced
[h264 @ 0x9a9b700] SPS unavailable in decode_picture_timing
[h264 @ 0x9a9b700] non-existing PPS 0 referenced
[h264 @ 0x9a9b700] decode_slice_header error
[h264 @ 0x9a9b700] no frame!
[h264 @ 0x9a9b700] SPS unavailable in decode_picture_timing
[h264 @ 0x9a9b700] non-existing PPS 0 referenced
[h264 @ 0x9a9b700] SPS unavailable in decode_picture_timing
[h264 @ 0x9a9b700] non-existing PPS 0 referenced
[h264 @ 0x9a9b700] decode_slice_header error
[h264 @ 0x9a9b700] no frame!
[h264 @ 0x9a9b700] sps_id 0 out of range
[h264 @ 0x9a9b700] SPS unavailable in decode_picture_timing
[h264 @ 0x9a9b700] non-existing PPS 1 referenced
[h264 @ 0x9a9b700] sps_id 0 out of range
[h264 @ 0x9a9b700] SPS unavailable in decode_picture_timing
[h264 @ 0x9a9b700] non-existing PPS 1 referenced
[h264 @ 0x9a9b700] decode_slice_header error
[h264 @ 0x9a9b700] no frame!
[h264 @ 0x9a9b700] SPS unavailable in decode_picture_timing
[h264 @ 0x9a9b700] non-existing PPS 1 referenced
[h264 @ 0x9a9b700] SPS unavailable in decode_picture_timing
[h264 @ 0x9a9b700] non-existing PPS 1 referenced
[h264 @ 0x9a9b700] decode_slice_header error
[h264 @ 0x9a9b700] no frame!
[mpegts @ 0x9a96240] PES packet size mismatch
    Last message repeated 1 times
Input #0, mpegts, from 'input_cut.ts':
  Duration: 00:00:04.45, start: 19690.439156, bitrate: 4601 kb/s
  Program 7
    Metadata:
      service_name    : OMAN TV HD
      service_provider: ARABSAT
    Stream #0:0[0x6b8](ara): Audio: mp2 (AC-3 / 0x332D4341), 48000 Hz, stereo, s16p, 128 kb/s
    Stream #0:1[0x6e0]: Video: h264 (High) ([27][0][0][0] / 0x001B), yuv420p(tv, bt709, top first), 1920x1080 [SAR 1:1 DAR 16:9], 25 fps, 25 tbr, 90k tbn, 50 tbc
At least one output file must be specified

Changed 2 years ago by cehoyos

comment:3 follow-up: Changed 2 years ago by barhom

Should ffmpeg detect mp2 audio that is sending AC-3 as the stream identifier?
Or is this a wontfix?

comment:4 in reply to: ↑ 3 Changed 2 years ago by cehoyos

Replying to barhom:

Should ffmpeg detect mp2 audio that is sending AC-3 as the stream identifier?

I believe so which is why I set the status of this ticket to open-reproduced (as opposed to wontfix).

comment:5 Changed 18 months ago by barhom

Just updated to latest git to see if this issue might have been fixed.
But I see the same issue.
This channel provider (oman satellite tv channel) has been broadcasting for months with the ac3 identifier although it is mp2.

comment:6 Changed 18 months ago by barhom

Just updated to latest git to see if this issue might have been fixed.
But I see the same issue.
This channel provider (oman satellite tv channel) has been broadcasting for months with the ac3 identifier although it is mp2.

Version 0, edited 18 months ago by barhom (next)

comment:7 Changed 5 months ago by barhom

  • Priority changed from minor to normal

One year later and the broadcaster is still sending the AC3 identifier even though the audio is MP2.
VLC detects the audio correctly when playing. FFMPEG will not detect the audio stream even today.

Note: See TracTickets for help on using tickets.