AVI -> ASF conversion
- Paul Kievits
- Joined: Thu Nov 22, 2001 8:50 am
- Location: Vlaardingen, The Netherlands
AVI -> ASF conversion
I've been looking around the web for this but I couldn't find an answer...
The thing is I want to convert an AVI file (uncompressed) to an ASF file without having to recompress. It should be possible (since they are both just file containers). I found ASF tools which does the opposite (converts ASF to AVI in a second) but I don't need that. The catch is I need the source code to do so since I'll be needing to use it a lot and I can't open a program each time I use it (automation and all)...
Could anyone help me?
The thing is I want to convert an AVI file (uncompressed) to an ASF file without having to recompress. It should be possible (since they are both just file containers). I found ASF tools which does the opposite (converts ASF to AVI in a second) but I don't need that. The catch is I need the source code to do so since I'll be needing to use it a lot and I can't open a program each time I use it (automation and all)...
Could anyone help me?
Get my 5th video "Mass Murderer": here
- klinky
- Joined: Mon Jul 23, 2001 12:23 am
- Location: Cookie College...
- Contact:
ASF is a old closed container format specifically designed for their MS Video codecs. I doubt this is at all possible since the person writting a tool like this would be wasting their time.
There are differences with how data is stored in these containers. Such as chunk/framing sizes. So it wouldn't be a simple "copy x bytes to x bytes". They'd have to know AVI / ASF mechanics and ASF is not open and probably will never be open. Nor is there enough interest to do this.
Though now that I think about it, maybe GraphEdit, but I don't know of a graph that would work :p. So it would be alot of trial and error, which even then I doubt would work and may not play on all machines.
Just use MS's encoding tools with a huffYUV/uncompressed AVI file if you have one. If not, use a really higher bitrate when encoding a lossy avi to the ASF.
There are differences with how data is stored in these containers. Such as chunk/framing sizes. So it wouldn't be a simple "copy x bytes to x bytes". They'd have to know AVI / ASF mechanics and ASF is not open and probably will never be open. Nor is there enough interest to do this.
Though now that I think about it, maybe GraphEdit, but I don't know of a graph that would work :p. So it would be alot of trial and error, which even then I doubt would work and may not play on all machines.
Just use MS's encoding tools with a huffYUV/uncompressed AVI file if you have one. If not, use a really higher bitrate when encoding a lossy avi to the ASF.
- Paul Kievits
- Joined: Thu Nov 22, 2001 8:50 am
- Location: Vlaardingen, The Netherlands
OK thanks for the info, maybe you could give me some advise if I gave you the context of my project:
The thing is that I have a video file (either AVI (uncompressed) or MJPEG). And I need to make it streamable for web in a limited amount of time with a limited amount of loss (there are sharp letters in the AVI, I need to keep them). I need to stream it with Windows media server (or some 3rd party software solution) to a client over an internal network, so basically the thing I'm looking for is:
A solution which gives me:
*speed of encoding
*Good enough quality
Know any solutions or codecs?
I was fiddling around with one of those windows media sdk thingies and found a program which converted an AVI to an ASF file within 1:30 minutes but the quality was really poor so that won't work. A solution with MJPEG would be the best...
The thing is that I have a video file (either AVI (uncompressed) or MJPEG). And I need to make it streamable for web in a limited amount of time with a limited amount of loss (there are sharp letters in the AVI, I need to keep them). I need to stream it with Windows media server (or some 3rd party software solution) to a client over an internal network, so basically the thing I'm looking for is:
A solution which gives me:
*speed of encoding
*Good enough quality
Know any solutions or codecs?
I was fiddling around with one of those windows media sdk thingies and found a program which converted an AVI to an ASF file within 1:30 minutes but the quality was really poor so that won't work. A solution with MJPEG would be the best...
Get my 5th video "Mass Murderer": here
- bum
- 17747114553
- Joined: Sat Nov 08, 2003 9:56 pm
errrm, thiers a avi to&from wmv from www.stoik.com (or .org , i forgot)
- kmv
- Joined: Mon Mar 03, 2003 8:31 am
- Location: Another day, another city
- Paul Kievits
- Joined: Thu Nov 22, 2001 8:50 am
- Location: Vlaardingen, The Netherlands
Quicktime could be an option but from experience I think the compression may be too large.
I just found videolan prior to reading this post, it's exactly what I was looking for, so thanks for the link!
I just found videolan prior to reading this post, it's exactly what I was looking for, so thanks for the link!
Get my 5th video "Mass Murderer": here
- bum
- 17747114553
- Joined: Sat Nov 08, 2003 9:56 pm
- Corran
- Joined: Mon Oct 14, 2002 7:40 pm
- Contact:
You can use fullscreen with quicktime content. : /
If Quicktime is installed you can view .mov files in Media Player Classic with is like WMP 6.4 only much much better.
If Quicktime is installed you can view .mov files in Media Player Classic with is like WMP 6.4 only much much better.
- Paul Kievits
- Joined: Thu Nov 22, 2001 8:50 am
- Location: Vlaardingen, The Netherlands
Ok so I'm still working on the smae project but have moved on considerably, this is what I posted on the videoLAN site, mnaybe you guys know something they don't...
Any ideas?Hi,
I'm currently working on a project where I have an MJPEG file and I need to get it streamable, but I can't find a good way to do it. The MJPEG is rather large (720*576, very minimal compression).
The thing is I need the stream to be:
* Searchable
* Fast (thus I can't do a full recompress).
* Almost the same quality.
I've tried several things:
* Reencoding to ASF and using windows media server (ASF sucks, the compression was horrid)
* Grabbing the file off an Apache server (best quality so far, but the file needs to completly download to be searchable.
* Using Darwin/Helix to stream RTSP content (since RTSP seems to be the best solution for the problem).
Streaming via RTSP wasn't as easy as I'd hoped, I did several things to the MJEPG file to make it streamable:
* Used graphedit and the 3ivx muxer to create an MP4 file.
+ Used MP4Box to hint it.
+ Used quicktime pro to hint it.
* Used graphedit and Xvid to create an AVI file
+ Used MPEG4IP to hint it.
None of these options actually worked very well (with either VLC or quicktime (which I used for testing)). Sometimes the file wouldn't open at alle, sometimes the file would open fine (and then when I would search the video would stop while the timer kept moving and the video would resume a few seconds later. Or the change in the video would start running through the part where I initiated the search), or sometimes the file would open with some strange green blocks and after a few seconds switch to normal video display (while having the same search problems).
In general my best option was to mux with the 3ivx muxer in graphedit and the hint with quicktime, the thing is I need a totally automatic system which needs to take all the steps necassary before streaming, using quicktime isn't really an option (unless there's a command line program).
So basically my question is, what would you reccomend for my problem? What would give me the best speed/quality/controlability options? Am I overlooking an option?
Thanks for any help in advance...
-Paul
Get my 5th video "Mass Murderer": here
- kmv
- Joined: Mon Mar 03, 2003 8:31 am
- Location: Another day, another city
OK, I gotta ask: why do you need the stream to be searchable? I think this is the requirement that is killing you here.
The (very few) streaming algorithms I know and all the algorithmic techniques (note the difference) I can think of for streaming are not, by their very nature, well suited to random access within the stream.
This is not usually a problem because of the use streaming is usually put to - the viewer normally wants to start watching from one point then continue to watch without interruption.
What is the business case here? What are you actually trying to achieve?
The (very few) streaming algorithms I know and all the algorithmic techniques (note the difference) I can think of for streaming are not, by their very nature, well suited to random access within the stream.
This is not usually a problem because of the use streaming is usually put to - the viewer normally wants to start watching from one point then continue to watch without interruption.
What is the business case here? What are you actually trying to achieve?