MediaPlayer.Play method throwing DRM exception?! - xna

I'm trying to add background music to my XNA 4-based Windows game. When I do
Song bgm = Content.Load<Song>("bgm");
MediaPlayer.Play(bgm);
in the MyGame.LoadContent method, I get an InvalidOperationException with the message "Song playback failed. Please verify that the song is not DRM protected. DRM protected songs are not supported for creator games." The song is in MP3 format and is not protected. I tried using a WAV instead and the result was the same.
It seems I'm not the only one having this problem. But the closest thing I've found to a solution is "use XACT".
Any ideas?
Edit: Also, why is my code snippet not syntax highlighted? It's highlighted in preview.

The problem in my case was that I had uninstalled Windows Media Player. For what it's worth, I'm running Windows 7 Professional 64-bit. I reinstalled WMP via the Windows Features dialog and the problem went away immediately. I didn't even have to restart.

The problem for me was that I was missing the ID_CAP_MEDIALIB capability in my WMAppManifest.xml.
<Capability Name="ID_CAP_MEDIALIB"/>
Hope this helps.

Related

Ruby on Rails capture webcam video and audio

Is there any gem out there that can interact with users webcam to capture video and audio and upload it to the server?
Have you heard about navigator.getUserMedia()? That could the trick. More info: http://www.html5rocks.com/en/tutorials/getusermedia/intro/
They talk about it in the Mobile Web Development course in Udacity (lesson 10).
https://www.youtube.com/watch?v=j6mzYt5fJpg
Have you tried headshot ?
I just tried it yesterday, but ran into some trouble with the flash player, not beeing able to set permissions for camera use
try it out, its easy to add to your application, maybe you'll make it work.
and better backup your files before.

Audio never loads on iPad but it works perfect on emulator - PhoneGap + Howler.js

I am using Howler.js on my PhoneGap application. Because my audio files are large (more than 10Mb) im an setting the buffer attribute to true (forcing HTML5 Audio).
var theSound = new Howl({
urls: ['assets/Sound.m4a'],
buffer: true,
sprite: {
scene0 : [ 1966000, 27000] }
When I test my application on the emulator and my iPad Mobile Safari everything works well. But when I run the application on the iPad as an app, the audio never starts. Using the web inspector I have noted that the audio file tries to load again and again like an not ending loop. You can see an attached screenshot of the resources tab on the web inspector both both the emulator and the iPad, running the same PhoneGap app.
Any idea on what could be the problem?
I've been looking into this for a while.
From what I've gathered, Howler defaults to Web Audio API, and this SO answer says you need a "user input event" to make it work on iOS, because by default it mutes everything. I even tried Howler's own interactive demo on my iPad 2 with iOS 5 (I still haven't updated) here and NONE OF THE SOUNDS WORK. My first link has a link to Apple's documentation, and I haven't tried it yet, but it looks like the convenience of Howler has to be replaced with a lower level implementation that takes about 5-10 lines with XMLHTTPRequest (see the Apple link), or another more versatile library. I'm still learning about what exactly I need, but I have a very similar problem I've been working on resolving today.
But then Howler falls back to HTML5 Audio. OK so I'm just googling that now, and this link comes up, and it's just reminding me of the pletora of compatibility considerations between OGG ACC MP3 etc on various browsers vs. browser layout engines vs. operating systems. So I'm left believing your file format M4A, related to MP3 as far as I can tell, isn't working in the target brower on the target iPad OS. I'm not familiar enough yet to give exact specifics but certainly since Howler doesn't work on my iPad that proves there's at least a problem with that.
The whole point I chose Howler to use was to abstract all the above away! I'm going to go look for another more comprehensive library now =D
the problem might be file size. IPad has a limited cache memory size and if you overflow it assets will not work. The only solution to this problem is smaller file size. Another possibility is html audio will not load or play except in a user event (touch). Web Audio will load but starts muted and only unmutes with a play call inside of a user event.
SoundJS is a library I help develop that handles as much of this stuff as possible. In particular I think you would find the Mobile Safe Approach useful. It is well tested on iOS and Android devices. Unfortunately we do not support sound sprites yet.
Hope that helps.

red5 1.0.1 : truncated recorded stream .flv.ser : Error -18 truncated box

I've recorded streams using streamPublishStart callback with Red5 streaming server. It works. But a few times, the internet connection fall down in the publisher side. Then, in the streams directory, I have got a .flv.ser file. It's not playable. I've tried to repair/fix it with all software that propose it. No success. I've use flvcheck.exe and the report is : Error -18 truncated box. I've seen discussion on Adobe forums but no interesting things. Could you propose me a technic or a software to solve my problem.
thanks in advance,
Pascal.
Did you get your question answered? The .flv.ser is a temp file, created until Red5 is done processing the stream. When done, there is a new file without the .ser extension. What I had to do was create a ajax script that looks at the directory for a .flv.ser file and prevents closing the page until the conversion is completed. Red5 version one is slow at doing the conversion. I'm testing 1.0.2 RC1 right now, but initial results look like it is even worse. I hear version .8 is the best for recording so I may have to downgrade to that.
I'm late to the party but you simply have to concatenate the files. On Linux this works like this:
cat foo.flv foo.flv.ser > playable_foo.flv
I read that somewhere else but I forgot where it was.

Air iOS,Flash Pro, external mp3 won't be played

My flash app has the following code. The sound is played when locally testing but it's not played when published on iOS.
The mp3 file is inside components/sound directory and the directory is included via Air iOS3.6 publish setting in Adobe Flash cs6 professional.
I did some testing and while the mp3 file and the directory exists(tested with File.exists) in iOS, sound.bytesLoaded shows 0 value. When testing locally, it shows actual file size.
Can anyone help me with this?
var path= File.applicationDirectory.resolvePath("components/sound/click.mp3").nativePath;
var sound = new Sound(new URLRequest(path));
sound.play();
[Edit]
It worked when I simply replaced new URLRequest(path) to new URLRequest("components/sound/click.mp3").
However, I would still appreciate if someone could explain why the former one(nativePath) didn't work.
Reading this thread on Adobe Community forums about loading external sounds on iOS, your code seems OK, the only suspicious thing I see is that you should begin the file path with "/", like:
var path= File.applicationDirectory.resolvePath("/components/sound/click.mp3").nativePath;
Hope this helps!

MP3 playback issues with DirectX when MP3 has album art encoded

I'm using the Clootie DirectShow9 headers with Delphi 2007. I created a wrapper component that plays audio and video. All is good until I get an MP3 that has album art encoded in it. The mp3 files like this just will not play. I do not get an error message from my code when I call pMediaControl.Run;. pMediaControl is IMediaControl. They just do not start playing. I many other MP3 files that are not encoded with album art and they play fine. There must be something I'm missing but I cannot figure it out.
These art encoded mp3 files play OK in WMP and Winamp on the same PC.
Can someone shed some light on this for me?
Thanks
I have also hit that one (or was it VFW_E_UNSUPPORTED_STREAM).
It's because the metadata is currupted, or when the image-size is very big.
(editing the Tag in Winamp sometimes helps)
I read a little about Media Foundation and it and look like it is available only on Vista and up. I need Windows XP support for now.
I'm going to use the bass.dll and the delphi wrapper unit. I've done some testing already and all my problem mp3 files play with bass.
I wanted to stay away from using a third party component / dll but my time to finish this project is getting slim.
http://www.un4seen.com
The download includes many Delphi samples. So far the library has worked great.

Resources