音と画像付きタイマー

<h3>いるもん</h3>

```ruby:qiita.rb
pip install pillow
pip install pygame
```

<br>
<h3>libra 参考サイト</h3>

https://realpython.com/pygame-a-primer/

https://arakaki.tokyo/pillow_tutorial/






<br>
<h3>ただ音楽オススメリンク</h3>

https://www.bensound.com/royalty-free-music


<h3>インスト手順</h3>

```ruby:qiita.rb
git clone https://github.com/coolwanglu/pdf2htmlEX.git
cd pdf2htmlEX
brew install pkg-config cairo pango gdk-pixbuf libxml2 poppler libfontforge
pkg-config --cflags --libs fontforge
brew uninstall fontforge
brew install fontforge
brew install --cask fontforge
which pkg-config
export PATH="/usr/local/bin:$PATH"
brew reinstall fontforge
brew uninstall fontforge
brew install --HEAD fontforge
brew reinstall pkg-config

find /usr/local -name "fontforge.pc" 2>/dev/null
cmake .
make
sudo make install

```

<br>

```ruby: ✅ タイマー作るのに、fontforge.pc 作らなあかん
/usr/local/lib/pkgconfig/fontforge.pc

sudo nano /usr/local/lib/pkgconfig/fontforge.pc

ファイル内容
prefix=/usr/local
exec_prefix=${prefix}
libdir=${exec_prefix}/lib
includedir=${prefix}/include

Name: FontForge
Description: Font editor
Version: 20230101
Libs: -L${libdir} -lfontforge
Cflags: -I${includedir}/fontforge
内容終わり


echo 'export PKG_CONFIG_PATH="/usr/local/lib/pkgconfig:$PKG_CONFIG_PATH"' >> ~/.zshrc
source ~/.zshrc
cd pdf2htmlEX
pkg-config --modversion fontforge
rm -rf ~/.cache/pkg-config
brew list | grep fontforge
```
<br>
<h4>内容　タイマーセットしたら、ターミナルに音楽と画像表示　</h4>

```ruby: ☑️ 
brew install ffmpeg → 音楽変換ソフト
ffmpeg -version
ffmpeg -i piano.mp3 piano.wav
ffmpeg -i piano.mp3
pip install numpy
python -m pip install numpy
python -c "import numpy; print(numpy.__version__)"
```

<h3>　タイマーセットしたら、ターミナルに音楽と画像表示　</h3>

```ruby: ☑️ 
brew install ffmpeg → 音楽変換ソフト
ffmpeg -version
ffmpeg -i piano.mp3 piano.wav
ffmpeg -i piano.mp3
pip install numpy
python -m pip install numpy
python -c "import numpy; print(numpy.__version__)"
```

<br>
<h3>画像</h3>

![スクリーンショット 2025-02-21 23.08.07.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/628823/dfca6a4d-7985-48f1-910d-0415565fc1b1.png)

<br>

```ruby:コード
import time
import pygame
from PIL import Image

# 音を準備
pygame.mixer.init()  # 初期化
sound = pygame.mixer.Sound("piano.mp3")  # 音ファイル指定（例：alarm.wav）

# 画像の準備
def show_image(image_path):
    img = Image.open(hot.jeng)
    img.show()  

def countdown_timer(seconds):
    while seconds > 0:
        hours = seconds // 3600  # 時間
        minutes = (seconds % 3600) // 60  # 分
        remaining_seconds = seconds % 60  # 秒
        print(f"残り時間: {hours}時間 {minutes}分 {remaining_seconds}秒")
        time.sleep(1)  # 1秒間の待機
        seconds -= 1
    print("タイマー終了！")
    sound.play()  # タイマー終了時に音を鳴らす

# 1時間（3600秒）のタイマー
countdown_timer(30)
show_image(image_path)

# countdown_timer(3600)

```


<br>
<h3>初学者オススメサイト</h3>

https://rinatz.github.io/python-book/

https://github.com/ya-mori/python-note/tree/master/exam

https://utokyo-ipp.github.io/IPP_textbook.pdf

https://www.python-izm.com/advanced/

https://rinatz.github.io/python-book/

<br>
<h3>おすすめ 内部モジュ</h3>

https://mira-kan.co.jp/columns/python/【python】-エラーとその処理を解説%E3%80%80「構文エラー-syntaxerro/

https://beginner-engineers.com/creating-module/?utm_source=chatgpt.com#Pythonの標準ライブラリと外部ライブラリ

https://freelance-start.com/articles/1105?utm_source=chatgpt.com


<br>
<h3>おすすめ 外部モジュ</h3>

https://freelance-start.com/articles/1105?utm_source=chatgpt.com

https://bridgedot.com/python/library/?utm_source=chatgpt.com




https://www.karaoke-best10.com/reservation/?store_id=best10-oomori

<br>
<h3>want 応募/ ダンス / Workspa / カラオケ予約</h3>


https://www.youtube.com/watch?v=zf75_V_oxMQ&list=PLomQfPiZA65RHS6-VVQt839fNPc-5DNOQ&index=2

https://www.youtube.com/watch?v=yiZN-SER6vw

https://www.youtube.com/watch?v=87qoh-jwstE

https://www.youtube.com/watch?v=sB4mOyy6Vto

https://www.youtube.com/watch?v=sB4mOyy6Vto

https://www.youtube.com/watch?v=lNjCVEGBWzY&list=PLadsOIuuv3U5W7ok1L3pLc9g_-xrpefeP&index=49

<li>カラオケ予約</li>

https://www.karaoke-best10.com/reservation/?store_id=best10-oomori
</li>
</ul>