是否可以使用 afplay 打开 URL 而不是磁盘上的文件?

是否可以使用 afplay 打开 URL 而不是磁盘上的文件?

我想用它afplay打开 URL 而不是文件。

帮助页面仅显示:

    Audio File Play
    Version: 2.0
    Copyright 2003-2013, Apple Inc. All Rights Reserved.
    Specify -h (-help) for command options

Usage:
afplay [option...] audio_file

Options: (may appear before or after arguments)
  {-v | --volume} VOLUME
    set the volume for playback of the file
  {-h | --help}
    print help
  { --leaks}
    run leaks analysis
  {-t | --time} TIME
    play for TIME seconds
  {-r | --rate} RATE
    play at playback rate
  {-q | --rQuality} QUALITY
    set the quality used for rate-scaled playback (default is 0 - low quality, 1 - high quality)
  {-d | --debug}
    debug print output

我尝试将 cURL 导入其中并将其设置-为输入文件(与其他命令一起使用)但没有成功。

$ curl "https://server.com/file.ogg" | afplay -
unknown argument: -

还有其他方法可以实现我的愿望吗?

答案1

据我所知,aplay不支持从 stdin 进行管道输入。一个[丑陋的]解决方法可能是抓取文件,将其存储在下方/tmp并从那里播放 ti:

$ curl -s https://server.com/file.ogg > /tmp/file.ogg && afplay /tmp/file.ogg

答案2

Afplay 不支持从 stdin 进行流式传输,但您可以创建一个文件描述符并流式传输到其中,然后让 afplay 从您正在流式传输到的文件中读取数据。

这是一个流式传输 somafm 广播的工作示例:

exec 3<> /tmp/file.mp3 && curl -s http://ice1.somafm.com/defcon-128-mp3 2>&1 | tee >&3 | (sleep 1; afplay /tmp/file.mp3)

相关内容