Android Ramblings, Craigslist Adventures, Technical Nonsense

or, thoughts from a random graduate student

  • Posts
  • MicDroid
  • Lame4Android
  • Tyrian
  • Resume
  • GitHub
  • Google Profile
  • Facebook
  • Twitter
    • Edit
    • Delete
    • Tags
    • Autopost

    Samsung Galaxy S Redux

    I've recently been bitten (again) by Samsung Galaxy S AudioRecord bugs, and after having to ignore it to focus on classwork for the past few weeks, it's time to get back into it. The last MicDroid update featured improved error handling due to proper (sort of) use of exceptions instead of an Android Handler to route all exceptions to error handling code. Unfortunately this broke Galaxy S support due to what I believe is described in these posts. It appears the Galaxy S phone just locks up the AudioRecord if you try AudioRecord.startRecording() while it is initialized improperly. This behavior certainly seems consistent with the (mass of) bug reports I've been getting from users. I think I'm going to have to try some of the dirty hacks mentioned above to fix it.

    Another project which appears not to have had too many issues with the Galaxy S series is the rather famous Sipdroid. They also have AudioRecord code which supposedly works on the Galaxy S series. They use an interesting method of delaying until the next frame is read before reading from AudioRecord again. I'm fully intending to try this method out also, since if it works, it means I can potentially simplify a lot of the complex recording code current around. Also, it could potentially mean fixing the horrible buffer size hacks I'm using right now and finally allow the Galaxy S series to take advantage of live recording.

    Should I get it to actually work, I definitely plan on releasing details.

    Finally, the last, best hope for the Galaxy S series is the upcoming release of an official 2.2 ROM. There have been rumors that the 2.2 ROM fixes a lot of the audio bugs that plague the 2.1 Galaxy S ROM, and should an update that fixes these fully roll out, all of these horrible Galaxy S problems should be solved. Obviously this is the best solution for everyone :)

    Something else I've been throwing around in my head has been the fact that the Galaxy S has a relatively slow internal SD card. I'm wondering if this has any effect on recording, especially if AudioRecord.read() reads audio at a rate faster than the phone can write. 

    It's problems like these that really have me looking forward to Gingerbread, as it's OpenSL and effects pipeline support can potentially go a LONG way towards resolving basic audio functionality issues like these. Now if only we could get Google to release the source code and Samsung to follow standards and release fully baked hardware...

     

    Tags » Android Audio AudioRecord Galaxy S Programming
    • 11 December 2010
    • Views
    • 0 Comments
    • Permalink
    • Tweet
  • Ethan Chen's Space




    • UCLA M.S. Computer Science

    • Android Developer

    • Freelance IT



    Archive

    2011 (10)
    November (1)
    October (2)
    September (2)
    May (3)
    March (1)
    January (1)
    2010 (31)
    December (3)
    November (2)
    October (4)
    September (3)
    August (6)
    July (10)
    June (3)
  • About Ethan Chen




    • UCLA M.S. Computer Science

    • Android Developer

    • Freelance IT



  • Subscribe via RSS
  • Sites I Like

    • Engadget
    • Hacker News
    • TechCrunch
    • Reddit
    • XDA-Developers
    • Cyanogen Android Tree

    Follow Me

      TwitterFacebook

Theme created for Posterous by Obox