Re: [FFmpeg-user] How can I set in a D10 MXF (IMX50) file the flags for output color_range, -space, -transfer and primaries?

2015-06-04 Thread Christoph Gerstbauer
The new current ffmpeg version (June 02) is writing IMX50 MXF in the 
correct way (thanks to Michael Niedermayer):


SIGNAL STANDARD=1  (SMPTE ST386 2004)
COLOR SITING=0 (SMPTE ST 377) (the value 4 is debrecated)

before this new ffmpeg version it was no set information in this flags:
SIGNAL STANDARD= MISSING
COLOR SITING= MISSING

At this time I make a lot of test with different IMX50 PAL files from 
different encoders (NTSC tests are following):

# ffmpeg
# ffmbc
# premiere cs6
# IRT
# open cube (just wrapping)

with MXF bmx (MXFDUMP.exe) I make MXFDUMPs and analyse the different 
metadata entries in the header.
Furthermore I do the IRT Analyser test: the only files which pass the 
test are from

# FFmpeg (new, June 02)
# FFmbc (0.7)
# IRT Golden Files ;)

FFMPEG IMX50 output at mxf2raw:

MXF File Information:
  Filename   : C:\Users\Administrator\Dropbox\FFmpeg 
Syntax Hilfen\IMX MXF\_Testbed_MXFs+DUMPs\ffmpegnew01june\imx50.mxf

  MXF version: 1.2
  OP label   : OP-1A (internal essence, stream file, 
multi-track)

  Wrapping type  : Frame
  Material package name  :
  Material start timecode: 12:34:56:11 (@ 25fps)
  File src start timecode: 12:34:56:11 (@ 25fps)
  Edit rate  : 25/1
  Precharge  : 0
  Duration   : 9
  Rollout: 0
  Identifications:
Identification 0:
  Generation UID: adab4424.2f254dc7.92ff29bd.000c0001
  Company name  : FFmpeg
  Product name  : OP1a Muxer
  Product version   : (not set)
  Version string: 56.34.100
  Product UID   : adab4424.2f254dc7.92ff29bd.000c0002
  Modification date : 0-00-00 00:00:00.000
  Toolkit version   : (not set)
  Platform  : (not set)
Track 0:
  Essence kind : Picture
  Essence type : D10 50Mbps
  Essence label: 060e2b34.04010101.0d010301.02010101
  Material package uid : 
060a2b34.01010105.01010d00.1343f1fb.52947134.c143f1fb.00529471.34c14300

  Material track id: 2
  Material track number: 0
  File package uid : 
060a2b34.01010105.01010d00.1343f1fb.52947134.c143f1fb.00529471.34c14301

  File track id: 2
  File track number: 0x05010100
  Edit rate: 25/1
  Duration : 9
  Lead filler offset   : 0
  Picture coding label : 060e2b34.04010101.04010202.01020101
  Signal standard  : 1 (ITU 601)
  Frame layout : 1 (Separate Fields)
  Stored dimensions: 720x608
  Display dimensions   : 720x576
  Display x offset : 0
  Display y offset : 32
  Aspect ratio : 4/3
  AFD  : (not set)
  Component depth  : 8
  Horiz subsampling: 2
  Vert subsampling : 1
  Color siting : 0 (Co-siting)
Track 1:
  Essence kind : Sound
  Essence type : D10 AES3 PCM
  Essence label: 060e2b34.04010101.0d010301.02010101
  Material package uid : 
060a2b34.01010105.01010d00.1343f1fb.52947134.c143f1fb.00529471.34c14300

  Material track id: 3
  Material track number: 0
  File package uid : 
060a2b34.01010105.01010d00.1343f1fb.52947134.c143f1fb.00529471.34c14301

  File track id: 3
  File track number: 0x06011000
  Edit rate: 25/1
  Duration : 9
  Lead filler offset   : 0
  Sampling rate: 48000/1
  Bits per sample  : 16
  Block align  : 16
  Channel count: 8
  D10 AES3 valid flags : b
  Sequence offset  : 0
  Locked   : true
  Audio ref level  : (not set)
  Dial norm: (not set)

FFMPEG IMX50 MXFDUMP:


[ K = Header (  )
06.0e.2b.34.02.05.01.01.0d.01.02.01.01.02.04.00, L =104 (68), LL 
= 1 ]

   Major Version = 0001
   Minor Version = 0002
 KAGSize = 0200
   ThisPartition = 
   PreviousPartition = 
 FooterPartition = 002b0c00
 HeaderByteCount = 1200
  IndexByteCount = 0200
IndexSID = 0002
  BodyOffset = 
 BodySID = 0001
 Operational Pattern = 06.0e.2b.34.04.01.01.01.0d.01.02.01.01.01.09.00
 = [ 1a - Single Item, Single Package ]
   EssenceContainers = [ count =  1 ]
   0 = 06.0e.2b.34.04.01.01.01.0d.01.03.01.02.01.01.01
 = [ D-10 - 50Mbps 625/50i (defined template) ]

[ Omitted 1 dark KLV triplets ]

[ K = Primer ( 0200 )
06.0e.2b.34.02.05.01.01.0d.01.02.01.01.05.01.00, L =   1394 (572), 
LL = 3 ]

  [ Number of entries = 77, Entry size= 18 ]
  Local Tag  UID
  3c.0a :06.0e.2b.34.01.01.01.01.01.01.15.02.00.00.00.00
  3b.02 :06.0e.2b.34.01.01.01.02.07.02.01.10.02.04.00.00
  3b.05 :06.0e.2b.34.01.01.01.02.03.01.02.01.05.00.00.00
  3b.06 :06.0e.2b.34.01.01.01.02.06.01.01.04.06.04.00.00
  3b.03 :

Re: [FFmpeg-user] How can I set in a D10 MXF (IMX50) file the flags for output color_range, -space, -transfer and primaries?

2015-06-04 Thread Kuban Altan
On Tue, May 5, 2015 at 8:41 AM, tim nicholson 
nichot20-at-yahoo@ffmpeg.org wrote:

 On 05/05/15 15:52, Christoph Gerstbauer wrote:
 
 
  Am 05.05.2015 um 09:06 schrieb tim nicholson:
  [...]
 
  The tricky bit is to decide what to do if the values aren't manually
  specified. According to the specs there is no default value, so we
  would have to invent one.
  Hm, so what is happening at the current ffmpeg encoding? If nothing is
  defined what is going into the 2 mxf metadata flags?
  At this time the following is readed out from mxf2raw:
  Signal Standard = 0 (NONE)
  Color Sitting = 255 (UNKNOWN)
  So is ffmpeg writing this 0 into the mxf or is MXF2RAW showing me the
  some standard value when it cannot regognize any value in this flags?
 

 ffmpeg does not currently write that metadata at all in the mxf muxer so
 mxf2raw must be reporting the values corresponding to unset




 --
 Tim.
 Key Fingerprint 38CF DB09 3ED0 F607 8B67 6CED 0C0B FC44 8B0B FC83
 ___
 ffmpeg-user mailing list
 ffmpeg-user@ffmpeg.org
 http://ffmpeg.org/mailman/listinfo/ffmpeg-user


I looked to ffmpeg tickets, for this feature, but could not find the ticket
for this. Has anyone opened a ticket for this?

kuban altan
___
ffmpeg-user mailing list
ffmpeg-user@ffmpeg.org
http://ffmpeg.org/mailman/listinfo/ffmpeg-user


Re: [FFmpeg-user] How can I set in a D10 MXF (IMX50) file the flags for output color_range, -space, -transfer and primaries?

2015-06-04 Thread tim nicholson
On 04/06/15 12:06, Kuban Altan wrote:
 On Tue, May 5, 2015 at 8:41 AM, tim nicholson 
 nichot20-at-yahoo@ffmpeg.org wrote:
 
 On 05/05/15 15:52, Christoph Gerstbauer wrote:


 Am 05.05.2015 um 09:06 schrieb tim nicholson:
 [...]

 The tricky bit is to decide what to do if the values aren't manually
 specified. According to the specs there is no default value, so we
 would have to invent one.
 Hm, so what is happening at the current ffmpeg encoding? If nothing is
 defined what is going into the 2 mxf metadata flags?
 At this time the following is readed out from mxf2raw:
 Signal Standard = 0 (NONE)
 Color Sitting = 255 (UNKNOWN)
 So is ffmpeg writing this 0 into the mxf or is MXF2RAW showing me the
 some standard value when it cannot regognize any value in this flags?


 ffmpeg does not currently write that metadata at all in the mxf muxer so
 mxf2raw must be reporting the values corresponding to unset

[..]
 
 I looked to ffmpeg tickets, for this feature, but could not find the ticket
 for this. Has anyone opened a ticket for this?
 

Before opening a ticket I suggest you check the current git HEAD.

 [..]
-- 
Tim.
Key Fingerprint 38CF DB09 3ED0 F607 8B67 6CED 0C0B FC44 8B0B FC83
___
ffmpeg-user mailing list
ffmpeg-user@ffmpeg.org
http://ffmpeg.org/mailman/listinfo/ffmpeg-user


Re: [FFmpeg-user] How can I set in a D10 MXF (IMX50) file the flags for output color_range, -space, -transfer and primaries?

2015-05-05 Thread Christoph Gerstbauer



Am 05.05.2015 um 09:06 schrieb tim nicholson:

On 02/05/15 14:38, Christoph Gerstbauer wrote:


Am 01.05.15 um 11:21 schrieb tim nicholson:

[..]
Christoph do you actually require the mxf metadata setting (as it really
ought to be, and what I thought you were after) or are you content with
it in the essence, in which case, in the absence of a target preset, you
will have to set the flags yourself.


As Marton Balint showed me the syntax, the setting of these 4 values
worked, but they dont affect the metadata in the MXF container.
The metadata flags:
Color Siting and Signal Standard werent changed by using the syntax.
Before this test I though I could change these 2 params with the syntax
descriped above.
But now I know that this is not working.
Furthermore I looked for a way to PASS the test with the IRT Analyzer.

Regarding to the ticket: How to set 3 specific metadata flags
(ITU601/displayoffset) in FFmpegs IMX50 MXF-OP1a encoding
Yes I am still looking for a encoding option fot the mxf encoding of
ffmpeg to set MANUALLY (of course) the flags for Signal Standard and
Color Siting.
FFmpeg should never set it autmatically to any values, if the source
would have empty flags.
So if I know from which source the content is comming, I want to be able
to set the 2 mxf metadata flags, and also the 4 addional falg for the
essence (color_range, color_space, color_transfer and color_primaries).

Setting the values to a specified values seems straightforward enough,
now I have found the relevant UL's.

The tricky bit is to decide what to do if the values aren't manually
specified. According to the specs there is no default value, so we
would have to invent one.
Hm, so what is happening at the current ffmpeg encoding? If nothing is 
defined what is going into the 2 mxf metadata flags?

At this time the following is readed out from mxf2raw:
Signal Standard = 0 (NONE)
Color Sitting = 255 (UNKNOWN)
So is ffmpeg writing this 0 into the mxf or is MXF2RAW showing me the 
some standard value when it cannot regognize any value in this flags?



  This could be by inspecting the codec
metadata to see if the corresponding stream flags are set. This looks
like it would be tricksy, or using some predetermined value based upon
some other parameters such as frame size, which could lead to
disagreement as to what was appropriate.
Making the writing of the metadata optional also adds complication in
the muxer, so it needs some careful thought.

As an interim solution for pristine mxf files, have you tired remuxing
with bmxlib?

Never tried this way :) I just used mxf2raw to check the files.
But I will try this way too. Thank you for the hint.

Best Regards
Christoph


My motivation to this whole issue is:
I want to generate a IMX50 file from an ffv or ffvhuff file were the
IMX50 target file has less transcoding loss as possible.
Most transcoders I use make an internal convertion from YUV422 to YUV422
formats (e.g uncompress 4:2:2 to uncompressed 4:2:2) with an ADDIONAL
loss. I guess it is an internal RGB convertion: YUV422 source to RGB
(internal) to YUV422 target format. (anyway, these transcoders are black
boxes and I cannot know if this is the cause)
So when I transcode with these transcoders I have 2 LOSSY steps:
1.) Avoidable LOSS of source is YUV422: addional chroma subsampling
(RGB-YUV422)
2.) MPEG2 encoding loss

FFmpeg does not do that: It keeps the yuv422 native format and just
encode it to mpeg2. - And that would lead to better quality IMX files.
Therefore I want to switch from professional transcoders to ffmpeg for
generation IMX50. But I will still ned this metadata flag to do it
perfectly.

Best Regards
Christoph Gerstbauer


Regards,
Marton
[..]

___
ffmpeg-user mailing list
ffmpeg-user@ffmpeg.org
http://ffmpeg.org/mailman/listinfo/ffmpeg-user




___
ffmpeg-user mailing list
ffmpeg-user@ffmpeg.org
http://ffmpeg.org/mailman/listinfo/ffmpeg-user


Re: [FFmpeg-user] How can I set in a D10 MXF (IMX50) file the flags for output color_range, -space, -transfer and primaries?

2015-05-05 Thread tim nicholson
On 05/05/15 15:52, Christoph Gerstbauer wrote:
 
 
 Am 05.05.2015 um 09:06 schrieb tim nicholson:
 [...]

 The tricky bit is to decide what to do if the values aren't manually
 specified. According to the specs there is no default value, so we
 would have to invent one.
 Hm, so what is happening at the current ffmpeg encoding? If nothing is
 defined what is going into the 2 mxf metadata flags?
 At this time the following is readed out from mxf2raw:
 Signal Standard = 0 (NONE)
 Color Sitting = 255 (UNKNOWN)
 So is ffmpeg writing this 0 into the mxf or is MXF2RAW showing me the
 some standard value when it cannot regognize any value in this flags?


ffmpeg does not currently write that metadata at all in the mxf muxer so
mxf2raw must be reporting the values corresponding to unset




-- 
Tim.
Key Fingerprint 38CF DB09 3ED0 F607 8B67 6CED 0C0B FC44 8B0B FC83
___
ffmpeg-user mailing list
ffmpeg-user@ffmpeg.org
http://ffmpeg.org/mailman/listinfo/ffmpeg-user


Re: [FFmpeg-user] How can I set in a D10 MXF (IMX50) file the flags for output color_range, -space, -transfer and primaries?

2015-05-05 Thread tim nicholson
On 02/05/15 14:38, Christoph Gerstbauer wrote:
 
 
 Am 01.05.15 um 11:21 schrieb tim nicholson:
 [..]
 Christoph do you actually require the mxf metadata setting (as it really
 ought to be, and what I thought you were after) or are you content with
 it in the essence, in which case, in the absence of a target preset, you
 will have to set the flags yourself.

 As Marton Balint showed me the syntax, the setting of these 4 values
 worked, but they dont affect the metadata in the MXF container.
 The metadata flags:
 Color Siting and Signal Standard werent changed by using the syntax.
 Before this test I though I could change these 2 params with the syntax
 descriped above.
 But now I know that this is not working.
 Furthermore I looked for a way to PASS the test with the IRT Analyzer.
 
 Regarding to the ticket: How to set 3 specific metadata flags
 (ITU601/displayoffset) in FFmpegs IMX50 MXF-OP1a encoding
 Yes I am still looking for a encoding option fot the mxf encoding of
 ffmpeg to set MANUALLY (of course) the flags for Signal Standard and
 Color Siting.
 FFmpeg should never set it autmatically to any values, if the source
 would have empty flags.
 So if I know from which source the content is comming, I want to be able
 to set the 2 mxf metadata flags, and also the 4 addional falg for the
 essence (color_range, color_space, color_transfer and color_primaries).

Setting the values to a specified values seems straightforward enough,
now I have found the relevant UL's.

The tricky bit is to decide what to do if the values aren't manually
specified. According to the specs there is no default value, so we
would have to invent one. This could be by inspecting the codec
metadata to see if the corresponding stream flags are set. This looks
like it would be tricksy, or using some predetermined value based upon
some other parameters such as frame size, which could lead to
disagreement as to what was appropriate.

Making the writing of the metadata optional also adds complication in
the muxer, so it needs some careful thought.

As an interim solution for pristine mxf files, have you tired remuxing
with bmxlib?

 
 My motivation to this whole issue is:
 I want to generate a IMX50 file from an ffv or ffvhuff file were the
 IMX50 target file has less transcoding loss as possible.
 Most transcoders I use make an internal convertion from YUV422 to YUV422
 formats (e.g uncompress 4:2:2 to uncompressed 4:2:2) with an ADDIONAL
 loss. I guess it is an internal RGB convertion: YUV422 source to RGB
 (internal) to YUV422 target format. (anyway, these transcoders are black
 boxes and I cannot know if this is the cause)
 So when I transcode with these transcoders I have 2 LOSSY steps:
 1.) Avoidable LOSS of source is YUV422: addional chroma subsampling
 (RGB-YUV422)
 2.) MPEG2 encoding loss
 
 FFmpeg does not do that: It keeps the yuv422 native format and just
 encode it to mpeg2. - And that would lead to better quality IMX files.
 Therefore I want to switch from professional transcoders to ffmpeg for
 generation IMX50. But I will still ned this metadata flag to do it
 perfectly.
 
 Best Regards
 Christoph Gerstbauer
 
 Regards,
 Marton
 [..]
 
 ___
 ffmpeg-user mailing list
 ffmpeg-user@ffmpeg.org
 http://ffmpeg.org/mailman/listinfo/ffmpeg-user


-- 
Tim.
Key Fingerprint 38CF DB09 3ED0 F607 8B67 6CED 0C0B FC44 8B0B FC83
___
ffmpeg-user mailing list
ffmpeg-user@ffmpeg.org
http://ffmpeg.org/mailman/listinfo/ffmpeg-user


Re: [FFmpeg-user] How can I set in a D10 MXF (IMX50) file the flags for output color_range, -space, -transfer and primaries?

2015-05-02 Thread Christoph Gerstbauer



Am 01.05.15 um 11:21 schrieb tim nicholson:

On 30/04/15 22:03, Marton Balint wrote:

On Wed, 29 Apr 2015, Christoph Gerstbauer wrote:


I found out that a IMX50 mxf file encoded with FFmbc and the IMX50 mxf
file encoded with actual ffmpeg builds are different in these mxf
metadata flags (by reading out via ffprobe - show_streams)

Are you sure you mean specifically mxf metadata flags?
See my comments below.

Hello Tim, I wrongly mixed different issues.
The metadata flags color_range=tv, color_space=smpte170m, 
color_transfer=bt709 and color_primaries=bt470bg


are NOT mxf metadata flags. For MXF there exist seperate color range and signal 
standard metadata flags. (whhich can be read out bei mxf2raw (BBC) for example.





FFMBC IMX FILE stream 0:0:
color_range=tv
color_space=smpte170m
color_transfer=bt709
color_primaries=bt470bg


FFMPEG IMX FILE stream 0:0:
color_range=tv
color_space=unknown
color_transfer=unknown
color_primaries=unknown

I want to set these metadata flags to the same values, but with FFmpeg.
How can I produce the same output like ffmbc with these 4 metadata flags?
I didnt found a answer to that in the ffmpeg documentation :/

You can manually specify these settings to force them being set with
these parameters:

-color_primaries 5
-color_trc 1
-colorspace 6

What does not work as far as I know in ffmpeg is to actually get these
settings from the source video, even if ffprobe detects them.


And what does not work as far as I know in ffmpeg is these values
actually being written by the mxf muxer. At least I cannot find the
relevant UL's listed in the Generic Picture Essence Descriptor section
of mxfenc.c which is where I would expect to see them. Or any where else
for that matter.

Nor are they in ffmbc for that matter, so I suspect ffprobe is picking
them up from the essence rather than the specific mxf UL's. (ffmbc sets
the parameters Marton lists as part of the IMX target, which ffmpeg does
not have)

Given that MXF encoders should encode Transfer Characteristic whenever
possible smpte S377-1, this is clearly an omission and I am surprised
the IRT analyser doesn't spot it.

Christoph do you actually require the mxf metadata setting (as it really
ought to be, and what I thought you were after) or are you content with
it in the essence, in which case, in the absence of a target preset, you
will have to set the flags yourself.

As Marton Balint showed me the syntax, the setting of these 4 values 
worked, but they dont affect the metadata in the MXF container.

The metadata flags:
Color Siting and Signal Standard werent changed by using the syntax.
Before this test I though I could change these 2 params with the syntax 
descriped above.

But now I know that this is not working.
Furthermore I looked for a way to PASS the test with the IRT Analyzer.

Regarding to the ticket: How to set 3 specific metadata flags 
(ITU601/displayoffset) in FFmpegs IMX50 MXF-OP1a encoding
Yes I am still looking for a encoding option fot the mxf encoding of 
ffmpeg to set MANUALLY (of course) the flags for Signal Standard and 
Color Siting.
FFmpeg should never set it autmatically to any values, if the source 
would have empty flags.
So if I know from which source the content is comming, I want to be able 
to set the 2 mxf metadata flags, and also the 4 addional falg for the 
essence (color_range, color_space, color_transfer and color_primaries).


My motivation to this whole issue is:
I want to generate a IMX50 file from an ffv or ffvhuff file were the 
IMX50 target file has less transcoding loss as possible.
Most transcoders I use make an internal convertion from YUV422 to YUV422 
formats (e.g uncompress 4:2:2 to uncompressed 4:2:2) with an ADDIONAL 
loss. I guess it is an internal RGB convertion: YUV422 source to RGB 
(internal) to YUV422 target format. (anyway, these transcoders are black 
boxes and I cannot know if this is the cause)

So when I transcode with these transcoders I have 2 LOSSY steps:
1.) Avoidable LOSS of source is YUV422: addional chroma subsampling 
(RGB-YUV422)

2.) MPEG2 encoding loss

FFmpeg does not do that: It keeps the yuv422 native format and just 
encode it to mpeg2. - And that would lead to better quality IMX files.
Therefore I want to switch from professional transcoders to ffmpeg for 
generation IMX50. But I will still ned this metadata flag to do it 
perfectly.


Best Regards
Christoph Gerstbauer


Regards,
Marton
[..]


___
ffmpeg-user mailing list
ffmpeg-user@ffmpeg.org
http://ffmpeg.org/mailman/listinfo/ffmpeg-user


Re: [FFmpeg-user] How can I set in a D10 MXF (IMX50) file the flags for output color_range, -space, -transfer and primaries?

2015-05-01 Thread tim nicholson
On 30/04/15 22:03, Marton Balint wrote:
 
 On Wed, 29 Apr 2015, Christoph Gerstbauer wrote:
 
 I found out that a IMX50 mxf file encoded with FFmbc and the IMX50 mxf
 file encoded with actual ffmpeg builds are different in these mxf
 metadata flags (by reading out via ffprobe - show_streams)

Are you sure you mean specifically mxf metadata flags?
See my comments below.


 FFMBC IMX FILE stream 0:0:
 color_range=tv
 color_space=smpte170m
 color_transfer=bt709
 color_primaries=bt470bg


 FFMPEG IMX FILE stream 0:0:
 color_range=tv
 color_space=unknown
 color_transfer=unknown
 color_primaries=unknown

 I want to set these metadata flags to the same values, but with FFmpeg.
 How can I produce the same output like ffmbc with these 4 metadata flags?
 I didnt found a answer to that in the ffmpeg documentation :/
 
 You can manually specify these settings to force them being set with
 these parameters:
 
 -color_primaries 5
 -color_trc 1
 -colorspace 6
 
 What does not work as far as I know in ffmpeg is to actually get these
 settings from the source video, even if ffprobe detects them.
 

And what does not work as far as I know in ffmpeg is these values
actually being written by the mxf muxer. At least I cannot find the
relevant UL's listed in the Generic Picture Essence Descriptor section
of mxfenc.c which is where I would expect to see them. Or any where else
for that matter.

Nor are they in ffmbc for that matter, so I suspect ffprobe is picking
them up from the essence rather than the specific mxf UL's. (ffmbc sets
the parameters Marton lists as part of the IMX target, which ffmpeg does
not have)

Given that MXF encoders should encode Transfer Characteristic whenever
possible smpte S377-1, this is clearly an omission and I am surprised
the IRT analyser doesn't spot it.

Christoph do you actually require the mxf metadata setting (as it really
ought to be, and what I thought you were after) or are you content with
it in the essence, in which case, in the absence of a target preset, you
will have to set the flags yourself.


 Regards,
 Marton
 [..]

-- 
Tim.
Key Fingerprint 38CF DB09 3ED0 F607 8B67 6CED 0C0B FC44 8B0B FC83
___
ffmpeg-user mailing list
ffmpeg-user@ffmpeg.org
http://ffmpeg.org/mailman/listinfo/ffmpeg-user


Re: [FFmpeg-user] How can I set in a D10 MXF (IMX50) file the flags for output color_range, -space, -transfer and primaries?

2015-05-01 Thread Christoph Gerstbauer


You can manually specify these settings to force them being set with 
these parameters:


-color_primaries 5
-color_trc 1
-colorspace 6

What does not work as far as I know in ffmpeg is to actually get these 
settings from the source video, even if ffprobe detects them.


Regards,
Marton


Thank you Marton! It works :)

Best Regards
Christoph
___
ffmpeg-user mailing list
ffmpeg-user@ffmpeg.org
http://ffmpeg.org/mailman/listinfo/ffmpeg-user


Re: [FFmpeg-user] How can I set in a D10 MXF (IMX50) file the flags for output color_range, -space, -transfer and primaries?

2015-04-30 Thread tim nicholson
On 29/04/15 22:22, Christoph Gerstbauer wrote:
 I found out that a IMX50 mxf file encoded with FFmbc and the IMX50 mxf
 file encoded with actual ffmpeg builds are different in these mxf
 metadata flags (by reading out via ffprobe - show_streams)
 
 FFMBC IMX FILE stream 0:0:
 color_range=tv
 color_space=smpte170m
 color_transfer=bt709
 color_primaries=bt470bg
 
 
 FFMPEG IMX FILE stream 0:0:
 color_range=tv
 color_space=unknown
 color_transfer=unknown
 color_primaries=unknown
 
 I want to set these metadata flags to the same values, but with FFmpeg.
 How can I produce the same output like ffmbc with these 4 metadata flags?
 I didnt found a answer to that in the ffmpeg documentation :/
 

I think this is the third time you have asked this question in a
slightly different way, and the answer has not changed.

I refer you to my previous responses.

 Best Regards
 CHristoph
 
 [..]

-- 
Tim.
Key Fingerprint 38CF DB09 3ED0 F607 8B67 6CED 0C0B FC44 8B0B FC83
___
ffmpeg-user mailing list
ffmpeg-user@ffmpeg.org
http://ffmpeg.org/mailman/listinfo/ffmpeg-user


Re: [FFmpeg-user] How can I set in a D10 MXF (IMX50) file the flags for output color_range, -space, -transfer and primaries?

2015-04-30 Thread Marton Balint


On Wed, 29 Apr 2015, Christoph Gerstbauer wrote:

I found out that a IMX50 mxf file encoded with FFmbc and the IMX50 mxf file 
encoded with actual ffmpeg builds are different in these mxf metadata flags 
(by reading out via ffprobe - show_streams)


FFMBC IMX FILE stream 0:0:
color_range=tv
color_space=smpte170m
color_transfer=bt709
color_primaries=bt470bg


FFMPEG IMX FILE stream 0:0:
color_range=tv
color_space=unknown
color_transfer=unknown
color_primaries=unknown

I want to set these metadata flags to the same values, but with FFmpeg.
How can I produce the same output like ffmbc with these 4 metadata flags?
I didnt found a answer to that in the ffmpeg documentation :/


You can manually specify these settings to force them being set with these 
parameters:


-color_primaries 5
-color_trc 1
-colorspace 6

What does not work as far as I know in ffmpeg is to actually get these 
settings from the source video, even if ffprobe detects them.


Regards,
Marton
___
ffmpeg-user mailing list
ffmpeg-user@ffmpeg.org
http://ffmpeg.org/mailman/listinfo/ffmpeg-user


[FFmpeg-user] How can I set in a D10 MXF (IMX50) file the flags for output color_range, -space, -transfer and primaries?

2015-04-29 Thread Christoph Gerstbauer

I found out that a IMX50 mxf file encoded with FFmbc and the IMX50 mxf file 
encoded with actual ffmpeg builds are different in these mxf metadata flags (by 
reading out via ffprobe - show_streams)

FFMBC IMX FILE stream 0:0:
color_range=tv
color_space=smpte170m
color_transfer=bt709
color_primaries=bt470bg


FFMPEG IMX FILE stream 0:0:
color_range=tv
color_space=unknown
color_transfer=unknown
color_primaries=unknown

I want to set these metadata flags to the same values, but with FFmpeg.
How can I produce the same output like ffmbc with these 4 metadata flags?
I didnt found a answer to that in the ffmpeg documentation :/

Best Regards
CHristoph


COMMAND LINE OUTPUT:

FFmbc encoding:

ffmbc -i I:\IMX_tests\IMX50_CARBON.avi -target imx50 -acodec pcm_s24le
I:\IMX_tests\_FFMBC_PAL_IMX_24bit_2.mxf -loglevel debug
FFmbc version 0.7-rc7
Copyright (c) 2008-2012 Baptiste Coudurier and the FFmpeg developers
Input #0, avi, from 'I:\IMX_tests\IMX50_CARBON.avi':
   Metadata:
 encoder: Lavf55.0.100
 ISMP: 00:00:00:00
   Duration: 00:00:20.00, start: 0.00, bitrate: 113291 kb/s
 Stream #0.0(und): Video: ffvhuff, yuv422p, 720x608p, PAR 152:135
DAR 4:3, 25.00 fps
 Stream #0.1(und): Audio: pcm_s24le, 48000 Hz, stereo, s32, 2304 kb/s
[buffer @ 002EFF60] w:720 h:608 pixfmt:yuv422p tb:1/100
sar:152/135 sws_param:
Warning, QMAT_SHIFT is larger than 21, overflows possible
 Last message repeated 1 times
Output #0, mxf_d10, to 'I:\IMX_tests\_FFMBC_PAL_IMX_24bit_2.mxf':
   Metadata:
 encoder: FFmbc 0.7
 Stream #0.0(und), 0, 1/25: Video: mpeg2video, yuv422p, 720x608i tff
[PAR 152:135 DAR 4:3], tbc 1/25, cbr, 5 kb/s, 25.00 fps
 Stream #0.1(und), 0, 1/48000: Audio: pcm_s24le, 48000 Hz, stereo,
s32, 2304 kb/s
Stream mapping:
   Stream #0.0 - #0.0
   Stream #0.1 - #0.1
Press [q] to stop, [?] for help
[mxf_d10 @ 003BF460] package type:1
[mxf_d10 @ 003BF460] package type:2
[mxf_d10 @ 003BF460] edit units count 0
frame=  341 fps= 25 q=3.0 size=  103570kB time=00:00:13.60
bitrate=62385.4kbits/s eta=00:00:06.41

-

FFMPEG encoding:

ffmpegnew -i I:\IMX_tests\IMX50_CARBON.avi -map 0:v -map 0:a -c:v
mpeg2video -r 25 -pix_fmt yuv422p -aspect 4:3 -minrate 5k -maxrate
5k -b:v 5k -intra -flags +ildct+low_del
ay -intra_vlc 1 -non_linear_quant 1 -ps 1 -qmin 1 -qmax 3 -top 1 -dc 10
-bufsize 200 -rc_init_occupancy 200 -rc_max_vbv_use 1
-rc_min_vbv_use 1 -c:a pcm_s24le -ar 48000 -f mxf_d10 I:\IMX_tests
\_FFMPEGNEW_PAL_IMX_24bit_2.mxf
ffmpeg version N-71727-g46778ab Copyright (c) 2000-2015 the FFmpeg
developers
   built with gcc 4.9.2 (GCC)
   configuration: --enable-gpl --enable-version3 --disable-w32threads
--enable-avisynth --enable-bzlib --enable-fontconfig --enable-frei0r
--enable-gnutls --enable-iconv --enable-libass --enable-libblu
ray --enable-libbs2b --enable-libcaca --enable-libdcadec
--enable-libfreetype --enable-libgme --enable-libgsm --enable-libilbc
--enable-libmodplug --enable-libmp3lame --enable-libopencore-amrnb --enab
le-libopencore-amrwb --enable-libopenjpeg --enable-libopus
--enable-librtmp --enable-libschroedinger --enable-libsoxr
--enable-libspeex --enable-libtheora --enable-libtwolame
--enable-libvidstab --ena
ble-libvo-aacenc --enable-libvo-amrwbenc --enable-libvorbis
--enable-libvpx --enable-libwavpack --enable-libwebp --enable-libx264
--enable-libx265 --enable-libxavs --enable-libxvid --enable-lzma --ena
ble-decklink --enable-zlib
   libavutil  54. 23.101 / 54. 23.101
   libavcodec 56. 35.101 / 56. 35.101
   libavformat56. 31.100 / 56. 31.100
   libavdevice56.  4.100 / 56.  4.100
   libavfilter 5. 14.100 /  5. 14.100
   libswscale  3.  1.101 /  3.  1.101
   libswresample   1.  1.100 /  1.  1.100
   libpostproc53.  3.100 / 53.  3.100
Input #0, avi, from 'I:\IMX_tests\IMX50_CARBON.avi':
   Metadata:
 encoder : Lavf55.0.100
 timecode: 00:00:00:00
   Duration: 00:00:20.00, start: 0.00, bitrate: 113291 kb/s
 Stream #0:0: Video: ffvhuff (FFVH / 0x48564646), yuv422p, 720x608,
96 kb/s, SAR 152:135 DAR 4:3, 25 fps, 25 tbr, 25 tbn, 25 tbc
 Stream #0:1: Audio: pcm_s24le ([1][0][0][0] / 0x0001), 48000 Hz,
stereo, s32 (24 bit), 2304 kb/s
File 'I:\IMX_tests\_FFMPEGNEW_PAL_IMX_24bit_2.mxf' already exists.
Overwrite ? [y/N] y
Output #0, mxf_d10, to 'I:\IMX_tests\_FFMPEGNEW_PAL_IMX_24bit_2.mxf':
   Metadata:
 timecode: 00:00:00:00
 encoder : Lavf56.31.100
 Stream #0:0: Video: mpeg2video, yuv422p, 720x608 [SAR 152:135 DAR
4:3], q=1-3, 5 kb/s, 25 fps, 25 tbn, 25 tbc
 Metadata:
   encoder : Lavc56.35.101 mpeg2video
 Stream #0:1: Audio: pcm_s24le, 48000 Hz, stereo, s32 (24 bit), 2304
kb/s
 Metadata:
   encoder : Lavc56.35.101 pcm_s24le
Stream mapping:
   Stream #0:0 - #0:0 (ffvhuff (native) - mpeg2video (native))
   Stream #0:1 - #0:1 (pcm_s24le (native) -