FLAC encoding in Android? - G1 Android Development

I am developing my application, where voice should be recorded for later playback. According to official Android DevGuide I use AMR-NB encodec (only one available), but recorded sound quality is nightmare...
So my question - is this possible to encode sound using other (better) codecs, eg. FLAC or Vorbis?
Moreover, I am not native code developer - only android, so please explain me... Is this a problem to port LAME or full Vorbis to Android? I suppose yes, because nobody did not do it.

I would think the problem encoding to FLAC would be two-fold, one processing (slow little old things these phones are), and two storage.
It may be better (if voice is your target) to look into Speex, which is a variant of Vorbis/Flac designed for voice. Perhaps the person who ported FLAC to Android could help pursue this?
Check here.

Thanks for reply...
And what about Lame - also OS codec for mp3?
So , am I right, that speex encoding is supported in Android? May I ask for advice how to use it?
I looked for speex... I think it is not supported in Android.

Speex encoding would not be natively supported by Android, neither is FLAC or MP3. The reason I suggested Speex is because it is open-source and royalty free, it also has a smaller footprint and might be less cpu intensive. Either option will require libraries to be ported in order to provide the encoding/decoding function. Speex would also be easier than MP3 because the native Vorbis libraries might be easily adopted to allow Speex playback.

Related

Why does a video from my Fuze not play on my PC?

Anyone else have an issue? I use Zoomplayer and I have ffdshow. I didn't know anything was left to not be playable!
Check what codec it wants with Gspot(http://www.headbands.com/gspot/)
For a player you can try MediaPlayerClassic(http://sourceforge.net/project/showfiles.php?group_id=82303&package_id=84358&release_id=403110) or get MPC included with a pretty robust codec pack CCCP(http://www.cccp-project.net/download.php?type=cccp)
As a last resort try VLC(http://www.videolan.org/vlc/) it plays pretty much anything, but not always in an optimized way
FFDShow can play TouchPro/Fuze videos, but it may not be configured to recognize the files by default.
GSpot reports video: MP4V, and audio: AMR.
Look under your start menu for the link to ffdshow config (eg: Start > Programs > ffdshow > ... or CCCP > Filters > ... if you use that pack)
Choose FFDShow Audio Decoder Configuration
→ Under the Codecs category, look for AMR and set Decoder to libavcodec.
Then choose FFDShow Video Decoder Configuration
→ Under the Codecs category, look for Other MPEG4 (you will see MP4V noted in the FourCC) and set Decoder to libavcodec
Close ZoomPlayer (or MPC, which I highly recommend), and reload. FFDShow will now properly decode and play the videos.
Man I hate the nightmare over which player to use. I used to use only MPC, but people told me it had inferior video quality and/or couldn't support 5.1.
If you're using the default video format (.mp4), here's a trick that will usually play the video on a PC using Quicktime.
Change the .mp4 file extension to .3gp.
In the advanced menu on the video camera, you can also change the capture format to H.263 and those files seem to play fine on my PC without any changes.
thehyecircus said:
Man I hate the nightmare over which player to use. I used to use only MPC, but people told me it had inferior video quality and/or couldn't support 5.1.
Click to expand...
Click to collapse
Technically MPC isn't a factor when it comes to video quality or support for additional features. Video/audio quality depends on the filters/decoders being used (such as ffdshow, coreavc, powerdvd, etc). Support for extra features comes from splitters (such as Haali Media Splitter, which will tell MPC how to read/playback different kinds of data in a file) and other kinds of filters (such as directvobsub for rendering subtitles).
MPC is pretty much just a GUI that lets you control all those splitters/filters. Without any splitters/filters, MPC is pretty useless, and the default filters would use (that are included in Windows) are indeed pretty low-quality. But ffdshow is one of the best quality decoders out there.
Just for reference, ZoomPlayer is also a good player which uses the same splitters/filters to play media files--it's just a matter of GUI preference. The CCCP package is popular because it includes both MPC and ZoomPlayer as well as the best (non-commercial) splitters and filters like Haali and ffdshow.
If you're interested in getting more information, this is a good start:
http://www.cccp-project.net/wiki/index.php?title=Media_Players
Hopefully this isn't too far off-topic
Is H.263 a poor video quality? I can open it with Media Player and I installed the CCCP, but it takes a while to open my original video file for some reason. And I'd rather never use Quicktime, in fact The CCCP site had me uninstall it. But anyway - does H.263 matter compared to MPEG4? What can I do to have my next video file not be such a pain?
"Choose FFDShow Audio Decoder Configuration
→ Under the Codecs category, look for AMR and set Decoder to libavcodec.
Then choose FFDShow Video Decoder Configuration
→ Under the Codecs category, look for Other MPEG4 (you will see MP4V noted in the FourCC) and set Decoder to libavcodec"
I am going to do that now. I would have done it before, but I did not have those files.
http://en.wikipedia.org/wiki/H.263
There's a lot of rude and ignorant posters on this site, aren't there? I went to the Wiki page first thing - and guess what, there's no information. So *gasp* I asked here. Directing me backwards won't help.
It's pretty complicated so I'll just try to keep it simple:
MP4V is just an identifier for MPEG-4 video. There's a lot of technical stuff behind MPEG-4 codecs concerning quality, but I would say it's safe to assume the Fuze/TouchPro uses just the simple profiles (optimized for handhelds). H.263 is quite simply just an older codec but is similarly intended for handhelds. MPEG-4 technically can offer much better quality, but the Fuze/TouchPro does not let you change the codec's internal settings (since it's built-in to the camera app and/or camera chip).
So whether one codec is better than the other isn't clear; you'll just have to test both modes and see which one you prefer (but at 320x240, I doubt the difference will be very noticable). If the quality is almost the same, the other significant factor is that one codec may produce smaller files.
Hope that helps.

Is there anybody trying to bring XVID support to Android?

Is there anybody trying to bring XVID support to Android? I would love the ability to copy a movie to my SD card and then watch it without converting it.
even if someone did port it it would be software accelerated as the hardware only supports H.264 decoding, and the cpu in the phone wont be very good at decoding it. especially if its higher than the phones resolution of 480x320
Actually, the hardware is capable of h263 as well...
FYI: There is no such thing as "xvid" as an actual video encoding. It is just a video encodER/decodER that implements a SUBSET of mpeg4 part2, which *INCLUDES H263*. That means that xvid <= h263 and is therefore theoretically compatible with the hardware decoder.
That means that you should be able to playback so-called "xvid" without having to reencode.
Note that that does NOT mean that you can simply playback whatever you downloaded from the 'net. There are other issues affecting compatibility... 1) CONTAINER FORMAT... this is typically indicated by the file extension... i.e. ".avi" probably won't play since there is no appropriate demuxer available. Might help to remux it into a compatible container... .MP4 is a suitable container, as is .3GP. The container format selected has NEGLIGIBLE affect on CPU load and demuxing is always done in software, so don't worry about that. 2) overall bitrate/resolution... this still has an affect. Though it has a dedicated decoder chip, it DOES have limitations. Don't expect it to be able to handle HD content under any circumstances. 3) the decoder's implementation of mpeg4 -- not all hardware implements everything possible. 4) audio used -- it WILL choke on cryptic proprietary audio encodings.

Lossless video playback using MediaCodec/MediaExtractor

Hi there,
I'm struggling with this for a dozen days now, maybe you can help: I need a lossless video codec to be able to drive an LED display of 64x192px in size. Has to run on a Hardkernel Odroid XU3 with Android 4.4.4, willing to use Android 5 if I find an OS image.
So far I tried h264 lossless, VP9 lossless and also using maximum quality but lossless, but none of them worked. Android didn't want to load the file or the quality wasn't appropriate.
Whatever codec I use, android only likes the yuv420 pixel format, causing our videos to look blurry.
I'd love to have a codec that just accepts a PNG file list or something else, RGB run length encoding would be a good candiate, like Apples RGB format.
Is there any codec that I overlooked that is capable of doing this?
Best,
Lyve

Media Playback 101 (Using MX Video - HW/HW+)

I figure these threads aren't exactly popular as someone needs to have basic understanding of MPEG-4 Part 2, AVC and HEVC content, not to mention all lossless audio codecs avail today compared to a few years back when people sweared by FLAC, Apple Lossless, Monkey's Audio or even WavPack. Today I assume most still stick to FLAC or ALAC since they don't dare going elsewhere. But fear not! There are other alternative today such as Tom's lossless Audio Kompressor (TAK) and True Audio (TTA) that are quite popular in the east, namely Japan. But enough about this. You want answers correct?
Consider this thread an early alpha as I try to recover my excel sheets from way back when SD 800 was still fresh on the market.
I will namely cover AVC (H.264) and HEVC (H.265) content here as the MPEG-4 Part 2 standard is just too old to even be bothered with. As for the profiles, I will only bother posting playback results for Main (MP), High (HP) and High 10 (Hi10P) as it becomes quite complicated after these three.
Reserved

Hi Res Music - Not enabled by Sony...or is it?

Hello XZP land!
I've had mine for a while (since launch actually), and I really love the device. However, I've come upon a conundrum that I think needs some technical elbow grease (which I am not skilled to do).
I own some Hi Res audio, and my favorite player (Neutron), as well as some others, supports playback of it. The thing is, the XZP doesn't show as having the ability to, according to this Neutron thread on the matter Hi Res in Neutron. Our devices currently do not offer the Hi-Res options.
Qualcomm on their site for our chipset says;
Developed by an audio technology leader, Qualcomm Aqstic audio codec (WCD 9340/9341) supports high-resolution standards that recording studios use to master tracks, creating a pure audiophile listening experience. It has an integrated DAC (digital-to-analog converter) that supports native Direct-Stream Digital (DSD) and pulse-code modulation (PCM) Hi-Fi audio playback. DSD is a standard found on Super Audio Compact Discs (SACDs), and the Qualcomm Aqstic audio codec can decode DSD files natively. The DAC on the Qualcomm Aqstic codec has ultra-low Total Harmonic Distortion plus Noise (THD+N), which means no additional noise or signal is added for the most authentic sound reproduction. The Qualcomm Aqstic codec is also designed to give you the highest dynamic range available, so you can feel the dramatic change of volume and emotion in your favorite music.
SO I know the chipset can do it.
Now, Sony provided us with the "DSEE HX" quality audio setting... and it says "upgrade quality of compressed music files to 'NEAR' Hi Res'". Meh, okay, so you can muck around with compressed files and make em sound better. I don't believe that resolves my issue, and enables anything firmware wise.
I believe this means we need to enable the feature via firmware and bypass Sony's attempt at audio features in their DRM space. Has anyone been able to enable this in Neutron? How's your Hi-Res playback?
charlatan01 said:
Hello XZP land!
I've had mine for a while (since launch actually), and I really love the device. However, I've come upon a conundrum that I think needs some technical elbow grease (which I am not skilled to do).
I own some Hi Res audio, and my favorite player (Neutron), as well as some others, supports playback of it. The thing is, the XZP doesn't show as having the ability to, according to this Neutron thread on the matter Hi Res in Neutron. Our devices currently do not offer the Hi-Res options.
Qualcomm on their site for our chipset says;
Developed by an audio technology leader, Qualcomm Aqstic audio codec (WCD 9340/9341) supports high-resolution standards that recording studios use to master tracks, creating a pure audiophile listening experience. It has an integrated DAC (digital-to-analog converter) that supports native Direct-Stream Digital (DSD) and pulse-code modulation (PCM) Hi-Fi audio playback. DSD is a standard found on Super Audio Compact Discs (SACDs), and the Qualcomm Aqstic audio codec can decode DSD files natively. The DAC on the Qualcomm Aqstic codec has ultra-low Total Harmonic Distortion plus Noise (THD+N), which means no additional noise or signal is added for the most authentic sound reproduction. The Qualcomm Aqstic codec is also designed to give you the highest dynamic range available, so you can feel the dramatic change of volume and emotion in your favorite music.
SO I know the chipset can do it.
Now, Sony provided us with the "DSEE HX" quality audio setting... and it says "upgrade quality of compressed music files to 'NEAR' Hi Res'". Meh, okay, so you can muck around with compressed files and make em sound better. I don't believe that resolves my issue, and enables anything firmware wise.
I believe this means we need to enable the feature via firmware and bypass Sony's attempt at audio features in their DRM space. Has anyone been able to enable this in Neutron? How's your Hi-Res playback?
Click to expand...
Click to collapse
Why not just use the stock Sony music player for hi res playback? Hi res audio files have been supported since the Z2 and onwards. You can just use the Sony music player for hi res and neutron for everything else. I think that its auto enabled by default within the Sony music player. When you see the "HR" logo on the album art I suppose that means its enabled.
If your trying to enable the same thing in neutron and it doesnt work because theres a toggle. Id blame the creators of the app or simply Google for the lack of support. It can be one of 2 things stopping it from working for you. The android os or the app itself. I dont use neutron personally and never have. Ive always used the Sony one after I gave up on poweramp. I wouldnt blame the device itself. Its just like my issue of vulkan support whereby apps cant see that the device does support it. In that case I would blame Google. This is as much help as I can offer.
Hi-Res is enabled out of the box with the in-built Sony Music application and contrary to what RJASSI21 said, the HR logo does not appear on all Hi-Res audio tracks album art, only on 24bit Hi-Res tracks album art and I have been using Hi-Res audio on my Z5P and my XZP but I have only ever used the Walkman/Music app provided by Sony and it works.
Mobfigurz said:
Hi-Res is enabled out of the box with the in-built Sony Music application and contrary to what RJASSI21 said, the HR logo does not appear on all Hi-Res audio tracks album art, only on 24bit Hi-Res tracks album art and I have been using Hi-Res audio on my Z5P and my XZP but I have only ever used the Walkman/Music app provided by Sony and it works.
Click to expand...
Click to collapse
Thanks to both of you for the info. I am going to see if I can get the Neutron dev to add the libraries or whatever's needed to get that app where I want it.
charlatan01 said:
Thanks to both of you for the info. I am going to see if I can get the Neutron dev to add the libraries or whatever's needed to get that app where I want it.
Click to expand...
Click to collapse
Much appreciated! I was looking for these Neutron settings on the XZP too since they were n my LG V10 (before it died on me last week). Neutron music player has been my go to player for several years now so here's hoping we get some positive updates soon.
Thank you!
There was an update to Neutron for Oreo support yesterday and now I can finally see the Hi-Res Codec and Hi-Res Speaker options.

Categories

Resources