Any little change in the video file results in change of file size, correct?

Posted on 2013-01-29
Last Modified: 2013-01-30
Dear experts

I should create a WinForm C# application which works with video files. The files are keep both in FTP server and locally on HDDs. When a user want to watch a video file first I check on HDD and if the file is missing, or it is different then I should start download. The question is – how to determine if a video file is different than the others /both files are with same names/? For now I plan to use their size FileBytes, is this enough for 99.99 of the cases?

 The video files will be played in TV, so there will be a case where the movie is created with for example Adobe Premiere, then it is modified very little and save again – is this mean that the file’s result size (bytes)  will be different than the previous file?
Question by:dvplayltd
  • 5
  • 3

Expert Comment

ID: 38830467
The MD5 hash is unique for all file types.

You can try if it is feasible in your case.

Author Comment

ID: 38830550
Well, this is not my question, my question is with video edition softwares like Adobe Premiere and exc. - are thay always make video files with different size, but as you start to talk about this – fine.

 I guess I can easy make a MD5 has to my local file, but is there a command to FTP server to create MD5 hash and to return it to me ? I need to work with all FTP servers both under Windows and Linyx .
LVL 16

Accepted Solution

AlexPace earned 500 total points
ID: 38830690
Some FTP clients and servers support integrity checking protocol-level commands like XMD5, XCRC and/or XSHA1.  These are not supported by FileZilla but others like Robo-FTP and Voyager support them.

If all the supported file types are known and you also control the server then perhaps you could use information in the file header bytes to avoid generating a fingerprint of the whole thing on both ends.

Author Comment

ID: 38831853
We are going in other direction, let remain the question:

  When 2 video files are different with for example one letter fixed in a title in the video file /made with video editor software like Adobe Premier/ - this will result in file with different size, or it is possible both files (old and new one) to get exactly same size in bytes on HDD???
How to run any project with ease

Manage projects of all sizes how you want. Great for personal to-do lists, project milestones, team priorities and launch plans.
- Combine task lists, docs, spreadsheets, and chat in one
- View and edit from mobile/offline
- Cut down on emails

LVL 16

Expert Comment

ID: 38832053
Actual file size (not size on disk) is probably good enough for 99% ... it would be rare to come up with the exact same size unless there is a concern of deliberate tampering.  If there is no money involved then what is the motivation to tamper?  A prank perhaps...  If there is money involved then use a hash.

Author Comment

ID: 38832280
hash will require too much power from CPU, and this will be operation done all the time.

A money are not involved and nobady will have finance interest to make special dublicate, but it is quite possible the TV channel to make a new version of video file which is different with one letter shown as title on the movie, and then this change should be detected, or the customer wil watch the old version from its HDD, while there is a new version on FTP.

In short, the question is for video movies editor ...

Author Closing Comment

ID: 38834387
10x. One friend workng in video area tell me that for my case the new and old file will be with equal size. So I should check local and FTP file with XMD5 ... Could you please recomended me most populiar protocol suported from public FTP servers? My ask is for big name in FTP servers , like IIS7 , Apache under Linyx and so on - i'm using shared FTP server hosted in data center, not some home made FTP .
LVL 16

Expert Comment

ID: 38835705
FTP directory listings usually show the last modified time.  After downloading a copy of the file you could use your app to programmatically change the last modified date on the local copy.  It would be unlikley that the file size and date would both remain the same unless someone was intentially messing with you. Integrity checking is hte only way to prevent that but even then I suspect a XCRC may run a faster on the server's CPU than an XMD5.

Author Comment

ID: 38838208
Your last idea for last modify date is good, but I already implement XMD5 check. Because the video files will be played with playout software I  need not only to check for a new video file version, but also to make 100 % sure that there no error on FTP download/upload and this could be ensure only of XMD5 check.

Thanks for your answer and time!

Featured Post

Enabling OSINT in Activity Based Intelligence

Activity based intelligence (ABI) requires access to all available sources of data. Recorded Future allows analysts to observe structured data on the open, deep, and dark web.

Join & Write a Comment

I have been doing hardcore actionscripting for some time; and needless to say I have faced a lot of problems in just understanding others' code rather than understanding what the code executes. A programmer's life can become hell when there are a lo…
I have found that much of my time doing support ends up being a constant repetition of the same steps to different people.  Early on I stated using web pages with Frequently Asked Questions (FAQs) to alleviate most of the burden.  Sometimes this jus…
The goal of the tutorial is to teach the user what frame rate is, how to control it and what effect it has on the video.
This Micro Tutorial will teach to how to utilize bit rate in Adobe Flash Media Live Encoder.

707 members asked questions and received personalized solutions in the past 7 days.

Join the community of 500,000 technology professionals and ask your questions.

Join & Ask a Question

Need Help in Real-Time?

Connect with top rated Experts

17 Experts available now in Live!

Get 1:1 Help Now