DSRCorporation / prores-encoder-mac

NF native ProRes HQ encoder on MAC OS X
12 stars 2 forks source link

sync issue with renders #2

Open chocolate-elvis opened 7 years ago

chocolate-elvis commented 7 years ago

When using the compiled binary as is from the x-code project, noticing an issue with the rendered output PR files. There are duplicate frames even though the correct framerate is specified. Maybe the logic is defaulting to the 30fps project default somewhere in the process chain?

Also, no matter what source frame rate, the files appear as "24.00fps" in QuickTime-enabled tools like Premiere or Resolve, but appears correctly as 23.98 in QuickTime Player 7 (the command 24000/1001 was given).

Here's an example FFmpeg pipe that causes the issue: ffmpeg -i input.mxf -map 0:0 -an -pix_fmt yuv422p16le -f rawvideo - | bin/prenc -f scale=3840:2160,setdar=16/9,fps=24000/1001 output.mov

ggavrilov commented 7 years ago

By design prenc should apply setting from command line and if correct fps is set it will use it.

I didn't check using from x-code project directly and assume that can be some issues.

To verify output I use QuickTime Player and MediaInfo. QT shows the correct fps always 23.98, MI shows this fps as variable, perhaps because of this other tools say 24 (but it is a very strange.)

The better way to try to solve the issue if you can provide issued media for me or just provide MI output and I will find the similar media source on my side.

chocolate-elvis commented 6 years ago

Do you have an idea which part of the encoder code would be causing the variable frame rate output? It's causing NLE tools like Resolve and Premiere to display only the upper limit (in 23.976's case, 24.00) rather than the true frame rate of 23.976. Good news, the length of the material is correct for 23.98 and it all appears frame accurate throughout (although Prenc adds 1 extra frame of black at the beginning of the file). Looked through the code and might be how Core Media's CMTime / CMTimeScale is invoked. Would love to know if you found a solution. Thanks!

mwjburton commented 4 years ago

Change fps to 23976/1000. Setting 2400/1001 will produce the VFR output file,