unai-d / unai.vitc Goto Github PK
View Code? Open in Web Editor NEWSimple VITC (vertical interval timecode) generator written in C#.
License: MIT License
Simple VITC (vertical interval timecode) generator written in C#.
License: MIT License
Hi.
Thanks for the nice tool.
I noticed that bit faster output at the 30fps.
The default duration is 1m40s while the output is 1m23s.
The result of readvitc by ffmpeg is also bit faster.
An example of command is below.
Unai.VITC.exe | ffmpeg.exe -f rawvideo -video_size 90x1 -pixel_format gray -framerate 30 -i - -f mp4 -c:v h264 -pix_fmt yuv420p -vf scale=360:4:flags=neighbor vitc90x4-30fps.mp4
At 25fps, works will fine.
Are there any possible causes?
Thanks.
Congratulations on the first release!
Just some little things I thought I would mention making things easier and or more useful to users.
ffmepg/.net runtimes should be bundled in the release for self-contained operation (avoids the whole chicken and egg archive issue)
Ideally, the readme would be expanded on its okay but it needs more demo examples for people.
SMPTE/EBU Colour Bar Tests
Commands to take 720x576 PAL & 720x480 NTSC inputs and pad to broadcast standard 720x608 & 720x512 for example.
Considerations for commands to generate data suited for ld-chroma-encoder as that allows software side generation of full spec 4fsc composite or s-video data in .TBC and it can be played back to analogue via a 10USD Fl2000 VGA adapter on Windows/Linux FL2K
would this project be able to generate the tbc from ether video or hacktv output and pipe it to the hacktv as input
for use with analouge transmition?
https://github.com/fsphil/hacktv
could this be possible?
thank you.
Sincerly,
Michael
Firstly, love the concept of the Unai.VITC tool. Thank-you for putting this utility together.
I have successfully compiled the tool for macOS x86 using dotnet & .NET3.x using...
$ dotnet publish -r osx-x64 -p:PublishSingleFile=true --self-contained true
However, I am struggling to use the example commands on the README.md to create a result that produce a result that FFmpeg readvitc will recognize from the first frame. Would you be kind enough to share the commands that you used to create the APNG examples?
Here is the command I ran (based on the example in README.md). I have tried various framerates, padded inputs, overlays, unscaled, various scale-factors etc. I have also tried using an intermediary file, rather than a pipe.
# Long command is broken up into separate lines with \ for readability on Github...
#
$ ./Unai.VITC -fps 25 -t "00:01:00:00" -tc "00:00:00:00" \
| ffmpeg -hide_banner -report \
-f "rawvideo" -video_size "90x1" -pixel_format "gray" -framerate 25 -i - \
-filter:v "scale=width=360:height=4:flags=neighbor,readvitc=scan_max=-1,metadata=print:file=readvitc.txt" \
-t "00:01:00.000" -f "null" - -y
$ cat readvitc.txt
readvitc.txt - unexpected result is the output of readvitc filter showing that no VITC is identified until 4 seconds/100 frames into the file. It then stops detecting at 5 seconds, then starts working at 10 seconds.
lavfi.readvitc.found=0
frame:99 pts:99 pts_time:3.96
lavfi.readvitc.found=0
frame:100 pts:100 pts_time:4
lavfi.readvitc.found=1
lavfi.readvitc.tc_str=00:00:04:00
frame:101 pts:101 pts_time:4.04
lavfi.readvitc.found=1
lavfi.readvitc.tc_str=00:00:04:01
frame:102 pts:102 pts_time:4.08
However, if I run FFmpeg against your animated PNG hosted samples on github, the VITC is detected and decoded from the first frame, as expected. Here is the working.txt result.
$ ffmpeg -hide_banner -report \
-i "https://raw.githubusercontent.com/unai-d/Unai.VITC/main/img/readvitc-pal.png" \
-filter:v "readvitc=scan_max=-1,metadata=print:file=working.txt" \
-f "null" - -y
$ cat working.txt
frame:0 pts:0 pts_time:0
lavfi.readvitc.found=1
lavfi.readvitc.tc_str=00:00:00:00
frame:1 pts:4000 pts_time:0.04
lavfi.readvitc.found=1
lavfi.readvitc.tc_str=00:00:00:01
frame:2 pts:8000 pts_time:0.08
lavfi.readvitc.found=1
lavfi.readvitc.tc_str=00:00:00:02
frame:3 pts:12000 pts_time:0.12
I can imagine how you have used FFmpeg's readvitc, metadata, drawtext filters to create your animated PNGs. I'm familiar with using metadata and drawtext filters.
Would you be kind enough to share your full command for generating the APNG's and try my command on your build, in case it is specific to my build. I'm running a recent version of FFmpeg.
$ ffmpeg -version
ffmpeg version 4.4 Copyright (c) 2000-2021 the FFmpeg developers
built with Apple clang version 12.0.0 (clang-1200.0.32.29)
Thanks for the tool. I've been looking for a tool to generate VITC and embed 608 captions as Line 21 for a few years. Your project is the first open-source vitsee rendering tool. Appreciated.
Dear developers,
I am a noob when it comes to programming and I have no clue how to use these c# files.
But I REALLY need this tool for a large scale event where I will do video mapping. (I am a VJ)
If anyone can compile this to an executable for either Mac or Windows that I can use, I would be forever grateful!
A declarative, efficient, and flexible JavaScript library for building user interfaces.
๐ Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.
TypeScript is a superset of JavaScript that compiles to clean JavaScript output.
An Open Source Machine Learning Framework for Everyone
The Web framework for perfectionists with deadlines.
A PHP framework for web artisans
Bring data to life with SVG, Canvas and HTML. ๐๐๐
JavaScript (JS) is a lightweight interpreted programming language with first-class functions.
Some thing interesting about web. New door for the world.
A server is a program made to process requests and deliver data to clients.
Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.
Some thing interesting about visualization, use data art
Some thing interesting about game, make everyone happy.
We are working to build community through open source technology. NB: members must have two-factor auth.
Open source projects and samples from Microsoft.
Google โค๏ธ Open Source for everyone.
Alibaba Open Source for everyone
Data-Driven Documents codes.
China tencent open source team.