Home
Name Modified Size InfoDownloads / Week
hiddenAudioPlayer.c 2025-04-20 4.0 kB
README.md 2025-04-20 4.8 kB
haps.c 2025-04-20 164 Bytes
hapr.c 2025-04-20 166 Bytes
hapk.c 2025-04-20 370 Bytes
happ.c 2025-04-20 165 Bytes
Totals: 6 Items   9.7 kB 0

🎧 HAP (Hidden Audio Player)

πŸ§ͺ НазначСниС

Π›Ρ‘Π³ΠΊΠΈΠΉ ΠΈ Π½Π΅Π²ΠΈΠ΄ΠΈΠΌΡ‹ΠΉ PCM-Π°ΡƒΠ΄ΠΈΠΎΠΏΠ»Π΅Π΅Ρ€, написанный Π½Π° C, с ΡƒΠΏΡ€Π°Π²Π»Π΅Π½ΠΈΠ΅ΠΌ Ρ‡Π΅Ρ€Π΅Π· ΠΈΠΌΠ΅Π½ΠΎΠ²Π°Π½Π½Ρ‹ΠΉ ΠΊΠ°Π½Π°Π» (FIFO). Π Π°Π±ΠΎΡ‚Π°Π΅Ρ‚ Π² Ρ„ΠΎΠ½Π΅ ΠΊΠ°ΠΊ Π΄Π΅ΠΌΠΎΠ½, ΠΏΠΎΠ΄Π΄Π΅Ρ€ΠΆΠΈΠ²Π°Π΅Ρ‚ ΠΏΡ€ΠΎΠΈΠ³Ρ€Ρ‹Π²Π°Π½ΠΈΠ΅ ΠΎΠ΄ΠΈΠ½ΠΎΡ‡Π½Ρ‹Ρ… .pcm Ρ„Π°ΠΉΠ»ΠΎΠ² ΠΈ Ρ†Π΅Π»Ρ‹Ρ… Π΄ΠΈΡ€Π΅ΠΊΡ‚ΠΎΡ€ΠΈΠΉ ΠΊΠ°ΠΊ плСйлист.


πŸ”§ ВозмоТности

  • ВоспроизвСдСниС .pcm-Ρ„Π°ΠΉΠ»ΠΎΠ² Ρ‡Π΅Ρ€Π΅Π· ALSA
  • ΠŸΠΎΠ΄Π΄Π΅Ρ€ΠΆΠΊΠ° Π΄ΠΈΡ€Π΅ΠΊΡ‚ΠΎΡ€ΠΈΠΉ β€” ΠΏΡ€ΠΎΠΈΠ³Ρ€Ρ‹Π²Π°Π½ΠΈΠ΅ всСх .pcm Ρ„Π°ΠΉΠ»ΠΎΠ² ΠΏΠΎ порядку
  • ΠŸΠ°ΡƒΠ·Π°, ▢️ ΠΏΡ€ΠΎΠ΄ΠΎΠ»ΠΆΠ΅Π½ΠΈΠ΅ ΠΈ ⏹ остановка воспроизвСдСния
  • Π£ΠΏΡ€Π°Π²Π»Π΅Π½ΠΈΠ΅ Ρ‡Π΅Ρ€Π΅Π· ΠΊΠΎΠΌΠ°Π½Π΄Ρ‹ Π² FIFO /tmp/pcm_cmd
  • Π€ΠΎΠ½ΠΎΠ²Ρ‹ΠΉ Ρ€Π΅ΠΆΠΈΠΌ (Π΄Π΅ΠΌΠΎΠ½)

πŸ› οΈ Установка Π² систСму

sudo mv hiddenAudioPlayer /usr/local/bin/
sudo mv hapk happ hapr haps /usr/local/bin/

1. Установи зависимости

sudo apt update
sudo apt install -y libasound2-dev build-essential ffmpeg

2. ΠšΠΎΠΌΠΏΠΈΠ»ΡΡ†ΠΈΡ

gcc hiddenAudioPlayer.c -o hiddenAudioPlayer -lasound -lpthread
gcc hapk.c -o hapk
gcc happ.c -o happ
gcc hapr.c -o hapr
gcc haps.c -o haps

ℹ️ ОписаниС

Π―Π·Ρ‹ΠΊ программирования: C + ALSA.
ΠŸΠ»Π΅Π΅Ρ€ hiddenAudioPlayer ΠΏΡ€ΠΈΠ½ΠΈΠΌΠ°Π΅Ρ‚ ΠΊΠ°ΠΊ ΠΎΠ΄ΠΈΠ½ΠΎΡ‡Π½Ρ‹ΠΉ Ρ„Π°ΠΉΠ», Ρ‚Π°ΠΊ ΠΈ Π΄ΠΈΡ€Π΅ΠΊΡ‚ΠΎΡ€ΠΈΡŽ (воспринимаСтся ΠΊΠ°ΠΊ плСйлист) ΠΈ ΠΏΡ€ΠΎΠΈΠ³Ρ€Ρ‹Π²Π°Π΅Ρ‚ всС .pcm Ρ„Π°ΠΉΠ»Ρ‹ Π² Π½Π΅ΠΉ.
ΠŸΡ€ΠΎΠ³Ρ€Π°ΠΌΠΌΠ° ΠΏΠΎΠ»Π½ΠΎΡΡ‚ΡŒΡŽ "молчаливая" β€” ΠΎΠ½Π° Π½ΠΈΡ‡Π΅Π³ΠΎ Π½Π΅ Π²Ρ‹Π²ΠΎΠ΄ΠΈΡ‚ Π² Ρ‚Π΅Ρ€ΠΌΠΈΠ½Π°Π», Ρ€Π°Π±ΠΎΡ‚Π°Π΅Ρ‚ Π² Ρ„ΠΎΠ½Π΅.


πŸ“₯ ΠŸΡ€Π΅ΠΎΠ±Ρ€Π°Π·ΠΎΠ²Π°Π½ΠΈΠ΅ Ρ„Π°ΠΉΠ»ΠΎΠ² Ρ‡Π΅Ρ€Π΅Π· ffmpeg

ΠŸΡ€ΠΈΠΌΠ΅Ρ€ создания .pcm Ρ„Π°ΠΉΠ»Π°:

ffmpeg -i song.mp3 -f s16le -acodec pcm_s16le -ar 44100 -ac 2 output.pcm
Команда НазначСниС
ffmpeg Запуск ΡƒΡ‚ΠΈΠ»ΠΈΡ‚Ρ‹ ffmpeg
-i song.mp3 Π’Ρ…ΠΎΠ΄Π½ΠΎΠΉ Ρ„Π°ΠΉΠ» (любоС Π°ΡƒΠ΄ΠΈΠΎ)
-f s16le Π€ΠΎΡ€ΠΌΠ°Ρ‚: Signed 16-bit Little Endian
-acodec pcm_s16le Π―Π²Π½ΠΎΠ΅ ΡƒΠΊΠ°Π·Π°Π½ΠΈΠ΅ ΠΊΠΎΠ΄Π΅ΠΊΠ° PCM 16-bit LE
-ar 44100 Частота дискрСтизации: 44100 Π“Ρ† (CD качСство)
-ac 2 ΠšΠΎΠ»ΠΈΡ‡Π΅ΡΡ‚Π²ΠΎ ΠΊΠ°Π½Π°Π»ΠΎΠ²: 2 (стСрСо)
output.pcm Имя Π²Ρ‹Ρ…ΠΎΠ΄Π½ΠΎΠ³ΠΎ Ρ„Π°ΠΉΠ»Π° β€” "Π³ΠΎΠ»Ρ‹ΠΉ" PCM ΠΏΠΎΡ‚ΠΎΠΊ

Π Π΅Π·ΡƒΠ»ΡŒΡ‚Π°Ρ‚:
- Signed 16-bit little endian (2 Π±Π°ΠΉΡ‚Π° Π½Π° сэмпл)
- Частота 44100 Π“Ρ†
- 2 ΠΊΠ°Π½Π°Π»Π° (стСрСо)
- Π‘Π΅Π· Π·Π°Π³ΠΎΠ»ΠΎΠ²ΠΊΠΎΠ² ΠΈ ΠΌΠ΅Ρ‚Π°Π΄Π°Π½Π½Ρ‹Ρ… β€” Ρ‚ΠΎΠ»ΡŒΠΊΠΎ Π°ΡƒΠ΄ΠΈΠΎΠΏΠΎΡ‚ΠΎΠΊ

ΠŸΠΎΠ»Π½Ρ‹ΠΉ ΠΏΡ€ΠΈΠΌΠ΅Ρ€:

ffmpeg -i /home/usr/Music/input.mp3 -f s16le -acodec pcm_s16le -ar 44100 -ac 2 /home/usr/pcmMusic/output.pcm

⏹️ ΠšΠΎΠΌΠ°Π½Π΄Ρ‹ для остановки воспроизвСдСния

  1. АвтоматичСски β€” послС проигрывания: pgrep pcm_player_v2 # ПослС Π·Π°Π²Π΅Ρ€ΡˆΠ΅Π½ΠΈΡ процСсса: pgrep pcm_player_v2 # (пусто)

  2. МСдлСнно β€” Ρ‡Π΅Ρ€Π΅Π· FIFO ΠΊΠΎΠΌΠ°Π½Π΄Ρƒ (скрипт haps): bash echo haps > /tmp/pcm_cmd

  3. Быстро β€” Π·Π°Π²Π΅Ρ€ΡˆΠ΅Π½ΠΈΠ΅ ΠΏΠΎ PID (скрипт hapk)


⏯ ΠšΠΎΠΌΠ°Π½Π΄Ρ‹ управлСния воспроизвСдСниСм

  • pause β€” ΠΏΠ°ΡƒΠ·Π° (скрипт happ)
  • resume β€” ΠΏΡ€ΠΎΠ΄ΠΎΠ»ΠΆΠΈΡ‚ΡŒ (скрипт hapr)

πŸ‘€ Автор

Grannik


🌐 ΠšΠΎΠ½Ρ‚Π°ΠΊΡ‚Ρ‹


πŸ“¦ Π Π΅ΠΏΠΎΠ·ΠΈΡ‚ΠΎΡ€ΠΈΠΈ


πŸ“ ЛицСнзия

Π­Ρ‚ΠΎΡ‚ ΠΏΡ€ΠΎΠ΅ΠΊΡ‚ распространяСтся ΠΏΠΎΠ΄ Π»ΠΈΡ†Π΅Π½Π·ΠΈΠ΅ΠΉ MIT.
Π‘ΠΌ. Ρ„Π°ΠΉΠ» LICENSE для подробностСй.

Source: README.md, updated 2025-04-20