Opened 3 years ago

Last modified 21 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 3 years ago.
log
input_cut.ts (2.4 MB ) - added by Carl Eugen Hoyos 3 years ago.

Change History (9)

by barhom, 3 years ago

Attachment: ffmpeg-20180709-151907.log added

log

comment:2 by Carl Eugen Hoyos, 3 years ago

Component: undeterminedavformat
Keywords: mpegts regression added
Priority: normalminor
Reproduced by developer: set
Status: newopen
Summary: FFmpeg failing to detect audio for a particular input streamFFmpeg failing to detect mp2 audio with stream identifier "AC-3"
Version: unspecifiedgit-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

by Carl Eugen Hoyos, 3 years ago

Attachment: input_cut.ts added

comment:3 by barhom, 3 years ago

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

in reply to:  3 comment:4 by Carl Eugen Hoyos, 3 years ago

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 by barhom, 3 years ago

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 by barhom, 3 years ago

.

Last edited 3 years ago by barhom (previous) (diff)

comment:7 by barhom, 21 months ago

Priority: minornormal

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.