aMSN Forums

aMSN Support => Linux => Topic started by: hyriand on March 12, 2007, 08:54:52 pm



Title: mimictools 1.0.1 and mimicdecoder 1.0.1.1
Post by: hyriand on March 12, 2007, 08:54:52 pm
Hey everyone, I just released three small tools I wrote that might be of interest to you:

mimic2rgb - Converts mimic data (like your amsn webcam history's .cam files) into raw RGB video streams which you can then process into anything you like (f.e. to xvid using transcode). This depends on libmimic (which you can easily find on google).

mimicdatregen - Regenerates an amsn .dat file by analyzing the .cam file.

mimicdecoder - A graphical user interface around mimic2rgb, written in python using a Qt3 interface (sorry about that, but my tcl/tk skills suck). Mimicdecoder scans your amsn history for webcam sessions and presents them in a nice tree. Pick one and you can convert it to a raw RGB stream or an XVID file using transcode (assuming that transcode is installed). Mimicdecoder also depends on mimic2rgb.

Note that these two tools were developed to work on linux and using them on another platform will most likely take a little bit of porting effort.

Get the sources at:
http://thegraveyard.org/files/mimictools-1.0.1.tar.gz (contains mimic2rgb and mimicdatregen)
http://thegraveyard.org/files/mimicdecoder-1.0.1.1.tar.gz (contains mimicdecoder)

Or, debian packages (made by MurDoK, tested on Ubunty Feisty Fawn, should work on all intel debian machines):
http://thegraveyard.org/files/libmimic1.0.4_i386.deb (contains libmimic 1.0.4)
http://thegraveyard.org/files/mimic-tools1.0.1.deb (contains mimictools 1.0.1 and mimicdecoder 1.0.1.1)

Screenshot (of mimicdecoder 1.0.1):
(http://thegraveyard.org/media/mimicdecoder-1.0.1.jpg)

Changes in mimicdecoder 1.0.1.1
  • properly sort the webcam sessions


Changes in mimicdecoder and mimictools 1.0.1
  • mimic2rgb can now output any rgba combination and order (f.e. bgr or argb)
  • added mimicdatregen that can re-create index files for .cam files
  • added preview function to mimicdecoder
  • mimicdecoder now also looks in archived directories
  • probably stuff I forgot about


Title: mimictools 1.0.1 and mimicdecoder 1.0.1.1
Post by: kakaroto on March 13, 2007, 02:35:33 am
wow, that's really great!
congrats on making such a tool! there's already a solution for windows, so one for linux is very welcomed. Thanks!
I'll move the thread to the linux forums and sticky it so people can see it easily.


Title: mimictools 1.0.1 and mimicdecoder 1.0.1.1
Post by: viniciuscordeiro on March 13, 2007, 02:13:28 pm
See the output when I tried to convert to XVID (I installed libmimic and run ldconfig):

Code:
transcode v1.0.3rc0 (C) 2001-2003 Thomas Oestreich, 2003-2004 T. Bitterberg
[transcode] auto-probing source /dev/stdin (failed)
[transcode] V: import format    | unknown  (V=raw|A=null)
[transcode] V: import frame     | 320x240  1.33:1  
[transcode] V: bits/pixel       | 5.859
[transcode] V: decoding fps,frc | 4.000,0
[transcode] A: import format    | 0x2000  AC3          [48000,16,2]
[transcode] A: export           | disabled
[transcode] V: encoding fps,frc | 4.000,0
[transcode] A: bytes per frame  | 48000 (48000.000000)
[transcode] A: adjustment       | 0@1000
[transcode] V: IA32/AMD64 accel | sse2 (sse2 sse mmxext mmx asm C)
tc_memcpy: using sse for memcpy
[transcode] V: video buffer     | 10 @ 320x240
[import_null.so] v0.2.0 (2002-01-19) (video) null | (audio) null
[import_raw.so] v0.3.2 (2002-11-10) (video) RGB/YUV | (audio) PCM
[transcode] warning : /usr/lib/libavcodec.so.51: undefined symbol: faacDecOpen
[transcode] warning : (dl_loader.c) loading "/usr/lib/transcode/export_xvid.so" failed
[transcode] warning : (encoder.c) loading video export module failed
[transcode] warning : failed to init export modules
[transcode] critical: plug-in initialization failed


I have the libavcodec-CVS.so and I linked dinamically to livavcodec.so.51 and the file export_xvid.so exist on that directory...
What can I do?


Title: mimictools 1.0.1 and mimicdecoder 1.0.1.1
Post by: kakaroto on March 13, 2007, 03:02:54 pm
I think this is the wrong place to post such a question, it's either amsn related, or related to this utility. This obviously looks like an error coming from your own transcode/libavcodec installation. Look at the line here :
Quote

[transcode] warning : /usr/lib/libavcodec.so.51: undefined symbol: faacDecOpen

obviously, your libavcodec has some missing symbols, probably a library it depends on which isn't installed. Please make sure your transcode/libavcodec/xvid installations are correctly installed before complaining about this utility.
if hyriand wants to help you debug this situation, he can do it, but I just want to make sure you understand that he has no obligation to do so and that your question is out of topic here.
thanks


Title: mimictools 1.0.1 and mimicdecoder 1.0.1.1
Post by: hyriand on March 13, 2007, 03:07:45 pm
Quote from: "viniciuscordeiro"
See the output when I tried to convert to XVID (I installed libmimic and run ldconfig):

Code:

[transcode] warning : /usr/lib/libavcodec.so.51: undefined symbol: faacDecOpen
[transcode] warning : (dl_loader.c) loading "/usr/lib/transcode/export_xvid.so" failed
[transcode] warning : (encoder.c) loading video export module failed
[transcode] warning : failed to init export modules
[transcode] critical: plug-in initialization failed


I have the libavcodec-CVS.so and I linked dinamically to livavcodec.so.51 and the file export_xvid.so exist on that directory...
What can I do?


I'm no expert with transcode, but it looks like the export_xvid plugin was linked against a different version of libavcodec than you have currently installed on your system.

Could you try editing mimicdecoder and, around line 122, change the line that starts with cmd2= to:
Code:
cmd2 = 'transcode -x raw,null -y ffmpeg,null -F mpeg4 -f 4 -g %ix%i --use_rgb -i /dev/stdin -o "%s"' % (w, h, path)


That'll make transcode use the ffmpeg mpeg4 / divx codec. Colors might be off, but that can be fixed.


Title: mimictools 1.0.1 and mimicdecoder 1.0.1.1
Post by: kakaroto on March 13, 2007, 03:50:12 pm
I think transcode tried to load export_xvid which dependent on libavcodec (.so.51) so when transcode tried to load export_xvid, then libavcodec.so.51 gets loaded at the same time but it failed (because of the undefined symbol), so export_xvid.so failed to load (because its dependency failed to load). I think you should look at the 'faacDecOpen', why it doesn't find that symbol...
http://www.google.com/search?client=opera&rls=en&q=faacdecopen&sourceid=opera&num=100&ie=utf-8&oe=utf-8
seems to happen to libavcodec.so.51, so maybe it's the cvs version that is broken, you should maybe try using a stable release... at least, you won't be complaining about issues caused by instability of the tools because you use a cvs version.


Title: mimictools 1.0.1 and mimicdecoder 1.0.1.1
Post by: hyriand on March 13, 2007, 10:37:36 pm
Here's a list of things that'll be in versions 1.0.1:

mimic2rgb
- will be able to output any R8 G8 B8 combination (f.e. RGB24, BGR24, ARGB, etc). Mimic2rgb currently only outputs bgr because transcode's xvid export plugins seems to require that.

mimicdecoder
- preview webcam sessions
- will be able to use ffmpeg instead of transcode


Title: mimictools 1.0.1 and mimicdecoder 1.0.1.1
Post by: hyriand on March 14, 2007, 01:46:25 am
People experiencing the libavcodec.so problem can edit mimicdecoder.py and change the forementioned line to:

Code:
cmd2 = 'ffmpeg -f rawvideo -pix_fmt bgr24 -s %ix%i -r 4 -i - -f avi -vcodec xvid -y "%s"' % (w, h, path)


It'll use ffmpeg directly instead of transcode after which it might work.


Title: mimictools 1.0.1 and mimicdecoder 1.0.1.1
Post by: Fenix-TX on March 14, 2007, 05:52:21 pm
Hi! Thanks for your great application, but mimicdecoder doesn't find any seesion of webcams, because my sessions are archived by "Month Year", so only works if webcam sessions are on path ./amsn/<profile>/webcam and those files are only the current month, and the next month those sessions will be automatically archieved by amsn on "March 2007". Can you add an option to select the path or search if there are folders inside on webcam folder? Thanks.


Title: mimictools 1.0.1 and mimicdecoder 1.0.1.1
Post by: hyriand on March 14, 2007, 09:10:11 pm
Quote from: "Fenix-TX"
Hi! Thanks for your great application, but mimicdecoder doesn't find any seesion of webcams, because my sessions are archived by "Month Year", so only works if webcam sessions are on path ./amsn/<profile>/webcam and those files are only the current month, and the next month those sessions will be automatically archieved by amsn on "March 2007". Can you add an option to select the path or search if there are folders inside on webcam folder? Thanks.


Ah, I never realized amsn could store them that way. Sure, I'll make it search subfolders of 'webcam' folders as well. Expect it in version 1.0.1.


Title: mimictools 1.0.1 and mimicdecoder 1.0.1.1
Post by: Fenix-TX on March 14, 2007, 10:51:41 pm
Quote from: "hyriand"
Quote from: "Fenix-TX"
Hi! Thanks for your great application, but mimicdecoder doesn't find any seesion of webcams, because my sessions are archived by "Month Year", so only works if webcam sessions are on path ./amsn/<profile>/webcam and those files are only the current month, and the next month those sessions will be automatically archieved by amsn on "March 2007". Can you add an option to select the path or search if there are folders inside on webcam folder? Thanks.


Ah, I never realized amsn could store them that way. Sure, I'll make it search subfolders of 'webcam' folders as well. Expect it in version 1.0.1.


Thanks!  :D


Title: mimictools 1.0.1 and mimicdecoder 1.0.1.1
Post by: Rv_Charton on March 15, 2007, 10:05:42 pm
Thanks! Great tool, I've been looking for such a thing for a long time!
However I experience a problem: my .cam file seems to be too big for mimic2rgb (428 Mb), and mimicdecoder, which would allow me to select the part of the stream I want to convert, don't find any stream; I think that's because I lately experienced lot's of issues with my aMSN connection, so I kept the .cam file and deleted all the other files in .amsn/, and now I remember there was another file in the webcam directory, hardly same name, that is now missing. May be a kind of index file.
Where could I find a example of this file, so I could cheat the program or make a new one that suit my own file?
Thanks!


Title: mimictools 1.0.1 and mimicdecoder 1.0.1.1
Post by: hyriand on March 16, 2007, 12:27:54 am
Quote from: "Rv_Charton"
Thanks! Great tool, I've been looking for such a thing for a long time!
However I experience a problem: my .cam file seems to be too big for mimic2rgb (428 Mb), and mimicdecoder, which would allow me to select the part of the stream I want to convert, don't find any stream; I think that's because I lately experienced lot's of issues with my aMSN connection, so I kept the .cam file and deleted all the other files in .amsn/, and now I remember there was another file in the webcam directory, hardly same name, that is now missing. May be a kind of index file.
Where could I find a example of this file, so I could cheat the program or make a new one that suit my own file?
Thanks!


Along with the .cam file, there came a .dat file that tells amsn (or mimicdecoder, but not mimic2rgb) where in the .cam file the sessions start (and end). Re-creating that file with the correct session starts / ends would be impossible. It's pretty easy to create a .dat file that covers the entire .cam file though. If the .cam file you saved is called 'mycontact.cam' create a file called 'mycontact.dat' with the following text in it:
Code:
0 0


Have you tried just running mimic2rgb on the .cam file to produce a raw file? 428 MB shouldn't be too big I think. You could try to pipe the output of mimic2rgb directly into transcode:

Code:
mimic2rgb mycontact.cam - | transcode -x raw,null -y xvid,null -f 4 -g 320x240 --use_rgb -i /dev/stdin -o mycontact.avi


Title: mimictools 1.0.1 and mimicdecoder 1.0.1.1
Post by: Rv_Charton on March 16, 2007, 11:29:04 am
Quote from: "hyriand"

Have you tried just running mimic2rgb on the .cam file to produce a raw file? 428 MB shouldn't be too big I think. You could try to pipe the output of mimic2rgb directly into transcode:

Code:
mimic2rgb mycontact.cam - | transcode -x raw,null -y xvid,null -f 4 -g 320x240 --use_rgb -i /dev/stdin -o mycontact.avi


Thanks for the answer.
I've tried that. But mimic2rgb stops after a while (at always the same place... hope my file is not corrupted...), with this error:

Code:
zsh: file size limit exceeded (core dumped)


Thanks to your trick and to mimicdecoder, I saw it corresponds to 17% of the file, 3:34:39 of video, for a video that should be more than 20 hours long...
Do you know what it could be?


Title: mimictools 1.0.1 and mimicdecoder 1.0.1.1
Post by: hyriand on March 16, 2007, 12:12:04 pm
Quote from: "Rv_Charton"

Thanks for the answer.
I've tried that. But mimic2rgb stops after a while (at always the same place... hope my file is not corrupted...), with this error:

Code:
zsh: file size limit exceeded (core dumped)


Thanks to your trick and to mimicdecoder, I saw it corresponds to 17% of the file, 3:34:39 of video, for a video that should be more than 20 hours long...
Do you know what it could be?


zsh (your shell) is telling you the file is indeed too large. I think it concerns the intermediate output in the pipe. Could you try a different shell (bash f.e.)?


Title: mimictools 1.0.1 and mimicdecoder 1.0.1.1
Post by: Rv_Charton on March 16, 2007, 04:27:03 pm
I tried with bash but exactly the same behavior... and the same output file.
About reconstructing the .dat file, could it be done by using the facts that mimicdecoder exits with an error if the .dat file is wrong, and that the first number (the unix time) is certainly pointless (otherwise the "double 0" trick would not work)? I mean by iterating the second number and test the execution of mimicdecoder.
A problem could be that saying 1s per test it would take 14 years to achieve the program on my 428M file...
However it could be done by estimating where the sessions start, and maybe by selecting in the mimicdecoder's code the part that leads to the error.
Juste an idea, please tell me if I'm rambling...

However I'm not yet good enough about shell scripts to do this (but I know a little, so maybe I could manage that), and I know nothing about python...


Title: mimictools 1.0.1 and mimicdecoder 1.0.1.1
Post by: hyriand on March 16, 2007, 06:03:59 pm
Quote from: "Rv_Charton"
I tried with bash but exactly the same behavior... and the same output file.
About reconstructing the .dat file, could it be done by using the facts that mimicdecoder exits with an error if the .dat file is wrong, and that the first number (the unix time) is certainly pointless (otherwise the "double 0" trick would not work)? I mean by iterating the second number and test the execution of mimicdecoder.
A problem could be that saying 1s per test it would take 14 years to achieve the program on my 428M file...
However it could be done by estimating where the sessions start, and maybe by selecting in the mimicdecoder's code the part that leads to the error.
Juste an idea, please tell me if I'm rambling...

However I'm not yet good enough about shell scripts to do this (but I know a little, so maybe I could manage that), and I know nothing about python...


About the large file problem: You could try making mimic2rgb decode the entire file to a raw file. But, once the raw file becomes larger than 2GB, it'll be a problem (and I have no data or free space to test an alternative, using 64bit files). Try mimic2rgb <camfile> <somefiles.raw> and check how far that gets. Just be sure that you have a lot of free diskspace. I might be able to tweak the Makefile so it'll use 64bit file access for you to test.

About reconstructing the .dat file: There are no indicators in the .cam file on where a session begins or ends. The only indication of a 'correct' starting point is that the mimic data will start with a key frame (a 'full' frame), such keyframes happen every so often in a mimic stream. It'd be doable to create an .dat file that enumerates all the keyframes, but that'll just leave you with a HUGE amount of sessions.

Now that I think of it though, I'm not sure wether keyframes are supposed to happen every x frames. If they do, a 'premature' keyframe might indicate a new session as would a resolution change. I'll have to look into that, but don't have the time for that right now.

Another option might be splitting the .cam file up in files of say 50mb. It'd have to cut it right after such a keyframe, so a little tool to do this might be necessary (I think I'll call it mimicslicer).

I'll get back to you on those last two ideas. Which platform do you use btw? And which filesystem?


Title: mimictools 1.0.1 and mimicdecoder 1.0.1.1
Post by: Rv_Charton on March 16, 2007, 06:31:40 pm
Quote from: "hyriand"

About the large file problem: You could try making mimic2rgb decode the entire file to a raw file. But, once the raw file becomes larger than 2GB, it'll be a problem (and I have no data or free space to test an alternative, using 64bit files). Try mimic2rgb <camfile> <somefiles.raw> and check how far that gets. Just be sure that you have a lot of free diskspace. I might be able to tweak the Makefile so it'll use 64bit file access for you to test.


It goes as far as you said: the raw file is 2GB and then it gives me the error message I gave you above.

Quote from: "hyriand"

About reconstructing the .dat file: There are no indicators in the .cam file on where a session begins or ends. The only indication of a 'correct' starting point is that the mimic data will start with a key frame (a 'full' frame), such keyframes happen every so often in a mimic stream. It'd be doable to create an .dat file that enumerates all the keyframes, but that'll just leave you with a HUGE amount of sessions.

Now that I think of it though, I'm not sure wether keyframes are supposed to happen every x frames. If they do, a 'premature' keyframe might indicate a new session as would a resolution change. I'll have to look into that, but don't have the time for that right now.

Another option might be splitting the .cam file up in files of say 50mb. It'd have to cut it right after such a keyframe, so a little tool to do this might be necessary (I think I'll call it mimicslicer).

I'll get back to you on those last two ideas. Which platform do you use btw? And which filesystem?


Indeed, splitting the .cam file was what I was thinking to do (without knowing how), althought I didn't know about keyframes, which regarding to the problem is quite a good news!
Thanks for your help!
I'm using Ubuntu Edgy Eft on a laptop, 512M of RAM and cpu mobile AMD Athlon(tm) XP 2000+. Filesystem is Ext2/Ext3.


Title: mimictools 1.0.1 and mimicdecoder 1.0.1.1
Post by: kakaroto on March 16, 2007, 08:01:23 pm
spliting the file needs to be done an exact keyframe position, otherwise the second part won't play ,search the forums, something similar was already discussed but I can't remember if a solution was ever found...
about the mimicsplicer finding the sessions, not sure if it will work, the keyframe can change from one stream to another, or it could be all the same, I don't know, it's not a 'correct' method, although it might work a little... about resolution change, I think it's too rare to consider it as a helping factor...
good luck!

KKRT


Title: mimictools 1.0.1 and mimicdecoder 1.0.1.1
Post by: hyriand on March 17, 2007, 09:50:13 am
Quote from: "kakaroto"
spliting the file needs to be done an exact keyframe position, otherwise the second part won't play ,search the forums, something similar was already discussed but I can't remember if a solution was ever found...
about the mimicsplicer finding the sessions, not sure if it will work, the keyframe can change from one stream to another, or it could be all the same, I don't know, it's not a 'correct' method, although it might work a little... about resolution change, I think it's too rare to consider it as a helping factor...
good luck!

KKRT


I agree, it's a dirty hack.. But if it works it works, right? It'll be easy to investigate. Mimicslicer could also cut at every so often MB (making sure it cuts right before a keyframe).


Title: mimictools 1.0.1 and mimicdecoder 1.0.1.1
Post by: hyriand on March 17, 2007, 05:08:27 pm
Ok, after a quick analysis it turns out that keyframes happen every 45 frames in a mimic stream as sent by msn messenger (probably amsn too) and I wrote a small tool that'll detect parts of the stream where an early keyframe is present which indicates the start of a new session. It'll also trigger a new session when the resolution changes. It's called mimicdatregen and is now part of mimictools (which is mimic2rgb + mimicdatregen). The output format is compatible with aMSN and mimicdecoder's .dat files.

Here's an early source tarball of mimictools 1.0.1 (not tested very thoroughly so consider it pre-release). It contains mimic2rgb and mimicdatregen: mimictools-20070317.tar.gz (http://thegraveyard.org/files/mimictools-20070317.tar.gz)

The Makefile also contains a line to enable 64-bit file support on linux (you'll have to remove a '#' sign to enable it. The Makefile will tell you where). I consider this experimental though as I've never actually tested it myself.


Title: mimictools 1.0.1 and mimicdecoder 1.0.1.1
Post by: Rv_Charton on March 17, 2007, 07:40:49 pm
Great! Thanks a lot!
So I tested mimicdatregen . It works in the sense it finds several sessions. But the first problem I experienced was that the .dat file I obtained looked like:
Quote
1174149936 01174149936 303266721174149936 306294241174149936 353815601174149936 36337384

I corrected it manually thanks to the repeated pattern, but you may  want to fix that in your code.
After that mimicdecoder works, and I can extract specific parts of the stream, so the concept seems to work just fine (even though the sessions are not always real sessions, but I don't mind).
However with my file, here is the output of mimicdatregen:
Quote

Detected new session: early keyframe.
(...)
Detected new session: early keyframe.
mimic2rgb: Invalid header.

I don't know what means this error. I looked at the code but as I know nothing about python...

Otherwise I tried the extended version of mimic2rgb. With the pipe throught transcode, it stops at the same place. But with mimic2rgb alone the output raw file is 5Go big yet, and it is not finished! Looks like it works.
Now I just hope I have enough disk space  :wink: .


Title: mimictools 1.0.1 and mimicdecoder 1.0.1.1
Post by: hyriand on March 17, 2007, 09:54:59 pm
Quote from: "Rv_Charton"
Great! Thanks a lot!
So I tested mimicdatregen . It works in the sense it finds several sessions. But the first problem I experienced was that the .dat file I obtained looked like:
Quote
1174149936 01174149936 303266721174149936 306294241174149936 353815601174149936 36337384

I corrected it manually thanks to the repeated pattern, but you may  want to fix that in your code.

Oops.. Fixed that. Shouldn't happen if you compile with large file support by the way. That code path seems to work properly.

Quote from: "Rv_Charton"
After that mimicdecoder works, and I can extract specific parts of the stream, so the concept seems to work just fine (even though the sessions are not always real sessions, but I don't mind).
However with my file, here is the output of mimicdatregen:
Quote

Detected new session: early keyframe.
(...)
Detected new session: early keyframe.
mimic2rgb: Invalid header.

I don't know what means this error. I looked at the code but as I know nothing about python...

Like we discussed earlier, the session prediction technique isn't perfect. Nothing can be done about that. That error means that the input stream (the .cam file) is corrupted. Each frame has a small header before it which contains among other things, a magic type identifier (the 'fourcc'). In this case mimicdatregen tells you the header was corrupted (or the data is of an unsupported type) and mimicdatregen can't continue its work. Very little can be done about it, but maybe I can convince it to look for a header further in the file.

Quote from: "Rv_Charton"
Otherwise I tried the extended version of mimic2rgb. With the pipe throught transcode, it stops at the same place. But with mimic2rgb alone the output raw file is 5Go big yet, and it is not finished! Looks like it works.
Now I just hope I have enough disk space  :wink: .

Yeah, it seems your shells don't handle large files properly when they go through a pipe (I have no idea if that's a common problem though).


Title: mimictools 1.0.1 and mimicdecoder 1.0.1.1
Post by: hyriand on March 17, 2007, 11:12:08 pm
Ok, new snapshot: mimictools-20070317-2.tar.gz (http://thegraveyard.org/files/mimictools-20070317-2.tar.gz)

Changes:
- fixed mimicdatregen's output when compiled without large file support
- merged shared code between mimic2rgb and mimicdatregen into a single helper header
- search for a valid header if a corrupted header is encountered

edit: fixed url


Title: mimictools 1.0.1 and mimicdecoder 1.0.1.1
Post by: Rv_Charton on March 18, 2007, 03:05:09 pm
Thanks!
So I tried it.

-mimicdatgen:
Here's the kind of things I get:
Quote

mimicdatregen: Invalid header (invalid header length: 0x4576).
mimicdatregen: Invalid header (invalid fourcc: 0xACD297AC).
mimicdatregen: Scanning for continuation point.
mimicdatregen: Found continuation point.

and it goes to the end of the file. So it seems to work.
So after that I launched mimicdecoder, and for the first sessions there's no problem, but for the sessions after the fisrt litigious point, when trying to convert it in raw stream, I get:
Quote

mimic2rgb: Invalid header (invalid header length: 0x72E0).
mimic2rgb: Invalid header (invalid fourcc: 0x570C78B5).
mimic2rgb: Scanning for continuation point.
mimic2rgb: Seek failed while scanning for continuation point.
Traceback (most recent call last):
  File "./mimicdecoder", line 98, in run
    stdin_pipe.write(block)
IOError: [Errno 32] Relais brisé (pipe)

 :? Do I have to worry about it?

However mimic2rgb gave me a nice 13Go file, that I tried to convert into xvid using transcode. But it just stops at always the same point, without any error message...
I've been looking in the net for a while about any tool to read that raw RGB stream, so I could figure out if the stream is really damaged, I didn't find anyone. Do you know one?


Title: mimictools 1.0.1 and mimicdecoder 1.0.1.1
Post by: hyriand on March 18, 2007, 06:06:39 pm
Quote from: "Rv_Charton"
Thanks!
So I tried it.

-mimicdatgen:
Here's the kind of things I get:
Quote

mimicdatregen: Invalid header (invalid header length: 0x4576).
mimicdatregen: Invalid header (invalid fourcc: 0xACD297AC).
mimicdatregen: Scanning for continuation point.
mimicdatregen: Found continuation point.

and it goes to the end of the file. So it seems to work.
So after that I launched mimicdecoder, and for the first sessions there's no problem, but for the sessions after the fisrt litigious point, when trying to convert it in raw stream, I get:
Quote

mimic2rgb: Invalid header (invalid header length: 0x72E0).
mimic2rgb: Invalid header (invalid fourcc: 0x570C78B5).
mimic2rgb: Scanning for continuation point.
mimic2rgb: Seek failed while scanning for continuation point.
Traceback (most recent call last):
  File "./mimicdecoder", line 98, in run
    stdin_pipe.write(block)
IOError: [Errno 32] Relais brisé (pipe)

 :? Do I have to worry about it?

That's probably because of a bug in mimic2datregen. Here's a new version (hopefully this'll finally work): mimictools-20070318.tar.gz (http://thegraveyard.org/files/mimictools-20070318.tar.gz). With this version you won't be able to extract the session with the broken frame though, at least not with mimicdecoder. The session before and after it should work however.

Quote from: "Rv_Charton"
However mimic2rgb gave me a nice 13Go file, that I tried to convert into xvid using transcode. But it just stops at always the same point, without any error message...
I've been looking in the net for a while about any tool to read that raw RGB stream, so I could figure out if the stream is really damaged, I didn't find anyone. Do you know one?

It's probably the large file problem again. However, you should be able to split the raw stream into smaller pieces since the frame size is entirely predictable.

Each file will hold 9000 raw frames (9000 * 320 * 240 * 3 ~= 1.9GB:
Code:
$ dd if=webcam.raw of=webcam.raw.1 bs=230400 count=9000
$ dd if=webcam.raw of=webcam.raw.2 bs=230400 count=9000 skip=9000
$ dd if=webcam.raw of=webcam.raw.3 bs=230400 count=9000 skip=18000
etc...

Do that about 7 times and you should end up with 7 files of at most 2GB. You can convert those individually.


Title: mimictools 1.0.1 and mimicdecoder 1.0.1.1
Post by: Rv_Charton on March 18, 2007, 06:58:59 pm
Quote from: "hyriand"

That's probably because of a bug in mimic2datregen. Here's a new version (hopefully this'll finally work): mimictools-20070318.tar.gz (http://thegraveyard.org/files/mimictools-20070318.tar.gz). With this version you won't be able to extract the session with the broken frame though, at least not with mimicdecoder. The session before and after it should work however.

It works, great! Happiness! :lol: Thanks! Congratulations!
Now I don't need anymore to split the raw file, and I don't have enough free space however. But thanks for that too.

There is one more trouble, that was not there with the first version of mimic2rgb... Now the video is blue; I can see it but the general colour is blue.
However those tools are really great and I think will be usefull to many people.


Title: mimictools 1.0.1 and mimicdecoder 1.0.1.1
Post by: hyriand on March 18, 2007, 09:35:57 pm
Quote from: "Rv_Charton"
Quote from: "hyriand"

That's probably because of a bug in mimic2datregen. Here's a new version (hopefully this'll finally work): mimictools-20070318.tar.gz (http://thegraveyard.org/files/mimictools-20070318.tar.gz). With this version you won't be able to extract the session with the broken frame though, at least not with mimicdecoder. The session before and after it should work however.

It works, great! Happiness! :lol: Thanks! Congratulations!
Now I don't need anymore to split the raw file, and I don't have enough free space however. But thanks for that too.

There is one more trouble, that was not there with the first version of mimic2rgb... Now the video is blue; I can see it but the general colour is blue.
However those tools are really great and I think will be usefull to many people.

Ah, right... That's because the old mimic2rgb outputted bgr (which the xvid plugin for transcode expects) and mimic2rgb defaults to rgb.

Edit mimicdecoder, find the line that reads:
Code:
cmd1 = 'mimic2rgb - -'

and change it to:
Code:
cmd1 = 'mimic2rgb - - bgr'


Another option is using ffmpeg, which expects rgb input. The change required to make mimicdecoder use the ffmpeg plugin is described somewhere else in this topic.


Title: mimictools 1.0.1 and mimicdecoder 1.0.1.1
Post by: amsn_fan on March 28, 2007, 11:42:53 pm
I noticed your GUI only finds cam files in the current month for me, it doesnt find anything for last month i.e. in the "February 2007" directory etc.

Apart from that, works fine! Well done!

Edit: Also noticed someone already told you about this!


Title: mimictools 1.0.1 and mimicdecoder 1.0.1.1
Post by: Kreuger on March 31, 2007, 03:09:52 am
It creates the file for me but it's always only 2.0kb in size and when I open it with vlc, nothing shows. I tried running it through a shell for any extra info and it gives me a similar error to the first guy:

Quote
./mimicdecoder
X Error: BadDevice, invalid or uninitialized input device 169
  Major opcode:  147
  Minor opcode:  3
  Resource id:  0x0
Failed to open device
X Error: BadDevice, invalid or uninitialized input device 169
  Major opcode:  147
  Minor opcode:  3
  Resource id:  0x0
Failed to open device
sh: mimic2rgb: not found
transcode v1.0.2 (C) 2001-2003 Thomas Oestreich, 2003-2004 T. Bitterberg
[transcode] auto-probing source /dev/stdin (failed)
[transcode] V: import format    | unknown  (V=raw|A=null)
[transcode] V: import frame     | 320x240  1.33:1
[transcode] V: bits/pixel       | 5.859
[transcode] V: decoding fps,frc | 4.000,0
[transcode] A: import format    | 0x2000  AC3          [48000,16,2]
[transcode] A: export           | disabled
[transcode] V: encoding fps,frc | 4.000,0
[transcode] A: bytes per frame  | 48000 (48000.000000)
[transcode] A: adjustment       | 0@1000
[transcode] V: IA32/AMD64 accel | sse (sse 3dnowext 3dnow mmxext mmx asm C)
tc_memcpy: using sse for memcpy
[transcode] V: video buffer     | 10 @ 320x240
[import_null.so] v0.2.0 (2002-01-19) (video) null | (audio) null
[import_raw.so] v0.3.2 (2002-11-10) (video) RGB/YUV | (audio) PCM
[export_null.so] v0.1.2 (2001-08-17) (video) null | (audio) null
[export_xvid4.so] v0.0.5 (2003-12-05) (video) XviD 1.0.x series (aka API 4.0) |                                                                            (audio) MPEG/AC3/PCM
[import_raw.so] tcextract -i "/dev/stdin" -d 0 -x rgb | tcextract -a 0 -x rgb -d                                                                            0
[export_xvid4.so] Neither './xvid4.cfg' nor '~/.transcode/xvid4.cfg'
[export_xvid4.so] found. Default settings will be used instead.
tc_memcpy: using sse for memcpy
tc_memcpy: using sse for memcpy
(extract_rgb.c) no file type specified, assuming RAW stream

clean up | frame threads | unload modules | cancel signal | internal threads | d                                                                           one
[transcode] encoded 0 frames (0 dropped, 0 cloned), clip length   0.00 s
Traceback (most recent call last):
  File "./mimicdecoder", line 98, in run
    stdin_pipe.write(block)
IOError: [Errno 32] Broken pipe


Title: mimictools 1.0.1 and mimicdecoder 1.0.1.1
Post by: vivia on March 31, 2007, 02:37:44 pm
Broken pipe?....
Make sure your partition isn't full :D, that you have write access to the directory, and everything...


Title: mimictools 1.0.1 and mimicdecoder 1.0.1.1
Post by: hyriand on March 31, 2007, 10:35:25 pm
Quote from: "Kreuger"
It creates the file for me but it's always only 2.0kb in size and when I open it with vlc, nothing shows. I tried running it through a shell for any extra info and it gives me a similar error to the first guy:

Quote
./mimicdecoder
.
.
.
sh: mimic2rgb: not found
.
.
.


Make sure mimic2rgb is installed and that the directory holds the mimic2rgb binary is in the PATH.


Title: mimictools 1.0.1 and mimicdecoder 1.0.1.1
Post by: Kreuger on April 01, 2007, 04:47:17 pm
I was sure I installed it before. Now when I run mimicdecoder, it doesn't detect anything recorded. Is it because they're from last month?


Title: mimictools 1.0.1 and mimicdecoder 1.0.1.1
Post by: hyriand on April 01, 2007, 06:26:05 pm
Quote from: "Kreuger"
I was sure I installed it before. Now when I run mimicdecoder, it doesn't detect anything recorded. Is it because they're from last month?


Yeah... That's a known problem with 1.0.0. I will release 1.0.1 shortly that should fix that problem.


Title: mimictools 1.0.1 and mimicdecoder 1.0.1.1
Post by: Kreuger on April 01, 2007, 07:24:10 pm
Alright thanks


Title: mimictools 1.0.1 and mimicdecoder 1.0.1.1
Post by: MurDoK on April 08, 2007, 09:11:22 pm
Hi all:

I made two deb packages so it's much easier to install.
The first one contains libmimic 1.0.4.
The second one contains mimicdecoder, mimic2rgb and mimicdatregen (svn20070318)

If you want to install mimic-tools without libmimic because you have installed it from sources, just type:
Code:
sudo dpkg -i --force-all mimic-tools1.0.0+svn20070318.deb


Tested under Ubuntu Feisty and it should work under any debian based distribution

==DOWNLOADS== (Does anyone have a better hosting?)
http://ww3.sharebigfile.com/file/137279/libmimic1-0-4-i386-deb.html
http://ww3.sharebigfile.com/file/137288/mimic-tools1-0-0-svn20070318-deb.html

Bye


Title: mimictools 1.0.1 and mimicdecoder 1.0.1.1
Post by: hyriand on April 09, 2007, 02:38:37 pm
mimictools and mimicdecoder 1.0.1 have been released, see the updated urls and changelog in the original post.


Title: mimictools 1.0.1 and mimicdecoder 1.0.1.1
Post by: MurDoK on April 09, 2007, 07:10:44 pm
Just a suggestion:

In the new feature: mimicdecoder now also looks in archived directories...
it's ok but they are bad sorted. They are sorted by day of the week instead of month:

(http://img530.imageshack.us/img530/9849/pantallazomimicdecoderwj0.png)


Title: mimictools 1.0.1 and mimicdecoder 1.0.1.1
Post by: hyriand on April 09, 2007, 07:51:38 pm
Quote from: "MurDoK"
Just a suggestion:

In the new feature: mimicdecoder now also looks in archived directories...
it's ok but they are bad sorted. They are sorted by day of the week instead of month:
<...>


First of all: Very nice bugreport! Just enough info, not too much and not too little. Even a screenshot to clarify!

About the sorting: will be implemented in the next version of mimicdecoder.


Title: mimictools 1.0.1 and mimicdecoder 1.0.1.1
Post by: MurDoK on April 09, 2007, 08:46:47 pm
Quote from: "hyriand"

First of all: Very nice bugreport! Just enough info, not too much and not too little. Even a screenshot to clarify!


LOL
Thanks, and I will update debs when you fix it :)


Title: mimictools 1.0.1 and mimicdecoder 1.0.1.1
Post by: hyriand on April 09, 2007, 09:56:10 pm
ok, released mimicdecoder 1.0.1.1 with proper sorting. for more info, see the original post.


Title: mimictools 1.0.1 and mimicdecoder 1.0.1.1
Post by: MurDoK on April 09, 2007, 10:37:21 pm
And new package (mimic-tools1.0.1.deb):
http://ww3.sharebigfile.com/file/138405/mimic-tools1-0-1-deb.html

Please hyriand link it from the first post  :wink:


Title: mimictools 1.0.1 and mimicdecoder 1.0.1.1
Post by: hyriand on April 09, 2007, 10:42:27 pm
Quote from: "MurDoK"
And new package (mimic-tools1.0.1.deb):
http://ww3.sharebigfile.com/file/138405/mimic-tools1-0-1-deb.html

Please hyriand link it from the first post  :wink:


Ehm.. Ok.. sharebigfile.com sucks as a package host... I'll mirror it on thegraveyard.org and link that in the original post.

edit: done


Title: mimictools 1.0.1 and mimicdecoder 1.0.1.1
Post by: Kreuger on April 10, 2007, 02:39:08 am
Quote
Make sure mimic2rgb is installed and that the directory holds the mimic2rgb binary is in the PATH.
it auto installs to /usr/local/bin. I couldnt figure out how to get it to install to /usr/bin/. I tried
Code:
make install prefix=/usr/bin
and it seems to have worked but it says
Quote
mimic2rgb: error while loading shared libraries: libmimic.so.0: cannot open shared object file: No such file or directory


Title: mimictools 1.0.1 and mimicdecoder 1.0.1.1
Post by: KrueSePhiikz on April 17, 2007, 11:42:24 am
I'm not sure what the problem here is; I've installed libmimic but when I run MAKE on the mimic2rgb it simply outputs an error.

Code:
gcc mimic2rgb.c -o mimic2rgb -Wall -g -O2 `pkg-config --cflags libmimic`  `pkg-config --libs libmimic` -lm
Package libmimic was not found in the pkg-config search path.
Perhaps you should add the directory containing `libmimic.pc'
to the PKG_CONFIG_PATH environment variable
No package 'libmimic' found
Package libmimic was not found in the pkg-config search path.
Perhaps you should add the directory containing `libmimic.pc'
to the PKG_CONFIG_PATH environment variable
No package 'libmimic' found
In file included from mimic2rgb.c:21:
mimichelp.h:31:18: error: glib.h: No such file or directory
In file included from mimic2rgb.c:21:
mimichelp.h: In function ‘fetchHeader’:
mimichelp.h:74: warning: implicit declaration of function ‘GUINT16_FROM_LE’
mimichelp.h:75: warning: implicit declaration of function ‘GUINT32_FROM_LE’
mimichelp.h: At top level:
mimichelp.h:139: error: expected ‘=’, ‘,’, ‘;’, ‘asm’ or ‘__attribute__’ before ‘*’ token
In file included from mimic2rgb.c:23:
/usr/local/include/mimic.h:51: error: expected ‘=’, ‘,’, ‘;’, ‘asm’ or ‘__attribute__’ before ‘mimic_encoder_init’
/usr/local/include/mimic.h:52: error: expected ‘=’, ‘,’, ‘;’, ‘asm’ or ‘__attribute__’ before ‘mimic_decoder_init’
/usr/local/include/mimic.h:54: error: expected ‘=’, ‘,’, ‘;’, ‘asm’ or ‘__attribute__’ before ‘mimic_get_property’
/usr/local/include/mimic.h:55: error: expected ‘=’, ‘,’, ‘;’, ‘asm’ or ‘__attribute__’ before ‘mimic_set_property’
/usr/local/include/mimic.h:57: error: expected ‘=’, ‘,’, ‘;’, ‘asm’ or ‘__attribute__’ before ‘mimic_encode_frame’
/usr/local/include/mimic.h:62: error: expected ‘=’, ‘,’, ‘;’, ‘asm’ or ‘__attribute__’ before ‘mimic_decode_frame’
mimic2rgb.c: In function ‘decode’:
mimic2rgb.c:30: error: ‘gboolean’ undeclared (first use in this function)
mimic2rgb.c:30: error: (Each undeclared identifier is reported only once
mimic2rgb.c:30: error: for each function it appears in.)
mimic2rgb.c:30: error: expected ‘;’ before ‘decoder_initialized’
mimic2rgb.c:33: error: ‘guchar’ undeclared (first use in this function)
mimic2rgb.c:33: error: ‘payload’ undeclared (first use in this function)
mimic2rgb.c:35: error: ‘outbuf’ undeclared (first use in this function)
mimic2rgb.c:37: error: ‘outbuf_format’ undeclared (first use in this function)
mimic2rgb.c:47: warning: implicit declaration of function ‘readPayload’
mimic2rgb.c:51: error: ‘decoder_initialized’ undeclared (first use in this function)
mimic2rgb.c:51: error: ‘FALSE’ undeclared (first use in this function)
mimic2rgb.c:53: warning: implicit declaration of function ‘mimic_decoder_init’
mimic2rgb.c:59: error: ‘TRUE’ undeclared (first use in this function)
mimic2rgb.c:61: warning: implicit declaration of function ‘mimic_get_property’
mimic2rgb.c:62: error: expected expression before ‘)’ token
mimic2rgb.c:70: error: expected expression before ‘)’ token
mimic2rgb.c:78: warning: implicit declaration of function ‘mimic_decode_frame’
mimic2rgb.c:89: error: expected ‘;’ before ‘value’
mimic2rgb.c:94: error: ‘value’ undeclared (first use in this function)
make: *** [mimic2rgb] Error 1


And yes, I have installed libmimic.

Fedora Core 6 x86_64 Kernel 2.6.20-1.2944


Title: mimictools 1.0.1 and mimicdecoder 1.0.1.1
Post by: Fenix-TX on April 17, 2007, 12:06:54 pm
Perhaps you need to execute ldconfig? I'm not sure, but try it.


Title: mimictools 1.0.1 and mimicdecoder 1.0.1.1
Post by: KrueSePhiikz on April 17, 2007, 12:23:30 pm
Well, I executed ldconfig and tried it again. Came to no avail.


Title: mimictools 1.0.1 and mimicdecoder 1.0.1.1
Post by: hyriand on April 17, 2007, 12:29:55 pm
Quote from: "KrueSePhiikz"
I'm not sure what the problem here is; I've installed libmimic but when I run MAKE on the mimic2rgb it simply outputs an error.

Code:
gcc mimic2rgb.c -o mimic2rgb -Wall -g -O2 `pkg-config --cflags libmimic`  `pkg-config --libs libmimic` -lm
Package libmimic was not found in the pkg-config search path.
Perhaps you should add the directory containing `libmimic.pc'
to the PKG_CONFIG_PATH environment variable
...snip...


And yes, I have installed libmimic.

Fedora Core 6 x86_64 Kernel 2.6.20-1.2944


How did you install libmimic?

From an existing package? If so, did you also install the libmimic-development package? Because without it, the required header files and pkg-config files don't get installed.

If you installed it from source, it's likely that it'll be installed to the /usr/local/ prefix, in which case you probably need to tell pkg-config where to find it's configuration file, use something like:
Code:
PKG_CONFIG_PATH=/usr/local/lib/pkgconfig make


Title: mimictools 1.0.1 and mimicdecoder 1.0.1.1
Post by: KrueSePhiikz on April 18, 2007, 09:55:21 pm
Ah, thank you very much. NOt sure why I Didn't see it before. But nontheless, thank you. =)


Title: mimictools 1.0.1 and mimicdecoder 1.0.1.1
Post by: Souf on September 12, 2007, 04:43:49 pm
Quote from: "hyriand"
Quote from: "Fenix-TX"
Hi! Thanks for your great application, but mimicdecoder doesn't find any seesion of webcams, because my sessions are archived by "Month Year", so only works if webcam sessions are on path ./amsn/<profile>/webcam and those files are only the current month, and the next month those sessions will be automatically archieved by amsn on "March 2007". Can you add an option to select the path or search if there are folders inside on webcam folder? Thanks.


Ah, I never realized amsn could store them that way. Sure, I'll make it search subfolders of 'webcam' folders as well. Expect it in version 1.0.1.

Hello, first of all, thanks for all the work, and sorry for my bad english...

I have one problem, i install the libmimic1.0.4_i386.deb and the mimic-tools1.0.1.deb in my ubuntu.

When i run the  mimicdecoder, it works perfect, but there aren't any session, i have the amsn, and one session, and one webcam log, and the path is ./amsn/<profile>/webcam, but i can't open any video file, because it can't open my session...

What i can do?

Thanks for all...


Code:

$mimicdecoder
X Error: BadDevice, invalid or uninitialized input device 168
  Major opcode:  145
  Minor opcode:  3
  Resource id:  0x0
Failed to open device
X Error: BadDevice, invalid or uninitialized input device 168
  Major opcode:  145
  Minor opcode:  3
  Resource id:  0x0
Failed to open device


Title: Can't download mimictools :s
Post by: skovbaer on November 25, 2007, 04:53:36 pm
I can't download the mimictools and mimicdecoder packages from the graveyard server, and they're not available anywhere else :s

Edit: The server was just down for a while.. It's working again ;)


Title: mimictools 1.0.1 and mimicdecoder 1.0.1.1
Post by: Kreuger on December 17, 2007, 04:33:08 am
Any chance you could add the option (maybe a menu) to import the files from another account? I have recordings that were done on my laptop I want to convert and it'd be easier if I could import or just open them from within the GUI rather than having to copy them all into my amsn folder on my laptop and then use it.


Title: mimictools 1.0.1 and mimicdecoder 1.0.1.1
Post by: kr0n1x on December 22, 2007, 11:39:05 pm
i have this error:
Code:
mimic2rgb: error while loading shared libraries: libmimic.so.0: cannot open shared object file: No such file or directory


how can i fix it? i read hyriand reply but i can't understand it...

can you explain easier? thanks


bye


Title: mimictools 1.0.1 and mimicdecoder 1.0.1.1
Post by: Kreuger on December 23, 2007, 01:44:36 pm
I think youre missing some development files


Title: mimictools 1.0.1 and mimicdecoder 1.0.1.1
Post by: kr0n1x on December 23, 2007, 02:45:53 pm
Quote from: "Kreuger"
I think youre missing some development files


oh sorry... i didn't write about it.

i installed libmimic from sources...with ./configure, make, sudo checkinstal, and all was (apparently?) correct...

what can i do to fix mimic2rgb problem? thanks bye


Title: mimictools 1.0.1 and mimicdecoder 1.0.1.1
Post by: kr0n1x on January 01, 2008, 11:41:37 pm
i did:
Code:
sudo ldconfig

after the libmimic installation, and now mimic2rgb is encoding the .cam file, i hope it will be done correctly!


Title: mimictools 1.0.1 and mimicdecoder 1.0.1.1
Post by: erlik on January 06, 2008, 12:06:15 am
hello

At first, sorry for my english ( i'm french ...)
Secondly i have a little problem with mimicdecoder:
On the first utilisation, it run very good . But, after a reboot, with mimicdecoder 1.0.1 and  mimicdecoder 1.0.1.1, I have:
Quote
$ mimicdecoder
Traceback (most recent call last):
  File "/usr/bin/mimicdecoder", line 420, in <module>
    mainwin = MimicDecoder()
  File "/usr/bin/mimicdecoder", line 314, in __init__
    sessions = scan_sessions(os.path.expanduser("~/.amsn"))
  File "/usr/bin/mimicdecoder", line 100, in scan_sessions
    sessions += scan_sessions(p)
  File "/usr/bin/mimicdecoder", line 98, in scan_sessions
    sessions += scan_files(p)
  File "/usr/bin/mimicdecoder", line 65, in scan_files
    sessions += scan_files(p)
  File "/usr/bin/mimicdecoder", line 80, in scan_files
    sessions_.append([int(s) for s in line.split()])
ValueError: invalid literal for int() with base 10: 'ceci'


Or, with mimicdecoder 1.0.0, it's run, but the conversion is not good; bad colors ... for exemple, blue between yellow
an idea ? ...
 :(


Title: mimictools 1.0.1 and mimicdecoder 1.0.1.1
Post by: luquino on February 24, 2008, 12:57:45 pm
Hi to all, I use Ubuntu Gutsy (7.10) AMD64.

Great work guys, this is fantastic... thank you so much.

I got mimctools and libmimic from source and compiled them cause the packages are only for 32 bit, ok for the compilations, no problems except for some python qt dependecies.
Mimicdecoder works perfectly.

Thank you so much again.


Title: mac?
Post by: Galak Fyarr on October 14, 2008, 10:57:44 am
anyone smart enough to mac this work on Mac OS 10.5.5 please? :(


Title: mimictools 1.0.1 and mimicdecoder 1.0.1.1
Post by: Vakz on October 19, 2008, 06:28:06 pm
having problem when trying to convert to xvid. When i press decode, it decodes but doesn't save the output file. Any idea?
Using Kubuntu, tried to save to several dfifrent directories and both harddrives.


Title: mimictools 1.0.1 and mimicdecoder 1.0.1.1
Post by: frs on November 11, 2008, 08:14:50 pm
I installed this yesterday. Have tried to convert some  sessions into xvid.
I have one problem with the conversion, it only play at half the speed, so I have a session that is 5min when plyaed in amsn, when converted it it 10min.
When I play the session in mimicdecoder thay also play at half the speed. But they dont do it in amsn.

I am using Unbuntu

What can be wrong ?


Title: mimictools 1.0.1 and mimicdecoder 1.0.1.1
Post by: kakaroto on November 11, 2008, 08:47:06 pm
well, it depends on the timestamp or on whether amsn is using a fixed framerate or uses dynamic framerate... if you don't use dynamic framerate in amsn, then it might be slower/faster depending on how you set the framerate...


Title: mimictools 1.0.1 and mimicdecoder 1.0.1.1
Post by: frs on November 11, 2008, 09:05:03 pm
To get it to playback perfect in amsn I use dynamic framerate,

When I convert I just choose the session and the click convert to XVID och then decode.


Title: mimictools 1.0.1 and mimicdecoder 1.0.1.1
Post by: jalapeno on November 12, 2008, 10:40:43 am
i'm having a problem decoding one of the sessions i recorded.

Mimicdecoder produces:
Code:
mimic2rgb: Couldn't initialize the mimic decoder.
Traceback (most recent call last):
  File "/home/vic/z/usr/bin/mimicdecoder", line 124, in run
    stdin_pipe.write(block)
IOError: [Errno 32] Broken pipe


And running mimic2rb by itself
Code:
mimic2rgb: Couldn't initialize the mimic decoder.


However, when in aMSN, i can view this session. It does exhibit artifacts for first 3-4 seconds (corrupted video?).

I hacked some code in mimic2rgb to skip over bad frames but apparently that's not enough...needs expert touch :D
Can somebody fix this or any ideas on how i can salvage this session and convert it into something viewable by regular media players (raw or xvid)??


Title: mimictools 1.0.1 and mimicdecoder 1.0.1.1
Post by: jalapeno on November 14, 2008, 01:09:33 am
it appears that the beggining of the stream is missing the key or initial frame. consquent frames get their info from it.
after the hacking i did, the first 5-6 frames exhibit strong artifacts  (much more so than previewing in aMSN), and after that the stream is ok, HOWEVER the colors r not right -- too washed out - perhaps saturation or balance or something is off (Colors r ok in aMSN preview).

Any ideas?


Title: mimictools 1.0.1 and mimicdecoder 1.0.1.1
Post by: thomas13202 on November 24, 2008, 05:43:10 pm
this is a truly great tool. thank you for all ur hard work.


Title: mimictools 1.0.1 and mimicdecoder 1.0.1.1
Post by: vendettaseve on January 09, 2009, 10:54:41 pm
thanks for your hard work :D

I have installed both packages(Using ubuntu HH) but now I cant seem to find the launcher -_- forgive me for being a noob, but can you tell me where they are located so I can run the program, that or the code to make the program start lol

Sorry

V


Title: mimictools 1.0.1 and mimicdecoder 1.0.1.1
Post by: Montblanc on January 16, 2009, 12:14:10 am
Quote from: "vendettaseve"
thanks for your hard work :D

I have installed both packages(Using ubuntu HH) but now I cant seem to find the launcher -_- forgive me for being a noob, but can you tell me where they are located so I can run the program, that or the code to make the program start lol

Sorry

V


Open your terminal and type
Code:
mimicdecoder


You can create a menu launcher by yourself 'cause normally there's none.


Title: mimictools 1.0.1 and mimicdecoder 1.0.1.1
Post by: amanycl on January 22, 2009, 06:20:14 am
how can i make it work on mac?


Title: mimictools 1.0.1 and mimicdecoder 1.0.1.1
Post by: vendettaseve on January 22, 2009, 11:17:28 pm
sadly it doesnt want to create the vid file :( I get this error with the .raw while trying to decode



mimic2rgb: Couldn't open test for output!
Traceback (most recent call last):
  File "/usr/share/mimictools/mimicdecoder", line 124, in run
    stdin_pipe.write(block)
IOError: [Errno 32] Broken pipe
sh: transcode: not found


with the xvid I just get "End of file"

Can anyone help? thanks


Title: mimictools 1.0.1 and mimicdecoder 1.0.1.1
Post by: billiob on January 22, 2009, 11:45:59 pm
Code:
sh: transcode: not found

install transcode


Title: mimictools 1.0.1 and mimicdecoder 1.0.1.1
Post by: vendettaseve on January 25, 2009, 01:38:22 am
Installed transcode, now I get this error

mimic2rgb: Couldn't open lo for output!
Traceback (most recent call last):
  File "/usr/share/mimictools/mimicdecoder", line 124, in run
    stdin_pipe.write(block)
IOError: [Errno 32] Broken pipe


Title: mimictools 1.0.1 and mimicdecoder 1.0.1.1
Post by: sebastian on March 25, 2009, 02:23:10 am
ok this forum seems to be full of ppl that can code and decode. i havent got a friggin clue on any of this,

i really want to be able to convert my files from amsn on my mac,  but i need a dummies guide on doing this please. if someone could help out i would be incredibly grateful as i have some important files on there i need to convert.


Title: mimictools 1.0.1 and mimicdecoder 1.0.1.1
Post by: Galak Fyarr on May 29, 2009, 09:02:28 pm
I'm a mac user and I don't really understand how this all works.

I have installed Ubuntu  on my mac (using VirtualBox) (latest version as of 29th of May 2009) and it's running perfectly fine. I have downloaded the following files:

Libmimic 1.0.4.
mimictools1.0.1.deb

I have run the installer, but now I'm unable to find how I run the Mimicdecoder application???

Please someone make an easy to understand guide on how to use this.


Title: mimictools 1.0.1 and mimicdecoder 1.0.1.1
Post by: kakaroto on May 29, 2009, 09:46:32 pm
I've never tried it, but my guess would be to open a terminal and type "mimicdecoder" then press enter.. and you'll get the GUI you need for your conversions...


Title: mimictools 1.0.1 and mimicdecoder 1.0.1.1
Post by: plitter on June 25, 2009, 01:21:14 am
I have downloaded and installed the packages which are mentioned and transcode, but when I decode it to xvid I dont get anything. I apologize in advance for the probable lack of information regarding the problem but i am a newbie....


Title: mimictools 1.0.1 and mimicdecoder 1.0.1.1
Post by: Galak Fyarr on June 25, 2009, 02:42:39 pm
Seriously, could SOMEONE make a video guide on how to install and run these tools?

I'm using a mac computer with virtual Ubuntu Machine, I have NO idea how this works, please, anyone care to give  a clear (and Ubuntu noob) walkthrough? thanks...


Title: mimictools 1.0.1 and mimicdecoder 1.0.1.1
Post by: afv on July 07, 2009, 10:37:39 am
Code:
gksu gedit /usr/share/mimictools


at line 148 try:

Code:
cmd2 = 'ffmpeg -f rawvideo -pix_fmt bgr24 -s %ix%i -aspect 4:3 -r 4 -i - -f avi -vcodec libxvid -s %ix%i -aspect 4:3 -y "%s"' % (w, h, w, h, path)


instead of:

Code:
cmd2 = ENCODER[1] % { 'width': w, 'height': h, 'path': path }


Title: mimictools 1.0.1 and mimicdecoder 1.0.1.1
Post by: marc2009 on July 23, 2009, 02:30:51 pm
It seems libmimic is farsight isn't it ? ( as it's on the farsight page )


Title: mimictools 1.0.1 and mimicdecoder 1.0.1.1
Post by: kakaroto on July 23, 2009, 02:56:24 pm
marc2009, if you go to the farsight page.. then you should read about it.. no it has absolutely nothing to do with farsight.. it was just hosted there for some time... libmimic is a codec, and farsight is a gstreamer pipeline building tool.


Title: mimictools 1.0.1 and mimicdecoder 1.0.1.1
Post by: Galak Fyarr on July 23, 2009, 03:09:15 pm
still nobody to actually explain how it works?

I installed the packages, and end up with two folders. Where's the app? I don't get the interface you see in the screenshot, actually I get nothing... how. does. it. work?


Title: mimictools 1.0.1 and mimicdecoder 1.0.1.1
Post by: kakaroto on July 23, 2009, 05:01:55 pm
noone explains because noone knows.. the original author is not part of the amsn team, it's just a user contribution and he seems to be away or something.. I don't know how to works and I don't plan on trying to figure it out..
What I use instead of this is :
Code:
/usr/share/amsn/utils/cam_to_avi.sh ~/.amsn/email/webcam/whatever@hotmail.com.cam ~/webcam.avi

If you have gstreamer installed with the mimic plugin (mimdec gstreamer element), it should work..

p.s.: mimdec comes with gst-plugins-bad 0.0.13 and later...


Title: mimictools 1.0.1 and mimicdecoder 1.0.1.1
Post by: Galak Fyarr on July 23, 2009, 05:46:35 pm
Quote from: "kakaroto"
noone explains because noone knows.. the original author is not part of the amsn team, it's just a user contribution and he seems to be away or something.. I don't know how to works and I don't plan on trying to figure it out..
What I use instead of this is :
Code:
/usr/share/amsn/utils/cam_to_avi.sh ~/.amsn/email/webcam/whatever@hotmail.com.cam ~/webcam.avi

If you have gstreamer installed with the mimic plugin (mimdec gstreamer element), it should work..

p.s.: mimdec comes with gst-plugins-bad 0.0.13 and later...


well at least this might get me a little further  :D  thanks i'll try that


Title: mimictools 1.0.1 and mimicdecoder 1.0.1.1
Post by: Flyzone on November 08, 2009, 07:05:38 pm
For who is using Debian Lenny (stable), just a little tip to don't waste time....
Marillat multimedia packages in these last years give me too many problems (vlc cannot read avi, dependencies broken), so I decided to don't use it as repository for additional packages...compile by myself transcode is two time problematics and require many packages that the debian stable doesn't offer, and xvid remember me some unwanted library.....

for who thinks like me, edit /usr/share/mimicdecoder at line 29 to use ffmpeg (installed with lenny) and with mpeg1 codec (support colors):

Code:
ENCODER = ('rgb', 'ffmpeg -f rawvideo -pix_fmt rgb24 -s %(width)dx%(height)d -r 4 -i - -f mpeg -vcodec mpeg1video -r 24 -y "%(path)s"')


Title: mimictools 1.0.1 and mimicdecoder 1.0.1.1
Post by: snipe2004 on November 16, 2009, 11:43:52 pm
Quote from: "kakaroto"
noone explains because noone knows.. the original author is not part of the amsn team, it's just a user contribution and he seems to be away or something.. I don't know how to works and I don't plan on trying to figure it out..
What I use instead of this is :
Code:
/usr/share/amsn/utils/cam_to_avi.sh ~/.amsn/email/webcam/whatever@hotmail.com.cam ~/webcam.avi

If you have gstreamer installed with the mimic plugin (mimdec gstreamer element), it should work..

p.s.: mimdec comes with gst-plugins-bad 0.0.13 and later...


Hi,

Excuse my question, but has this cam_to_avi.sh tool disappear? Using aMSN SVN, I have no file called "cam to avi" neither anything approaching.


I also encounter another problem, using mimicdecoder this time, I hope anyone could help me. When I try to transcode a cam file (made two years ago) to avi using this application, I got an error in the terminal :

Quote
arnault@arnault-laptop:~$ mimicdecoder
sh: transcode: not found
mimic2rgb: Premature end of file or other error!


Does anyone know how to fix it?

For other cam files, more recent, I have another problem, the same as for another two years old cam file :
Quote
sh: transcode: not found
mimic2rgb: End of file.


But aMSN can prefectly read them, so I guess they're ok but aMSN doesn't stop when it faces a little problem in the file. Any way to force mimicdecoder to transcode?

Thanks A LOT in advance,

and sorry for my very poor english :/


Title: mimictools 1.0.1 and mimicdecoder 1.0.1.1
Post by: Flyzone on November 16, 2009, 11:51:14 pm
Quote from: "snipe2004"
Any way to force mimicdecoder to transcode?


Well..."not found" for me means that you haven't installed the transcode program.
Check your installation/distribution if includes it or download and install from here.
Other possibility...could be that is installed but it not in the path of the OS (mmm very unusual  :wink: )


Title: mimictools 1.0.1 and mimicdecoder 1.0.1.1
Post by: kakaroto on November 17, 2009, 12:42:37 am
yeah, you should just install the transcore application. In debian, it's called 'transcore' hehe...
about cam_to_avi, I don't know, maybe your Fedora core doesn't include it in the package, but the file is really simple :
Code:
#!/bin/bash
gst-launch filesrc location="$1" ! mimdec ! ffmpegcolorspace ! videorate ! ffenc_mpeg4 ! avimux ! filesink location="$2"

you'll need gstreamer tools and the mimic gstreamer plugin as well as ffmpeg encoder for mpeg4.


Title: mimictools 1.0.1 and mimicdecoder 1.0.1.1
Post by: snipe2004 on November 19, 2009, 06:49:18 pm
Thanks for your answers!

What's strange is that it works without transcode for some cam files... But it's possible.

I applied both your ideas, and here's what I got :

KKRT's one : I still got an error
Quote
Définition du pipeline à PAUSED...
Le pipeline est en phase de PREROLL...
Le pipeline a terminé la phase PREROLL...
Passage du pipeline à la phase PLAYING...
New clock: GstSystemClock
ERREUR : de l'élément /GstPipeline:pipeline0/GstFileSrc:filesrc0 : Erreur interne de flux de données.
Information de débogage supplémentaire :
gstbasesrc.c(2378): gst_base_src_loop (): /GstPipeline:pipeline0/GstFileSrc:filesrc0:
streaming task paused, reason error (-5)
Execution ended after 193401343 ns.
Définition du pipeline à PAUSED...
Définition du pipeline à READY (prêt)...
Définition du pipeline à NULL...
Libération du pipeline...
.


And Flyzone, I also get another error
Quote
transcode: unrecognized option '--use_rgb'
'transcode -h | more' shows a list of available command line options.
mimic2rgb: Premature end of file or other error!

For the first file. It ends by 70% of the decoding.

and
Quote
transcode: unrecognized option '--use_rgb'
'transcode -h | more' shows a list of available command line options.
mimic2rgb: End of file.

For the second. It ends by 99% (perhaps 100% but I'm not sure), but there's no file test.avi (as I named it) in the directoy I mentioned in the app.
(in fact, there are two files because the stream failed and had to be started again)


But for both of those I have not yet look for an answer on google, so I'll look for it and go back for further help if I can't find anything, or for feedback if I solve the problem.

Thanks a lot for your help.!


Title: mimictools 1.0.1 and mimicdecoder 1.0.1.1
Post by: kakaroto on November 19, 2009, 09:53:27 pm
internal flow error means the file is 'corrupted' or contains something that shouldn't be there..  maybe when it goes from one webcam session to another, there's an issue. I guess you'll get your file but incomplete.


Title: mimictools 1.0.1 and mimicdecoder 1.0.1.1
Post by: snipe2004 on December 05, 2009, 01:53:46 am
So here I am, after days and nights of inefficient efforts.

It seems I face two different problems, one being perhaps able to solve the second.

First one, when I use mimicdecoder. In console, I get a :
Quote
[probe_ffmpeg.c] critical: unable to open '/dev/stdin' (libavformat failure)

(...)

mimic2rgb: End of file.  21.14 fps, CFT: 0:00:07,  ( 0| 0|20)
[decoder.c] cancelling the import threads0:00:10,  (16| 0| 4)

[transcode] encoded 42 frames (0 dropped, 0 cloned), clip length  10.50 s


So it looks like something is broken in my ffmpeg/libavformat install. But I dunno what. I changed from libavformat-extra-52 to libavformat52, without any success. Installed many -dev packages, without any success.
I've no idea how to solve this one...

Which, once solved, could perhaps - or not :/ - transform my .cam in .avi *_*

That brings me to my second problem :

Using many other "cam to avi" possibilities (Mobile Media Converter, AviDemux, VLC,...), I can transform some other old .cam files into .avi files.
But some files, including the one I need to get in avi, are somehow corrupted. What sounded strange to me, was that aMSN log viewer was perfectly able to read them.
So I investigated a bit, and got these results :
1) aMSN has one file for one month logs, per e-mail address of course.
2) Inside the log viewer, we have the different days and hours of every cam session of the month. I guess this is related to the .dat (index?) file that's created with every .cam file.
3) In this very case, every other transcoder fail after 8 seconds.
4) Inside aMSN log viewer, I realized that if I started the viewing from the very beginning, after those 8 seconds the viewer also fails to show the movie (it suddenly stops, and the little cursor move from the beginning of the bar to its end).
5) But I never suffered of that before, because those first 8 seconds are of no interest, so I always pointed the cursor a few minutes later.
6) So it seems aMSN, even if it fails to read when it starts from the beginning, is able to display the rest of the movie if we don't go through this damned 8th second.
7) So perhaps is it any way to "cut" the .cam file after 10 seconds? Or if I can cut it into different files, every one of them being a different cam session, as aMSN shows them? Unfortunately, avidemux and every prog' I could think at weren't able to even open the .cam file.

But bay me one of those amsn genius would have a brilliant idea on how to do so :D ?


Title: Re: mimictools 1.0.1 and mimicdecoder 1.0.1.1
Post by: Kreuger on February 21, 2010, 07:22:11 pm
Does anyone still use this? I tried recently to install the debs. After installing the libmimic one, I went ahead to install mimic tools but it said Im missing libmimic  ???


Title: Re: mimictools 1.0.1 and mimicdecoder 1.0.1.1
Post by: alexandernst on February 21, 2010, 08:56:22 pm
Maybe you should install libmimic-dev?  (I'm not sure though, just suggesting) I never used this tool


Title: Re: mimictools 1.0.1 and mimicdecoder 1.0.1.1
Post by: Kreuger on March 05, 2010, 01:42:03 pm
I havent come across any reference to libmimic-dev anywhere


Title: Re: mimictools 1.0.1 and mimicdecoder 1.0.1.1
Post by: alexandernst on March 07, 2010, 03:28:54 am
Ok, you're right. I just tried to install it and I failed. I 'll play around with this and make it pyqt4 compatible, rebuild it and post it here.

ps: But this should wait ~14days, because I have exams.


Title: Re: mimictools 1.0.1 and mimicdecoder 1.0.1.1
Post by: Kreuger on March 07, 2010, 06:58:09 am
No worries, no rush. I don't really need it at the moment. Just wanted to play with it again.


Title: Re: mimictools 1.0.1 and mimicdecoder 1.0.1.1
Post by: snipe2004 on April 12, 2010, 07:19:33 pm
Hi Kreuger,

I installed it some times ago, and I remember facing such troubles.

Assuming you're using Ubuntu, here're what packages I got installed on my Ubuntu. I can now use the app', even if it always fails with one particular .cam file.

  • libmimic 1.0.4 (http://sourceforge.net/project/showfiles.php?group_id=120931&package_id=131853 (http://sourceforge.net/project/showfiles.php?group_id=120931&package_id=131853) or http://sourceforge.net/projects/farsight/files/libmimic/libmimic-1.0.4/libmimic-1.0.4.tar.gz/download (http://sourceforge.net/projects/farsight/files/libmimic/libmimic-1.0.4/libmimic-1.0.4.tar.gz/download) )
  • libmimic 1.0.4-2 (from Ubuntu Universe)
'cause my mimic-tools, installed from the deb linked at the beginning of this topic, claims to depend on libmimic1.0.4.

I think my problem (and so yours) was that the official libmimic was 1.0.4-2 and the mimic-tools wanted a libmimic 1.0.4.
So I found an old 1.0.4 and it worked!

At least, I hope it could help you... Otherwise, sorry for the false hope!


Title: Re: mimictools 1.0.1 and mimicdecoder 1.0.1.1
Post by: kr0n1x on May 29, 2010, 10:45:19 pm
Hi, I would like to convert some logs, but I'm using Amsn on Windows XP.

Can someone compile mimictools and the decoder to make it work on Windows?

I've tried nmake.exe and minigw but I'm not able to use them properly... :(


Title: Re: mimictools 1.0.1 and mimicdecoder 1.0.1.1
Post by: kr0n1x on May 30, 2010, 11:49:48 pm
Hi, I would like to convert some logs, but I'm using Amsn on Windows XP.

Can someone compile mimictools and the decoder to make it work on Windows?

I've tried nmake.exe and minigw but I'm not able to use them properly... :(

bump


Title: Re: mimictools 1.0.1 and mimicdecoder 1.0.1.1
Post by: alexandernst on May 31, 2010, 07:26:37 pm
I think only person that is on windows is LePhilousophe (and I'm not sure about that). So, no, I'm sorry :(
But if I were you I'd ask in our irc channel. Maybe somebody can help.


Title: Re: mimictools 1.0.1 and mimicdecoder 1.0.1.1
Post by: kr0n1x on June 01, 2010, 02:57:52 pm
I think only person that is on windows is LePhilousophe (and I'm not sure about that). So, no, I'm sorry :(
But if I were you I'd ask in our irc channel. Maybe somebody can help.

I've looked for that nickname on the Members page of this forum, but without positive results. I'll try in IRC. Thanks!


Title: Re: mimictools 1.0.1 and mimicdecoder 1.0.1.1
Post by: kr0n1x on June 10, 2012, 03:37:43 am
Hi, I'm trying to convert a .raw stream (made with mimicdecoder) to an .avi file (using transcode).

The --use_rgb option doesn't exist anymore, so I tried doing the command without it, like this:
Code:
transcode -x raw,null -y xvid,null -g 320x240 -i ./in.raw -o out-rgb.avi

The conversion takes place, the file is some MBs big (so it's not empty), but the resultant video is all green.
This is because transcode uses -V yuv420p as its default internal video format (if I get transcode -h correctly).

So I tried the other two options: yuv422p and rgb24.

With yuv422p I get the same result as with yuv420p.

With rgb24, the conversion doesn't work. This is what I get as error:
Code:
$ transcode -x raw,null -y xvid,null -V rgb24 -g 320x240 -i ./in.raw -o out-rgb.avi
transcode v1.1.5 (C) 2001-2003 Thomas Oestreich, 2003-2009 Transcode Team
libdvdread: Using libdvdcss version 1.2.10 for DVD access
libdvdnav:DVDOpenFileUDF:UDFFindFile /VIDEO_TS/VIDEO_TS.IFO failed
libdvdnav:DVDOpenFileUDF:UDFFindFile /VIDEO_TS/VIDEO_TS.BUP failed
libdvdread: Can't open file VIDEO_TS.IFO.
libdvdread: Using libdvdcss version 1.2.10 for DVD access
libdvdnav:DVDOpenFileUDF:UDFFindFile /VIDEO_TS/VIDEO_TS.IFO failed
libdvdnav:DVDOpenFileUDF:UDFFindFile /VIDEO_TS/VIDEO_TS.BUP failed
libdvdread: Can't open file VIDEO_TS.IFO.
[transcode] V: auto-probing     | ./in.raw (OK)
[transcode] V: import format    | DigitalVideo in NTSC (module=raw)
[transcode] A: auto-probing     | ./in.raw (OK)
[transcode] A: import format    | PCM in NTSC (module=null)
[transcode] V: AV demux/sync    | (1) sync AV at initial MPEG sequence
[transcode] V: import frame     | 320x240  1.33:1  encoded @ 16:9
[transcode] V: bits/pixel       | 0.782
[transcode] V: decoding fps,frc | 29.970,4
[transcode] V: video format     | RGB24
[transcode] A: import format    | 0x1     PCM          [48000,16,2]
[transcode] A: export           | disabled
[transcode] V: encoding fps,frc | 29.970,4
[transcode] A: bytes per frame  | 6408 (6406.400000)
[transcode] A: adjustment       | -1600@1000
[transcode] V: IA32/AMD64 accel | sse3 sse2 sse mmx cmove asm
[transcode] V: video buffer     | 10 @ 320x240 [0x1]
[transcode] A: audio buffer     | 10 @ 48000x2x16
[import_null.so] v0.2.0 (2002-01-19) (video) null | (audio) null
[import_raw.so] v0.3.3 (2008-11-23) (video) RGB/YUV | (audio) PCM
[export_null.so] v0.1.2 (2001-08-17) (video) null | (audio) null
[export_xvid4.so] v0.0.6 (2007-08-11) (video) XviD 1.0.x series (aka API 4.0) | (audio) MPEG/AC3/PCM
[import_raw.so] tcextract -i "./in.raw" -d 0 -x rgb | tcextract -a 0 -x rgb -d 0
[extract_rgb.c] warning: no file type specified, assuming RAW stream
[decoder.c] cancelling the import threads
[transcode] encoded 0 frames (0 dropped, 0 cloned), clip length   0.00 s

The output file is 2KB big, of course without the video.

Any way to solve this problem? :)