Slashdot Mirror


Facebook Announces That It Has Invented a New Unit of Time (theverge.com)

Facebook has announced a new unit of time, called Flicks. "According to the GitHub page documenting Flicks, a Flick is 'the smallest time unit which is LARGER than a nanosecond,' defined as 1/705,600,000 of a second," reports The Verge. (For comparison, a nanosecond is 1/1,000,000,000 of a second, making a Flick roughly 1.41723356 nanoseconds long.) From the report: Now, you may be sitting there wondering what was wrong with regular seconds that Facebook had to go and invent its own unit, especially since the second is one of the few units that is universal across SI and imperial units. The name itself is a portmanteau of the phase "frame-tick," which is also why you might want to use them. Flicks are designed to help measure individual frame duration for video frame rates. So whether your video is 24hz, 25hz, 30hz, 48hz, 50hz, 60hz, 90hz, 100hz, or 120hz, you'll be able to use Flicks to ensure that everything is in sync while still using whole integers (instead of decimals). Programmers already use built in tools in C++ to manage these sorts of exact frame syncing, especially when it comes to designing visual effects in CGI, but the most exact timing possible in C++ is nanoseconds, which doesn't divide evenly into most frame rates. The idea to create a new unit of time to solve this problem dates back to last year, when developer Christopher Horvath posted about it on Facebook.

114 of 188 comments (clear)

  1. Why? by saloomy · · Score: 4, Insightful

    Isn't a Hz effectively a measurement of time? (1/60'th of a second for example?)

    Why not measure them in their fractions of a second? Programmatically, simple.

    1. Re:Why? by Anonymous Coward · · Score: 5, Funny

      Because Facebook wants the press for "inventing" something, duh.

    2. Re:Why? by kondro · · Score: 2

      Because fractions of a second end up as fractions, which end up as floats, which end up with poor precision, which end up with syncing issues with media across large (time-wise) files.

    3. Re:Why? by Rosco+P.+Coltrane · · Score: 4, Informative

      No, a Hertz is a measurement of frequency - that is, the number of times something repeats itself per second. For instance, the thought "Facebook is really crap" springs to my mind at 1/86400 Hz on average.

      --
      "A door is what a dog is perpetually on the wrong side of" - Ogden Nash
    4. Re:Why? by TheCycoONE · · Score: 5, Interesting

      Because when you display a frame in a video player you hold that frame for a certain duration against the computers clock which is measured in nanoseconds (or milliseconds). To calculate that duration at present you take the quotient (e.g. 25/60 * 1000 (or 1000000000)) given you a floating point approximation of the actual frame duration. Now in reality that approximation is pretty good; at least if you do the calculation properly to avoid exaggerating early rounding error.

      What this proposal does is ensure that the number you get is a whole number of flicks, so no approximations are necessary. Unfortunately it only helps if you have a flick timer that you can time against, so it needs OS and hardware support to be useful.

    5. Re:Why? by DCFusor · · Score: 2

      rakudo handles rationals as...rationals. Like bigrat in perl5, only perfectly, no precision loss at all. But it's not a fad like...whatever TF facebook wants us to use.

      --
      Why guess when you can know? Measure!
    6. Re: Why? by Anonymous Coward · · Score: 1

      Nonsense. A flick is obviously the amount of time that Intel CPUs take to execute a nanosecond's worth of code, after their meltdown patch.

    7. Re: Why? by guruevi · · Score: 1

      You can always represent rational numbers as integers. Just multiply all numbers by 10 until you have no more floating point. But these days the compilers handle all this fancy footwork for you.

      --
      Custom electronics and digital signage for your business: www.evcircuits.com
    8. Re:Why? by Anonymous Coward · · Score: 5, Informative

      QuickTime (CoreVideo) has been doing this for decades. For example, CMTime and file data uses rational time (precise ratio of integers) supporting exact time calculations, including fir NTSC 59.94H for framerate, timecodes, etc. Other video standards and applications also do this.

      This Facebook standard doesn't even exactly support 59.94.

    9. Re:Why? by badboy_tw2002 · · Score: 3

      Well its in C++, which is basically invented yesterday. What a fad -- I guess just a big ol' bunch of script kiddies doing typical WEB STACK bullshit, amirite???

    10. Re:Why? by Obfuscant · · Score: 5, Informative

      What this proposal does is ensure that the number you get is a whole number of flicks, so no approximations are necessary.

      If you are working at 30Hz (not "30hz") and count in nanoseconds, you will be off by 0.333... ns per frame. That means 10ns per second. It would take 111,111,111.1 frames to be off by one frame. That's 3703703.7 seconds of video, or 42.8 continuous days of video. After 42.8 days of video, you will be off by one frame.

      If you blink once during that 42.8 days, you will miss the one additional frame that has been inserted into your 30Hz video stream.

      Given the extremely small errors for any frame rate if you use nanoseconds as the timebase, a simple stretch or compress of the rate for that tiny amount will be completely undetectable. The error in any "Flick" clock will vastly outweigh the error of using a simple nanosecond clock and "approximating".

      We need "Flicks" exactly why, again?

    11. Re:Why? by Highdude702 · · Score: 1

      Are you overclocking? You got me beat by about 10%

    12. Re:Why? by AHuxley · · Score: 1

      Such efforts can be found in France with https://en.wikipedia.org/wiki/...
      Just more messing with politics by people who want to impose their own revolutionary "change".

      --
      Domestic spying is now "Benign Information Gathering"
    13. Re:Why? by Anonymous Coward · · Score: 1

      We do not care what facebook bullshit they gonna find today or tomorrow.... fucking kill facebook please! Enough is enough !!

    14. Re:Why? by Zontar+The+Mindless · · Score: 1

      Isn't a Hz effectively a measurement of time?

      No.

      --
      Il n'y a pas de Planet B.
    15. Re:Why? by gfxguy · · Score: 1

      Because good enough isn't good enough.

      --
      Stupid sexy Flanders.
    16. Re:Why? by Anonymous Coward · · Score: 3, Informative

      No, a Hertz is a measurement of frequency - that is, the number of times something repeats itself per second. For instance, the thought "Facebook is really crap" springs to my mind at 1/86400 Hz on average.

      Not to be pedantic, but the unit of frequency is "hertz" (with a symbol "Hz"). "Hertz" is the guy it was named after. Units named after people are spelled in lowercase (volt, ampere, bohr, etc).

    17. Re:Why? by Anonymous Coward · · Score: 2, Insightful

      No, you will be off by at most 0.333 ns per frame. Because you store the origin and number of frames that you have processed to calculate the next time to deliver a frame. The error will not accumulate.

    18. Re:Why? by Anonymous Coward · · Score: 1

      It's not technically correct to say that Hz is a measure of frequency, any more than it's technically correct to say that ohms are a measure of conductance

      What? Ohm is a measure of resistance, which is the inverse of conductance. So you are correct that Ohm is not a measure of conductance. But Hz=s^-1 is a measure of frequency all right. Frequency is the inverse of time. Or how else do you define frequency?

    19. Re:Why? by DivineKnight · · Score: 1

      Since neither my video card, nor my sound card, are of the integrated variety, they sync to whatever I tell them to. 192 kHz audio, 4K@60Hz video, even if the source material is nowhere near that.

    20. Re:Why? by houghi · · Score: 1

      But a frame is not on/of per frame. It is per pixel on a line. So as I see it "frame" is just a group from the moment the first pixel is activated till the moment the pixel right before it (the last pixel on the screen) is activated.
      That first pixel is nice, but not essential. You could do it with a pixel in the middle or any other random pixel.

      Becsue if you take two pixels next to each other, the framerate will be the same. Just one lights up a bit sooner than the other one.
      https://www.youtube.com/watch?...

      --
      Don't fight for your country, if your country does not fight for you.
    21. Re:Why? by AmiMoJo · · Score: 3, Interesting

      We need "Flicks" exactly why, again?

      Because although the error is small, it increases as you do things like frame rate conversion and synchronization to audio. It's also prone to programming errors, because people like to do things like use floats and division to calculate values and then add them up repeatedly, which as we know is a really bad idea.

      Also, being a nerd I like precision, and being able to use precise integer values to represent these time intervals.

      Granted, none of this is essential, but it's neat that someone figured out a nice common denominator for all the common and uncommon audio/video frequencies in use. Well, except NTSC, which as they point out is just broken and can't be fixed.

      --
      const int one = 65536; (Silvermoon, Texture.cs)
      SJW, n: "Someone I don't like, and by the way I'm a fuckwit" - AC
    22. Re:Why? by Anonymous Coward · · Score: 2

      It's not technically correct to say that Hz is a measure of frequency, any more than it's technically correct to say that ohms are a measure of conductance

      Yes. Yes, it is. The herz is a unit of frequency; the ohm is not a unit of conductance (it measures resistance). Also, the word "technically" is superfluous in your post. Something is either correct, or it isn't.

    23. Re:Why? by DCFusor · · Score: 1

      And who did Hip Hop Virtual Machine for "Personal Home Page"...oh, it was facebook, they don't eat their own dogfood? Of course, everything is in C at some level, or nearly. Some of us still use a bit of ASM.

      --
      Why guess when you can know? Measure!
    24. Re:Why? by Anonymous Coward · · Score: 1

      For fuck's sakes. This was a retarded intentional misinterpretation, and now it's an ancient bit of idiocy. Gore never claimed to have invented the Internet. He was, however, its tireless defender in the bunch of technophobe weasels called Congress. Which is what he said. And the people who did actually invent the Internet supported that statement.

      It wasn't clever or funny then, and it hasn't aged well. There's already enough retarded rightards here saying stupid shit, so fuck off.

    25. Re: Why? by JesseMcDonald · · Score: 1

      You can always represent rational numbers as integers. Just multiply all numbers by 10 until you have no more floating point.

      What is the final result of this algorithm for the rational number 1/3? Go ahead and try it; I'll wait.

      --
      "The state is that great fiction by which everyone tries to live at the expense of everyone else." - Bastiat
    26. Re:Why? by Obfuscant · · Score: 1

      But a frame is not on/of per frame. It is per pixel on a line.

      Double buffering means that you do not display each pixel as it is calculated, you calculate them all and then switch the display to the that frame. Each frame is a complete set of pixels.

      Becsue if you take two pixels next to each other, the framerate will be the same. Just one lights up a bit sooner than the other one.

      That depends on the display, not the framerate nor the means of calculating when the next frame should be displayed.

      Becsue if you take two pixels next to each other, the framerate will be the same.

      Of course,

      Just one lights up a bit sooner than the other one.

      Irrelevant to knowing what that frame rate is or determining when the next frame of your video needs to be displayed.

    27. Re:Why? by tricorn · · Score: 1

      No, fractions of a second don't end up as floats. They end up as some number of smaller units of time unless you're doing it wrong. Typically you'll measure in units of milliseconds, microseconds, nanoseconds, picoseconds, depending on the accuracy of the underlying hardware clock and the number of bits you can easily work with, but measuring time as number of frames also works fine - you just convert time by multiplying and dividing.

      If you use 64 bits (either as a single nanosecond value, or as a pair of 32-bit second/nanosecond values), you can measure relative time much more accurately than needed for video frame rates. A nanosecond is approximately the pixel clock for a 4K video at 120Hz.

      64 bits of nanoseconds will last a bit less than 600 years. 32 bits of seconds, with nanoseconds being a second 32 bits, will last 136 years. The gettimeofday() Unix call (and others using the timeval structure) measure time in microseconds. The newer clock_gettime() calls using the timespec structure which measures time in nanoseconds. With 128 bits, you can measure time in femtoseconds and still have a range of a million billion years (or "only" 100 billion years if you use two 64-bit values and measure in attoseconds). However, for measuring elapsed time over a period under a year, you can simply use 64 bits and measure in picoseconds.

      If you measure frame times in nanoseconds, you'll be off for any given frame rate by at most .5 nanoseconds per frame. Let's look at 120Hz video, the actual frame time is 8333333.33... nanoseconds. If you actually play it at 8333333 nanoseconds, after 120 frames (which should be 1 second) you'll be off by 40 nanoseconds. After about 29 minutes, you'll be off by one frame, approximately. If you instead use picoseconds (which you might as well, since you're already using more than 32 bits with either nanoseconds or Flicks for any time longer than about 4-6 seconds), you can still measure elapsed time for more than 200 days, and you'd be off by no more than 1 frame every 13 days.

      However, there's nothing that says you need to play at 8333333 nanoseconds per frame. Take the frame number, divide by 120, multiply by 1000000000, and that's the specific nanosecond that frame should start playing, and you won't ever be off by more than .5 nanoseconds, which is most likely significantly more accurate than your clock.

      So, unless you have a hardware clock that ticks at that rate, you'll have to convert from nanoseconds to Flicks anyway, so you really aren't saving anything (and you make it less convenient to convert to a real time duration, e.g. in seconds).

    28. Re:Why? by Entrope · · Score: 1

      They were wrong about NTSC, though. Because they chose a multiple of 120000 as the denominator, NTSC frame durations are representable with integer flick counts. That inaccuracy seems par for the course of their documentation, sadly.

    29. Re: Why? by brunnegd · · Score: 1

      Sorry, but you are backwards. By IEEE definitions, units named after a person are capitalized. Volts, Hertz, Amperes, Teslas, Newtons, etc., but not seconds, kilometers, farads, grams, etc.

    30. Re: Why? by SamTombs · · Score: 1

      Lower case 'farad' as in 'Michael faraday'?

    31. Re:Why? by MercTech · · Score: 1

      And since it isn't a tangible goods that requires manufacture; they didn't "invent" anything. They "defined" a new unit that is not accepted by the international community nor the National Institute of Standards. In other words, silly buzz word and nothing more.

      --
      NRRPT/RCT
  2. That's not a proper portmanteau by Quarters · · Score: 5, Insightful

    There's no 'l' in either Frame or Tick. The name should be Frick or Frack,

    1. Re:That's not a proper portmanteau by Entrope · · Score: 1

      Tell that to the people who think it's funny to order "flied lice" at a Chinese or Japanese restaurant (and who apparently work at Facebook).

    2. Re:That's not a proper portmanteau by bagofbeans · · Score: 5, Funny

      I shudder at the notion that anyone thinks that it is clever to take the mickey out of someone serving them food.

    3. Re:That's not a proper portmanteau by mykro76 · · Score: 5, Funny

      Of course it's not a proper portmanteau.

      It's a Facebook portmanteau. A Fartmanteau.

    4. Re:That's not a proper portmanteau by AmiMoJo · · Score: 2

      Pretty sure there is an I in TlCK.

      --
      const int one = 65536; (Silvermoon, Texture.cs)
      SJW, n: "Someone I don't like, and by the way I'm a fuckwit" - AC
    5. Re:That's not a proper portmanteau by azrael29a · · Score: 1

      Pretty sure there is an I in TlCK.

      He meant lowercase "L", not capital "i".

  3. Because programmers are bad at math? by xxxJonBoyxxx · · Score: 1

    Because programmers are bad at math?

    Or, why is a technique programmers have used since computers were born news again?

  4. Wow, what a terrible summary by ClickOnThis · · Score: 5, Informative

    Not that terrible summaries are anything new on Slashdot, but really. "Smallest unit of time greater than a nanosecond?"

    Too lazy to do the math right now, but it appears what they have defined is the largest unit of time that divides the frame-periods they're talking about by integral amounts, so you can synchronize video in these different rates with an integral number of "flicks" for each of the different frame-periods.

    --
    If it weren't for deadlines, nothing would be late.
    1. Re:Wow, what a terrible summary by Entrope · · Score: 4, Interesting

      Except that all of those frame rates are also integer divisors of 3600 Hz, so 1/3600 Hz would naturally support all of those frame rates also. They have an extra factor of 196,000 beyond what is needed. Even if you want margin for more (weirder) frame rates, and to be conveniently close to a power-of-10 of a second, they could go for 1/864,000 of a second (864,000 = 3600 * 16 * 3 * 5) and have more manageable counts.

    2. Re:Wow, what a terrible summary by Anonymous Coward · · Score: 1

      Also, unlike many existing standards (SMPTE, QuickTime CoreVideo using rationals with flexible denominator in CMTime), this FaceFriend thing doesn’t exactly support common frame rates like NTSC 59.94i, 29.97p and NTSC conformed film at 23.976 for 3:2 pulldown.

      The exact ratios needed for these are 60000/1001 Hz, 30000/1001 Hz and 24000/1001 Hz. To exactly support this, their arbitrary constant should have been a multiple of 1001.

      Oh well.

    3. Re:Wow, what a terrible summary by gman003 · · Score: 4, Interesting

      For legacy reasons, some (but not all) videos that are nominally 24Hz are actually 23.97Hz, some that are 30Hz are actually 29.97Hz, some that are 48Hz are actually 47.95Hz, some that are 60Hz are actually 59.94Hz, and some that are 120Hz are actually 119.88Hz. I suspect this new "unit" is the greatest common denominator between all those.

    4. Re:Wow, what a terrible summary by Anonymous Coward · · Score: 2, Informative

      Except it isn’t. They messed up.

      Neither of these is integral:

      705600000 / NTSC_FREQ_APPROX
      705600000 / NTSC_FREQ_EXACT

      Where
      NTSC_FREQ_APPROX = 59940/1000 = 59.94000000...
      NTSC_FREQ_EXACT = 60000/1001 = 59.94005994005994...

      So they don’t support those frequencies exactly anyway.

    5. Re:Wow, what a terrible summary by chiefscienceofficer · · Score: 2

      Never miss an opportunity to take the audio through one more transform that distorts it. As long a everything was synchronous it was possible to send audio in sync. Now with the decoupling of the display rate from the propagation rate the poor stepchild that gets mangled is the audio as it is speed shifted and pitch shifted back to compensate. Tossing an occasional frame is much more problematic than just reprocessing the audio to match the new "frame rate".

    6. Re:Wow, what a terrible summary by jmv · · Score: 1

      I suspect they were also trying to cover NTSC's 29.97 Hz and maybe even 44.1/48 kHz audio.

    7. Re:Wow, what a terrible summary by bursch-X · · Score: 1

      Aren't these fractions only a result of trying to make things work for NTSC, which has a frame rate of 29.97? PAL for example refreshes at a flat 25Hz, AFAIK.

      --
      There are two rules for success:
      1. Never tell everything you know.
    8. Re:Wow, what a terrible summary by Entrope · · Score: 1

      No. As an AC or two has pointed out, NTSC-based frame rates would need a factor of 1001 also.

    9. Re:Wow, what a terrible summary by Obfuscant · · Score: 2

      For legacy reasons,

      The legacy reason has to do with the AC line frequency introducing hum bars in the video, and the thought was that it was better for the hum bar to roll through the image than to be stuck in one place, which might happen to be the vertical sync period (thus screwing up the sync).

      The result of this was something called 'drop frame' so that video timing would match clock time. Time code for old B/W video at 30Hz would run from 0 through 29 frames and then roll over the second counter. From here:

      Drop frame timecode was invented to compensate for the discrepancy between 29.97 and 30 fps. Every minute except each tenth minute, two timecode numbers are dropped from the timecode count. This drop frame mode of 30 fps timecode remains accurate compared to the actual time passed, with a strange side effect that two numbers each minute vanish from the count.

      If you ever watch a video where they show the timecode, you can actually see this, if the time is ripe.

    10. Re: Wow, what a terrible summary by sexconker · · Score: 2
    11. Re:Wow, what a terrible summary by Anonymous Coward · · Score: 3, Insightful

      Except it is. You messed up.

      705600000 / NTSC_FREQ_EXACT is integral.

      It's exactly 11771760.

      Hint: x / (a / b) = x / a * b. NOT x / a / b.

    12. Re:Wow, what a terrible summary by Wizardess · · Score: 1

      29.97Hz? Seems there is a very significant market still operating on that frame rate.
      {o.o}

    13. Re: Wow, what a terrible summary by samkass · · Score: 1

      Not that not reading the article is uncommon in Slashdot either, but it appears that almost every single poster complaining about it didnâ(TM)t bother to read even the intro page cited in the article. Even the ones who thought they were being clever brining up 29.97fps. Seriously, this seems like a nice solution to a niche problem, and if you donâ(TM)t see the point, itâ(TM)s probably not for you anyway.

      --
      E pluribus unum
    14. Re:Wow, what a terrible summary by Entrope · · Score: 3, Interesting

      Correction: The NTSC frame rates can be represented exactly as flicks, but also with any other multiple of 3,600,000 (which also reflects their desire to exactly support 1000 times the 24, 25, 30, 48, 50, 60, 90, 100 and 120 Hz rates).

      The way they got to 705,600,000 is by also including 44100 Hz and 192000 Hz for audio purposes. 705,600,000 is the least common multiple of 88,200, 90,000, 100,000, 120,000 and 192,000 (along with the other numbers they cite, which are all divisors of those).

    15. Re:Wow, what a terrible summary by Muros · · Score: 1

      Except it is. You messed up.

      705600000 / NTSC_FREQ_EXACT is integral.

      It's exactly 11771760.

      Hint: x / (a / b) = x / a * b. NOT x / a / b.

      Actually it is x * b / a

    16. Re: Wow, what a terrible summary by Entrope · · Score: 1

      In this case, reading the intro page without careful double-checking would be a bad idea. The "Basics" section of the project's README.md makes two simply wrong claims in three short paragraphs: that a "flick" is the smallest unit of time larger than a nanosecond that can represent 1/24000 s, ..., 1/120000 s as integers (there are many time units between a nanosecond and a flick that evenly divide all of those durations); and that NTSC times are inherently inexact (NTSC frame durations can be exactly represented with flicks).

      The number they chose is relatively easy to explain and defend, but the README.md does a bad job of that. The denominator is the least common multiple of 44100, 90000, 100000, 120000 and 192000. I have no idea why they want to exactly represent thousandths of a video frame's duration, but if you take that as important, your clock must run at some multiple of 705.6 MHz.

  5. I gotta say... by GerryGilmore · · Score: 1

    ...(not knowing a helluva lot, but enough) that this does seem like a pretty innovative thing. Anytime you can shift the perspective of thinking, whether it ends up working or not, is always a Good Thing(TM).

    1. Re:I gotta say... by Actually,+I+do+RTFA · · Score: 1

      It's a pretty common thing I've frequently seen in the past. The difference is normally it's only done between two framerates. This seems like its being done between many more.

      --
      Your ad here. Ask me how!
  6. this is dumb, and gay by Anonymous Coward · · Score: 1

    Pretty much what I expect out of idiot millenials

    1. Re:this is dumb, and gay by Rosco+P.+Coltrane · · Score: 1

      It's not stupid, it's practical. Like the historical kilobyte, equivalent to 1024 bytes: it's nonstandard, but it gives a good idea of "something close to 1000 bytes" that's easy to work with in powers of two.

      --
      "A door is what a dog is perpetually on the wrong side of" - Ogden Nash
    2. Re:this is dumb, and gay by Nutria · · Score: 1

      It's practical, but it sure the hell isn't "the the smallest time unit which is LARGER than a nanosecond".

      (The smallest "1 over" time unit larger than a ns would be 1/999,999,999.)

      --
      "I don't know, therefore Aliens" Wafflebox1
  7. Portmanteau of "Frame-tick"? by jenningsthecat · · Score: 2

    Shouldn't that be "frick"? Nah, I guess that would be too confusing...

    --
    'The Economy' is a giant Ponzi scheme whose most pitiable suckers are the youngest among us and the yet-unborn.
    1. Re:Portmanteau of "Frame-tick"? by Entrope · · Score: 1, Funny

      There would be way too many opportunities to complain about Facebook and/or Oculus being fricking stupid.

    2. Re:Portmanteau of "Frame-tick"? by dohzer · · Score: 1

      We should hit the "thumbs-down" button on this concep... oh wait there isn't one. #democracy

  8. New GPU/Video Hardware clocking rate? by mykepredko · · Score: 1

    I'm a little surprised that this came from FB and not Google/YouTube but I can definitely see its value.

    Does it make sense to clock hardware and GPUs at this rate? A 3GHz GPU would run at 2,822,400,000 Hz and would synchronize to any video (incoming or outgoing) refresh rate allowing for no missed pixels, pixels that are sampled at transitions or maybe some FLICKer.

    Depending on the application, media and its refresh rate, this may not offer a lot of tangible advantages. For instance, in gaming, I don't see a lot of advantages with basing the clock speed on the Flick.

  9. graphics driver developer here by Anonymous Coward · · Score: 2

    I measure frames in clocks. A frame is always an integer number of clocks.

    If you want to deal with just refresh rates, the LCM of 144, 120, 100, 90, 60, 50, 48, 30, 25, 24 is 3600.

    If you want to deal with lines for common video modes (480, 720, 768, 1080, 1200, 1440, 2160) at those frequencies. LCM = 207360000

    $ for a in 480 720 768 1080 1200 1440 2160 ; do for b in 144 120 100 90 60 50 48 30 25 24 ; do echo $[$a*$b] ; done ; done | sort | uniq | tr '\n' ' ' ; echo
    103680 108000 110592 11520 12000 120000 129600 14400 144000 155520 17280 172800 18000 18432 19200 194400 207360 21600 216000 23040 24000 25920 259200 27000 28800 30000 311040 32400 34560 36000 36864 38400 43200 46080 48000 51840 54000 57600 60000 64800 69120 72000 76800 86400 92160 97200

    plugging all that into lcm.c and I got 207360000. Which is substantially lower than 705600000, and has some factors not present. (705600000/207360000. is
    3.402778)

  10. Storage in integer is precise while floats are not by George_Ou · · Score: 1

    If you have to use floating point values to store a number, it has inaccuracy. For example a simple penny counter algorithm that needs to break out of a loop when pennies remaining is less than 1 will misbehave when you're trying to check if .01 .011 if you stored .01 as a float. It will actually store 0.01 as 0.0999999999995 or something and that will cause the loop logic to fail. If you store in whole integers of pennies, you won't have this problem. So this concept of using Flicks allows you to use precise integers to describe frame rate instead of some funky float value that is imprecise.

  11. Portmanteaus? by fahrbot-bot · · Score: 1, Redundant

    The name (flick) itself is a portmanteau of the phase "frame-tick," ...

    No it isn't as there's no "l" (ell) in either word.

    Apparently, they rejected the following (from :Portmanteaur):

    • frame tick: frack, frick, frameck, framick, framck, frtick, framtick, frak, framek, fick, fraick, ftick, fratick, framk
    • tick frame: time, tame, ticme, trame, tme, tie, tice

    and "steve".

    Personally, I would have chosen one of: frack, frak, frick, or time - but not sage or rosemary.

    --
    It must have been something you assimilated. . . .
    1. Re:Portmanteaus? by Beeftopia · · Score: 2

      Smallest unit of time required for video. A quantum of video. A video quantum. A viq.

  12. Wrong by dohzer · · Score: 1, Redundant

    The name itself is a portmanteau of the phase "frame-tick," which is also why you might want to use them.

    No it's not! It's a word chosen to sound cool and look *roughly* like those words smooshed together, but where did the 'L' come from?
    It's an engineered one. The portmanteau equivalent of a backronym.

    Also, I don't want to use them, even if they do change the name to "Frick".
    But thanks for asking.

  13. Wibbly-wobbly timey-wimey... stuff by ChunderDownunder · · Score: 2

    Did Zuckerberg just invent time travel?

  14. Stupid title by scatbomb · · Score: 4, Interesting

    Facebook did not "invent" a unit of time. They defined a non-standard unit of time based on the already existent S.I. system.

    1. Re:Stupid title by thegarbz · · Score: 1

      Are you splitting hairs between "invent" and "defined something that didn't exist prior" on something intangible? It's not just the title of this article that is stupid...

    2. Re:Stupid title by dunkelfalke · · Score: 1

      So when you develop software, do you invent variables or do you declare them?

      --
      "It's such a fine line between stupid and clever" -- David St. Hubbins, Spinal Tap
    3. Re:Stupid title by thegarbz · · Score: 1

      Declare them obviously. Unless it is you declare the variable of a type that never existed before, in that case you invent them.

  15. The start of the downfall of a company... by QuietLagoon · · Score: 4, Insightful

    ... when they think they are so self-important that they invent new measurement units.

    1. Re:The start of the downfall of a company... by Anonymous Coward · · Score: 1

      You have been banned from Facebook for 2,540,160.00016257 flicks for going over your Fakenewspoints threshold with this comment

    2. Re:The start of the downfall of a company... by Zontar+The+Mindless · · Score: 1
      --
      Il n'y a pas de Planet B.
  16. Can they use it to not show me shit by Kellamity · · Score: 1

    that someone posted 5 days ago, just becuase some dumbarse 'liked' it today?

  17. The Flick is already a unit by Anonymous Coward · · Score: 5, Informative

    Guess they didn't care that the Flick was already a unit of measurement used in radiometry?

    1 Flick = 1 Watt per steradian cm^2 micron.

    1. Re:The Flick is already a unit by magusxxx · · Score: 1

      For decades a 'Flick' was one page of a flip book. So if you wanted to have so many pages per second you counted the number of Flicks.

      --
      Care killed the cat, but satisfaction brought it back.
  18. What about... by viperidaenz · · Score: 4, Insightful

    23.976Hz or 29.97Hz?

    They're both industry standard frame rates.

    1. Re:What about... by sexconker · · Score: 2

      23.976Hz or 29.97Hz?

      They're both industry standard frame rates.

      I think you mean 24000/1001 and 30000/1001.
      Of course, you'll also have to handle 23.976 and 29.97 and (multiples thereof) since so much has been built around those approximations.

    2. Re:What about... by Zontar+The+Mindless · · Score: 3, Funny

      We should create a new standard that covers 23.976, 29.97, and Flicks.

      TFTFY. :-)

      --
      Il n'y a pas de Planet B.
    3. Re:What about... by Anonymous Coward · · Score: 1

      Yes, it's pretty obvious this is the work of people who have never worked with video seriously. Drop frame rates are common and you aren't going to get rid of them.

      Further, since your video isn't playing on a real time system, you need to accumulate errors anyway to compensate for jitter on the hardware. While accumulating the errors, you can also compensate for the rounding errors of the frame rates. It isn't that difficult.

  19. Ignores the most common framerates. by Anonymous Coward · · Score: 2, Informative

    Based on feedback from Simon Eves, who pointed out that the NTSC variations are all actually approximations of 24 * 1000/1001, and 30 * 1000/1001, I dropped support for those variations.

    A unit that claims to make measuring video frame time easier and then goes on to ignore the most common framerates?

    1. Re:Ignores the most common framerates. by Anonymous Coward · · Score: 1

      The summary just left those out. And by the way, this is nothing new. The video encoding industry has been doing this sort of thing for a long time. MPEG's timestamps are scaled this way, allowing for even divisibility of all common frame rates.

      705600000 also divides the following frame rates evenly:
          960/1.001: 735735 flicks per frame
          480/1.001: 1471470 flicks per frame
          240/1.001: 2942940 flicks per frame
          192/1.001: 3678675 flicks per frame
          120/1.001: 5885880 flicks per frame
          96/1.001: 7357350 flicks per frame
          60/1.001: 11771760 flicks per frame
          48/1.001: 14714700 flicks per frame
          30/1.001: 23543520 flicks per frame
          24/1.001: 29429400 flicks per frame

      And audio sample rates:
          192 kHz: 3675 flicks per sample
          176.4 kHz: 4000 flicks per sample
          96 kHz: 7350 flicks per sample
          88.2 kHz: 8000 flicks per sample
          48 kHz: 14700 flicks per sample
          44.1 kHz: 16000 flicks per sample

    2. Re:Ignores the most common framerates. by herbierobinson · · Score: 1

      Somebody actually looks up the standard and gets it right. Who would do that on Slashdot :-)? 1001 can actually be factored (13 * 11 * 7) and the factors combined with other ratios to get a common tick rate that is about what they came up with (caveat, I did not check if they did the math right). I did this about 15 years ago and reported a bug to Apple that they should use that magic number in quicktime (or more precisely, document that was the appropriate magic number to use, because Quicktime already had the appropriate timekeeping to handle it).

      --
      An engineer who ran for Congress. http://herbrobinson.us
  20. Comment removed by account_deleted · · Score: 1

    Comment removed based on user account deletion

  21. History by Anonymous Coward · · Score: 1

    ... the phase "frame-tick" ...

    Until a hardware vendor starts talking in flicks and designing circuits to match, this is meaningless.

    The French, when inventing the metric system, created a decimal circle, calendar, clock: The clock and calendar soon disappeared. People talk about decimal circles (Gradians) but no-one uses them.

    There was Swatch Internet Time (1 beat = 86.4 seconds, 1 Kbeat = 1 day) but nobody else measured time with it, so it's dead.

  22. They are lying by Anonymous Coward · · Score: 1

    A femto-fortnight is larger than a nanosecond and less than the flick. It is 1.2096 ns.

  23. In other news... by steak · · Score: 1

    Pickles the kitten learned an important lesson today, find out what after the break.

  24. Re: Why does BeauHD keep posting fake news? by Anonymous Coward · · Score: 1

    Nonsense.
     
    We already have two terms, frequency and period. Period is the time interval of one cycle at a given frequency. The refresh period for a display with a refresh rate of 60 Hz is a little over 16 ms.
     
    Period is the reciprocal (not inverse) of time. Time is the reciprocal of period.
     
    This is nothing more than a news anchor standing on the streets live on camera with a Facebook walking behind waving and making faces like a spoiled 14-year-old brat until someone clocks him in the face. BeauHD can relate and thus posted this "story."

  25. Least Common Multiple of Silliness by richardtallent · · Score: 1

    Dammit, I'm still trying to get used to Swatch "beat time"...

  26. Not a portmanteau by Khyber · · Score: 1

    There is no fucking "L" in either of the originating words.

    Basic English fail. Get this shit off Slashdot.

    --
    Still waiting on Serviscope_minor to wake up to fucking reality and realize that Jessica Price isn't going to fuck him.
  27. Time it takes light to travel 42 centimeters by goombah99 · · Score: 2

    Light travels about 42 cm in one flick.

    --
    Some drink at the fountain of knowledge. Others just gargle.
    1. Re:Time it takes light to travel 42 centimeters by Anonymous Coward · · Score: 2, Funny

      42 is the answer to everything. There you go.

    2. Re:Time it takes light to travel 42 centimeters by Pseudonym · · Score: 1
      --
      sub f{($f)=@_;print"$f(q{$f});";}f(q{sub f{($f)=@_;print"$f(q{$f});";}f});
    3. Re:Time it takes light to travel 42 centimeters by houghi · · Score: 1

      So the answer was correct all this time, without needing to go to base 13.

      --
      Don't fight for your country, if your country does not fight for you.
  28. Meaning of Flick by dcw3 · · Score: 1

    Flick is what I do with my middle finger. In this case, in the direction of Facebooks claim to having invented a unit of time.

    --
    Just another day in Paradise
  29. ha, fucking malamanteau by Maritz · · Score: 1

    Portmanteau? Frame Tick = Flick? Uh, no. Where the fuck is the L coming in from?

    Facebook are welcome to their stupid, ad-hoc names for subdivisions of seconds. The unit of time is a second, and facebook won't ever change that.

    --
    I do not want your cheap brainburning drugs. They are useless for work. And I am a working man today.
    1. Re:ha, fucking malamanteau by SuiteSisterMary · · Score: 1

      It's a reference to an old slang term for movies being 'flicks,' I'd assume, coupled with a 'Puck Man becomes Pac Man' style desire to not use the word 'frick'.

      --
      Vintage computer games and RPG books available. Email me if you're interested.
  30. Re: Why does BeauHD keep posting fake news? by kantos · · Score: 1

    Three if you want to make this more fun they forgot about shakes that already existed from nuclear physics.

    --
    Any and all content posted above may be ignored, considered irrelevant, or otherwise dismissed.
  31. It is a solution by DaveV1.0 · · Score: 1

    In search of a problem

    --
    There is no "-1 offended" or "-1 you don't agree with me" mod options for a reason.
  32. That's not a portmanteau... by wardrich86 · · Score: 1

    The name itself is a portmanteau of the phase "frame-tick,"

    That would be "Frick" or Frack" There is no "L" in either "Frame" or "Tick".

  33. Google invents Lowest Common Multiple! by dnwheeler · · Score: 1

    It is very common when writing code that needs to support multiple units, whether it be various framerates, metric vs. imperial measurements, dpi settings, etc. that the units be stored as an integral LCM of the various units. This allows easy conversion back and forth without rounding errors. There's nothing new here, just their selection of framerates, which doesn't even include the ubiquitous xxx/1001 rates.

  34. Yeah... by MerlTurkin · · Score: 1

    it's called "Waste of".

  35. GODDAMMIT FACEBOOK! by Thud457 · · Score: 1

    It's pronounced J IFFY like the peanut butter, not Giffy like, uh, the baseball player.

    --

    the preceding comment is my own and in no way reflects the opinion of the Joint Chiefs of Staff

  36. Pathetic by Shogun37 · · Score: 1

    Facebook is starting to remind me of a ninety year old bikini model, trying to show the world she's still sexy. She might look good for her age, but she'll never be confused with an eighteen year old. Add in eighty years of hard drinking, and you're almost at the average facetard.

  37. Summary doesn't understand precision by jwdb · · Score: 1

    but the most exact timing possible in C++ is nanoseconds

    Of course you can get more precise than a nanosecond in C++ (as well as in any other turing-complete language). Double precision is roughly down to 10^-16, so a 1-second video could be processed with a precision of femtoseconds. Storing time as a fixed point value in a long long would get you 19 digits of precision, so you could do femtoseconds for an hour-long video. If that's not good enough, grab an arbitrary precision math library and store it down to the yoctosecond or smaller. Hell, if you really wanted to you could implement this new "unit" of time in C++ using either of these techniques and get exact precision for most common frame rates.

    Finding the common multiple (of frame rate, equivalent to common divisor of the frame period) of all of these different frame rates (including the slightly-off ones like 23.9, etc...) is clever. Calling it a new unit is hyperbole, although it is convenient for wide adoption to have a name for the common multiple. Saying it's important because you *can't* do higher precision in C++ is laughable, and whomever said that should be ridiculed.

  38. The new time by ebvwfbw · · Score: 1

    Same as the old time. Only we think we get to say we invented something.
    Hey, stupid people might believe it.

  39. Re:Laughed so hard I dropped my coffee; thx Bookfa by ebvwfbw · · Score: 1

    Patent to follow... Now they can sue us all for using the same time we've always used.

  40. Back in the Day... by Doctrinsograce · · Score: 1

    Back in the 80's, if memory serves, Digital Equipment Corporation used something called a "klunk" which was 100 nanoseconds. I see that the word means something entirely different today.

  41. ugh by SamFooter · · Score: 1

    Oh, great, now eery casual who thinks he's savvy will scream about a revolution while I, a layman myself for the most part, can't think of a single practical use for this flick bull. https://droidinformer.org/Stor... Damn the hype and the Internet, they make everything stupid.