Opened 8 years ago

Last modified 3 years ago

#5362 open enhancement

SMPTE 292M EIA-608 and EIA-708 Closed Captioning

Reported by: Sean O'Gorman Owned by:
Priority: wish Component: avformat
Version: git-master Keywords: mxf cc
Cc: Blocked By:
Blocking: Reproduced by developer: no
Analyzed by developer: no

Description

I am unable to get SMPTE 292M data tracks in MXF files to pass through FFMEG.

I have uploaded a sample clip at https://www.dropbox.com/s/1ik8uwbag8ecyjd/XDCAM608708.mxf?dl=0

Here is the media info output for that clip...

General
Complete name                            : E:\The Stream Watch\XDCAM608708.mxf
Format                                   : MXF
Commercial name                          : XDCAM HD422
Format version                           : 1.2
Format profile                           : OP-1a
Format settings                          : Closed / Complete
File size                                : 858 MiB
Duration                                 : 1mn 59s
Overall bit rate                         : 60.3 Mbps
Encoded date                             : 2016-03-10 22:22:57.000
Writing application                      : AVID TRMG 3.01

Video
ID                                       : 2
Format                                   : MPEG Video
Commercial name                          : XDCAM HD422
Format version                           : Version 2
Format profile                           : 4:2:2@High
Format settings, BVOP                    : Yes
Format settings, Matrix                  : Custom
Format settings, GOP                     : M=3, N=15
Format settings, picture structure       : Frame
Format settings, wrapping mode           : Frame
Codec ID                                 : 0D01030102046001-0401020201040300
Duration                                 : 1mn 59s
Bit rate                                 : 50.0 Mbps
Width                                    : 1 920 pixels
Height                                   : 1 080 pixels
Display aspect ratio                     : 16:9
Frame rate                               : 29.970 (30000/1001) fps
Standard                                 : NTSC
Color space                              : YUV
Chroma subsampling                       : 4:2:2
Bit depth                                : 8 bits
Scan type                                : Interlaced
Scan order                               : Top Field First
Compression mode                         : Lossy
Bits/(Pixel*Frame)                       : 0.805
Time code of first frame                 : 01:00:00:00
Time code source                         : Group of pictures header
GOP, Open/Closed                         : Open
GOP, Open/Closed of first frame          : Closed
Stream size                              : 711 MiB (83%)
Color primaries                          : BT.709
Transfer characteristics                 : BT.709
Matrix coefficients                      : BT.709

Audio #1
ID                                       : 3
Format                                   : PCM
Format settings, Endianness              : Little
Format settings, wrapping mode           : Frame (AES)
Codec ID                                 : 0D01030102060300
Duration                                 : 1mn 59s
Bit rate mode                            : Constant
Bit rate                                 : 1 152 Kbps
Channel(s)                               : 1 channel
Sampling rate                            : 48.0 KHz
Frame rate                               : 29.970 fps (1601.6 spf)
Bit depth                                : 24 bits
Stream size                              : 16.4 MiB (2%)

Audio #2
ID                                       : 4
Format                                   : PCM
Format settings, Endianness              : Little
Format settings, wrapping mode           : Frame (AES)
Codec ID                                 : 0D01030102060300
Duration                                 : 1mn 59s
Bit rate mode                            : Constant
Bit rate                                 : 1 152 Kbps
Channel(s)                               : 1 channel
Sampling rate                            : 48.0 KHz
Frame rate                               : 29.970 fps (1601.6 spf)
Bit depth                                : 24 bits
Stream size                              : 16.4 MiB (2%)

Audio #3
ID                                       : 5
Format                                   : PCM
Format settings, Endianness              : Little
Format settings, wrapping mode           : Frame (AES)
Codec ID                                 : 0D01030102060300
Duration                                 : 1mn 59s
Bit rate mode                            : Constant
Bit rate                                 : 1 152 Kbps
Channel(s)                               : 1 channel
Sampling rate                            : 48.0 KHz
Frame rate                               : 29.970 fps (1601.6 spf)
Bit depth                                : 24 bits
Stream size                              : 16.4 MiB (2%)

Audio #4
ID                                       : 6
Format                                   : PCM
Format settings, Endianness              : Little
Format settings, wrapping mode           : Frame (AES)
Codec ID                                 : 0D01030102060300
Duration                                 : 1mn 59s
Bit rate mode                            : Constant
Bit rate                                 : 1 152 Kbps
Channel(s)                               : 1 channel
Sampling rate                            : 48.0 KHz
Frame rate                               : 29.970 fps (1601.6 spf)
Bit depth                                : 24 bits
Stream size                              : 16.4 MiB (2%)

Audio #5
ID                                       : 7
Format                                   : PCM
Format settings, Endianness              : Little
Format settings, wrapping mode           : Frame (AES)
Codec ID                                 : 0D01030102060300
Duration                                 : 1mn 59s
Bit rate mode                            : Constant
Bit rate                                 : 1 152 Kbps
Channel(s)                               : 1 channel
Sampling rate                            : 48.0 KHz
Frame rate                               : 29.970 fps (1601.6 spf)
Bit depth                                : 24 bits
Stream size                              : 16.4 MiB (2%)

Audio #6
ID                                       : 8
Format                                   : PCM
Format settings, Endianness              : Little
Format settings, wrapping mode           : Frame (AES)
Codec ID                                 : 0D01030102060300
Duration                                 : 1mn 59s
Bit rate mode                            : Constant
Bit rate                                 : 1 152 Kbps
Channel(s)                               : 1 channel
Sampling rate                            : 48.0 KHz
Frame rate                               : 29.970 fps (1601.6 spf)
Bit depth                                : 24 bits
Stream size                              : 16.4 MiB (2%)

Audio #7
ID                                       : 9
Format                                   : PCM
Format settings, Endianness              : Little
Format settings, wrapping mode           : Frame (AES)
Codec ID                                 : 0D01030102060300
Duration                                 : 1mn 59s
Bit rate mode                            : Constant
Bit rate                                 : 1 152 Kbps
Channel(s)                               : 1 channel
Sampling rate                            : 48.0 KHz
Frame rate                               : 29.970 fps (1601.6 spf)
Bit depth                                : 24 bits
Stream size                              : 16.4 MiB (2%)

Audio #8
ID                                       : 10
Format                                   : PCM
Format settings, Endianness              : Little
Format settings, wrapping mode           : Frame (AES)
Codec ID                                 : 0D01030102060300
Duration                                 : 1mn 59s
Bit rate mode                            : Constant
Bit rate                                 : 1 152 Kbps
Channel(s)                               : 1 channel
Sampling rate                            : 48.0 KHz
Frame rate                               : 29.970 fps (1601.6 spf)
Bit depth                                : 24 bits
Stream size                              : 16.4 MiB (2%)

Text #1
ID                                       : 11-CC1
Format                                   : EIA-608
Muxing mode                              : Ancillary data / CDP
Duration                                 : 1mn 59s
Bit rate mode                            : Constant
Stream size                              : 0.00 Byte (0%)

Text #2
ID                                       : 11-1
Format                                   : EIA-708
Muxing mode                              : Ancillary data / CDP
Duration                                 : 1mn 59s
Bit rate mode                            : Constant
Stream size                              : 0.00 Byte (0%)
Language                                 : English

Other #1
ID                                       : 1-Material
Type                                     : Time code
Format                                   : MXF TC
Time code of first frame                 : 01:00:00:00
Time code settings                       : Material Package
Time code, striped                       : Yes

Other #2
ID                                       : 1-Source
Type                                     : Time code
Format                                   : MXF TC
Time code of first frame                 : 01:00:00:00
Time code settings                       : Source Package
Time code, striped                       : Yes

Other #3
Type                                     : Time code
Format                                   : SMPTE TC
Muxing mode                              : SDTI
Time code of first frame                 : 01:00:00:00

And when running FFMPEG....

C:\Users\Administrator\Desktop\bin>
C:\Users\Administrator\Desktop\bin>ffmpeg -i XDCAM608708.mxf -acodec copy -vcodec copy -dcodec copy out.mxf
ffmpeg version N-79000-g66edd86 Copyright (c) 2000-2016 the FFmpeg developers
  built with gcc 5.3.0 (GCC)
  configuration: --enable-gpl --enable-version3 --disable-w32threads --enable-avisynth --enable-bzlib --enable-fontconfig --enable-frei0r --enable-gnutls --enab
le-iconv --enable-libass --enable-libbluray --enable-libbs2b --enable-libcaca --enable-libdcadec --enable-libfreetype --enable-libgme --enable-libgsm --enable-l
ibilbc --enable-libmodplug --enable-libmfx --enable-libmp3lame --enable-libopencore-amrnb --enable-libopencore-amrwb --enable-libopenjpeg --enable-libopus --ena
ble-librtmp --enable-libschroedinger --enable-libsnappy --enable-libsoxr --enable-libspeex --enable-libtheora --enable-libtwolame --enable-libvidstab --enable-l
ibvo-amrwbenc --enable-libvorbis --enable-libvpx --enable-libwavpack --enable-libwebp --enable-libx264 --enable-libx265 --enable-libxavs --enable-libxvid --enab
le-libzimg --enable-lzma --enable-decklink --enable-zlib
  libavutil      55. 19.100 / 55. 19.100
  libavcodec     57. 28.100 / 57. 28.100
  libavformat    57. 28.100 / 57. 28.100
  libavdevice    57.  0.101 / 57.  0.101
  libavfilter     6. 39.102 /  6. 39.102
  libswscale      4.  0.100 /  4.  0.100
  libswresample   2.  0.101 /  2.  0.101
  libpostproc    54.  0.100 / 54.  0.100
Guessed Channel Layout for  Input Stream #0.1 : mono
Guessed Channel Layout for  Input Stream #0.2 : mono
Guessed Channel Layout for  Input Stream #0.3 : mono
Guessed Channel Layout for  Input Stream #0.4 : mono
Guessed Channel Layout for  Input Stream #0.5 : mono
Guessed Channel Layout for  Input Stream #0.6 : mono
Guessed Channel Layout for  Input Stream #0.7 : mono
Guessed Channel Layout for  Input Stream #0.8 : mono
Input #0, mxf, from 'XDCAM608708.mxf':
  Metadata:
    uid             : 9ff18887-b3bd-ae47-a92b-5aa418e4872d
    generation_uid  : d2033016-063e-fb48-8157-839f8db8ec06
    company_name    : AVID
    product_name    : TRMG
    product_version : 3.01
    product_uid     : 00000000-0000-0000-0000-000000000000
    modification_date: 2016-03-10 22:22:57
    material_package_umid: 0x060A2B340101010501010D13130000003298B29CF1BCA34E9B6A0D86AC4623B6
    timecode        : 01:00:00:00
  Duration: 00:01:59.32, start: 0.000000, bitrate: 60302 kb/s
    Stream #0:0: Video: mpeg2video (4:2:2), yuv422p(tv, bt709), 1920x1080 [SAR 1:1 DAR 16:9], 50000 kb/s, 29.97 fps, 29.97 tbr, 29.97 tbn, 59.94 tbc
    Metadata:
      file_package_umid: 0x060A2B340101010501010D13130000003865ACC7C4162E449C3C0A793E6B7DAB
    Stream #0:1: Audio: pcm_s24le, 48000 Hz, 1 channels, s32 (24 bit), 1152 kb/s
    Metadata:
      file_package_umid: 0x060A2B340101010501010D13130000003865ACC7C4162E449C3C0A793E6B7DAB
    Stream #0:2: Audio: pcm_s24le, 48000 Hz, 1 channels, s32 (24 bit), 1152 kb/s
    Metadata:
      file_package_umid: 0x060A2B340101010501010D13130000003865ACC7C4162E449C3C0A793E6B7DAB
    Stream #0:3: Audio: pcm_s24le, 48000 Hz, 1 channels, s32 (24 bit), 1152 kb/s
    Metadata:
      file_package_umid: 0x060A2B340101010501010D13130000003865ACC7C4162E449C3C0A793E6B7DAB
    Stream #0:4: Audio: pcm_s24le, 48000 Hz, 1 channels, s32 (24 bit), 1152 kb/s
    Metadata:
      file_package_umid: 0x060A2B340101010501010D13130000003865ACC7C4162E449C3C0A793E6B7DAB
    Stream #0:5: Audio: pcm_s24le, 48000 Hz, 1 channels, s32 (24 bit), 1152 kb/s
    Metadata:
      file_package_umid: 0x060A2B340101010501010D13130000003865ACC7C4162E449C3C0A793E6B7DAB
    Stream #0:6: Audio: pcm_s24le, 48000 Hz, 1 channels, s32 (24 bit), 1152 kb/s
    Metadata:
      file_package_umid: 0x060A2B340101010501010D13130000003865ACC7C4162E449C3C0A793E6B7DAB
    Stream #0:7: Audio: pcm_s24le, 48000 Hz, 1 channels, s32 (24 bit), 1152 kb/s
    Metadata:
      file_package_umid: 0x060A2B340101010501010D13130000003865ACC7C4162E449C3C0A793E6B7DAB
    Stream #0:8: Audio: pcm_s24le, 48000 Hz, 1 channels, s32 (24 bit), 1152 kb/s
    Metadata:
      file_package_umid: 0x060A2B340101010501010D13130000003865ACC7C4162E449C3C0A793E6B7DAB
    Stream #0:9: Data: none
    Metadata:
      file_package_umid: 0x060A2B340101010501010D13130000003865ACC7C4162E449C3C0A793E6B7DAB
      data_type       : vbi_vanc_smpte_436M
Output #0, mxf, to 'out.mxf':
  Metadata:
    uid             : 9ff18887-b3bd-ae47-a92b-5aa418e4872d
    generation_uid  : d2033016-063e-fb48-8157-839f8db8ec06
    company_name    : AVID
    product_name    : TRMG
    product_version : 3.01
    product_uid     : 00000000-0000-0000-0000-000000000000
    modification_date: 2016-03-10 22:22:57
    material_package_umid: 0x060A2B340101010501010D13130000003298B29CF1BCA34E9B6A0D86AC4623B6
    timecode        : 01:00:00:00
    encoder         : Lavf57.28.100
    Stream #0:0: Video: mpeg2video, yuv422p, 1920x1080 [SAR 1:1 DAR 16:9], q=2-31, 50000 kb/s, 29.97 fps, 29.97 tbr, 29.97 tbn, 29.97 tbc
    Metadata:
      file_package_umid: 0x060A2B340101010501010D13130000003865ACC7C4162E449C3C0A793E6B7DAB
    Stream #0:1: Audio: pcm_s24le, 48000 Hz, mono (24 bit), 1152 kb/s
    Metadata:
      file_package_umid: 0x060A2B340101010501010D13130000003865ACC7C4162E449C3C0A793E6B7DAB
Stream mapping:
  Stream #0:0 -> #0:0 (copy)
  Stream #0:1 -> #0:1 (copy)
Press [q] to stop, [?] for help
[mxf @ 00000000035cf780] -d10_channelcount requires MXF D-10 and will be ignored
frame= 3576 fps=2492 q=-1.0 Lsize=  748749kB time=00:01:59.31 bitrate=51406.2kbits/s speed=83.1x
video:727984kB audio:16779kB subtitle:0kB other streams:0kB global headers:0kB muxing overhead: 0.535144%

C:\Users\Administrator\Desktop\bin>

The resulting file does not contain the the 608/708 caption tracks

Change History (8)

comment:1 by Carl Eugen Hoyos, 8 years ago

Component: undeterminedavformat
Keywords: mxf cc added; EIA 608 708 SMPTE 292M removed
Priority: importantwish
Type: defectenhancement
Version: unspecifiedgit-master

Do you think this is a regression?

comment:2 by Kieran Kunhya, 8 years ago

Component: avformatundetermined
Keywords: EIA 608 708 SMPTE 292M added; mxf cc removed
Priority: wishimportant
Type: enhancementdefect
Version: git-masterunspecified

As much as it will annoy certain people, bmxtranswrap is much better for doing this than FFmpeg. There's so many ways of doing closed captions it's better not to incorporate another half-dozen mappings from MXF.

comment:3 by Sean O'Gorman, 8 years ago

Component: undeterminedavformat
Keywords: mxf cc added; EIA 608 708 SMPTE 292M removed
Priority: importantwish
Type: defectenhancement
Version: unspecifiedgit-master

Hard to tell if this a regression or not. I found a few threads on captioning but most deal with either exporting or importing a side cart file into the MXF stream.

comment:4 by Carl Eugen Hoyos, 8 years ago

Looks like a duplicate of ticket #726.

comment:5 by Vince, 7 years ago

Is there not a way of just copying these streams rather than decoding/encoding them, most people would prefer if they were just transferred to the output file, not decoded and re-encoded on the way. I agree Bmxtranswrap is much better for doing this but it is so depressingly slow and has many more bugs of its own (frame drops etc) and its documentation is non-existent.

comment:6 by unsword, 5 years ago

Keywords: 436M added

Demuxing of the 608 Caption Caption Data from 436M was added with commit ef23ed6fe96e4ec8d11c82f8be19a2877f9737ee

Description is that the 608 Data is extracted but I believe it may be the 608+708

If the resulting caption data can be passed through to MPEG-2 and x264 encoders as ASTC A/53 caption data then that would meet this feature request

Last edited 5 years ago by Carl Eugen Hoyos (previous) (diff)

comment:7 by Carl Eugen Hoyos, 5 years ago

Keywords: 436M removed

comment:8 by Balling, 3 years ago

Status: newopen

This is still not fixed, while https://samples.ffmpeg.org/ffmpeg-bugs/trac/ticket6345/ sample is fixed.

Note: See TracTickets for help on using tickets.