Opened 3 years ago

Closed 2 years ago

Last modified 2 years ago

#5068 closed enhancement (fixed)

Support muxing of non-AVCI h264 in mxf

Reported by: df1paw Owned by:
Priority: wish Component: avformat
Version: git-master Keywords: mxf h264
Cc: atze@fem.tu-ilmenau.de Blocked By:
Blocking: Reproduced by developer: yes
Analyzed by developer: no

Description

Summary of the bug:

I'm currently fiddling around with h264 based dcinema mxf
For reproduction I uploaded (a working and tested dcinema file) dcinema-h264.mxf to upload.ffmpeg.org/incoming/

Now I'm trying to create my own video from scratch but I didn't succeed with encoding my own video file. So I decided to extract the video and repack it into a new mxf - but this approach failed, too. Am I doing something wrong or is there an issue with ffmpeg's mxf muxer?

Attached "-report log" file

Regards,

Andreas


How to reproduce:

First - extract h264 from mxf:

andreas@notebook:/tmp$ ffmpeg -i dcinema-h264.mxf -vcodec copy video.h264
This works perfectly well and video.h264 is obviously a valid video file and plays with eg. ffplay

Second - remux this very same h264 to mxf:

andreas@notebook:/tmp$ ffmpeg -i video.h264 -vcodec copy dcinema-test.mxf
ffmpeg version N-77055-ga525b84 Copyright (c) 2000-2015 the FFmpeg developers
  built with gcc 4.9.2 (Ubuntu 4.9.2-10ubuntu13)
  configuration: --prefix=/home/andreas/ffmpeg_build --extra-cflags=-I/home/andreas/ffmpeg_build/include --extra-ldflags=-L/home/andreas/ffmpeg_build/lib --bindir=/home/andreas/bin --enable-gpl --enable-libass --enable-libfdk-aac --enable-libfreetype --enable-libmp3lame --enable-libopus --enable-libtheora --enable-libvorbis --enable-libvpx --enable-libx264 --enable-nonfree --enable-libx265
  libavutil      55.  9.100 / 55.  9.100
  libavcodec     57. 16.101 / 57. 16.101
  libavformat    57. 19.100 / 57. 19.100
  libavdevice    57.  0.100 / 57.  0.100
  libavfilter     6. 20.100 /  6. 20.100
  libswscale      4.  0.100 /  4.  0.100
  libswresample   2.  0.101 /  2.  0.101
  libpostproc    54.  0.100 / 54.  0.100
[h264 @ 0x351b8c0] Stream #0: not enough frames to estimate rate; consider increasing probesize
Input #0, h264, from 'video.h264':
  Duration: N/A, bitrate: N/A
    Stream #0:0: Video: h264 (Main), yuv420p, 1920x1080 [SAR 1:1 DAR 16:9], 23.98 fps, 23.98 tbr, 1200k tbn, 47.95 tbc
Output #0, mxf, to 'dcinema-test.mxf':
  Metadata:
    encoder         : Lavf57.19.100
    Stream #0:0: Video: h264, yuv420p, 1920x1080 [SAR 1:1 DAR 16:9], q=2-31, 23.98 fps, 23.98 tbr, 23.98 tbn, 23.98 tbc
Stream mapping:
  Stream #0:0 -> #0:0 (copy)
Press [q] to stop, [?] for help
[mxf @ 0x351d440] AVC Intra 50/100 supported only
[mxf @ 0x351d440] could not get h264 profile
av_interleaved_write_frame(): Operation not permitted
Error writing trailer of dcinema-test.mxf: Unknown error occurredframe=    1 fps=0.0 q=-1.0 Lsize=       0kB time=00:00:00.00 bitrate=N/A    
video:135kB audio:0kB subtitle:0kB other streams:0kB global headers:0kB muxing overhead: unknown
Conversion failed!

Attachments (1)

ffmpeg-20151205-232654.log (5.5 KB) - added by df1paw 3 years ago.
-report log file

Download all attachments as: .zip

Change History (5)

Changed 3 years ago by df1paw

-report log file

comment:1 Changed 3 years ago by cehoyos

  • Keywords dcinema removed
  • Priority changed from normal to wish
  • Reproduced by developer set
  • Status changed from new to open
  • Summary changed from dcinema MXF creation fails to Support muxing of non-AVCI h264 in mxf
  • Type changed from defect to enhancement

comment:2 Changed 2 years ago by cehoyos

  • Resolution set to fixed
  • Status changed from open to closed

Implemented in b83d9077807a5cde4db5f4d726e0a02c787651cb by Matthias Hunstock, needs -vprofile baseline.

comment:3 Changed 2 years ago by atze

  • Cc atze@fem.tu-ilmenau.de added

comment:4 Changed 2 years ago by atze

Hi Andreas,

if you could provide me with a valid sample MXF file that does not contain baseline H.264 I could have a look at adding other codecs to the muxer.

Note: See TracTickets for help on using tickets.