html5 jquery audio player插件怎么用

html5 jquery audio player插件怎么用,第1张

用法:

添加音频元素、 设置的属性,你需要和添加源。您将添加更多不同的来源,更多的用户将能够听听您的音频 (因为没有一个音频格式跨所有浏览器支持)。三个例子:

<audio src="audio.wav" preload="auto" controls></audio>

这只是将预加载audio.wav文件并不会发挥它直到用户单击播放按钮。nonemetadata) 的其他preload值将不预加载该文件。

autoplay时它会加载该文件,然后再loop它以这种方式:

指定多个音频格式来解决前面提到的问题:

<audio preload="auto" controls>

<source src="audio.wav" />

<source src="audio.mp3" />

<source src="audio.ogg" />

</audio>

神秘controls吗?它是一个布尔属性不会影响任何方式中的插件,但可确保该浏览器的默认播放器是显示和禁用 JavaScript 时显示控件与控件。

最后一步 ― 调用插件

<audio src="audio.wav" preload="auto" controls></audio>

<script src="jquery.js"></script>

<script src="audioplayer.js"></script>

<script>

$( function()

{

$( 'audio' ).audioPlayer()

})

</script>

该插件,一些可选的参数。最重要的一个被称为classPrefix。传递的值成为子元素的父元素和类名称前缀的类名称。其他选项只可能有利英语以外的语言。具有默认值的示例:

$( 'audio' ).audioPlayer(

{

classPrefix: 'audioplayer',

strPlay: 'Play',

strPause: 'Pause',

strVolume: 'Volume'

})

有一些类的名称,被分配到父元素时:

音乐播放器版本― ― 正在播放音频

<div class="audioplayer audioplayer-playing">

停止停止音乐播放器版本― ― 音频

<div class="audioplayer audioplayer-stopped">

音乐播放器版本静音― ― 卷处于静音状态

<div class="audioplayer audioplayer-muted">

音乐播放器版本 novolume ― ― 没有音量调节是可用的:

<div class="audioplayer audioplayer-novolume">

重要提示:时不支持音频元素或没有任何给定的音频文件是与浏览器兼容,玩家切换到迷你模式,基本上减少了播放机播放/暂停按钮 (因为"嵌入"元素是有限的 *** 作):

<div class="audioplayer audioplayer-stopped audioplayer-mini">

<embed src="audio.wav" width="0" height="0" volume="100" autostart="false" loop="false" />

<div class="audioplayer-playpause" title="Play"><a href="#">Play</a></div>

</div>

使用如下命令:

sudo apt-get install libpulse-dev

安装时会提示依赖于下面这几个软件,一并安装即可:

libavahi-client-dev libavahi-common-dev libpulse-mainloop-glib0 libpulse0

这个也可以上packages.ubuntu.com官方网址查询libpulse-dev软件的依赖关系,相关链接如下:

http://packages.ubuntu.com/raring/libpulse-dev

如下图所示:

二、pulseaudio库的使用(同步simple API)

pulseaudio官网有关于pulseaudio的API doxygen使用手册,网址如下:

http://freedesktop.org/software/pulseaudio/doxygen/

1、播音sample

A simple playback tool using the simple API

//pacat-simple.c

/***

This file is part of PulseAudio.

PulseAudio is free softwareyou can redistribute it and/or modify

it under the terms of the GNU Lesser General Public License as published

by the Free Software Foundationeither version 2.1 of the License,

or (at your option) any later version.

PulseAudio is distributed in the hope that it will be useful, but

WITHOUT ANY WARRANTYwithout even the implied warranty of

MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU

General Public License for more details.

You should have received a copy of the GNU Lesser General Public License

along with PulseAudioif not, write to the Free Software

Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307

USA.

***/

#ifdef HAVE_CONFIG_H

#include <config.h>

#endif

#include <stdio.h>

#include <unistd.h>

#include <string.h>

#include <errno.h>

#include <fcntl.h>

#include <pulse/simple.h>

#include <pulse/error.h>

#define BUFSIZE 1024

int main(int argc, char*argv[]) {

/* The Sample format to use */

static const pa_sample_spec ss = {

.format = PA_SAMPLE_S16LE,

.rate = 44100,

.channels = 2

}

pa_simple *s = NULL

int ret = 1

int error

/* replace STDIN with the specified file if needed */

if (argc >1) {

int fd

if ((fd = open(argv[1], O_RDONLY)) <0) {

fprintf(stderr, __FILE__": open() failed: %s\n", strerror(errno))

goto finish

}

if (dup2(fd, STDIN_FILENO) <0) {

fprintf(stderr, __FILE__": dup2() failed: %s\n", strerror(errno))

goto finish

}

close(fd)

}

/* Create a new playback stream */

if (!(s = pa_simple_new(NULL, argv[0], PA_STREAM_PLAYBACK, NULL, "playback", &ss, NULL, NULL, &error))) {

fprintf(stderr, __FILE__": pa_simple_new() failed: %s\n", pa_strerror(error))

goto finish

}

for () {

uint8_t buf[BUFSIZE]

ssize_t r

#if 0

pa_usec_t latency

if ((latency = pa_simple_get_latency(s, &error)) == (pa_usec_t) -1) {

fprintf(stderr, __FILE__": pa_simple_get_latency() failed: %s\n", pa_strerror(error))

goto finish

}

fprintf(stderr, "%0.0f usec \r", (float)latency)

#endif

/* Read some data ... */

if ((r = read(STDIN_FILENO, buf, sizeof(buf))) <= 0) {

if (r == 0) /* EOF */

break

fprintf(stderr, __FILE__": read() failed: %s\n", strerror(errno))

goto finish

}

/* ... and play it */

if (pa_simple_write(s, buf, (size_t) r, &error) <0) {

fprintf(stderr, __FILE__": pa_simple_write() failed: %s\n", pa_strerror(error))

goto finish

}

}

/* Make sure that every single sample was played */

if (pa_simple_drain(s, &error) <0) {

fprintf(stderr, __FILE__": pa_simple_drain() failed: %s\n", pa_strerror(error))

goto finish

}

ret = 0

finish:

if (s)

pa_simple_free(s)

return ret

}

2、录音sample

A simple recording tool using the simple API

//parec-simple.c

/***

This file is part of PulseAudio.

PulseAudio is free softwareyou can redistribute it and/or modify

it under the terms of the GNU Lesser General Public License as published

by the Free Software Foundationeither version 2.1 of the License,

or (at your option) any later version.

PulseAudio is distributed in the hope that it will be useful, but

WITHOUT ANY WARRANTYwithout even the implied warranty of

MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU

General Public License for more details.

You should have received a copy of the GNU Lesser General Public License

along with PulseAudioif not, write to the Free Software

Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307

USA.

***/

#ifdef HAVE_CONFIG_H

#include <config.h>

#endif

#include <stdio.h>

#include <unistd.h>

#include <string.h>

#include <errno.h>

#include <pulse/simple.h>

#include <pulse/error.h>

#define BUFSIZE 1024

/* A simple routine calling UNIX write() in a loop */

static ssize_t loop_write(int fd, const void*data, size_t size) {

ssize_t ret = 0

while (size >0) {

ssize_t r

if ((r = write(fd, data, size)) <0)

return r

if (r == 0)

break

ret += r

data = (const uint8_t*) data + r

size -= (size_t) r

}

return ret

}

int main(int argc, char*argv[]) {

/* The sample type to use */

static const pa_sample_spec ss = {

.format = PA_SAMPLE_S16LE,

.rate = 44100,

.channels = 2

}

pa_simple *s = NULL

int ret = 1

int error

/* Create the recording stream */

if (!(s = pa_simple_new(NULL, argv[0], PA_STREAM_RECORD, NULL, "record", &ss, NULL, NULL, &error))) {

fprintf(stderr, __FILE__": pa_simple_new() failed: %s\n", pa_strerror(error))

goto finish

}

for () {

uint8_t buf[BUFSIZE]

/* Record some data ... */

if (pa_simple_read(s, buf, sizeof(buf), &error) <0) {

fprintf(stderr, __FILE__": pa_simple_read() failed: %s\n", pa_strerror(error))

goto finish

}

/* And write it to STDOUT */

if (loop_write(STDOUT_FILENO, buf, sizeof(buf)) != sizeof(buf)) {

fprintf(stderr, __FILE__": write() failed: %s\n", strerror(errno))

goto finish

}

}

ret = 0

finish:

if (s)

pa_simple_free(s)

return ret

}

3、编译含有pulseaudio库的时候,需要添加pulseaudio的动态链接库-libpulse等,

(可以在/usr/lib/i386-linux-gnu/目录下找到pulse的动态库

/usr/lib/i386-linux-gnu/libpulsecommon-1.1.so

/usr/lib/i386-linux-gnu/libpulsedsp.so

/usr/lib/i386-linux-gnu/libpulse-mainloop-glib.so

/usr/lib/i386-linux-gnu/libpulse-mainloop-glib.so.0

/usr/lib/i386-linux-gnu/libpulse-mainloop-glib.so.0.0.4

/usr/lib/i386-linux-gnu/libpulse-simple.so

/usr/lib/i386-linux-gnu/libpulse-simple.so.0

/usr/lib/i386-linux-gnu/libpulse-simple.so.0.0.3

/usr/lib/i386-linux-gnu/libpulse.so

/usr/lib/i386-linux-gnu/libpulse.so.0

/usr/lib/i386-linux-gnu/libpulse.so.0.13.5)

例如:

gcc -o pacat-simple pacat-simple.c -lpulse -lpulsecommon-1.1 -lpulse-simple

三、ALSA音频库

ALSA全称为:Advanced Linux Sound Architecture

一个网址为:http://www.alsa-project.org/main/index.php/Main_Page


欢迎分享,转载请注明来源:内存溢出

原文地址:https://54852.com/bake/11208539.html

(0)
打赏 微信扫一扫微信扫一扫 支付宝扫一扫支付宝扫一扫
上一篇 2023-05-14
下一篇2023-05-14

发表评论

登录后才能评论

评论列表(0条)

    保存