February 21, 2018, 10:41:08 PM

Author Topic: I'm making a 4:4:4/4:2:2 16/14/12/10-bit codec for Canon DSLR's  (Read 12293 times)

jolyonralph

  • EOS 7D Mark II
  • *****
  • Posts: 487
    • Every Other Shot
Re: I'm making a 4:4:4/4:2:2 16/14/12/10-bit codec for Canon DSLR's
« Reply #45 on: January 17, 2018, 09:08:15 AM »
I had to convert the ENTIRE MP4-spec codec to the Pascal programming language so I could make it READABLE for me ...

 :o

I had to laugh at this too.

There's only one reason to learn Pascal programming, and that is to teach other people Pascal.
Jolyon Ralph

Cameras: 5DSR, A7RII, 5D III, EOS M6/M5/M3, Mavic Pro, DXO One.  Oh, and more lenses than I care to count.

canon rumors FORUM

Re: I'm making a 4:4:4/4:2:2 16/14/12/10-bit codec for Canon DSLR's
« Reply #45 on: January 17, 2018, 09:08:15 AM »

Orangutan

  • EOS-1D X Mark II
  • *******
  • Posts: 1982
Re: I'm making a 4:4:4/4:2:2 16/14/12/10-bit codec for Canon DSLR's
« Reply #46 on: January 17, 2018, 09:21:16 AM »
I had to convert the ENTIRE MP4-spec codec to the Pascal programming language so I could make it READABLE for me ...

 :o
There's only one reason to learn Pascal programming, and that is to teach other people Pascal.

No, it's also an excellent stepping-stone to Delphi programming.   ;D :P

mb66energy

  • EOS 5DS R
  • ******
  • Posts: 851
    • My Homepage
Re: I'm making a 4:4:4/4:2:2 16/14/12/10-bit codec for Canon DSLR's
« Reply #47 on: January 17, 2018, 09:52:33 AM »
Be careful now, with all this cynicism he'll withdraw his offer, that'd teach you.  ::)

Exactly my thought. If I see all the cynism which is spread out over the ops post he could say: See, you do not deserve this!

I have learned that there are people who can do the same job in programming 100times faster than me. I am glad that I can do some programming for "advanced home use" and people are astonished about my capabilities in the programming section (which is funny for me).
Most used tools: EOS 200D + EF-S 60mm + 4.0 / 70-200 IS AND/OR EOS 5D i  + 4.0 70-200 IS + 2.8 100 Macro

Don Haines

  • Canon EF 600mm f/4L IS II
  • **********
  • Posts: 6542
  • posting cat pictures on the internet since 1986
Re: I'm making a 4:4:4/4:2:2 16/14/12/10-bit codec for Canon DSLR's
« Reply #48 on: January 17, 2018, 10:51:56 AM »
I had to convert the ENTIRE MP4-spec codec to the Pascal programming language so I could make it READABLE for me ...

 :o

And this is how you know that it isn't real..... A decent programmer would have converted it to COBOL......
The best camera is the one in your hands

Mariandvd

  • PowerShot G7 X Mark II
  • **
  • Posts: 6
Re: I'm making a 4:4:4/4:2:2 16/14/12/10-bit codec for Canon DSLR's
« Reply #49 on: January 18, 2018, 04:14:57 AM »
I am wondering what is the status on this project? I know it takes time but I will settle with a response right now.

scyrene

  • EOS-1D X Mark II
  • *******
  • Posts: 1937
    • My Flickr feed
Re: I'm making a 4:4:4/4:2:2 16/14/12/10-bit codec for Canon DSLR's
« Reply #50 on: January 18, 2018, 10:34:41 AM »
I am wondering what is the status on this project? I know it takes time but I will settle with a response right now.

Its status is as imaginary and impossible as it was when first posted.
Current equipment: 5Ds, 5D mark III, 50D, 24-105L, MP-E, 100L macro, 500L IS II; 1.4xIII + 2x III extenders; 600EX-RT.
Former equipment includes: 300D; EOS-M, EF-M 18-55, Samyang 14mm f/2.8, EF 35 f/2 IS, 70-200L f/4 non-IS and f/2.8L IS II, 85L II, Sigma 180 macro, 200L 2.8, 400L 5.6

stevelee

  • EOS 6D Mark II
  • *****
  • Posts: 333
Re: I'm making a 4:4:4/4:2:2 16/14/12/10-bit codec for Canon DSLR's
« Reply #51 on: January 18, 2018, 10:53:53 AM »

I had to laugh at this too.

There's only one reason to learn Pascal programming, and that is to teach other people Pascal.

The great thing about learning Pascal is that if you take up C next, you feel let out of a cage.

canon rumors FORUM

Re: I'm making a 4:4:4/4:2:2 16/14/12/10-bit codec for Canon DSLR's
« Reply #51 on: January 18, 2018, 10:53:53 AM »

tron

  • Canon EF 400mm f/2.8L IS II
  • *********
  • Posts: 3336
Re: I'm making a 4:4:4/4:2:2 16/14/12/10-bit codec for Canon DSLR's
« Reply #52 on: January 18, 2018, 12:59:47 PM »
I am wondering what is the status on this project? I know it takes time but I will settle with a response right now.

Its status is as imaginary and impossible as it was when first posted.
+1 Talk is cheap (in fact it's free) so anyone can claim anything  ::)
« Last Edit: January 18, 2018, 06:14:48 PM by tron »

LDS

  • EOS 5DS R
  • ******
  • Posts: 1160
Re: I'm making a 4:4:4/4:2:2 16/14/12/10-bit codec for Canon DSLR's
« Reply #53 on: January 18, 2018, 01:05:58 PM »
I had to convert the ENTIRE MP4-spec codec to the Pascal programming language so I could make it READABLE for me ...

 :o

I had to laugh at this too.

There's only one reason to learn Pascal programming, and that is to teach other people Pascal.

Do you know the first version of PhotoShop was written in Pascal?

zim

  • EOS-1D X Mark II
  • *******
  • Posts: 1624
Re: I'm making a 4:4:4/4:2:2 16/14/12/10-bit codec for Canon DSLR's
« Reply #54 on: January 18, 2018, 03:30:39 PM »
and the wonderful thing is this bit of history is free to download and dig around in

www.computerhistory.org/atchm/adobe-photoshop-source-code/


HarryFilm

  • EOS Rebel SL2
  • ***
  • Posts: 79
Re: I'm making a 4:4:4/4:2:2 16/14/12/10-bit codec for Canon DSLR's
« Reply #55 on: January 19, 2018, 05:52:45 PM »
"And this is how you know that it isn't real..... A decent programmer would have converted it to COBOL......"

===

As the OP, I actually DO know Cobol, IBM JCL and the VAX VMS command languages so just having THOSE on my resume should tell you how long I've been doing this!

And on a technical basis, I like using BOTH Lazarus Pascal AND Delphi Pascal which are fully object-oriented and they both FORCE you to write good (readable!) code. I could write in C++ or pure assembler too BUT that would make my code unreadable for almost everyone! I could do this C++ or Basic or even Python but for now it's a platform independent language.

CURRENT STATUS OF PROJECT:

The codec itself is DONE and because of MPEG-LA group licencing issues, I've had to make some modifications to NOT use any patents and algorithms used in the MPEG-4 or H.265 specification. The USA is getting especially NASTY on the legal front regarding enforcement of software patents --- Soooooo, the container format and algorithms I actually use are TRULY and FULLY open source and NOT subject to ANY USA or European video encoding patents and WILL be readable by Adobe Original and CC products, Windows AVI-format compatible systems, BM Resolve, and hopefully soon after Apple FCP.

Output Video Quality-wise, I have done EXTENSIVE image quality analysis(i.e. using hardware-based video signals DSP and analysis) to ensure that while the algorithm itself is NOT MP4/H264/H265/HVEC, it's final image quality WILL be nearly identical and at higher bitrates BETTER! It supports Short and Long GOP, I-frame-only, full 4:4:4 RAW and 3:1 and 6:1 RAW encoding.

An installable Direct-X/Windows Media codec for Windows is the first thing I will be releasing in the next three weeks and the 7Dmk2 version soon after. This allows you to DIRECTLY read (import) AND write (export) my 4:4:4:4, 4:2:2, 4:2:0, 4:1:1 color format pixels at 4, 6, 8, 10, 12, 14 and 16-bits per colour channel (RGBA or YCbCrA formats) and one-bit Black/white and 2, 4, 8, 10, 12, 14 and 16-bit Greyscale pixels. These more esoteric colour formats I included for you scientific personnel who need such formats.

Frame rates are user selectable for North America and Europe/Asia so you get hard coded integer frames per second rates 1, 2, 3, 4, 5, 10, 15, 20, 24, 25, 30, 48, 50, 60, 72, 100, 120, 240, 300, 480, 500, 1000, 2000 fps and fractional pro-level 23.976, 29.97, 59.94, 119.88, etc. I put this in there for EXPORT and IMPORT so as my codec gets added to more hardware, the frame rates supported will be essentially unlimited.

There is also a user-selectable CUSTOM frame rate selector which ALLOWS ANY frame rate up to quadrillions of fps (i.e. 32 or 64-bit floating point number depending upon system) for those of you in the scientific community who need such high frame rates.

For those of you in Astrophotography and time-lapse projects, there is built-in support for user definable frames per minute, per hour, per day, per week, per month and per year!

It ALSO supports VARIABLE frame sizes and VARIABLE FRAME RATES on output so this means the codec can output multiple versions of the output/compressed video to multiple files.

Example: Output a 4k DCI 4096x2160 video at 59.94 fps, a 1920x1080p 59.94 fps and a 960x540 24 fps file for web use AT THE SAME TIME. There are frame size presets for export and import of 80x60, 160x120, 320x240, 360x240, 480x270 for ultra-high frame rates at 300+ fps and 640x480, NTSC 720x480, PAL/SECAM 720x540, 852x480, 960x540, DCI 2048x1080, 1920x1080, 3840x2160, 4096x2160, 7680x4320, 8192x4320 and even 16k pixel frame size formats at hardware-checked frame rates!

Custom frame sizes of ANY SIZE are available for BOTH crop-sensor sampling (i.e. take from middle of sensor) and the sample frames can also be downsampled or supersampled from the sensor depending upon available camera's CPU horsepower. Resize algorithms are user-selectable, Bilinear, Bicubic, Lanczos3 and Lanczos-5 for BEST image quality and you can ADD an UNSHARP MASK after downsampling or upsampling on import and on output to a file!

In-codec Zebra-stripes, selectable 75 to 100% IRE luma peaking in 1% increments, black-level 0.0%, 7.5% to 20% luma dipping indicators will show your video levels as you record. There is a histrogram and RGB parade display for other monitoring. All Output to file(s) is usually CLEAN from those monitoring and any metadata overlays unless you select otherwise.

AND finally, there is BUILT-IN support for advanced Lens information, Date, Clock Time, Time Code, Scene Number, Shot Number, Frame Number, GPS location, 3D-XYZ Depth map and user-defined text-based metadata saved for EVERY FRAME or saved on a user-defined every Nth frame basis. Metadata can be exported to XML or CSV MS Excel Spreadsheet formats or BOTH at the same time. AND for the kicker, the Metadata can be STREAMED live out the USB port OR via wifi (if equipped!) or via the Ethernet port of the higher end cameras AND be saved into the output files ALL AT THE SAME TIME during recording OR playback on metadata tracks separate from the video tracks OR actually have them BURNED into the video!

Sound is high-end features with 4 khz to 192 khz up to 10 Mhz selectable sample rate at 8, 16, 20, 24 and 32-bits audio sampling and supports from one to 256 tracks of audio! (i wanted PRO-LEVEL audio features!)

Of course the higher-end the camera you have, the MORE of these features will auto-activate. For higher frame sizes, you may have to live with 24fps rather than 60 fps. For multiple file outputs at the same time, you may have to buy FASTER storage cards...the system will TELL YOU what your camera can support based upon auto-calculated CPU speed and bandwidth measurements.

I DO TAKE INTO ACCOUNT the "Thermal Budget" of the Canon (or other brand!) cameras so I do a hardware/memory card check first before I activate specific features. I do however, allow the end-user to OVERRIDE what I suggest!

It will be THEIR responsibility warranty-wise and on a LEGAL basis because my open source licence will SPECIFICALLY mention the possible or even LIKELY risk of your camera catching on fire or literally exploding -- i.e. batteries or motherboards overheating/exploding due to software usage!) and ME NOT being responsible because use of the new software on yours or other cameras is "FULLY AT YOUR OWN RISK OF INJURY/DEATH TO LIFE AND LIMB"! No claims of fitness will be made and no warrantees will be expressed or implied! If you use it then Too Bad! So Sad! It will be Your LEGAL and HEALTH Problems and Issues to deal with if you use the software! NOT MINE!

Hooking into the Canon BIOS of course has been an ABSOLUTE ROYAL bachoooeeey of thankless programming frustration BUT I am testing a Canon 7D Mark2 as my initial test bed so I don't accidentally BRICK our $6000+ Canon 1Dc's or $40,000+ (30 000 Euros) C700!

The 7Dmk2 is first, then the 6D series, then 5D Mk2/Mk3/Mk4, the 1DX mk1/mk2
and THEN the C100 mk1/mk2, C200, C300 mk1/mk2, C500 and C700 cameras.
I  ==POSSIBLY== might be able to port codec to the Olympus, Pentax,
Sony a7/a9 series and anything ELSE that has an ARM-based CPU chip in it!

So far so good, will know how the 7Dmk2 holds up by later next week!
We shall see! I will release the Windows Direct-X/WinMedia codec within three weeks!

WISH ME LUCK on getting the Canon Camera BIOS hook-in correct!
« Last Edit: January 19, 2018, 07:53:40 PM by HarryFilm »

HarryFilm

  • EOS Rebel SL2
  • ***
  • Posts: 79
Re: I'm making a 4:4:4/4:2:2 16/14/12/10-bit codec for Canon DSLR's
« Reply #56 on: January 19, 2018, 07:31:54 PM »
POST FROM: ExodistPhotography

LOL the OP has likely never taken computer programming or know anything about the hardware in a camera. You can not make hardware do something with software that it was not built to do. It would be like trying to dig a hole in the ground with a pogo stick..

OP ANSWER: I’ve been doing this video programming since the 1980’s AND with much experience real-time, mission-critical aerospace systems so I think I just might be able to allay your doubts.

===

POST FROM: LDS

Also, often you can't push hardware to its limits (and beyond) because you just shorten its life. Canon knows it has to honor its warranty (and in some countries it may be a longer time than in US), and anyway devices that stop working in two-three years, as soon as the warranty expires, are never a good publicity - some may replace the devices earlier, but many don't. And even so, the value of used devices which have a good chance to break very soon would be quite low.

Some users may accept the risk - but most won't.

MY ANSWER: You can push hardware to WHATEVER LIMITS you want! It’s just a mere matter of money! We literally have a ton of Canon cameras from Powershots to 7D’s to 1D’s to C300's to C700’s. I’m not worried about the warranty since its OUR systems we can brick. I can just reload a BIOS anyways by doing a direct pin-based connection and forced upload or just de-soldering the chip and putting in another BIOS chip! It's not like we haven’t done this before! AND ABSOLUTELY YES! we can run right on the Digic chip motherboard itself which I take out of the camera and put it onto a test bench and upload the BIOS!

===

POST FROM: unfocused

Mr. Film, if you are still reading, does this mean your business or the business you work for actually owns or stocks every current model of Canon DSLRs and Canon EOS Cinema cameras? Or, does that mean that your business can order any Canon DSLR or Canon EOS Cinema camera?

And, how does your business feel about you experimenting on their costly inventory?

Can you enlighten us as to what this mystery business is? I'm not sure that even Lens Rentals, B&H or Adorama has every single model of Canon DSLR and Cinema EOS Cinema camera. And, I doubt that they would allow anyone to start mucking around with the firmware even if they did.

Were he not preoccupied with the Zombie Apocalypse I might suspect that your real name might be Eugene.

MY ANSWER: YUP we literally HAVE MANY Canon Cameras from three decades ago to NOW! Low-end consumer to high-end Broadcast/Cinema and Sony F55/F65’s and Arri Alexa’s and multiple Reds and Panasonic and multiple OTHER professional and consumer-level brands AND all that ridiculously expensive glass that goes along with those cameras!

AND I can just put in a requisition/PO and get whatever I want WHEN I WANT with a simple sign-off from the head honchos! (I should note I do have to get PERMISSION to put in new bioses or desolder chips, but since we tear apart 1D’s regularly that is NOT usually an issue!) And we have ALREADY modified our systems to such an extent that warranties are IRRELEVANT! We literally BLOW UP $10,000+ cameras to smithereens on a quite regular basis!

---

The final in-camera results I will try to make speak for themselves!

So how about a little patience and some WELL WISHES for me trying to hook into that beeeeeassshhhinnnly frustrating Canon BIOS ?!
« Last Edit: January 19, 2018, 07:55:13 PM by HarryFilm »

ethanz

  • EOS 6D Mark II
  • *****
  • Posts: 348
  • 1DX II
    • my website
Re: I'm making a 4:4:4/4:2:2 16/14/12/10-bit codec for Canon DSLR's
« Reply #57 on: January 19, 2018, 08:20:10 PM »
Here are some well wishes to you Harry.
1DX II, 16-35L f/4 IS, 24-70L f/2.8 II, 70-200L f/2.8 IS II, 200-400L f/4 IS w/1.4 EXT
http://ethanzentz.com/

canon rumors FORUM

Re: I'm making a 4:4:4/4:2:2 16/14/12/10-bit codec for Canon DSLR's
« Reply #57 on: January 19, 2018, 08:20:10 PM »

Spock

  • PowerShot G1 X II
  • ***
  • Posts: 35
Re: I'm making a 4:4:4/4:2:2 16/14/12/10-bit codec for Canon DSLR's
« Reply #58 on: January 19, 2018, 10:43:02 PM »
Holodeck! END PROGRAM!

neuroanatomist

  • CR GEEK
  • ************
  • Posts: 22204
Re: I'm making a 4:4:4/4:2:2 16/14/12/10-bit codec for Canon DSLR's
« Reply #59 on: January 20, 2018, 08:30:10 AM »
Hey Harry, where's that Canon medium format camera you said was coming REALLY SOON?  Where's the evidence on it that you promised you'd deliver in two weeks...back in last July?

Sorry, no well wishes for you...I generally don't wish liars and poseurs well.
EOS 1D X, EOS M6, lots of lenses
______________________________
Flickr | TDP Profile/Gear List

canon rumors FORUM

Re: I'm making a 4:4:4/4:2:2 16/14/12/10-bit codec for Canon DSLR's
« Reply #59 on: January 20, 2018, 08:30:10 AM »