Menu

Towards 0.3pre2

user
2004-12-15
2013-05-09
  • José San Pedro

    José San Pedro - 2004-12-15

    Hi everyone,

    since 0.3pre1 was released a number of issues have been reported. I have found some spare time to fix some of them and I think I will be able to release soon 0.3pre2. However, I would like to know if you have any suggestions or request for this new release. This is a list of what I have changed since pre1:

    - Audio-only files are now supported by fobs4jmf. This is the main reason for this release!! Enjoy it!!
    - Several bug fixes
    - Improved support for file name in Windows
    - Audio channel number reduction in fobs4jmf - 5.1 to 2 channels! (Still under development). This will hopefully allow to play DVDs using fobs4jmf!!!
    - All extra-codec included binaries (Still under developement). I plan to release binaries including all the optional codecs supported by ffmpeg: faac, ogg, lamemp3, liba52, etc.

    Maybe I'm missing something. Please, reply to this post to know your priorities for the new release!!

    Cheers

    Jose San Pedro Wandelmer

     
    • Nobody/Anonymous

      One thing that would be good IMO would be to use the cvs tree (although I don't know enough C to be of any help). Secondly, being able to encode using fobs would also be a great plus.

      In the long term, we could also provide extra functionalities like a FrameRateControl to support non-1.0 framerates, maybe also negative framerates (like quicktime) , and a good-looking Renderer. In the end, we could also write a super multimedia player (skinnable and everything) to gain more popularity. I think fobs really has a great potential.

      Also will wma be supported ?

      Regards

      Masato

       
      • José San Pedro

        José San Pedro - 2004-12-17

        Hi there,

        thanks for your reply. About your comments, CVS access is one of my priorities. Right now is impossible because much of the code is in testing status and compilation requieres much effort. Secondly, encoding is possible since v0.3pre1... I guess you mean encoding support in fobs4jmf (should I create a separate forum for fobs4jmf? Indeed a great percentage of users are interested in fobs because of jmf extensions). Fobs4Jmf encoding support requires a great programming effort that I'm afraid I can't take in the next months. Any help would be much appreciated.

        About FrameRateControl, it should be easy to implement... I didn't know it was of any use. If more people support this request I would definetly implement it for next release (o.3pre3?!?).

        About a better player, that's really out of the scope of the project. I have already built a better looking gui than JMStudio, but down to the core is just the same classes doing the hard work. Maybe I wwould include it in a test applications folder within the fobs distribution.

        Finally, wma support depends mainly on the ffmpeg development team... Fobs is just a wrapper. I don't really know much about codec implementation. Anyway, I really doubt that Microsoft will release the specification of their audio format, so an open source implementation will be hard to accomplish. Try m4a... after all, I'm coding Fobs in a Mac!!!

        Cheers.

        Jose San Pedro Wandelmer.

         
    • Nobody/Anonymous

      Hello,
      I just thought of one last thing. It might be a good idea to create a project on java.net that would link to this site to advertise it and get more suport from java developpers. What do you think about it?

      I think framerate support would be interesting if we're aiming at dvd playback for example or any application where video is central. I also thought of a Renderer because I've observed that whenever I tiled my video in jmf it would look terrible, because, I suppose, no interpolation is done so you see all the pixels. The same video would look a lot better under MPlayer for example.

      Masato

       
      • José San Pedro

        José San Pedro - 2004-12-19

        Hi again,

        I've just linked fobs to java.net.... I actualy wasn't aware of its existance. Thanks!!

        About DVD playback, even though I have improved decoding timings it seems it's not enough yet to get smooth playback. This is a due to the high resolutions used in DVD encodings. Anyway, as I think frame rate control is not really hard to code, I will include it in the next release.

        Coding a renderer could be nice to do some processing of images. However, I don't know if a java based one would be fast enough to process 25 frames per second. Maybe, this could be included in the C++ decoding engine (e.g. via a Jmf Codec Control). That's maybe not so elegant, but way faster than a java based renderer or another JNI invokation to a C++ renderer (each JNI call has an associated cost).

        Another interesting option would be to allow controlling frame size (natively, of course) so DVD big frames are reduced prior to being send to JMF. That would surely improve playback performance (at the cost of quality). Maybe, doing both reduction&processing could lead to a better DVD playback experience than what we currently have.

        Thanks for your comments and suggestions!

        Cheers!!

        Jose San Pedro Wandelmer

         
    • Nobody/Anonymous

      Hi,
      Can't wait to see all these improvements. Concerning performance, have you tried to use a profiler to see what's the bottleneck? I'm not sure a java Renderer would really be slow. At least it should be faster as java evolves, since java2d uses hardware acceleration. Under j2se1.5 -Dsun.java2d.opengl=true should improve performance further.

      Also, it's just an idea, but I wonder if it could increase performance to use java.nio.ByteBuffer instead of byte[] as the datatype. Since you're using a lot of native code, it could be interesting. Plus, it would make it much simpler to convert from one datatype to another (with ByteBuffer's asXXXBuffer, order,... methods). Lastly, ByteBuffers can be easily converted back to byte[].

      Finally I've looked up java.net but fobs isn't listed. The main goal of the site is to host and advertise projects like this one, so I think we should create a project there that would link to this one. Then possibly get some advertisement on the front page or something. Being on both sourceforge and java.net can't hurt, i guess.

      Keep up the great work

      Masato

       
      • José San Pedro

        José San Pedro - 2004-12-19

        Hi,

        I've just registered the project in java.net. It should take some time to be listed as they manually review all applications. Be patience ;)

        About j2se-1.5, I can't get it to work with JMF at all. Have you had any success with them?!?!? As an example, I can't get audio with any file (not fobs related, as I tried it before installing fobs).

        I will have a look at nio package. The problem here is that I don't really know how well this works along with JNI calls. Profiling show that two main bottle necks are memcpy's and yuv2rgb conversions. Reducing frame size will help them both, though maybe a new bottle neck will appear in the size reduction function :( I will try!

        cheers!

        Jose San Pedro Wandelmer

         
    • Nobody/Anonymous

      Nice,
      Well I didn't have too much problem with 1.5 and jmf. At first I couldn't run jmstudio, because there was a bug in the new  AWT implementation. I had to add -Dawt.toolkit=sun.awt.motif.MToolkit in the last line of jmstudio. Apart from that things worked quite well.
      Yeah I'll be patient, I just wasn't sure you had registered it. Great news.
      The advantage with nio is that you can use direct (native) Buffers. What exactly is memcpy, is it part of the C code?
      Cheers ;)

       
    • Nobody/Anonymous

      I would like to use fobs as C++ wrapper for encoding flv files on-the-fly from mic and webcam. I was experimenting so far with my own homebrewn wrapper, which is very ugly (and a complete redesign of it would lead anyway towards something similar to fobs).  Of course Im am also willing to contribute, just haven't had time to take a closer look to fobs.

      regards
      Roberto

       
      • José San Pedro

        José San Pedro - 2004-12-21

        Hi Roberto,

        your project seems rather interesting. You may be able to take advatage of ffserver, which is included in the ffmpeg library. I think it does something similar to what you intend.

        However, I'm not able to read any specific request in your message for future Fobs releases. If you have any, please feel free to post again.

        Of course, any help with the project will be more than welcome. I hope I can setup the CVS in the following weeks, to encourage developers to participate ;)

        Cheers

        Jose San Pedro Wandelmer

         
    • Matthew Sackman

      Matthew Sackman - 2004-12-21

      I really really hate asking for this, but I have a deadline of January 4th and it would help me enormously if I had ogg vorbis and mp3 support in fobs4jmf before then. I know that Sun have released an mp3 plugin but I would prefer the ffmpeg/lame version. If there's anything I can do to help then I can spend some time on this over the next few days if that's of any use.

      Many thanks once again for fobs4jmf.

      Matthew

       
      • José San Pedro

        José San Pedro - 2004-12-21

        Hi Matthew,

        well, you're lucky cause I plan to release fobs4jmf before the end of this year. Maybe, I won't be able to provide Linux binaries but both Win32 and Mac binaries will add support for ogg vorbis and mp3.

        Anyway, any help to the project now or at a later time will be much appreciated, so we can help other users to meet their deadlines.

        Thansk to all you guys for using fobs (and fobs4jmf).

        Merry christmas!!!

        Cheers

        Jose San Pedro Wandelmer

         
    • Nobody/Anonymous

      Hi Pedro

      It is just a client application, all I need to do is to encode audio and / or video  to the flv format  (and some other formats in case it is just audio). However I have a strong request / requirement: Right now fobs seeems to be filebased (e.g. filename argument in the encoder constructor). But I need to read data from a Buffer. Therefore I need callbacks or virtual functions where I can place my code to read the input data from a buffer which gets filled by my audio/video capturing code.

      regards
      Roberto

       
    • Nobody/Anonymous

      Now I took a closer look at tha C++ Api and I saw that fobs has encoding methods to add new frames. That means that what I want to do with fobs seems to be possible already, feature request of previous post is obsolete.

      regards
      Roberto

       

Log in to post a comment.

Want the latest updates on software, tech news, and AI?
Get latest updates about software, tech news, and AI from SourceForge directly in your inbox once a month.