Extract metadata from audio stream - blackberry

I developing an online radio app. The app plays the streams by giving a url to to Player object:
player = javax.microedition.media.Manager.createPlayer(url)
How can I extract the metadata like song name and artist name from the stream? I am developing using BlackBerry OS 5.

I am afraid you cannot do that. There is no API afaik which gives you that information.
You can attach PlayerListener to a player and get information about many kinds of events(start,stop,update playback time,error and other events) but there is no event which tells you the name of the song.
Are you using rtsp:// url?

Related

How to broadcast wowza video from one iPad to multiple iPad devices - swift

I want to broadcast existing videos to multiple users through wowza...
Suppose I want to broadcast any 1 uploaded video (in wowza server) to my multiple users? so how can I do that.. can wowza call any API to start streaming in other users devices? Means when I started streaming video from my application then it should start in other devices also through wowza API.
Are you talking about broadcasting (streaming) an MP4 file as a simulated Live stream (playout) or as Video On Demand (VOD)?
Obviously you cannot force devices to start playing a stream. That'd only work if you develop an App that can listen for commands and trigger playback accordingly. Wowza doesn't have such an App, nor any built-in features that can do this.
If you want devices to access a stream on-demand you can simply upload the file to Wowza's content folder. If you want to have a programmed playout, like a TV channel, then you can check out this article: https://www.wowza.com/docs/how-to-schedule-streaming-with-wowza-streaming-engine-streampublisher
(the source code of the plug-in that is used in that article is available from https://github.com/WowzaMediaSystems/wse-plugin-streampublisher)
As from your Question, You can broadcast stream successfully and you might have used Wowza Go Coder SDK for doing it.
On Broadcasting live stream, broadcasted videos stored in CONTENT directory which is inside of Stream Engine installation directory structure.
You can find all the streamed videos in it.
Now, You want to broadcast particular stored video then you can do it by loading specific URL for that video. Broadcasting for that Video is not possible but, you can play that particular video as below which will be accessible to all your application users :
In IOS, Link or URL for Videos stored in CONTENT directory is as below :
http://[Host Address]:[PORT]/vod/mp4:sample.mp4/playlist.m3u8
rtsp://[Host Address]:[PORT]/vod/sample.mp4 (In Android)
Here, sample is the name of your Stream. You have to broadcast live stream video with different stream names so that all videos are accessible.
In this way, you can play stored live stream videos.

AudioKit: How to record OWN app audio output on ios?

I want to get my OWN app audio output (for example currently playing video in UIWebView) and save it to file. How to create a AudioKit Node for this purpose?
Just because your app has audio doesn't really mean you have control of the audio if you're just using web views for instance. Another example is using the speech synthesizer in iOS - the app utters the speech, but you can't direct that audio anywhere except to the user's speaker.

Find out which apple music songs are playable in your country (e.g. via track_id)

Using the apple itunes search api it is possible to get information on songs such as artist, title and apple store track_id:
Using an MPMusicPlayerController (i tried both system and application) one should be able to play songs using:
player = MPMusicPlayerController.systemMusicPlayer()
player.setQueueWithStoreIDs(["574050602"])
player.play()
As noted here some IDs seem to not work. (e.g. "574050602" is supposed to play a certain song by Rick Astley)
I have read that you need a country specific store id.
How can I determine whether a specific song will be playable or not without actually trying to play it?
The isStreamable property does not indicate whether I can actually stream it.
To only get track IDs that are playable in your country you need to specify your country on search using the country parameter (source)
I have not found out what kind of problems the author at 1 had with this parameter, but there also seems to be an undocumented parameter s which might help.
The trackIDs are not shareable between countries. Therefore you will need to let the user get their own countries' trackID code by performing an API request with the user's countrycode.

Youtube API Java client library - How check if a video entry is available for mobile?

I have a content management server application written in Java. A background process goes through a list of video ids and fetches the details for those video ids using Youtube API.
I would like to check if a particular video entry is available for mobile or not.
I checked syndicate allowed like
String videoEntryUrl = "http://gdata.youtube.com/feeds/api/videos/"+videoID;
VideoEntry videoEntry = service.getEntry(new URL(videoEntryUrl), VideoEntry.class);
if(!videoEntry.getXmlBlob().getBlob().contains("yt:accessControl permission='denied' action='syndicate'")){
System.out.println("The video is syndicatable");
}
Checking for syndicate still not solved the problem and the server still lets in videos that cannot play on Android phone.
What is the right way to filter only the videos that can be played on mobile?
There's no single check to see whether a video is playable "on mobile".
There are a variety of different reasons why a particular video might not be playable on a particular platform, and unfortunately the only way to be absolutely sure whether a particular video will play in a particular player is to attempt to play it.
That being said, this blog post goes into more details about the types of common playback restrictions that crop up: http://apiblog.youtube.com/2011/12/understanding-playback-restrictions.html

Accessing audio and video songs data that played using blackberry phones

I want to make a blackberry app. which will store audio and video files,those are played by BB device (play list) and other information related to those songs (as artist name, album name) on the server.
i succeed to access all audio and video songs that are on BB device, but dont know how to access only those songs ,which are played. And i got those songs only as byte array, how could i get information about those songs?
Does blackberry have any special api for this?
This page in a guide about working with multimedia on the BB may help you. If not, surely something in the guide will answer your question.

Resources