Results 1 to 34 of 34

Thread: Video-Decompression with the VCM (ICM-Win32-API)

  1. #1

    Thread Starter
    PowerPoster
    Join Date
    Jun 2013
    Posts
    7,219

    Video-Decompression with the VCM (ICM-Win32-API)

    Just a small example, how to use the ICM-API (hosted in msvfw32.dll), to decode
    YUV-RawData-Blobs as they may come in from Web- or other Cam-Drivers...

    These APIs are still supported also on Win8/Win8.1 - and are wrapped here in a
    small Class (cICMDecode.cls).

    Two example-RawDataBlobs are contained in the Zip-File ...
    - one representing a 640x480 12Bit 4:2:0 Input (460800 Bytes)
    - the other a 640x480 16Bit 4:2:2 Input (614400 Bytes)

    Some Background-Infos about YUV-ColorSpaces and -Decoding can be found here:
    http://msdn.microsoft.com/en-us/libr...5%29.aspx#yv12
    http://msdn.microsoft.com/en-us/libr...=vs.85%29.aspx

    The Video-Compression-Manager-API is described here:
    http://msdn.microsoft.com/en-us/libr...=vs.85%29.aspx

    The Form-Code of the small Demo in the Zip depends on vbRichClient5 <removed>,
    but the cICMDecode.cls itself has no RC5-dependency - so if you have your own
    24Bit-RGB-DIB-Class-encapsulation at hand, you can adapt the Form-Code to your
    own destination-buffer-handling - and achieve the same results...

    <removed>


    Olaf
    Last edited by FunkyDexter; Aug 19th, 2014 at 09:17 AM.

  2. #2
    Frenzied Member
    Join Date
    Oct 2008
    Posts
    1,181

    Re: Video-Decompression with the VCM (ICM-Win32-API)

    @Schmidt I decided to test this out, so I created a rawRGB test image by converting a standard Windows7 sample image (Tulips.jpg) to rawRGB using Gimp (it can output raw image byte array with no header), then I took this file containing the rawRGB byte array used the Open command in VB6 on it and used it as input for the ICImageCompress image API call, using the I420 codec. Then I took the output from that (using the needed GlobalLock, GlobalUnlock, GlobalFree, and CopyMemory API calls in tricky ways to get the needed BitmapInfoHeader and separately the actual byte array) and fed it into ICImageDecompress, again using the I420 codec. I then took the output from that, loaded it into Gimp (which can also read raw RGB images) and saved the output as a PNG file (Tulips test.png), which I have uploaded here as an attachment (inside a zip file, to prevent this forum's image conversion software from forcing it to be converted to a JPG file, which could ruin the image glitch that I'm trying to show).

    The code is a bit messy, so I'm not posting it yet. Instead I'm posting the output image, hoping that visually you'll be able to tell what went wrong (maybe a common programmer's error that is well recognized by its visual signature in the resulting image). What you should notice is that there's a short line-segment of corrupted pixels in the upper-right corner of the first row of pixels.
    Attached Files Attached Files
    Last edited by Ben321; Aug 14th, 2014 at 12:01 PM.

  3. #3
    Frenzied Member
    Join Date
    Oct 2008
    Posts
    1,181

    Re: Video-Decompression with the VCM (ICM-Win32-API)

    @Schmidt How about also an IMCEncoding, as it is needed for the other half of my project.

    And how about adding both IMCEncoding and IMCDecoding as classes in the next released version your VbRichClient DLL file.
    Last edited by Ben321; Aug 14th, 2014 at 12:02 PM.

  4. #4
    Super Moderator FunkyDexter's Avatar
    Join Date
    Apr 2005
    Location
    An obscure body in the SK system. The inhabitants call it Earth
    Posts
    7,900

    Re: Video-Decompression with the VCM (ICM-Win32-API)

    The CodeBank Policy states that compiled dlls and dependencies are not allowed. This is partly to prevent the spread of viruses and partly to make sure that CodeBank submissions “stand up” on their own without reference to external resources that may become unavailable in the future.

    As such I’ve edited the OP as it depends on vbRichClient. I note from your comments that the ICMDecode class itself has no such dependency so an independent version of the code could be created. If so then I’d definitely encourage you to post that here.

    Regards
    FD
    The best argument against democracy is a five minute conversation with the average voter - Winston Churchill

    Hadoop actually sounds more like the way they greet each other in Yorkshire - Inferrd

  5. #5
    PowerPoster
    Join Date
    Aug 2010
    Location
    Canada
    Posts
    2,412

    Re: Video-Decompression with the VCM (ICM-Win32-API)

    Hi FunkyDexter - where in the VB6 Codebank policy is it mentioned that there can't be any dependencies? I've read this post and only see mention of compiled code inside attached ZIP files, and that the correct action taken would be to remove the compiled files and repost the ZIP file.

    I've read the following policy (sticky post from 2005):
    http://www.vbforums.com/showthread.p...ts-Please-Read

    Is there another policy post that we need to reference?

  6. #6

    Thread Starter
    PowerPoster
    Join Date
    Jun 2013
    Posts
    7,219

    Re: Video-Decompression with the VCM (ICM-Win32-API)

    Quote Originally Posted by FunkyDexter View Post
    The CodeBank Policy states that compiled dlls and dependencies are not allowed.
    ...and therefore I've posted only plain VB6-SourceFiles in my Zip.

    No VB6-App runs without dependencies (the most important one is the VB6-Runtime) -
    and I simply mentioned an additional dependency (vbRichClient5) which is necessary to
    run the project-files in my Demo-Zip.

    Quote Originally Posted by FunkyDexter View Post
    This is partly to prevent the spread of viruses ...
    As said - the Zip only contained Source-Files - but aside from that -
    also a plain Source-Zip could do damage on a given System, in case the author of
    a "Source-only-Demo" has "evil intentions" (because I'd think that nobody will check Demo-
    Sources in "full-review-mode" first, to find the potential existence of "format c:" or other possibly
    dangerous shell- or filesystem-calls... at least not, when the one who's the author of
    a certain Demo is a "known entity" and has earned some trust in the community.

    As for the vbRichClient5-dependencies - the framework-download-zip is regularly checked by
    me on VirusTotal.com - (which allows also http-Links to the Source-Blob you want to validate).


    Quote Originally Posted by FunkyDexter View Post
    ...and partly to make sure that CodeBank submissions “stand up” on their own without
    reference to external resources that may become unavailable in the future.
    You mean, things like:
    - ADO? (might become unavailable in the future - and was already broken by MS some time ago)
    - CommonControls? (might become unavailable in the future - and was already broken by MS some time ago)
    - MSHFlexGrid (was only contained in the Pro- and Enterprise-Versions of VB6 - totally unavailable to VB6-StdEdition-users)
    - and finally the VB6-Runtime? (might become unavailable in the future too)

    So, where does this start and where does it end?
    With that philosophy (Binary-dependencies being a KO-criterion) there'd be not much left of Codebank-Contributions.

    Quote Originally Posted by FunkyDexter View Post
    As such I’ve edited the OP as it depends on vbRichClient.
    As I already tried to explain - I don't see the logic behind that.

    The vbRichClient-Framework is available for free and my largest contribution to the VB6-community -
    there's neither a "try-out-period" involved, nor "asking for E-Mail-registering" on my site - it's just
    a lot of useful Classes for those who want to work a bit more efficiently in the areas it covers.

    Quote Originally Posted by FunkyDexter View Post
    I note from your comments that the ICMDecode class itself has no such dependency so an independent version of the code could be created.
    If so then I’d definitely encourage you to post that here.
    Asking me to do that, is quite similar to "editing all codebank-posts which contain a dependency
    to the MSHFlexGrid.ocx or the MSWinsock.ocx" (which are not available to everybody, whilst the vbRichClient is...) -
    and then encouraging the author(s), to write an alternative Grid-Control or an alternative Socket-
    COMponent from scratch.

    There's certain things, certain encapsulations you will use quite often - and therefore you write
    (and test!) them once - later to be used reliably behind a nice Class-Interface ... and a
    DIBSection-Class is one of those worthwhile encapsulations - there's quite a few of them
    downloadable as Source (some of them well- some of them badly implemented) - and
    there's also a few which are available in a compiled Binary only (as the one in the vbRichClient).

    As for "long-term-availability":

    The RichClient-Framework will work as long as COM is supported on MS-OSes.
    Nobody forbids redistribution (mirroring) from other VB-Sites - this option exists
    (in parallel to my site, vbRichClient.com) - and will remain available, even when
    "for some weird reason" vbRichClient.com (or myself) should go "out of scope"
    at some point in the future...

    Even when the Framework will not be maintained anymore (which is unlikely,
    because I distributed the Sources for the RC5 among a few VB6-developers I trust,
    some of them members of this forum) - it will still continue to work.

    E.g. MSWinsock.ocx (in its latest SP-version) is from 2009 (5 years older than
    vbRichClient5-Dll) - and it still works "as is".

    So there's not the slightest reason, that someone will not be able to run
    some RC5-dependent Demos in the future - it will work and be freely available
    as long as VB6-Apps keep working on future OSes.


    Olaf
    Last edited by Schmidt; Aug 20th, 2014 at 09:41 AM.

  7. #7
    PowerPoster
    Join Date
    Feb 2006
    Posts
    24,482

    Re: Video-Decompression with the VCM (ICM-Win32-API)

    You make a strong case that many (most?) worthwhile code sample submissions have some sort of dependency. And quite often some library that isn't part of Windows and did not ship as part of the VB6 development ecosystem.

    There are tons of examples of this here, and there almost have to be for the reasons you stated.

    However the original post didn't do that. Instead, not only the library involved was an off-site resource (just as one would expect) the code sample putting it to use was hosted off-site as well.

    At that point the thread was not a code submission but a "go see my web site for some code" advertisement.


    So perhaps all that really needs to happen is to post the example-of-use code here. Clearly the library would have to remain off-site with a link in order to comply with the other requirements about posting binaries.

    That would seem to bring it into line with the way most threads here are constructed.

  8. #8

    Thread Starter
    PowerPoster
    Join Date
    Jun 2013
    Posts
    7,219

    Re: Video-Decompression with the VCM (ICM-Win32-API)

    Quote Originally Posted by dilettante View Post
    You make a strong case that many (most?) worthwhile code sample submissions have some sort of dependency. And quite often some library that isn't part of Windows and did not ship as part of the VB6 development ecosystem.

    There are tons of examples of this here, and there almost have to be for the reasons you stated.
    Glad we agree so far.

    Quote Originally Posted by dilettante View Post
    However the original post didn't do that...
    ...the code sample putting it to use was hosted off-site ...
    You mean, the fact that I posted an URL to the Demo-Source as a *.zip is somehow "despicable"?

    There's lot's of zipped-up and uploaded VB-Source-Projects to be found in the Forum here - and
    not each and everyone of them hosted on the (quite small) User-Upload-Space of the VBF-site itself.

    Quote Originally Posted by dilettante View Post
    At that point the thread was not a code submission but a "go see my web site for some code" advertisement.
    Now, there's a petty thought... advertisement is usually done for "monetary gains" -
    but if you look at vbRichClient.com - there's no banners, no Google-Ads-scripts hidden in the page-source -
    nothing which tries to determine any "Click-Counts", no offering of: "you can buy my consulting-services",
    absolutely nothing to earn money with (and thus in need of advertising).

    Simply take it as what it is - just the private WebSpace of a trusted long-term-member of the VB-community,
    who BTW posts under his Real-Name: Olaf Schmidt ...
    (I just bring this because of the "trust"-part ... also might add that there's tens of thousands of posts of mine -
    most of them in the archived german and english UseNet-groups). I'm quite sure none of the tons
    of developers I helped over the last decades, will have any reasons to doubt my generosity -
    I truly do it out of altruism, as unlikely as that (apparently outlived concept) may sound in someones ears.

    Quote Originally Posted by dilettante View Post
    So perhaps all that really needs to happen is to post the example-of-use code here.
    Clearly the library would have to remain off-site with a link in order to comply with the other requirements about posting binaries.
    So, a Link to the Framework-libs is fine when somebody wants to download them from vbRichClient.com -
    but Links to "source-only"-Zip-archives on the same sites /Downloads/-Folder are not?

    What about links to (posting-embedded) Images (which were also removed)?

    There's tons of Image-Links posted (some from dubious sites) every day in the Chit-Chat-Forum -
    even Links to Videos I've seen posted in the Forum (and that although there were known attacks
    on the Browsers ImageLoading-routines per manipulated Picture-Content, and the reasons why
    Adobe is constantly patching its Flash-Plugin should be obvious too).

    Really - when looking at it with some common sense - the whole thing is just ridiculous.

    Olaf
    Last edited by Schmidt; Aug 19th, 2014 at 06:37 PM.

  9. #9
    Software Carpenter dee-u's Avatar
    Join Date
    Feb 2005
    Location
    Pinas
    Posts
    11,123

    Re: Video-Decompression with the VCM (ICM-Win32-API)

    I don't know where you placed the source code but since this is CodeBank it is expected that we deposit our codes here for others to withdraw. If it requires additional dlls to make it run then links to those dlls should be fine.
    Regards,


    As a gesture of gratitude please consider rating helpful posts. c",)

    Some stuffs: Mouse Hotkey | Compress file using SQL Server! | WPF - Rounded Combobox | WPF - Notify Icon and Balloon | NetVerser - a WPF chatting system

  10. #10

    Thread Starter
    PowerPoster
    Join Date
    Jun 2013
    Posts
    7,219

    Re: Video-Decompression with the VCM (ICM-Win32-API)

    Quote Originally Posted by dee-u View Post
    I don't know where you placed the source code but since this is CodeBank
    it is expected that we deposit our codes here for others to withdraw.
    And I thought I ensured "easy access" in a convenient manner for all readers:
    - by posting the Form-Code in Code-Tags for those who wanted a short overview of the Class-usage directly "on-site" (now removed)
    - by posting a Link to the Zip-Archive for convenient download of the entire Project-Source (now removed)
    - by posting an image-link to a ScreenShot (embedded in BBCOde img-Tags)

    As my Opener-Post currently stands, there's *nobody* who can actually profit from
    the work and thoughts I invested into this topic (to help others).

    What's done here currently is not exactly encouraging for those who want to spread
    a bit of their knowledge about VBClassic.

    Quote Originally Posted by dee-u View Post
    If it requires additional dlls to make it run then links to those dlls should be fine.
    And if those are fine (when linking to the /Downloads/-Folder of vbRichClient.com) -
    what exactly is wrong with Source-Zip-Download-Links (or Image-Links) to the exact
    same Folder on the very same site?

    As I wrote above - the original posting was quite convenient - I fail to see, how the new
    "censored version" of my article is in any way better, more secure or more "informational"
    for the interested VB-developer.

    Zip-Links to other sites are allowed in VBF-posts - Image-Links to other sites are allowed
    in VBF-postings too - why should this practice be handled any different in the Codebank-Forum?

    I see the VBF-Upload-Space only as an option - as an offer for those who have no own website yet,
    not as an "obligation".

    Olaf

  11. #11
    Software Carpenter dee-u's Avatar
    Join Date
    Feb 2005
    Location
    Pinas
    Posts
    11,123

    Re: Video-Decompression with the VCM (ICM-Win32-API)

    Quote Originally Posted by Schmidt View Post
    I see the VBF-Upload-Space only as an option - as an offer for those who have no own website yet,
    not as an "obligation".

    Olaf
    Well as you now know it is an obligation. ;-)
    Regards,


    As a gesture of gratitude please consider rating helpful posts. c",)

    Some stuffs: Mouse Hotkey | Compress file using SQL Server! | WPF - Rounded Combobox | WPF - Notify Icon and Balloon | NetVerser - a WPF chatting system

  12. #12

    Thread Starter
    PowerPoster
    Join Date
    Jun 2013
    Posts
    7,219

    Re: Video-Decompression with the VCM (ICM-Win32-API)

    Quote Originally Posted by dee-u View Post
    Well as you now know it is an obligation. ;-)
    Says who?
    And what *exactly* do I supposedly know by now?

    I mean, neither did FunkyDexter state clearly what's wrong with Demo-Source-Zip-Links to
    site-external WebServers, nor can I find any information about an "obligation" in the
    informal Sticky-Thread about what's allowed to be contained in VBF-Userspace-Uploads
    (the posting by Hack, which JPBro already posted a link to).

    There's only a lot of open and unanswered questions here so far - no clear (as in: "official")
    statements, with regards to what's allowed (or forbidden) here - and *why*.

    In Hacks posting I see only security-concerns expressed (perhaps those also go along with
    the usual concerns about the "responsibility-topic" of a sites owner in case of a potential lawsuit).

    When you offer downloadable content, which is 'directly hosted' on your own domains servers,
    then that's a stronger case - compared with "links posted by the site-users".

    So no - nothing is "known" currently...

    The only effect we see so far is, that VB-developers who stumble over this Codebank-posting
    in the next days, will gain exactly zero (in terms of knowledge, which I so far thought is the
    entire purpose of the VBForums-site) - or is there another reason, why you come here?

    Olaf
    Last edited by Schmidt; Aug 19th, 2014 at 07:55 PM.

  13. #13
    Software Carpenter dee-u's Avatar
    Join Date
    Feb 2005
    Location
    Pinas
    Posts
    11,123

    Re: Video-Decompression with the VCM (ICM-Win32-API)

    Quote Originally Posted by dilettante View Post
    So perhaps all that really needs to happen is to post the example-of-use code here. Clearly the library would have to remain off-site with a link in order to comply with the other requirements about posting binaries.

    That would seem to bring it into line with the way most threads here are constructed.
    Just stumbled on this VB.Net CodeBank submission: http://www.vbforums.com/showthread.p...everal-options

    The code is hosted off-site in MSDN, is this even similar with Olaf's case?
    Regards,


    As a gesture of gratitude please consider rating helpful posts. c",)

    Some stuffs: Mouse Hotkey | Compress file using SQL Server! | WPF - Rounded Combobox | WPF - Notify Icon and Balloon | NetVerser - a WPF chatting system

  14. #14

    Thread Starter
    PowerPoster
    Join Date
    Jun 2013
    Posts
    7,219

    Re: Video-Decompression with the VCM (ICM-Win32-API)

    Quote Originally Posted by dee-u View Post
    Just stumbled on this VB.Net CodeBank submission: http://www.vbforums.com/showthread.p...everal-options

    The code is hosted off-site in MSDN, ...
    Thanks for diggin it out (as a kind of "precedent")...

    Quote Originally Posted by dee-u View Post
    ... is this even similar with Olaf's case?
    Hah - it's worse even <g>...

    If we take diles argumentation, who was complaining about a kind of "look at my site"-advertisement
    then I see definitely a difference between a direct Zip-Download (which didn't really "land"
    on the site in question) - and Kevins Link, which did ...
    (@KevinInstructor - in case you read that, I'm perfectly fine with your article and the Link in it).

    Along those lines, another question comes popping up - what about the Links to
    ones own site in ones own personal signature-space?

    Common practice for many posters.

    And these links are visible in each and *every* posting (not - as I currently do it - only
    whilst posting stuff which I think is easier approached and solved with the RichClient-lib).

    I think I'll have to change that in the future. Maybe dile really has a point, that
    my "attempts at advertising" were very poor and unprofessional so far -
    comes across as "kind of sneaky" - turns people off, I imagine -
    yeah, perhaps better to advertise with a huge baseball-bat directly in my sig...
    (just thinking about big red dancing letters - the full program)

    Olaf
    Last edited by Schmidt; Aug 20th, 2014 at 06:20 AM.

  15. #15
    Software Carpenter dee-u's Avatar
    Join Date
    Feb 2005
    Location
    Pinas
    Posts
    11,123

    Re: Video-Decompression with the VCM (ICM-Win32-API)

    I did not dig it, just stumbled on it a few hours ago and when I went looking for an attachment of source code I did not find any but just a link of the code uploaded in MSDN and I thought it maybe 'similar' to your submission.
    Regards,


    As a gesture of gratitude please consider rating helpful posts. c",)

    Some stuffs: Mouse Hotkey | Compress file using SQL Server! | WPF - Rounded Combobox | WPF - Notify Icon and Balloon | NetVerser - a WPF chatting system

  16. #16
    Fanatic Member
    Join Date
    Aug 2013
    Posts
    806

    Re: Video-Decompression with the VCM (ICM-Win32-API)

    Quote Originally Posted by FunkyDexter View Post
    The CodeBank Policy states that compiled dlls and dependencies are not allowed. This is partly to prevent the spread of viruses and partly to make sure that CodeBank submissions “stand up” on their own without reference to external resources that may become unavailable in the future.

    As such I’ve edited the OP as it depends on vbRichClient. I note from your comments that the ICMDecode class itself has no such dependency so an independent version of the code could be created. If so then I’d definitely encourage you to post that here.

    Regards
    FD
    I have to agree with Olaf - clarification is greatly needed here, because this doesn't seem right.

    If dependencies are never allowed, does that mean codebank projects that interface with well-known libraries like zLib or FreeImage are also disallowed? If so, I think there needs to be a great purge of the CodeBank.

    Third-party dependencies are a fact of life in modern development. If vbForums isn't interested in code that relies on well-known third-party libraries, they're doing a huge disservice to VB developers who come here looking for coding advice and help.
    Check out PhotoDemon, a pro-grade photo editor written completely in VB6. (Full source available at GitHub.)

  17. #17
    Hyperactive Member
    Join Date
    Jul 2013
    Posts
    400

    Re: Video-Decompression with the VCM (ICM-Win32-API)

    Quote Originally Posted by Tanner_H View Post
    I have to agree with Olaf - clarification is greatly needed here, because this doesn't seem right.

    If dependencies are never allowed, does that mean codebank projects that interface with well-known libraries like zLib or FreeImage are also disallowed? If so, I think there needs to be a great purge of the CodeBank.

    Third-party dependencies are a fact of life in modern development. If vbForums isn't interested in code that relies on well-known third-party libraries, they're doing a huge disservice to VB developers who come here looking for coding advice and help.
    Absolutely right. This way this seems to be about something else

  18. #18
    PowerPoster
    Join Date
    Feb 2006
    Posts
    24,482

    Re: Video-Decompression with the VCM (ICM-Win32-API)

    That Kevin guy is a terrible offender. Almost everything he posts consists of a "pingback" to some MSDN article he's shilling for. I wouldn't hold him up as an example or this site will become a ghost town overnight as people leave in droves due to lack of content.

    The name of the forum is CodeBank, not LinkBank. I don't see any reason why people should be allowed to turn it into an SEO tool for their personal or commercial sites or to gain "MVP points" working as a shill for Microsoft.

    I doubt anyone has ever had a CodeBank thread moderated because of dependencies except where binaries have been posted. That's nothing but a red herring raised to muddy the discussion.

  19. #19
    Fanatic Member
    Join Date
    Aug 2013
    Posts
    806

    Re: Video-Decompression with the VCM (ICM-Win32-API)

    Quote Originally Posted by dilettante View Post
    The name of the forum is CodeBank, not LinkBank. I don't see any reason why people should be allowed to turn it into an SEO tool for their personal or commercial sites or to gain "MVP points" working as a shill for Microsoft.
    If anyone is trying to use the forum for SEO, they're going to be sorely disappointed. All outbound links have nofollow appended, as they should - so no mythical SEO gain there.

    Quote Originally Posted by dilettante View Post
    I doubt anyone has ever had a CodeBank thread moderated because of dependencies except where binaries have been posted. That's nothing but a red herring raised to muddy the discussion.
    Well that's the whole point - this thread appears to have been moderated solely because of a dependency on an external, third-party binary.

    If the problem is that the code sample .zip was hosted off-site, then hopefully that can be clarified, because that's not at all what the original moderation comment claimed.
    Last edited by Tanner_H; Aug 20th, 2014 at 09:34 AM. Reason: missing /quote tag
    Check out PhotoDemon, a pro-grade photo editor written completely in VB6. (Full source available at GitHub.)

  20. #20
    Frenzied Member
    Join Date
    Apr 2012
    Posts
    1,253

    Re: Video-Decompression with the VCM (ICM-Win32-API)

    There are several reasonable and valid observations already made within this thread so I'll not add to them at this point since Funky Dexter has not submitted anything since Post #4.

    I do, however, wish to make it known that I am as bemused by all of this as some of my peers...
    If you don't know where you're going, any road will take you there...

    My VB6 love-children: Vee-Hive and Vee-Launcher

  21. #21
    PowerPoster
    Join Date
    Aug 2010
    Location
    Canada
    Posts
    2,412

    Re: Video-Decompression with the VCM (ICM-Win32-API)

    I agree with Tanner_H that the location of the linked attachment (VBForums, or outside) wasn't the issue according to FunkyDexter - it was the fact that there was a third-party dependency.

    If he stands by that position, then I think there will be a lot of Codebank submissions that will have to be removed, and it would be really helpful if this position was clarified and posted/stickied somewhere.

  22. #22
    Super Moderator si_the_geek's Avatar
    Join Date
    Jul 2002
    Location
    Bristol, UK
    Posts
    41,929

    Re: Video-Decompression with the VCM (ICM-Win32-API)

    Forums like the CodeBank and UtilityBank are very different to the rest of the site.

    Threads in the majority of forums are mainly useful to one person at the time it is posted (with some usefulness via searches later), whereas CodeBank/UtilityBank threads are used by lots of people in the long term - including being linked to as answers in many normal threads.

    As such, the rules are imposed a bit more strictly here. In addition to that, just because things aren't always acted on (in the CodeBank, or our other forums), it doesn't necessarily mean they are acceptable, just that we haven't acted on those particular posts (yet).

    Quote Originally Posted by dilettante View Post
    I doubt anyone has ever had a CodeBank thread moderated because of dependencies except where binaries have been posted. That's nothing but a red herring raised to muddy the discussion.
    I have personally removed dozens of CodeBank threads over the years due to compiled dependencies being hosted off-site, as well as many more due to binaries being directly included.

    The official policy is that binaries (whether directly included, or linked via another site) are not allowed at all.

    While we allow exceptions at times (based on some things that are public knowledge, and some things that aren't), it doesn't mean we will always allow those exceptions - or that we can give a clear explanation of what is definitely OK (partly because there are many reasons which interact in various ways, and also because of reasons from Brad that we aren't allowed to disclose).

    This kind of thing is the reason for the last bulleted rule in the AUP (in basic terms: admins and moderators decide what is acceptable).


    In the case of this thread, the dependency was not actually necessary, so it should not have been included.

    Quote Originally Posted by Schmidt
    ... without reference to external resources that may become unavailable in the future.
    You mean, things like:
    - ADO? (might become unavailable in the future - and was already broken by MS some time ago)
    - CommonControls? (might become unavailable in the future - and was already broken by MS some time ago)
    - MSHFlexGrid (was only contained in the Pro- and Enterprise-Versions of VB6 - totally unavailable to VB6-StdEdition-users)
    - and finally the VB6-Runtime? (might become unavailable in the future too)
    Those are all things that were included with VB itself (tho not necessarily every edition), so are not external resources.

    In addition to that, no matter how much you try to argue otherwise, your work is not as trustworthy as Microsofts.

    An example of why (inspired by something you posted): as many people know, passing a virus/malware scan does not mean your compiled code doesn't do anything bad, just that the scanners didn't find anything bad (there have been times when we've seen compiled files that passed virus+malware scans, but definitely contained malware: a poor but memorable example).

    I am not claiming (and do not mean to imply) that your work contains anything malicious, or that Microsofts definitely doesn't, just that you are not as trustworthy as Microsoft - primarily because they have huge amounts of public scrutiny.

    Quote Originally Posted by Schmidt
    At that point the thread was not a code submission but a "go see my web site for some code" advertisement.
    Now, there's a petty thought... advertisement is usually done for "monetary gains"
    Direct financial gains are certainly not the only reason to advertise, and are not even the most common form of advertising on this site (most of which you never get to see, because we manually remove it before it even becomes visible).

    Posts that are basically "see the answer on my site" are not acceptable. As with many aspects of the rules there is a judgement call based on various factors, so we don't always act, and can't give a definitive explanation.

    Quote Originally Posted by Tanner_H View Post
    If the problem is that the code sample .zip was hosted off-site, then hopefully that can be clarified, because that's not at all what the original moderation comment claimed.
    That is certainly a problem, and it is the reason that many CodeBank threads have been removed in the past.

    There have been lots of times that files hosted elsewhere have become unavailable (due to the other site changing in some way, or the entire site becoming unavailable), or are always totally unavailable for many of our members (due to corporate firewalls, etc).

    While it could have been stated a bit clearer, FunkyDexter did hint that code should be included directly on this site.


    A simple summary of the official policy:

    • Compiled files are not allowed at all, whether included directly on this site, or (worse) linked to on another site.

    • Posts should not link to external sites unless it is "necessary" (eg: linking to a copyrighted tutorial in response to someone asking for one), and this applies more so to forums like the CodeBank - especially in terms of the code itself.

    However, as mentioned above... we do sometimes allow exceptions, but we cannot give a definitive explanation of the reasons.

  23. #23

    Thread Starter
    PowerPoster
    Join Date
    Jun 2013
    Posts
    7,219

    Re: Video-Decompression with the VCM (ICM-Win32-API)

    Quote Originally Posted by dilettante View Post
    The name of the forum is CodeBank, not LinkBank.

    I don't see any reason why people should be allowed to turn it into an SEO tool for their personal or commercial sites ...
    And a Code-containing Zip on VBF-UserWebSpace is better than a Code-containing Zip
    on an external site exactly why?

    And believe me or not, but I had to google the term 'SEO'...

    Well, from the wording in your posts - I take it, that you were the one, who "filed the complaint"?
    (now leaving it all to Funky to come up with an "interesting decision" about the whole mess)...

    What I would like to know is (for the moment assuming that the RichClient-Framework got
    astronomical download-rates due to heavy SEO-effects) ... what exactly would be wrong with that?

    I'd think that broader usage of stable libraries/frameworks would be "good and healthy"
    for the VBClassic-community... Don't know how you see it, but I'm sometimes tired, to see
    Newbies here struggle with "the next bunch of API-calls" - copy&pasting semi-tested snippets,
    over and over covering about the same (quite trivial) topics (which could be reliably solved
    with a few lines of framework-code).

    After a while the "typical topics" would shift from "fighting low-level against the Win32-API",
    to quite different (but no less interesting) ones - "breath of fresh air" and all that.

    As the owner of a well-working Community-site, I would *WhiteList* Links to tools which
    have the potential to bring the community forward - and not contemplating (or encouraging
    moderators) to do the exact opposite.


    Quote Originally Posted by dilettante View Post
    I doubt anyone has ever had a CodeBank thread moderated because of dependencies except where binaries have been posted. That's nothing but a red herring raised to muddy the discussion.
    Tanner wrote some good comments about that one already - in my first reply to Funky in Post #6
    I was not trying to hand out a red herring, it was a direct response to the points he raised in Post #4.

    Olaf
    Last edited by Schmidt; Aug 20th, 2014 at 03:06 PM.

  24. #24

    Thread Starter
    PowerPoster
    Join Date
    Jun 2013
    Posts
    7,219

    Re: Video-Decompression with the VCM (ICM-Win32-API)

    Quote Originally Posted by si_the_geek View Post
    In the case of this thread, the dependency was not actually necessary, so it should not have been included.
    I found it necessary, because it saved me time (not having to google first for an
    alternative and well-implemented 24Bit-DIBSection-Class, and studying its interface...).

    Code in the Codebank should demonstrate "best practise", showing how it's done
    efficiently and reliable. I see nothing wrong in stating, that a posted solution
    depends on a wellknown tool, which is free downloadable by anybody.

    What you ask me for is, to change my perfectly well-working code to something
    which I do *not* consider best practise (because I'm a strong believer in pre-
    compiled COMponents).

    Dilettante was posting a similar solution in the normal Forum, which was dependent
    on WIA (which is not available on each and every XP-OS for example - there's quite
    many Developers who still run their VB6-IDE on that system (sometimes in a VM).

    Quote Originally Posted by si_the_geek View Post
    ... no matter how much you try to argue otherwise, your work is not as trustworthy as Microsofts.
    I completely disagree here.

    Let me just point out, that a leading Software-vendor as big as MS will have to consider
    "a whole lot of interests of a whole lot of different parties".

    In case of my community-contribution (in use on a whole lot of PCs, by a lot of developers) -
    there was so far no complaints of "malicious attacks" - I fail to see, what my motivation
    should be, to destroy two decades of a reputation in the community.

    Aside from that, you never know as long as you don't see the code - but as I mentioned already,
    the code is open to a few site-members - that's something you cannot claim in case of MS.

    Quote Originally Posted by si_the_geek View Post
    Posts that are basically "see the answer on my site" are not acceptable.
    That was not the case here.

    Quote Originally Posted by si_the_geek View Post
    While it could have been stated a bit clearer, FunkyDexter did hint that code should be included directly on this site.
    Well, what about Links to ScreenShots then?

    Images tend to be larger than zipped code and the VBF-UploadSpace is quite small.

    What about a Link to my Website in my signature, forbidden as well?

    Am I forbidden to post RC5-based solutions at all on this site now?


    Olaf

  25. #25
    Hyperactive Member
    Join Date
    Jul 2013
    Posts
    400

    Re: Video-Decompression with the VCM (ICM-Win32-API)

    In addition to that, no matter how much you try to argue otherwise, your work is not as trustworthy as Microsofts.
    In a VB6 forum this statement is hilarious, to say the least

  26. #26
    Super Moderator si_the_geek's Avatar
    Join Date
    Jul 2002
    Location
    Bristol, UK
    Posts
    41,929

    Re: Video-Decompression with the VCM (ICM-Win32-API)

    Quote Originally Posted by Schmidt
    I found it necessary, because it saved me time
    In that case it was not necessary, just convenient. There are many code-only methods you could have used instead (including some on this site).

    Quote Originally Posted by Schmidt
    In case of my community-contribution (in use on a whole lot of PCs, by a lot of developers) -
    there was so far no complaints of "malicious attacks"
    We only have your word for that... and even if we had the word of every single person who has ever tried it, that would not be proof that we should trust your compiled files - just that if anybody has noticed something malicious, they didn't think it worth mentioning.

    While I am not claiming that there is anything malicious in your compiled files, given your previous behaviour on this site, it wouldn't totally suprise me if there was.

    Quote Originally Posted by Schmidt
    Aside from that, you never know as long as you don't see the code - but as I mentioned already,
    the code is open to a few site-members - that's something you cannot claim in case of MS.
    In a completely backwards way there is truth in that. Microsofts code isn't available to just "a few" people, various groups of users (including many MVP's) have access to it... and that is in addition to the vast quantity of people who carefully inspect their compiled products because they want to make Microsoft look bad.

    While you have made it very clear you don't like a particular business decision Microsoft made years ago, I have not seen a valid reason to claim that they are not trustworthy (nor have I seen a valid reason to claim they are perfect).

    No amount of arguing (or distraction techniques like your WIA claim) will change the fact that you are not as trustworthy as Microsoft.

    Only a small minority of people who have voiced an opinion on the subject agree with you (and several of those are clearly biased, as most/all of the posts they make are for your benefit). Even a vast majority would not guarantee a change in the position of this site.

    Quote Originally Posted by Schmidt
    Well, what about Links to ScreenShots then?

    Images tend to be larger than zipped code and the VBF-UploadSpace is quite small.
    That would be fine, assuming of course that the images aren't essential for using the code.

    If there are size limitations stopping you from uploading files for CodeBank etc, feel free to contact Brad or a moderator as we may be able to help... or just wait until you have 2000 posts, as you get a nice size increase then.

    Quote Originally Posted by Schmidt
    What about a Link to my Website in my signature, forbidden as well?
    I'm afraid so.

    Whether you like it or not, your site is about a product, so it would be advertising - even tho the product is free.

  27. #27
    Frenzied Member
    Join Date
    Apr 2012
    Posts
    1,253

    Re: Video-Decompression with the VCM (ICM-Win32-API)

    Quote Originally Posted by si_the_geek View Post

    While we allow exceptions at times (based on some things that are public knowledge, and some things that aren't), it doesn't mean we will always allow those exceptions - or that we can give a clear explanation of what is definitely OK (partly because there are many reasons which interact in various ways, and also because of reasons from Brad that we aren't allowed to disclose).
    Hmm. That sounds just as sinister as anything that you are trying to protect us from!

    But, humour aside, I don't see why Olaf's work cannot, at least, be considered as an exception to your rules. Presumably, it would be acceptable if he were to create a thread containing the vbRichClient source code in its entirety since it would then be no different from Krools Common Controls replacement work? Not putting this forward as a solution, btw, just seeking to understand whether this crosses the mysterious boundaries you allude to...
    If you don't know where you're going, any road will take you there...

    My VB6 love-children: Vee-Hive and Vee-Launcher

  28. #28
    ex-Administrator brad jones's Avatar
    Join Date
    Nov 2002
    Location
    Indianapolis
    Posts
    6,608

    Re: Video-Decompression with the VCM (ICM-Win32-API)

    TL:DR

    This thread has been brought to my attention. Let me discussion offline with a few people over the next day or two (my schedule is packed right now) and there is a lot here.

    As stated, this thread is too long, so I've not read in full yet.

    In summary, it sounds like there are questions around what can/cannot be included in files linked or uploaded to the CodeBank and what dependencies can be included in code.

    Let us have time to discuss internally the issue and respond. We'll include looking at what rules there should be for exceptions.

    (When we get this resolved, I'd like to clean up this posting to the Codebank so it focuses on the code and not the issues ;) )

    Brad!
    Have you given out your reputation points today? Select the Rate This Post link to give points for good posts!
    -------------------------------------------------------------
    Brad! Jones
    Lots of Software, LLC
    (I wrote: C Programming in One Hour a Day) (Dad Jokes Book) (Follow me on Twitter)

    --------------------------------------------------------------

  29. #29

    Thread Starter
    PowerPoster
    Join Date
    Jun 2013
    Posts
    7,219

    Re: Video-Decompression with the VCM (ICM-Win32-API)

    Quote Originally Posted by si_the_geek View Post
    In that case it was not necessary, just convenient.
    Sure, saved me half an hour or so - and (other than diles WIA-based solution) it was not
    only a very *performant* solution (suiteable for live-rendering with 30 -even 60 FPS) -
    but *also* very reliable (well tested class) and efficient with regards to the needed lines of code.

    Just an approach, interested developers could have learned from.

    Quote Originally Posted by si_the_geek View Post
    There are many code-only methods you could have used instead (including some on this site).
    There's always a few dozen ways to skin a cat - but where is it stated on this site,
    that I have to tackle a certain problem in a certain way ("as recommended by your
    friendly moderator next door")?

    The important thing was the (RC5-independent) cICMDecode-Class - and those who
    didn't liked my few lines of DemoForm-Code could just follow your recommendation and
    use all these "many code-only methods on this site" instead (or the stuff they already
    had in their current solution, which was in need for just the ICM-Decoding).

    Same thing with the WIA-dependency dile introduced (for the same convenience-reasons -
    as also changeable to some other "final-bufffer-rendering"-method)...

    Quote Originally Posted by si_the_geek View Post
    We only have your word for that...
    and even if we had the word of every single person who has ever tried it, that would not be proof that we should trust your compiled files
    But that's true for *any* closed-source binary - in your sig you e.g. link
    (against site-regulations?) to the mztools-site.

    Perhaps another good example for a binary which can be a worthwhile time-saver
    for VB-developers.

    Quote Originally Posted by si_the_geek View Post
    While I am not claiming that there is anything malicious in your compiled files,
    Well, of course you shouldn't - because there's no such things in it.

    Quote Originally Posted by si_the_geek View Post
    given your previous behaviour on this site, it wouldn't totally suprise me if there was.
    Thought this site was all about "showing respectful behaviour to your fellow developer"...

    Decided now, to not reply to your provocations anymore (safer this way) - but I will
    point them out as what they are.

    Quote Originally Posted by si_the_geek View Post
    No amount of arguing (or distraction techniques like your WIA claim) will change the fact that you are not as trustworthy as Microsoft.
    And no amount of your arguing will convince me about that... <shrug>

    There were enough "backdoor-scandals" or "privacy-scandals" lately -
    all involving really large vendors - and I already brought an (IMO) good
    argument which you skipped: "the interests of 'other parties' are proportional
    to a vendors size" - if there's software which inevitably will reach billions
    of people, then there's a temptation in that.

    Quote Originally Posted by si_the_geek View Post
    Only a small minority of people who have voiced an opinion on the subject agree with you
    (and several of those are clearly biased, as most/all of the posts they make are for your benefit).
    I can ensure you, that I didn't have send E-Mails or PMs to invite JPBro, dee-u, Tanner,
    Carlos and Colin.

    They are no fake-accounts of mine, and express their free opinion.

    Quote Originally Posted by si_the_geek View Post
    Whether you like it or not, your site is about a product, so it would be advertising - even tho the product is free.
    "A product" sounds so... well, "commercial".

    vbRichClient.com is my private site (no mentioning of any businesses anywhere) - and it is all about my
    personal *project* (a free community-contribution, which currently is available only in compiled binary form -
    as already mentioned - quite similar to the free MZTools you linked to in your signature).

    Olaf
    Last edited by Schmidt; Aug 20th, 2014 at 07:39 PM.

  30. #30
    Frenzied Member
    Join Date
    Apr 2012
    Posts
    1,253

    Re: Video-Decompression with the VCM (ICM-Win32-API)

    Hmm. Pretty sure that #26 has mutated considerably since it was first posted as there was no mention of 'bias supporting' (and several other things) at the time I made #27.

    @si
    Do your mod privileges permit you to conceal the fact that subsequent edits can be made to your posts? If that has occurred, it's a little disappointing, particularly the after-the-event insinuation that I am some sort of Schmidt crony. Let me be clear that the only reason I posted here was because the decision to corrupt/impede Olaf's contribution (i.e. this thread) appears to be at odds with existing precedents and the justification for it (when challenged) appeared to be shrouded in some kind of mysterious 'need-to-know' secrecy.
    If you don't know where you're going, any road will take you there...

    My VB6 love-children: Vee-Hive and Vee-Launcher

  31. #31
    Registered User
    Join Date
    Oct 2013
    Posts
    2

    Re: Video-Decompression with the VCM (ICM-Win32-API)

    Quote Originally Posted by Schmidt View Post
    Code in the Codebank should demonstrate "best practise", showing how it's done
    efficiently and reliable.
    I can't agree any more. Schmidt's RC framework is extremely powerfull. He contributed a lot to vb community.Both himself and his site is pretty selfless, which deserve our respect.

  32. #32
    Frenzied Member
    Join Date
    Oct 2008
    Posts
    1,181

    Re: Video-Decompression with the VCM (ICM-Win32-API)

    vbRichClient5 is the best addon for VB6 that I've ever seen. Moderators, I don't know what you are thinking removing that link. It is extremely well known DLL file addon for VB6 that much of the community knows about and uses, including myself. It wraps a huge ammount of API functions in easy to use classes so you don't have to use hundreds of Delcare statements at the top of your program code. Furthermore, the way these classes do the API stuff, much of the stuff is kept internal to the classes, exposing only the essential parts, meaning that what might take 20 lines of code to do with "pure" VB6 code might now only take 2 or 3 lines of code. Any links to this DLL file should definitely be left in place, for the few developers who've not yet heard of it. VBforums is the only site that links to this Schmidt's site, so if all links to his site are removed from VBforums, then his great free DLL file will forever be lost, and new and upcoming VB6 programmers will be missing out on a very powerful item that can boost the productivity of their VB6 programs. I'm not an advertiser for Schmidt, or an alternate account. I'm defending him and the link VBforums links to his site and DLL file, because it is an almost essential part of programming in VB6, just as zlibwapi.dll is an indispensable DLL file for any program that uses the Zip (deflate) compression algorithm.

  33. #33
    PowerPoster Nightwalker83's Avatar
    Join Date
    Dec 2001
    Location
    Adelaide, Australia
    Posts
    13,344

    Re: Video-Decompression with the VCM (ICM-Win32-API)

    Quote Originally Posted by Ben321 View Post
    vbRichClient5 is the best addon for VB6 that I've ever seen. Moderators, I don't know what you are thinking removing that link.
    I was going to post that the link is in Schmidt's profile! However, that is not the case... maybe he can use the hint. Until then just google "vbRichClient".
    when you quote a post could you please do it via the "Reply With Quote" button or if it multiple post click the "''+" button then "Reply With Quote" button.
    If this thread is finished with please mark it "Resolved" by selecting "Mark thread resolved" from the "Thread tools" drop-down menu.
    https://get.cryptobrowser.site/30/4111672

  34. #34
    Super Moderator si_the_geek's Avatar
    Join Date
    Jul 2002
    Location
    Bristol, UK
    Posts
    41,929

    Re: Video-Decompression with the VCM (ICM-Win32-API)

    Quote Originally Posted by ColinE66
    ... insinuation that I am some sort of Schmidt crony.
    I can assure you I was not thinking about you (or any other member with over 50 posts) when I wrote the part in brackets - you are genuine active members who happen to like Olafs work, and that is absolutely fine. I apologise for not making that clearer.


    The part I put in brackets refers to some members who have not made a worthwhile amount of normal posts, and instead most (or even all) of their posts are purely for his benefit in some way, and are often months apart.

    They aren't necessarily doing anything wrong, but their opinions should not be taken as representative of normal active members like yourself (or those regular members who comment privately), and as such their views should not be taken into account when determining what is or isn't acceptable on the site.

    Quote Originally Posted by ColinE66
    Hmm. Pretty sure that #26 has mutated considerably since it was first posted as there was no mention of 'bias supporting' (and several other things) at the time I made #27.

    @si
    Do your mod privileges permit you to conceal the fact that subsequent edits can be made to your posts?
    No, only Admins have special abilities there. I get the "last edited" message the same as the rest of you.

    I did not edit the post at all, and am not aware of anybody else editing it (on re-reading, it looks like what I originally wrote).

    Given that the timestamps of those posts are only 1 minute apart, and the length of your post, it is sensible to assume that you hadn't seen post #26 when you wrote #27.

    Quote Originally Posted by ColinE66
    I don't see why Olaf's work cannot, at least, be considered as an exception to your rules.
    As heavily implied by my previous posts, it has been to a degree... whether (or how) that changes is something we'll have to see.

    Quote Originally Posted by ColinE66
    Presumably, it would be acceptable if he were to create a thread containing the vbRichClient source code in its entirety since it would then be no different from Krools Common Controls replacement work?
    Of course, as that would completely avoid all the issues.


    Given the size of this thread it is safe to assume that everything worthwhile has been said already, so I'm closing this thread until it gets tidied.

Posting Permissions

  • You may not post new threads
  • You may not post replies
  • You may not post attachments
  • You may not edit your posts
  •  



Click Here to Expand Forum to Full Width