Giter VIP home page Giter VIP logo

audio-share's Introduction

Audio Share

metadata/en-US/images/icon.png

GitHub release (latest SemVer) GitHub license FOSSA Status GitHub Release Date GitHub last commit GitHub contributors GitHub commit activity GitHub Repo stars GitHub forks GitHub watchers GitHub language count GitHub top language GitHub repo size GitHub all releases GitHub issues GitHub closed issues GitHub pull requests GitHub closed pull requests Release F-Droid

Audio Share can share Windows/Linux computer's audio to Android phone over network, so your phone becomes the speaker of computer. (You needn't to buy a new speaker😄.)

Usage for Windows GUI

  • You need a computer with Windows 10 x86_64, and a phone with Android 6.0(API 23)+.
  • Download APK file and AudioShareServer.exe from latest release.
  • Open the AudioShareServer.exe on your computer. The default arguments may work well. But you may still have to check the "Host" part. It's normally the LAN address, such as 192.168.3.2. Make sure your phone can connect your computer over this IP address. Then Click "Start Server" button.
  • Install APK to your phone and open it. Modify the "Host" part to make sure it's same as the value of previous step, such as 192.168.3.2. Click "▶" button and enjoy the audio🎶.

Caution!!!: This app doesn't support auto reconnecting feature at present. Once the app is killed or disconnected by Android power saver, the audio playing will be stop. Adding app to the whitelist of power saver is recommended.

Usage for Windows/Linux CMD

  • Your Linux distro must have a PipeWire. Rocky Linux 9 works well.
  • Download the audio-share-server-cmd-windows.zip for Windows, the audio-share-server-cmd-linux.tar.gz for Linux.
  • Uncompress the archive file.
  • Find the LAN address of your computer, such as 192.168.3.2. Then run as-cmd -b 192.168.3.2 to start the server. It will use the default port 65530 and select a default audio endpoint.
  • The Windows will ask you to add firewall rules automatically while Linux not. So you need to configure firewall manually if your Linux distribution enables firewall.
sudo firewall-cmd --add-rich-rule='rule family="ipv4" destination address="192.168.3.2" port port="65530" protocol="tcp" accept'
sudo firewall-cmd --add-rich-rule='rule family="ipv4" destination address="192.168.3.2" port port="65530" protocol="udp" accept'
sudo firewall-cmd --runtime-to-permanent
  • Install APK to your phone and open it. Modify the "Host" part to make sure it's same as the value of previous step, such as 192.168.3.2. Click "▶" button and enjoy the audio🎶.

Screenshot

docs/img/show_01.png

metadata/en-US/images/phoneScreenshots/1.png  metadata/en-US/images/phoneScreenshots/2.png

Compile from source

  • Android App

    • Android Studio will import all dependencies automatically.
  • Server MFC

    • vcpkg is required for install dependencies.
    • Run vcpkg install asio protobuf spdlog to install deps. The vcpkg triplet is x64-windows-static-md.
    • Visual Studio 2022 with "Desktop development with C++" workload and "C++ MFC for latest v143 build tools (x86 & x64)" option is required for compiling.
  • Server CMD

    • CMake and a compiler support C++20 is required. Linux also need libpipewire-dev or pipewire-devel.
    • Install vcpkg, and set VPCKG_ROOT env. This env is required by CMakePresets.json.
    • Run vcpkg install asio protobuf spdlog cxxopts to install deps. The vcpkg triplet is x64-windows-static-md for Windows, x64-linux for Linux.
    • Run cmake --preset linux-Release to configure.
    • Run cmake --build --preset linux-Release to build. The as-cmd is located in out/install/linux-Release/bin/as-cmd.
    • For Windows, replace linux to windows in previous two steps.

Star History

Star History Chart

License

This project is licensed under the Apache-2.0 license .

   Copyright 2022-2023 mkckr0 <https://github.com/mkckr0>

   Licensed under the Apache License, Version 2.0 (the "License");
   you may not use this file except in compliance with the License.
   You may obtain a copy of the License at

       http://www.apache.org/licenses/LICENSE-2.0

   Unless required by applicable law or agreed to in writing, software
   distributed under the License is distributed on an "AS IS" BASIS,
   WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
   See the License for the specific language governing permissions and
   limitations under the License.

FOSSA Status

Used third-party libraries

audio-share's People

Contributors

mkckr0 avatar fossabot avatar

Stargazers

Abhijeet ANil Rathod avatar

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. 📊📈🎉

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google ❤️ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.