Android - merge two MP4 files - Android Software/Hacking General [Developers Only]

Does anybody know about way to merge two MP4 video files directly in the phone? i've tried cat in Terminal emulator, it joined the files, but than the playbackl stops after the first file contained in the result, quite logically.
Anybody has some other way?
I know that mencoder can join two clips, but I can't find android binary for it.

Hello,
Have you found how it can be done?
Regards,
Ruslan

i thinkg you will remove head from 2nd-file before merge

Wouldn't it require the removal of the MP4 headers though?

I tryied it:
1. Create new file.mp4
2. Copy first.mp4 into file.mp4 (A read full bytes from file and write it)
3. Repeat point 2 fot second.mp4
Yes, it is stupid.. But this file will be played by Windows Media Player(I tested it).
So, How can I undestand what kind of bytes is header of second.mp4?
Does mp4 contains special separator?

I am afraid, that it simply stops playing the final product at "the right time", marked by header in the beginning of the file (=first clip). I think that to merge them without reencoding, we would have to "clip" the second header & redo the first one, to match the total length.

May be do you know some Android plugins(I mean .jar files e.g. ) witch can merge mp4 files or 3gp..?

I know, that mencoder can join two MP4 files quite easily. But I can't find any version working on Android.

If anyone found out a solution please share it here

no, nobody did I believe. To merge two MP4s you need to modify at least the header, probably even more. What we need is ffmpeg, which can be run in the terminal.

Related

Orange Plugin - What goes where?

Just a clarification question...
I found the following files, packaged in a .cab, but don't think I need all of them and don't know where to put the files I do need.
Here's what I have:
4orangeh.dll
HomePage.xml
HomeScreen.dll
HomeScreen_menuF.bmh
HomeScreen_MenuS.bmh
orange.scheme.xml
OrangeHomescreen.home.xml
I'm thinking that the 4orangeh.dll is the only file I need and that it goes in the application data/home directory, and that the other files are associate with a homescreen this particular individual authored. Is that correct or no?
Thanks for the help!
ahhhh
NO.....nononono....thats wrong.
You got the units for ABAXIA (all the files above exept the 4Orangeh.dll)and 4OrangeH.
You may copy the files to /Application Data/Home and register the .dll manually with wm5regsvce.exe.
May not work stable, but you got this: (Link to another Thread by me about the 2 DIFFERENT OrangePlugins called Abaxia and 4OrangeH (4Orangeh includes 10 different Plugins)
ClickMeHard
The Top Image is Abaxia, the second Images are 4Orangeh.Abaxia is poooooor, 4OrangeH really Impressive
Nice arpy!
You wouldn't know where I can find some (English) documentation on how to use this plugin?
erm,no...sorry.Ive created a German Doc with all needed attributes for this Plugin, it was a hard trip and needs a lot of try-and-error-sessions to get nearly all informations about it.
Here is a Howto in German, it includes nearly all Attributes and Parameters needed for 4OrangeH.Not finished yet...there are some more undocumented Features, like FreeMemory,Messages,Ringtone...it is like an OWN HOMESCREEN-PROCESS, so it can Host more than one Plugin in one Line...an REALLY DAMN ****IN **** MISSING FEATURE in my lovely SmartPhone.
the file maybe helpful, if you always create Homescreens...
Thank you. I'll try and see how this comes through a translater.

[Q] Animated GIF Support Within libwebcore.so

Hey everyone,
I've done a lot of reading lately on how can animated gif support be enabled for devices with ARM6 (like the HTC Hero). Basically what i have to do is recompile the package \lib\libwebcore.so and re-flash in on my device.
What i have in mind: within the "ImageSourceAndroid.cpp" file from "WebCore / platform / graphics / android" i have to force the should_use_animated_gif() call to return "true" everytime it is called.
*btw, you can find the above *.cpp file here
**btw, i believe someone has done this before, see here
Now, the part with changing the code is easy stuff.. however, i'm not quite sure that i'll be able to recompile the library so easily. So my questions are:
1. Can anyone point me in the right direction? How do i rebuild this library into something that i can flash on my device?
2. Can anyone tell me if what i want to do will indeed enable the gif support
Thanks!
Also, related to the above, is there any way that i can deploy *just* the libwebcore.so library?
cool beans! good work!
here's what google dev says:
[...] you want to work around this with your own Android build, you’ll need to modify C++ code, rebuild, and reflash your phone. You’ll need to make two fixes to the released sources. 1) edit the function should_use_animated_gif() in external/webkit/WebCore/platform/graphics/android/ImageSourceAndroid.cpp (around line 217). Return true to animate gifs 2) Change setRGBA() in /WebCore/platform/image-decoders/ImageDecoder.h (around line 173) to call*dest = SkPackARGB32(a, r, g, b) *dest = SkPackARGB32(a, r, g, b) instead of instead of*dest = (a << 24 | r << 16 | g << 8 | b) With these changes, gifs will animated correctly on large memory devices like Droid and Nexus One There’s no code path for animating gifs in arbitrary applications like Gallery, except by rewriting it to host a WebView modded as described above[...]
the post above has been taken from here
I'll just post more info on this topic as i go along with it. If someone has additional hints or something, please feel free to comment.

[Q] the best tablet for editing wordperfect documents

Help, I'm a lawyer who uses wordperfect (I know not many of us out there) and can't seem to find a tablet that will let me create, edit, convert back and forth from word to wordperfect, etc. Does anyone know if I can edit wordperfect files on an android tablet? On an I-Pad tablet? Or on a Windows based or Windows Based/ Android tablet like the ASUS EEETransformer? Any suggestions?
alexz2229 said:
Help, I'm a lawyer who uses wordperfect (I know not many of us out there) and can't seem to find a tablet that will let me create, edit, convert back and forth from word to wordperfect, etc. Does anyone know if I can edit wordperfect files on an android tablet? On an I-Pad tablet? Or on a Windows based or Windows Based/ Android tablet like the ASUS EEETransformer? Any suggestions?
Click to expand...
Click to collapse
Also a lawyer and would love to see this happen. Corel should make an Android app.
Currently I use a txt based program. Which is fine you just copy and paste all the text and format later. But it would be nice to be able to finish the job on the Android app.
woops I shouldve searched google first....
https://play.google.com/store/apps/details?id=com.corel.wordperfectviewer&hl=en
Its just a viewer though and 6.99 for just a viewer. weak.
WordPerfect files open on Android
alexz2229 said:
Help, I'm a lawyer who uses wordperfect (I know not many of us out there) and can't seem to find a tablet that will let me create, edit, convert back and forth from word to wordperfect, etc. Does anyone know if I can edit wordperfect files on an android tablet? On an I-Pad tablet? Or on a Windows based or Windows Based/ Android tablet like the ASUS EEETransformer? Any suggestions?
Click to expand...
Click to collapse
WordPerfect viewer/editor on Android? For long-time WordPerfect users, it has been virtually impossible to read or write WPD files on an Android device. The only official option, thus far, has been the official and commercial Corel WPD viewer, but the user reviews have been mixed, to say the least.
This problem has prompted me to research and experiment, based on the fact that a free Windows MS Office-compatible suite like Libre Office [or Open Office, or Apache Office] has, for some time, had the ability to open WordPerfect files seamlessly [and save them, sometimes]. I formatted and saved a few basic WPD files, simply renamed the file extension to .ODT, and opened them in Libre Office – virtually perfectly [only experiencing importing issues with some complex tables]. Apart from that, formatting features like different fonts, graphics boxes, numbered outlining? No problem.
Then I proceeded to Android: I copied these test WPD files [simply renamed as ODT files, not exported as Open Office files, remember] to my device/cloud storage services like Dropbox and Google Drive. I installed a number of Open Office/ODT compatible office apps, and tried to open the "new" ODT files.
The best result so far [only been testing for the last 2 days] has come from OOReader [free via the Google Play store]. Opening a disguised WPD file as an ODT file takes a few seconds to convert, and – success! Almost every file I've tossed at OOReader has imported successfully, with WP formatting and graphics intact.
Interestingly, the official Libre Office viewer app [also the beta one] chokes on these FrankenFiles, as well as most other allegedly ODT-compatible office viewers and editors.
And so my 48-hour conclusion and advice are this: If you're a die-hard WPD user and would like to access your files on an Android device, follow these kludgy and hack-ey steps: (1) upload your WPD file AS IS to your device or the cloud; (2) install OOReader on your device; (3) when you need to do so, simply rename the WPD file to an ODT extension, and import into OOReader.
Savvy users might even write a batch script or CMD file beforehand which automatically renames or mirrors important WPD files as ODT files in one's PC Dropbox folder, which will save precious seconds when accessing that beautiful WPD data...
When (if) I find an app which can then also correctly and perfectly edit and save these hacked WPD-as-ODT files, a follow-up report will, well, follow.
Date: 28 May 2016 / Hein / [email protected]

How does WeChat store animated emojis (stickers)?

Hi,
I hope this is the right section for app-specific questions (if not, please move the thread)...
My wife recently got into that sticker/emoji-collecting-thing on WeChat (god knows why) and she would like to use the WeChat stickers on other messengers like Whatsapp (or have access to the image files in general). There are millions of tutorials how to make your own animated stickers for WeChat, but unfortunately there is zero information how to get them out of WeChat... Apparently everything is stored in the folder "Phone\tencent\MicroMsg\--some-md5-like-number--\emoji". Therein are subfolders like "com.tencent.xin.emoticon.NAME", I guess for each sticker creator, and the image files themselves have cryptic filenames like "fd0476f63c51690b88dd17d9be63af1c" without any extension. The good news is that PNGs and JPGs are saved "natively" - such files can be easily recognized by any image viewer via the header. However, animated stickers (typically discernible by the much larger file size) are apparently stored in a kind of proprietary format. It's not GIF or any image format I know of (or rather tried it with), it's also not a common compressed container, and the hex editor doesn't reveal anything useful, just densely packed gibberish...
Is there any kind of documentation on how WeChat stores animated images and how they can be converted back into something useful like GIF?
I was wondering this as well. I did the same digging as the OP, with one thing to add. I took a look at one of the said files – this one is 13Kb and about 1kb from the beginning there is a 648-byte xml rdf metadata tag. It shows that whatever this thing is, it was made with Photoshop. I took out the id's and hashes:
Code:
<rdf:Description rdf:about="" xmlns:xmpMM="http ://ns.adobe.com/xap/1.0/mm/" xmlns:stRef="http ://ns.adobe.com/xap/1.0/sType/ResourceRef#" xmlns:xmp="http ://ns.adobe.com/xap/1.0/" xmpMM:eek:riginalDocumentID="xmp.did:…" xmpMM:DocumentID="xmp.did:…" xmpMM:InstanceID="xmp.iid:…" xmp:CreatorTool="Adobe Photoshop CC 2015 (Windows)"> <xmpMM:DerivedFrom stRef:instanceID="xmp.iid:…" stRef:documentID="adobe:docid:photoshop:…"/> </rdf:Description> </rdf:RDF> </x:xmpmeta> <?xpacket end="r"?>
Looking for the same answer
It's been forever since this question was posted, but I still kinda want to know. I don't think anyone's figured out how. XD;;
Nope, I gave up and urged my wife to find a new hobby
Drats, the stickers are so adorable tho... iiOTL
The files are stored in the WXAM format (an in-house proprietary format). The most I found was this post detailing an exploit for WXGF (that's the name of the format), which includes POC code in Python (see zip at end of post) that encrypts a file to WXGF. In it, you can see the code calculating the encryption key - which, I imagine the way to decrypt them would be to do the opposite (obviously)
Python:
imei = '358035085174146'
key = hashlib.md5(imei).hexdigest()[0:16]
cipher = AES.new(key, AES.MODE_ECB)
result[0:1024] = cipher.encrypt(buffer[0:1024])
As for converting the unencrypted file - whether Android or Windows, it's contained in a dll or so file.
On Windows, the decompilation code can be found at
Code:
C:\Program Files (x86)\Tencent\WeChat\WXAMDecoder.dll
, while on Android it can be found at
Code:
libwechatcommon.so
Particularly on Android, the Java class located in
Code:
com.tencent.mm.plugin.gif.MMWXGFJNI
contains the java -> native implementation, with functions such as
Code:
nativePic2Wxam()
As for documenting the internal native code -> It's too much past my ability / time at the moment. Maybe this can be for someone for another day~ That being said, decryption isn't impossible as you saw above, related to IMEI and AES keys.
The particular function you were looking for was - sadly, using it would be a bit hard. But I imagine that you could take the so file, wire it up to an Android app with the same declarations here, and pass in the Wxam file in a byte[] array to get the result back -> You wouldn't have to know the internal code for that either, and since the type is byte[], we don't need to even reverse engineer the code to see what it supplied. Clearly it is a byte[] array of the files contents.
Code:
public static native byte[] nativeWxamToGif(byte[] bArr);
In fact, now that I think about it, I'd like to try it myself now and see what happens lol.
Edit: Yup, it works. I just decoded a few files. Working on decryption now. Sorry, I can't share it since I don't wanna get in trouble. But there's the information above ^^ If you can make Android apps and know enough, it's not hard
BBRecon said:
The files are stored in the WXAM format (an in-house proprietary format). The most I found was this post detailing an exploit for WXGF (that's the name of the format), which includes POC code in Python (see zip at end of post) that encrypts a file to WXGF. In it, you can see the code calculating the encryption key - which, I imagine the way to decrypt them would be to do the opposite (obviously)
Python:
imei = '358035085174146'
key = hashlib.md5(imei).hexdigest()[0:16]
cipher = AES.new(key, AES.MODE_ECB)
result[0:1024] = cipher.encrypt(buffer[0:1024])
As for converting the unencrypted file - whether Android or Windows, it's contained in a dll or so file.
On Windows, the decompilation code can be found at
Code:
C:\Program Files (x86)\Tencent\WeChat\WXAMDecoder.dll
, while on Android it can be found at
Code:
libwechatcommon.so
Particularly on Android, the Java class located in
Code:
com.tencent.mm.plugin.gif.MMWXGFJNI
contains the java -> native implementation, with functions such as
Code:
nativePic2Wxam()
As for documenting the internal native code -> It's too much past my ability / time at the moment. Maybe this can be for someone for another day~ That being said, decryption isn't impossible as you saw above, related to IMEI and AES keys.
The particular function you were looking for was - sadly, using it would be a bit hard. But I imagine that you could take the so file, wire it up to an Android app with the same declarations here, and pass in the Wxam file in a byte[] array to get the result back -> You wouldn't have to know the internal code for that either, and since the type is byte[], we don't need to even reverse engineer the code to see what it supplied. Clearly it is a byte[] array of the files contents.
Code:
public static native byte[] nativeWxamToGif(byte[] bArr);
In fact, now that I think about it, I'd like to try it myself now and see what happens lol.
Edit: Yup, it works. I just decoded a few files. Working on decryption now. Sorry, I can't share it since I don't wanna get in trouble. But there's the information above ^^ If you can make Android apps and know enough, it's not hard
Click to expand...
Click to collapse
I'm using nativeWxamToGif(), but I keep getting a return value of null. Do you know if it is still supposed to work? I tried the libwechatcommon.so in wechat versions 7 and 8 and still no luck.
My decryption code is almost the same as the encryption code. The only difference is that I strip off the trailing 0-pad and then reuse the imei-generated (using my own imei) key to decrypt.
Were you able to use nativePic2Wxam? The signature is too complex so it's too hard for me to guess what parameters to pass in.
Code:
private static native int nativePic2Wxam(String paramString1, String paramString2, int paramInt1, int paramInt2, int paramInt3, int paramInt4, int paramInt5);
Since I don't know how to use nativePic2Wxam, I'm just blindly trusting you that I should be able to decrypt one of the wxgf into wxam and then use nativeWxamToGif() to convert it to a gif. But I'm not sure why my gifs are always null.
I think I do have the libwechatcommon.so lib working because I am able to use other simple functions such as the following:
Code:
public static native int nativeRewindBuffer(long paramLong);
public static native int nativeUninit(long paramLong);
Does nativeWxamToGif() return null if the input byte array is invalid wxam or something?

Tool to extract Samsung Motion Photos to plain jpg and mp4

First off, I've been browsing here for some time, but I've just registered so I'm sorry if I'm breaking any etiquette or conventions on posting.
I ran across goofwear's tool to extract videos and photos from Samsung Motion Photos and thought it was useful. But I really wanted something that I'd be able to throw a whole album of motion photos at, rather than doing one at a time with this or the share app. I looked at the .bat file they used and implemented the same technique in C, so it could quickly process many photos. It's written with some direct Win32 API calls, so it's pretty much Windows only though making a cross platform command line version without the open dialog would be trivial. It is a simple program though, so it should work fine on Linux or Mac through Wine.
Here's the exe.
See the main page of that Github repository for more complete instructions and full source.
How to use:
1. Copy your Motion Photos off your Samsung phone, to your PC. Just copy them out of the DCIM folder.
2. Run the program. An "open" dialog appears. Apart from that there's no GUI on this program.
3. Browse to your photos and select them. Hold ctrl to select more than one, or shift to select a range. Or, ctrl+A to select all in a folder.
4. Click Open.
5. Wait. Depending how many you selected, it might take a little bit. When it's done, a message box will appear.
6. You should see *_photo.jpg and *_video.mp4 files next to the originals in the source directory. Note that this program does not modify the original files. It doesn't even open them with write permissions enabled.
Alternately, drag one or more photos from Windows Explorer onto the exe's icon instead of using the open dialog.
Screenshots:
{
"lightbox_close": "Close",
"lightbox_next": "Next",
"lightbox_previous": "Previous",
"lightbox_error": "The requested content cannot be loaded. Please try again later.",
"lightbox_start_slideshow": "Start slideshow",
"lightbox_stop_slideshow": "Stop slideshow",
"lightbox_full_screen": "Full screen",
"lightbox_thumbnails": "Thumbnails",
"lightbox_download": "Download",
"lightbox_share": "Share",
"lightbox_zoom": "Zoom",
"lightbox_new_window": "New window",
"lightbox_toggle_sidebar": "Toggle sidebar"
}
Version History:
1.0: Initial release
1.1: Added optional compile-time option to delete the original file after extracting
2.0: Refactored a bit, added a proper build system, and multilanguage support; moved to a 'real' Github repo
2.1: It now preserves timestamps when making the extracted files, and now supports a -r flag to rename the original file instead of appending _photo and _video to the extracted ones.
Andylain has written a Chinese language explanation of the usage of this program, and kindly translated the UI to Chinese (Traditional). To use it in Chinese, either have your Windows set to Chinese language, or rename the exe to put _zh at the end of the name. To use it in English on a Chinese Windows, put _en at the end of the name.
If for some reason you want the old version exe, the old "delete-original" exe, or the old source code, you can still have them.
Can you help to make a version that delete the source after successfully exact?
@Andylain Here's one that deletes the original file after splitting it into photo and video.
Oops -- turns out it was smaller because I forgot to include the icon last time. I've updated the link now and it points at a new build that has an icon.
This is super helpful, Thank you! Oh, there is no beautiful icon in this version.
BTW, I am a Chinese blogger live in Taiwan, I blogged this tool and made a Chinese user guide in my blog "andylain‧blogspot‧com/2017/07/SamsungMotionPictureExtractor.html" .
(Sorry, I am a new user and not allowed to post link.)
If you think that's not a great idea, please tell me and I'll delete my post.
@Andylain Thanks for linking me to your post, and thanks for writing a Chinese explanation for how to use it. I'm happy for people to use my program if they find it useful.
Would a proper Chinese language version of the program be helpful, or are most people there able to read enough English to understand the few error and status messages the program has?
@Andylain Please update your link to the "delete original" version to this one. I forgot to include the icon when building it yesterday.
Chupi383 said:
@Andylain Thanks for linking me to your post, and thanks for writing a Chinese explanation for how to use it. I'm happy for people to use my program if they find it useful.
Would a proper Chinese language version of the program be helpful, or are most people there able to read enough English to understand the few error and status messages the program has?
Click to expand...
Click to collapse
I think it's not hard to understand the status messages
However, a proper Chinese language version of the program would be much more helpful for girls and elderly since Samsung sell a lot of pink S8/S7 for this target.
I really love this app (super helpful for me) and I am happy to translate it , but I don't know how to code BTW. :silly: (just a blogger/photographer)
---------- Post added at 12:55 PM ---------- Previous post was at 12:47 PM ----------
Chupi383 said:
@Andylain Please update your link to the "delete original" version to this one. I forgot to include the icon when building it yesterday.
Click to expand...
Click to collapse
Thank you for the update. I update the link to my blog and facebook fanpage
@Andylain I've extracted all the user-facing strings from my code. The text in [square brackets] are comments giving some context for the message that follows, and don't appear anywhere in the program.
Code:
=====
[this message is shown in a dialog box if you click cancel on the open photos dialog]
You can use this program 3 different ways:
GUI USE: Just run it. You'll get an file-open dialog where you can open .jpg files. Use ctrl or shift or drag to select more than one.
DRAG & DROP USE: Drag one or more motion photos onto the icon for this exe.
COMMAND LINE USE: Run this program with one or more motion photo file names as arguments. Remember to use "quotes" if there are spaces in the names.
Any way you run it, the original files will not be modified. The extracted photo and video will be stored in *_photo.jpg and *_video.mp4 where * is the name of the original file, minus the .jpg extension.
Coded by Chupi383. All credit for the method goes to goofwear at the XDA forums. I've just ported their .bat file to plain C and Win32.
=====
[this is the title of the program]
Samsung Motion Photo Batch Extractor
=====
[this is displayed in the open dialog, under the box where you can type a filename, in a drop-down list]
Motion Photos (*.jpg)
All Files (*.*)
=====
[this is the title bar of the open dialog]
Open some Samsung Motion Photos
=====
[this message is shown if the user selected a file with a really really long name]
Skipping too-long path: <filename goes here>
=====
[title bar for error dialogs]
Error
=====
[error if the user selects over the maximum number of files (currently 10000)]
You've selected too many files. I can only do up to 10000 at a time.
=====
[error if the user selects so many files the Windows "open" dialog box gives up]
You've selected too many files. Try selecting fewer files and process them in bunches.
=====
[appended to names of extracted files - not sure if these should be translated]
_photo
_video
=====
[error if enough memory couldn't be allocated, possibly because the computer is out of RAM]
Can't allocate RAM to read <number> bytes from <filename>
=====
[error if a file can't be read for some reason, perhaps a damaged disk]
Skipping due to read error:
<filename>
=====
[error if an output file can't be written, generally because of full disk, read only disk, file exists and is read only, or permissions on the folder]
Can't write to <filename>
=====
[message on completion]
Finished extracting Motion Photos
Photos extracted: <number>
Videos extracted: <number>
=====
[added to the end of the previous success message if some files didn't contain a photo and a video]
<number> files were skipped because they weren't Motion Photos
=====
[title bar of completion message if at least 1 file was processed successfully]
Success
=====
[title bar of completion message if nothing was done successfully]
Failure
=====
["description" shown in right-click->properties dialog for the exe file]
Extract Samsung Motion Photos to jpg and mp4
=====
["product name" shown in properties dialog for the exe file]
Motion Photo Batch Extractor Utility
If you translate these for me, I'll put them back into my program to make either a Chinese or multi-language version.
Here is the translation of Chinese, sorry for the delay of this reply.
BTW, maybe a dialog for user to choose whether delete original files would be a great idea?
Code:
=====
[this message is shown in a dialog box if you click cancel on the open photos dialog]
有三種方式可以使用本軟體:
一:點開軟體後選擇你要轉存的照片,你可以使用Ctrl或是Shift來多選檔案。
二:把你要的照片拖移到本軟體的icon上也能轉存!
三:你也能使用Command Line來處理喔! (記得用”quotes”取代空格)
請放心:無論你怎麼做,原始檔案都不會被修改。轉存成功的檔案將會存在原始檔案位置,並新增為 *_photo.jpg 和 *_video.mp4。
GUI軟體由Chupi383撰寫,軟體內核由XDA forums的goofwear撰寫,Andylain翻譯正體中文,詳細中文使用教學請上「安迪連碎碎念」。
=====
[this is the title of the program]
三星動態相片批次轉存工具
=====
[this is displayed in the open dialog, under the box where you can type a filename, in a drop-down list]
動態相片 (*.jpg)
所有檔案 (*.*)
=====
[this is the title bar of the open dialog]
開啟一些動態相片
=====
[this message is shown if the user selected a file with a really really long name]
已忽略太長的路徑:<filename goes here>
=====
[title bar for error dialogs]
發生錯誤
=====
[error if the user selects over the maximum number of files (currently 10000)]
你一次選太多檔案了。我一次只能處理一萬個檔案。
=====
[error if the user selects so many files the Windows "open" dialog box gives up]
你一次選太多檔案了。嘗試選少一點檔案吧!
=====
[appended to names of extracted files - not sure if these should be translated ]
_photo
_video
=====
[error if enough memory couldn't be allocated, possibly because the computer is out of RAM]
記憶體定位錯誤,無法讀取 <number> bytes 上的 <filename> 檔案,有可能電腦的RAM不足。
=====
[error if a file can't be read for some reason, perhaps a damaged disk]
由於讀取錯誤,已跳過處理:
<filename>
=====
[error if an output file can't be written, generally because of full disk, read only disk, file exists and is read only, or permissions on the folder]
無法寫入 <filename> 可能目的地已滿或是為唯讀。
=====
[message on completion]
動態相片轉存結果:
有 <number> 張照片輸出成功!
有 <number> 個影片輸出成功!
=====
[added to the end of the previous success message if some files didn't contain a photo and a video]
<number> 個檔案被跳過了,因為它們不是三星動態相片。
=====
[title bar of completion message if at least 1 file was processed successfully]
轉存成功
=====
[title bar of completion message if nothing was done successfully]
轉存失敗
=====
["description" shown in right-click->properties dialog for the exe file]
批次把三星動態相片轉存成JPG照片和MP4影片!
=====
["product name" shown in properties dialog for the exe file]
動態相片轉存工具
[/CODE]
I'm sorry I'm being slow on this. My work has been especially busy lately. This thread isn't forgotten -- I'll make the translated app once I'm over this hump in workload.
Chupi383 said:
I'm sorry I'm being slow on this. My work has been especially busy lately. This thread isn't forgotten -- I'll make the translated app once I'm over this hump in workload.
Click to expand...
Click to collapse
That is very nice of you to do this!
Take your time and I am willing to help!
@Andylain Thank you for the translation! I've finally got a working bilingual exe -- see the original post. Sorry it took a while.
The "delete original" feature is now built into the main exe. You use the /d command line option to activate it. To make a drag-and-drop icon that will delete the original, right-drag it and create shortcut. Then right click the shortcut, go to properties, shortcut tab, and add a space and /d to the end of the target, after the closing quote.
BTW, if you could, please link people to "https://github.com/joemck/ExtractMotionPhotos/releases/latest" to get the exe -- that's a special link that will always go to the latest version I've posted there.
Coming up, I'd like to add an option to add/remove Explorer context menu integration.
This is absolutely amazing. Thank you so much!!
Chupi383 said:
First off, I've been browsing here for some time, but I've just registered so I'm sorry if I'm breaking any etiquette or conventions on posting.
I ran across goofwear's tool to extract videos and photos from Samsung Motion Photos and thought it was useful. But I really wanted something that I'd be able to throw a whole album of motion photos at, rather than doing one at a time with this or the share app. I looked at the .bat file they used and implemented the same technique in C, so it could quickly process many photos. It's written with some direct Win32 API calls, so it's pretty much Windows only though making a cross platform command line version without the open dialog would be trivial. It is a simple program though, so it should work fine on Linux or Mac through Wine.
Here's the exe.
See the main page of that Github repository for more complete instructions and full source.
How to use:
1. Copy your Motion Photos off your Samsung phone, to your PC. Just copy them out of the DCIM folder.
2. Run the program. An "open" dialog appears. Apart from that there's no GUI on this program.
3. Browse to your photos and select them. Hold ctrl to select more than one, or shift to select a range. Or, ctrl+A to select all in a folder.
4. Click Open.
5. Wait. Depending how many you selected, it might take a little bit. When it's done, a message box will appear.
6. You should see *_photo.jpg and *_video.mp4 files next to the originals in the source directory. Note that this program does not modify the original files. It doesn't even open them with write permissions enabled.
Alternately, drag one or more photos from Windows Explorer onto the exe's icon instead of using the open dialog.
Screenshots:
Version History:
1.0: Initial release
1.1: Added optional compile-time option to delete the original file after extracting
2.0: Refactored a bit, added a proper build system, and multilanguage support; moved to a 'real' Github repo
Andylain has written a Chinese language explanation of the usage of this program, and kindly translated the UI to Chinese (Traditional). To use it in Chinese, either have your Windows set to Chinese language, or rename the exe to put _zh at the end of the name. To use it in English on a Chinese Windows, put _en at the end of the name.
If for some reason you want the old version exe, the old "delete-original" exe, or the old source code, you can still have them.
Click to expand...
Click to collapse
Thanks
Just wanted to add my thanks for this fantastic tool.
I can't quite believe there's no official Samsung Motion Photo viewer (The Windows app doesn't appear to play Motion Photos). And there's practically no 3rd party support around for what you would think would be in high demand.
So I registered on XDA to show my appreciation. Thanks again.
Chupi383 said:
It's written with some direct Win32 API calls, so it's pretty much Windows only though making a cross platform command line version without the open dialog would be trivial. It is a simple program though, so it should work fine on Linux or Mac through Wine.
Click to expand...
Click to collapse
I also wanted to say thanks! That program is a wish-come-true! I wanted to create some script to batch-process JPG's and extract videos but that .exe is even better.
I have just one suggestion. Would you be able to modify program to set video's
Windows date modified
and maybe even date taken (EXIF) attributes
values to correct date, not current date when the extraction takes place?
It would help a lot, because Gallery apps or cloud services like Google Photos shows videos sorted / grouped by the date attribute which is different thandate of photo (when you extract old photos from last couple of months you will have a mess).
For now only way is to use some bulk date changer software to fix that - changing dates based on filename pattern, but it would be a nice feature for your exe. Do you think it's doable?
And yes. I created my XDA account just to say thank you for your great program!
Thanks a lot for this tool, Chupi383!
I'd like to "vote" for konieckropka's suggestion as well. Having the corrent timestamps on the extracted images and videos would be important for a correct file management.
The tool basically needs to read the original "modified timestamp" and set it to the created files (same for "created timestamp").
Could this please be added?
Fair point. I'll add it in a bit when I have the time.
Sorry for the delay, guys. I've added timestamp preservation and a -r flag to rename the original instead of adding _photo and _video. You can use -dr to delete the original and don't append _photo or _video to the extracted files.
This is super helpful, Thank you!
Chupi383 said:
Sorry for the delay, guys. I've added timestamp preservation and a -r flag to rename the original instead of adding _photo and _video. You can use -dr to delete the original and don't append _photo or _video to the extracted files.
Click to expand...
Click to collapse
Works perfectly now! THANKS A LOT!!

Categories

Resources