Reply
Thread Tools
Karel Jansens's Avatar
Posts: 3,220 | Thanked: 326 times | Joined on Oct 2005 @ "Almost there!" (Monte Christo, Count of)
#71
Originally Posted by Mutiny32 View Post
Oh, and I'll be there in Berlin to bust your balls, so you had better start coming up with official answers.
I'll be selling the popcorn.
__________________
Watch out Nokia, Pandora's box has opened (sorta)...
I do love explaining cryptic sigs, but for the impatient: http://www.openpandora.org/
 
Mutiny32's Avatar
Posts: 71 | Thanked: 6 times | Joined on Jun 2008 @ Lee's Summit, MO, USA
#72
Originally Posted by lcuk View Post
Mutiny32,
we all want everything working on the device, but I think threatening physical violence against people is the wrong direction completely.
Figure of speech. Americanism I guess. "busting your balls" means persistently asking questions.
__________________
I'm only a troublemaker on the Internet
 
Mutiny32's Avatar
Posts: 71 | Thanked: 6 times | Joined on Jun 2008 @ Lee's Summit, MO, USA
#73
Originally Posted by GeneralAntilles View Post
Especially when those people aren't responsible for the decision making process behind including A2DP.

It's the managers you're after, not the engineers that are largely fighting for the same things we are (you just don't know because they can't talk about it).
Figure of speech.

But you get enough end-users asking questions why why don't have access to features on a device, devs are going to inevitably going to start looking to superiors because they start to panic.
__________________
I'm only a troublemaker on the Internet
 
Posts: 19 | Thanked: 3 times | Joined on Jun 2008
#74
and the douche-baggery continues...

look people, I don't care how craptacularly your implementation of a2dp is, unless I can pair a bluetooth headset and use A2DP NATIVELY (all sound is ported out ON THE DSP using A2DP), its just a hacked up crappy soloution that BARELY works.

either stop trying to fsck with things in an *** backwards manner or focus on the base problem; the osso sound system.
 
Posts: 19 | Thanked: 3 times | Joined on Jun 2008
#75
gosh, I love being adversarial!
 
Posts: 19 | Thanked: 3 times | Joined on Jun 2008
#76
On a quick note, I believe I have a right be be douche bag because I have already posted a howto complete with shell scripts that implements your craptacular solution... It works on all prior OSs except diablo.

however, just because a hack exists does not mean that the system supports a2dp. On a crappy cell phone I can pair it to a BT headset and get crystal clear stereo sound through a2dp will little to no effort... if a cell phone with minimal specs can do it I think it should be only elementary for some of the "genius" programmers that scan this thread to--oh I don't know--FIX IT?!? and if you cant fix it... well then stop posting and RE-posting the same fagnastic hack that has been identified and implemented mere weeks after the n800 was released.
 
GeneralAntilles's Avatar
Posts: 5,478 | Thanked: 5,222 times | Joined on Jan 2006 @ St. Petersburg, FL
#77
Originally Posted by IcoNyx View Post
gosh, I love being adversarial!
Put up or shut up. If you want to show us all your mad programming skills and make everything work then do so. Otherwise, please don't denigrate the hard work of others.

It just makes you look like an immature idiot (perceptions match reality, perhaps?).
 

The Following 2 Users Say Thank You to GeneralAntilles For This Useful Post:
Johnx's Avatar
Posts: 643 | Thanked: 628 times | Joined on Mar 2007 @ Seattle (or thereabouts)
#78
IcoNyx: If you really want to have a civil discussion about the hows and whys of A2DP on the tablets, then you need to approach the community with a civil tone. I'm happy to explain the situation and why A2DP is implemented the way it is, but I'm not going to waste my time talking to someone who just wants to rant and troll.

-John
 

The Following 2 Users Say Thank You to Johnx For This Useful Post:
Posts: 19 | Thanked: 3 times | Joined on Jun 2008
#79
very well, with civility;

@ GeneralAntilles: As I have said, I am not a programmer, I have no programming skills... you know... for some reason I don't like you... You will say it's because you poke holes in my logic or some such nonsense... but really I have to point out you have posted some things that have been terribly useful... but when you reply to other's posts, you seem arrogant... it's really annoying... I guess it's just a taste of my own medicine.

@ Johnx: I am fairly confident I have an understanding as to why we don't have a2dp available for the Internet Tablets...

I BELIEVE there are several mitigating factors: for starters, A2DP is not the only issue. First the sound has to be decoded into wave and then re-encoded into either mpeg (1, 2, 3, OR 4), AAC, or SBC (for A2DP friendly encapsulation) then the output has to be encoded and encapsulated then transmitted via bluetooth networking to a receiver (the headphones) which then decodes the packets and plays the sound... the simple act of decoding and re-encoding (though necessary for universal compatibility) is incredibly process intensive. Hence the huge processor load when apps like mplayer are set up to use A2DP (and that even happens on regular laptops and desktops much like the one I am using now) this load is far more limiting when it comes to SMPCs like the Internet Tablets.

Now I am fairly positive that the reason A2DP was initially planned for on the hardware side but removed before release is simply due to the fact that implementation would hamper the device so critically during normal use that Nokia did not feel comfortable letting it out into the wild.

Now that being said, I also recognise that Nokia did build the Internet Tablets (the n810 at least) with a separate sound processor (known as the DSP). The given reasoning for this was to offload audio decoding to a desperate processor. however; you and I know that this can be done on die (on the main processor) with little to no impact to performance. so the more likely purpose of the DSP would be for decoding and re-encapsulation for Bluetooth audio profiles, such as A2DP or GAVDP. Weather or not this was genuinely their plan, we don't know but can only speculate.

All this said, the final reason for a lack of A2DP support is simply this: the OSSO software available (for ANY platform) simply has not properly implemented A2DP, much less any other Bluetooth profiles other than networking (such as LAP, OPP, SPP, and PAN) heck even HSP is not implemented where it needs to be, but it is such a simple profile that it CAN be done on die with little to no impact to operation.

No, for PROPER implementation of A2DP, or any other "high end" bluetooth data profile, it must be done by the kernel. this IS beeing looked at but we cant expect any significant progress untill next generation of kernels (if even then).

It appears that the kernel dev teams have been focusing more on hardware compatibility than data link layer encapsulation.

If I am wrong in ANYTHING I have said here, please let me know... as I am seriously interested in your take... but know I am taking the stance that until the kernel properly implements a2dp support, Nokia will not include it... and until Nokia supports it on the base device, I see it as not viable.

Last edited by IcoNyx; 2008-07-26 at 15:38.
 
Johnx's Avatar
Posts: 643 | Thanked: 628 times | Joined on Mar 2007 @ Seattle (or thereabouts)
#80
@IcoNyx: Ok, you understand the basics, but you're off by a little. In the future, you'd save a lot of time (and make a lot more friends...) if you read up or asked first before ranting about things you don't really understand. First of all, no one wants to implement A2DP at the kernel level. That would just be ugly. Secondly, the DSP is more than just for sound. It's a genuine Digital Signal Processor and can be programmed to do just about anything. The reason it's so often associated with sound on the tablets is that (in a software sense) it's the only part of the system that can directly drive the the built-in speakers and headphones.

Now, because of this, Nokia uses a very non-standard sound setup when compared to any other Linux PDA or desktop. On desktop Linux, the stack for playing sound looks like this:
Music Player -> gstreamer (and/or other intermediate libraries) -> ALSA
Most music players on desktop Linux have some way of choosing which ALSA device they want to output to. ALSA output devices can exist as kernel drivers or they can exist in user-space (such as A2DP). Even if the music player doesn't support choosing outputs, you can still just change which ALSA output is the default and everything will work fine.

On the tablets things are pretty different. Nokia has decided to make the DSP the bottom layer for playing sound on the tablet. Whether you're outputting to the speakers or wired headphones or to a BT headset/headphones via HSP, all sound is mixed on the DSP. So their stack for playing sound with "Media Player" through BT headphones over HSP looks like this:
Media Player (CPU) -> gstreamer (CPU) -> DSP (sound is mixed with other system sounds) -> BT libraries (CPU) -> BT headphones.
Now, please note that Media Player, the gstreamer libraries for passing sound to the DSP (AFAIK), the DSP task for mixing sound, and the DSP task for playing sound are closed source. If you want to change where Media Player is outputting sound, you would need to modify its gstreamer pipeline and for that you would likely need it's source (unless their is some new hidden config option for it that no one knows about). If you want all system sounds to be played through A2DP you would need to modify the sound mixing DSP task I think. That's what Nokia wants to do, but apparently it's pretty low priority to them or something. See here for their side of the story. Now, of course you could reverse engineer any or all of that stack and reimplement it from scratch, but that would be a huge wasteful duplication of effort, and I don't think anyone's really interested in doing that.

Please tell me if you need me to clear any of this up. It is pretty complicated, and as long as I'm writing this I'd like this to be the one central point that people can be directed to when they ask "What's the A2DP situation?"

@Everyone else: If I made a mistake, or was unclear or ambiguous, please, please, please tell me! I don't like to spread misinformation.

-John
 

The Following 3 Users Say Thank You to Johnx For This Useful Post:
Reply

Thread Tools

 
Forum Jump


All times are GMT. The time now is 10:52.