![]() |
Timecode Reading - Printable Version +- Selur's Little Message Board (https://forum.selur.net) +-- Forum: Hybrid - Support (https://forum.selur.net/forum-1.html) +--- Forum: Problems & Questions (https://forum.selur.net/forum-3.html) +--- Thread: Timecode Reading (/thread-3610.html) Pages:
1
2
|
Timecode Reading - jamesharding26 - 06.03.2024 Hi Selur, I've noticed that Hybrid is reading some timecodes from footage differently to how Davinci Resolve or Media Info might do so I have a 29.97 clip that Mediainfo and Resolve reads the start timecode as 00:05:43:08 Hybrid reads it as 00:05:43.610 (I'm guessing the final number is in msec rather than frames) Problem is that when injecting timecode into the ProRes on the 'ProRes' tab, it's reading as 0:5:43:61 Is there a way to improve the timecode reading/stamping on my clips? My hope is to take the standards converted clips from Hybrid and re-conform back in Resolve as close as possible using the original timecode Thanks James RE: Timecode Reading - Selur - 06.03.2024 If can you share a sample where this happens I can look into it. Cu Selur RE: Timecode Reading - jamesharding26 - 06.03.2024 Hi Selur, This video should demonstrate the issue https://drive.google.com/file/d/1Q0CncGcDICoeUj290XBXBlYD2JZEGaxO/view?usp=sharing Thanks James RE: Timecode Reading - Selur - 06.03.2024 Ah, okay I see the problem. MediaInfo reports: Video Hybrid looks at these three lines: Delay : 00:05:43.610 ![]() <input_data name="TimeCode" value="00:05:43.610"/> Which results in Hybrid using '-timecode 0:5:43.61'. Strangely when using this: ffmpeg -r 30000/1001 -y -noautorotate -nostdin -threads 8 -ignore_editlist true -i "C:\Users\Selur\Desktop\TEST_2997.mov" -map 0:0 -an -sn -color_primaries bt709 -color_trc bt709 -colorspace bt709 -color_range tv -pix_fmt yuv422p10le -strict -1 -vsync 0 -vcodec prores_ks -profile:v 0 -vtag apco -timecode 0:5:43.61 -metadata encoding_tool="Hybrid 2024.03.05.1" -aspect 1920:1080 -f mov "G:\Output\TEST_2997_1_2024-03-06@19_14_01_9210_01.mov" Delay : 00:05:45.045 Delay : 00:05:43.610 Normally: "00:05:43:08" represents hrs:min ![]() and "00:05:43.610" represents hrs:min ![]() Problem is that FFmpeg -timecode hh:mm:ssSEPff -> I'll adjust Hybrid to capture the hrs:min ![]() Cu Selur RE: Timecode Reading - Selur - 06.03.2024 Send you a link to a dev version for testing, which hopefully fixes the problem and doesn't break other time related stuff. ![]() Cu Selur RE: Timecode Reading - jamesharding26 - 10.03.2024 I will take a look, thanks so much for all your hard work looking into this! RE: Timecode Reading - Selur - 10.03.2024 These changes are incorporated in the curren release, so test with the current release. Cu Selur RE: Timecode Reading - jamesharding26 - 11.03.2024 Hi Selur, I tested the latest version and it now accurately printing the timecode onto the new file. Can I ask if another addition can be made? At the moment, the timecode from the original frame rate file is being copied onto the new file. However, that causes errors because it's not a direct translation once the frame rate is converted. E.g. Original Frame Rate 29.98 - 00:05:43:28 New Frame Rate 23.98 (when using Hybrid) - 00:05:44:04 Because ':28' can't exist in the new frame rate, some sort of conversion is happening that leads to an incorrect frame rate. I think it could be more accurate by converting to frames and then back to timecode at the end E.g. Original Frame Rate 29.98 - 00:05:43:28 Conversion timecode to frames: 10,311 Conversion to new frame rate: (10,311/29.98)=~344 344*23.98=~8247 Conversion frames to timecode: ~05:43:22 Understandably there are round errors but the end timecode is accurate to within a frame or so when tested in Davinci Resolve Thanks and hope you're up for the challenge! James RE: Timecode Reading - Selur - 11.03.2024 Quote:E.g. Original Frame Rate 29.98 - 00:05:43:28I'm confused. ![]() When converting telecined 29.97fps content to 23.976fps via ivtc, the playback length of the clip does not change. Since frame rate and frame count get changed in the same way. I do not understand how a different the timecode could lead to an incorrect frame rate. This timecode should only indicate the offset to another file and it should not have anything to do with the frame rate. => did you mean 'incorrect time stamp' instead of ' incorrect frame rate' ? 00:05:43:28 usually indicates 5min 43seconds and 28 frames. 343*29.98 +28 = 10.311 frames. So assuming you are converting telecined 29.98fps content to 23.976fps by adjusting the frame count and the frame rate in the same way (ike ivtc does), the 28 frames would need to be adjusted. When changing from 29.98fps to 23.976fps the 28 frames need to be converted to 28*23.976/29.98=22 So you would end up with 00:05:43:22 instead of 00:05:43:28. Main problem I have with this is I'm totally unsure how to add this to the gui without overcomplicating this with tons of controls and at the same time be sure that this is applied only when needed. => Sorry, but I'm not going to implement this. I leave it to the user to adjust such time codes. Especially since the tiemcode usually indicates the offset to another file and Hybrid has no way of knowing whether the other file was changed like the current file will be changed by Hybrid. Cu Selur RE: Timecode Reading - jamesharding26 - 11.03.2024 Hi Selur, I chose some poor terminology, I did indeed mean 'incorrect time stamp/timecode' when converting between frame rates. I think your method for correcting the frame number is tidier than what I was suggesting and makes a lot of sense However, if you're unable to implement that without a lot of work I do understand. Given I have to batch convert a lot of material and cannot manually adjust the timecode, I may have to look into a script that does that for myself. Is there a way to inject a script into any of the processes that Hybrid does? Thanks James |