首页
学习
活动
专区
圈层
工具
发布
    • 综合排序
    • 最热优先
    • 最新优先
    时间不限
  • 来自专栏FreeSWITCH中文社区

    关于playback

    playbackplayback 简介 playback是FreeSWITCH中的一个Application,用于播放声音文件。 我们可以通过playback_delimiter变量设置多个文件的连接符,此处设置的符号是&,当播放完第一个文件后,会立马播放第二个文件。 配置播放打断按键 ? 可以设置playback_terminators变量来打断正在播放的文件,其值有123456789*0# | any | none,默认值是*,当设置成any的时候表示任意按键都可以打断当前的放音,none loop_playback简介 loop_playback是FreeSWITCH中的一个Application,可以将一个文件指定次数播放。 播放格式和文件路径同playback的说明。 endless_playback简介 endless_playback是FreeSWITCH中的一个Application,用于无休止的播放声音文件,并且不能被外界打断。 用法 ?

    3.5K30发布于 2020-12-21
  • 来自专栏菩提树下的杨过

    freeswitch笔记(7)-放音控制

    来电时,播放音乐是一个很常用的功能,下面是一些相关的命令: 一、单次播放playback originate user/1000 &playback(ivr/8000/ivr-welcome_to_freeswitch.wav ) 二、指定次数的循环播放loop_playback 注:这个方式,直接用命令在freeswitch控制台中,一直没尝试成功 originate user/1000 &loop_playback(+2 " data="+3 ivr/8000/ivr-welcome_to_freeswitch.wav"/> 三、无限循环播放endless_playback originate user/1000 &endless_playback 六、监听播放开始/结束事件 PLAYBACK_START PLAYBACK_STOP 这2个事件对应音乐的开始播放/播放完成,值得一提的是,对于循环播放endless_playback,这一组事件,会重复一直不停的触发 /confluence/display/FREESWITCH/mod_dptools%3A+loop_playback 3、https://freeswitch.org/confluence/display

    4.6K40发布于 2020-03-19
  • 来自专栏鸿蒙开发笔记

    制作一个OpenHarmony视频播放器

    * @param callback Callback used to listen for the playback volume event. */ on * @param callback Callback used to listen for the playback end of stream */ on * @param callback Callback used to listen for the playback event return . */ * @param callback Callback used to listen for the playback event return video size. * @param callback Callback used to listen for the playback event return audio interrupt info

    67220编辑于 2024-08-15
  • 来自专栏twowinter

    ISD9160学习笔记03_ISD9160音频解码代码分析

    Playback_StartPlay(); } 可以看到App_StartPlay主要牵扯了NuLiteExApp和Playback两部分子函数。 psNuLiteExAppDecode->u8PlaybackChannel = u8PlaybackChannel; // 准备播放,把这里的循环缓冲区同playback共用。 Playback_Add(psNuLiteExAppDecode->u8PlaybackChannel, &psNuLiteExAppDecode->sOutBufCtrl); return TRUE ; } 也很重要的Playback_StartPlay void Playback_StartPlay(void) { INT16 *pi16PcmBuf; if( s_u8PlayCtrl = = PLAYBACK_NOACTION ) // 这个s_u8PlayCtrl是playback模块内部处理的。

    51610发布于 2020-04-17
  • 来自专栏构建FFmpeg Android播放器

    MediaPlayer(八)--start()流程

    frameworks/base/media/java/android/media/MediaPlayer.java /** * Starts or resumes playback. If playback had previously been paused, * playback will continue from where it was paused. If playback had * been stopped, or never started before, playback will start at the * beginning = 0) && ( mCurrentState & ( MEDIA_PLAYER_PREPARED | MEDIA_PLAYER_PLAYBACK_COMPLETE ) { ALOGV("playback completed immediately following start()"); }

    1.3K20发布于 2020-04-21
  • 来自专栏RTMP推送

    Android平台RTMP推送|轻量级RTSP服务如何实现麦克风|扬声器声音采集切换

    10)");return false;}if (audio_playback_capture_.get() ! start failed");return false;}if (audio_playback_capture_callback_ ! = null)capture.register_callback(audio_playback_capture_callback_);NTAudioPlaybackCapture old = audio_playback_capture :" + channels);return true;}@Overridepublic boolean is_audio_playback_capture_running() {return audio_playback_capture = null;}@Overridepublic void stop_audio_playback_capture() {NTAudioPlaybackCapture old = audio_playback_capture

    51610编辑于 2024-08-21
  • 来自专栏FreeSWITCH中文社区

    XSwitch通信百科之TGML铃音生成

    ringback=%(1000,4000,450) TGML 可以也可以用在 Dialplan 中,如(其中tone_stream是一个文件接口,相当于一个文件): <action application="<em>playback</em> 要播放忙音非常容易,下面的例子播放一个忙音,参数为 350 毫秒通,350 毫秒断,频率为 450 赫兹: <action application="playback" data="tone_stream " data="tone_stream://%(700,700,450)"> 下面这个例子加上loops=4参数,播放 4 个忙音: <action application="<em>playback</em>" data 比如: <action application="<em>playback</em>" data="tone_stream://v=-7;>=2;+=.1;%(1400,0,350,440)"> 初始音量是-7dB,每隔 ="playback" data="tone_stream://1234;l=2"> L=2把 dtmf1234 全部播放 2 遍,而l=2仅仅是把最后一个 dtmf4 播放 2 遍。

    28320编辑于 2024-02-28
  • 来自专栏四月天的专栏

    ubuntu 系统声音静音问题

    channels: Front Left - Front Right Limits: Playback 0 - 64 Mono: Front Left: Playback 64 [100% ',0 Capabilities: pvolume Playback channels: Front Left - Front Right Limits: Playback 0 - 255 Mono: Front Left: Playback 255 [100%] [0.00dB] Front Right: Playback 255 [100%] [0.00dB] Simple Limits: Playback 0 - 31 Mono: Front Left: Playback 0 [0%] [-34.50dB] [off] Front Right: Playback : pswitch pswitch-joined Playback channels: Mono Mono: Playback [on] Simple mixer control 'IEC958

    2.5K30编辑于 2023-03-10
  • 来自专栏Visual Codex

    [AV1] A Progress Report: The Alliance for Open Media and the AV1 Codec

    This is especially true for mobile devices, where CPU-based video playback can shorten the battery life First, VP9 launched while Flash still dominated as a playback platform, and Adobe never added VP9 or VP8 playback to Flash. Playback in the Browser H.264 has enjoyed a long life, initially because Flash made playback ubiquitous which makes VP9 and AV1 the only games in town for browser-based, UHD playback.

    71210发布于 2021-02-24
  • 来自专栏程序员的园——原创文章

    miniaudio:音频开源库的首选

    #define MINIAUDIO_IMPLEMENTATION #include"miniaudio/miniaudio.h" //上层接口播放本地文件 void using_high_level_playback = MA_SUCCESS) { return; } deviceConfig = ma_device_config_init(ma_device_type_playback ); deviceConfig.playback.format = decoder.outputFormat; deviceConfig.playback.channels = decoder.outputChannels = MA_SUCCESS) { printf("Failed to open playback device. = MA_SUCCESS) { printf("Failed to start playback device.

    86310编辑于 2024-07-18
  • 来自专栏linux驱动个人学习

    alsa声卡分析alsa-utils调用过程(一)-tinyplay

    , 10 .unlocked_ioctl = snd_pcm_playback_ioctl, 11 .compat_ioctl = snd_pcm_ioctl_compat 函数开始向下分析: 1 static int snd_pcm_playback_open(struct inode *inode, struct file *file) 2 { 3 struct );  //取得其私有数据并返回的 9 err = snd_pcm_open(file, pcm, SNDRV_PCM_STREAM_PLAYBACK); 10 if (pcm) 11 = 'C')) 9 return -ENOTTY; 10 11 return snd_pcm_playback_ioctl1(file, pcm_file->substream , cmd, 12 (void __user *)arg); 13 } snd_pcm_playback_ioctl1: 1 static int snd_pcm_playback_ioctl1

    3.4K40发布于 2018-03-29
  • 来自专栏增长技术

    Android 相机功能模块相关库

    .allowRetry(true) // Whether or not 'Retry' is visible during playback .autoSubmit(false) // Whether or not user is allowed to playback .iconPause(R.drawable.evp_action_pause) // Sets a custom icon used to pause playback .iconRestart(R.drawable.evp_action_restart) // Sets a custom icon used to restart playback This is default behavior. autoSubmit(false), allowRetry(false) The user will be able to playback the

    88510发布于 2018-09-06
  • 来自专栏项勇

    笔记59 | Android管理音频焦点的学习

    . // Request audio focus for playback int result = am.requestAudioFocus(afChangeListener, // Abandon audio focus when playback complete am.abandonAudioFocus(afChangeListener); 当请求短暂音频焦点的时候 // Request audio focus for playback int result = am.requestAudioFocus(afChangeListener, onAudioFocusChange(int focusChange) { if (focusChange == AUDIOFOCUS_LOSS_TRANSIENT // Pause playback } else if (focusChange == AudioManager.AUDIOFOCUS_GAIN) { // Resume playback

    2.6K90发布于 2018-06-19
  • 来自专栏Linux内核深入分析

    Linux音频驱动-PCM设备

    .streams: 指向pcm的capture和playback stream,通常0代表playback,1代表capture。 通常一个pcm下会有两个stream, 分别为capture stream和playback stream,在每个stream下又会存在多个substream。 大体上就是一棵树,根节点是card0, 然后子节点是pcm设备,pcm设备分为capture & playback stream, 然后在stream下又分为substrem。 设置当前pcm设备name, 以及具体的pcm设备类型,PCM_CAPTURE or PCM_PLAYBACK。 4. 比如当前调用的是playback中的open,会调用snd_pcm_playback_open函数,此函数会设置pcm的runtime信息,最终会调用硬件相关的open函数中。

    10.1K33发布于 2020-03-24
  • 来自专栏全栈程序员必看

    Android音频底层调试-基于tinyalsa「建议收藏」

    tinymix Number of controls: 7 ctl type num name value 0 ENUM 1 Playback Volume 0 0 5 INT 2 Headphone Playback Volume 0 0 6 ENUM 1 Modem Input Enable ON root@android:/ # 相应解释: 英文 中文 备注 Playback Path 音频输出通道 Capture MIC Path Volume 扬声器音量 和上层音量值无关 Headphone Playback Volume 耳机音量 同上 Modem Input Enable 暂不知何用 经測试不能控制音频输入输出 Playback Volume 0 0 5 INT 2 Headphone Playback Volume 0 0 6 ENUM 1 Modem Input

    4.8K21编辑于 2022-07-10
  • 来自专栏构建FFmpeg Android播放器

    MediaPlayer--stop()流程

    frameworks/base/media/java/android/media/MediaPlayer.java /** * Stops playback after playback MEDIA_PLAYER_STARTED | MEDIA_PLAYER_PREPARED | MEDIA_PLAYER_PAUSED | MEDIA_PLAYER_PLAYBACK_COMPLETE 处于以下状态才会调用下一层播放器接口 MEDIA_PLAYER_STARTED | MEDIA_PLAYER_PREPARED | MEDIA_PLAYER_PAUSED | MEDIA_PLAYER_PLAYBACK_COMPLETE

    1.8K10发布于 2020-06-19
  • 来自专栏RTSP/RTMP直播相关

    Android平台如何实现多路低延迟RTSP|RTMP播放?

    ."); return; } stream_player_1_.try_release(); btn_playback1.setText("开始播放1"); SetViewVisibility (surface_view_1_); } else { Log.i(TAG, "Start playback stream1++"); int play_buffer = 0; stream_player_1_.OpenPlayerHandle(playback_url_1_, play_buffer, is_using_tcp)) return; stream_player iPlaybackRet) { Log.e(TAG, "Call StartPlayer failed.."); return; } btn_playback1.setText is_auto_switch_tcp_udp); lib_player_.SmartPlayerSaveImageFlag(handle, 1); // It only used when playback

    40500编辑于 2024-07-16
  • 来自专栏呱牛笔记

    Linux下使用ffmpeg播放mp3/aac/wav文件的音乐播放器应用

    /Test1.wav 0 4、使用alsa接口,完整播放出mp3文件声音的代码; //static const char *device = "hw:1,0"; /* playback device */ err = snd_pcm_hw_params_any(handle, params); if (err < 0) { printf("Broken configuration for playback  */ err = snd_pcm_hw_params(handle, params); if (err < 0) { printf("Unable to set hw params for playback , 0); if (pb_result >= 0) { printf("Try to open the device for playback - success\r\n");      , 0); if (err < 0)  { printf("Playback open error: %s\n", snd_strerror(err)); return 0; }     

    4.3K30编辑于 2023-05-02
  • 来自专栏RTSP/RTMP直播相关

    wpf下RTSP|RTMP播放器两种渲染模式实现

    main/av_stream", false, is_mute, is_hardware_decoder)) return; btn_playback1 "; } else { player1_.StopPlay(); btn_playback1 "; } else { player2_.StopPlay(); btn_playback2 "; } else { player3_.StopPlay(); btn_playback3 "; } else { player4_.StopPlay(); btn_playback4

    57900编辑于 2024-04-14
  • 来自专栏txp玩Linux

    Linux ALSA声卡驱动之三:PCM设备的创建

    所以,音频驱动的两大核心任务就是: playback 如何把用户空间的应用程序发过来的PCM数据,转化为人耳可以辨别的模拟音频 capture 把mic拾取到得模拟信号,经过采样、量化,转换为 一个pcm实例由一个playback stream和一个capture stream组成,这两个stream又分别有一个或多个substreams组成。 在嵌入式系统中,通常不会像图2.1中这么复杂,大多数情况下是一个声卡,一个pcm实例,pcm下面有一个playback和capture stream,playback和capture下面各自有一个substream snd_pcm是挂在snd_card下面的一个snd_device snd_pcm中的字段:streams[2],该数组中的两个元素指向两个snd_pcm_str结构,分别代表playback stream 参数playback_count 表示该pcm将会有几个playback substream。 参数capture_count 表示该pcm将会有几个capture substream。

    2.9K20编辑于 2024-01-10
领券