public:// urls being printed in source code
Drupal 7 uses stream wrappers instead of "file paths" to reference files in the public and private upload directories. If you want to research that more, the rabbit hole starts here - http://drupal.org/node/555118

In a "vanilla" D7 setup "public://" is equivalent to the D6 "sites//files" or "sites/default/files" directory. These directories still exist in D7 but have been moved in D8 - using a stream wrapper means the files can be moved anywhere, even a remote location, and still be referenced in a consistent fashion if you update the default stream wrapper.

Clive's comment referencing file_create_url() is a function that takes a stream uri and converts it to a url that a web browser can use.

The problem is that your server-side code delivering media to jPlayer is not sending URIs in the right format. If it's a contrib module, you should open an issue in the queue and link to it here; Clive or myself might be able to provide a patch.

I'm going to assume that the module you're using was originally released in D6 and then upgraded at some point to D7? (maybe the upgrade didn't go so well :P)

Edit:

Based on the code that was posted after I originally put this answer up I'd suggest looking into two things:


Shouldn't 
$file-&gt;url = str_replace('public:/', $base_url . '/' . variable_get('file_public_path', 'files'), $file-&gt;uri); 
be 
$file-&gt;url = file_create_url($file-&gt;uri); ?
The "setMedia" action for jPlayer, I can't remember off the top of my head if it needs to be a url or a file path, but if it's a url shouldn't you be using $file->url? if it's a file path shouldn't it be generated by drupal_realpath()?