Click here to Skip to main content
13,664,232 members
Rate this:
Please Sign up or sign in to vote.
I have a desktop application (mfc) in which now I have to implement split and merge of MP4 videos. I have searched a lot and found almost nothing online. Please help me with some hints on how to proceed and what to use. Splitting and merging should be done on timeline basis and not based on size. Code is in VC++

Can I achieve this with Windows Video Encoder? If yes, how to know about the exposed methods in WME?
Posted 21-Apr-14 19:57pm
kiDDevil 25-Apr-14 2:12am
More inputs are welcome since I am doing a research work now prior to the implementation phase.

1 solution

Rate this: bad
Please Sign up or sign in to vote.

Solution 1

First of all, there is no such thing as just MP4. This is a class of compression algorithms for both audio and video, and that's not all: there is also such thing a the container format. I don't want to explain it all here; you may want to read about related topics on Wikipedia; and it would be several different articles.

I would strongly advise to use open-source multi-platform FFmpeg or libavcodec libraries and set of utilities. Please see:[^],[^],[^],[^].

This stuff is written in C, so you can use the library from your C++ code. This is the best code I ever saw, it helped me in many most difficult situations related to processing media data.

Microsoft? In terms of support of variety of standards, they never did anything serious, be it their encoder or even Windows Media Player. In such cases where the wide sets of algorithms and standards are involved, open-source is a natural winner, because such project can use the help of very many contributors.

kiDDevil 22-Apr-14 3:34am
Thanks a lot for providing me a path to go forward. I think it will take time to achieve this goal for sure. More clues will be warmly welcomed here.
My pleasure. Are you going to accept the answer formally (green "Accept" button)? If you need more clues, please ask some follow up questions. Besides, other member can continue to add answers.

This content, along with any associated source code and files, is licensed under The Code Project Open License (CPOL)

  Print Answers RSS
Top Experts
Last 24hrsThis month

Advertise | Privacy | Cookies | Terms of Service
Web01-2016 | 2.8.180810.1 | Last Updated 22 Apr 2014
Copyright © CodeProject, 1999-2018
All Rights Reserved.
Layout: fixed | fluid

CodeProject, 503-250 Ferrand Drive Toronto Ontario, M3C 3G8 Canada +1 416-849-8900 x 100