I had the same problem with videos not autoplaying in Chrome. Chrome now blocks autoplay in video and audio elements. The solution was to delay the .play() function by 1 second. For your audio problem just replace all the 'video' in my snippet with 'audio'.
// Autoplay videos
var playVideos = function () {
// Get all elements with the video tag
var videos = document.getElementsByTagName('video');
// Loop through the videos
for (i = 0; i < videos.length; i++) {
// Play video
videos[i].play();
}
};
// Define body variable
var body = document.getElementById('body');
// Wait 1 Second to trick out Chrome
setTimeout(function() {
// execute the playVideo function
body.addEventListener('onload', playVideos(), false);
}, 1000);
PS: You need to give your Body the id 'body' for this snippet to work.