概要

VLCは、Linuxで広く使用されている強力なマルチメディアプレーヤーである。
オープンソースプロジェクトとして開発されており、VideoLAN Clientの略称から名付けられた。

VLCの特徴として、まず多様な形式のメディアファイルを再生できる点が挙げられる。
ビデオ、音楽、ストリーミングコンテンツ等、ほぼ全てての主要なメディア形式に対応している。
これは、VLCに内蔵されている豊富なコーデックライブラリが存在するからである。

また、VLCはクロスプラットフォーム対応であり、Linux以外のOSでも使用可能である。
これにより、異なるデバイスやOSを使用する場合でも、一貫した操作感を維持できる。

VLCの機能性は非常に高く、単なる再生だけでなく、メディアの変換やストリーミングも可能である。
ネットワークストリーミングプロトコルにも対応しており、インターネットラジオやIPTVの視聴にも利用できる。

また、カスタマイズ性も魅力の1つである。
ユーザインターフェースの変更、ホットキーの設定、プラグインの追加等が可能であり、個々のニーズに合わせて調整できる。

さらに、VLCはコマンドラインからも操作可能であり、スクリプトと組み合わせて自動化タスクに組み込むこともできる。
これは、Linuxの哲学と親和性が高い特徴といえる。

パフォーマンス面でも優れており、低い性能のPCでも軽快に動作する。
これは、Linuxの多様なディストリビューションや古いハードウェアでの使用を考慮すると、重要なメリットとなる。

セキュリティ面では、オープンソースソフトウェアとしてのメリットがあり、
ソースコードが公開されているため、セキュリティエンジニアによる審査が可能であり、脆弱性の早期発見と修正につながっている。

VLCの開発は活発に続けられており、定期的にアップデートが提供されている。
これにより、新しいメディア形式やプロトコルへの対応、バグ修正、新機能の追加が継続的に行われている。


VLCのインストール

パッケージ管理システムからインストール

# RHEL
sudo dnf install vlc

# SUSE
sudo zypper install vlc

# Raspberry Pi
sudo apt install vlc


SUSE : Packmanリポジトリを追加してインストール

Packmanリポジトリは、SUSE向けの追加パッケージを提供している。
したがって、インストールされるパッケージ群を理解している場合は、Packmanリポジトリを有効にする。

ユーザのシステムが、SUSEの公式リポジトリに多く依存している場合は、Packman Essentialを有効にすることを推奨する。

※サードパーティのリポジトリには潜在的なリスクが伴う可能性があることに注意すること。

# Packman全体を有効にする場合

## SLE 15 〜 SLE 15 SP6 (推奨)
sudo zypper ar -cfp 90 https://ftp.gwdg.de/pub/linux/misc/packman/suse/SLE_15/ Packman

## openSUSE Leap (推奨)
sudo zypper ar -cfp 90 'https://ftp.gwdg.de/pub/linux/misc/packman/suse/openSUSE_Leap_$releasever/' Packman


# Packman Essentialを有効にする場合

## SLE 15 〜 SLE 15 SP6
sudo zypper ar -cfp 90 https://ftp.gwdg.de/pub/linux/misc/packman/suse/SLE_15/Essentials/ Packman-Essentials

## openSUSE Leap
sudo zypper ar -cfp 90 'https://ftp.gwdg.de/pub/linux/misc/packman/suse/openSUSE_Leap_$releasever/Essentials/' Packman-Essentials


Packmanリポジトリを追加した後は、システムパッケージをPackmanに切り替えること。
両方のリポジトリのパッケージが混在すると、様々な問題が発生する恐れがある。

※注意
--allow-vendor-changeオプションは、インストールされた解決可能なソフトウェアのベンダーの変更を許可する。
また、--no-allow-vendor-changeオプションは、外部リポジトリのパッケージをディストリビューションバージョンに変更しない場合に使用する。

# Packmanリポジトリを追加した場合
sudo zypper dup --from Packman --allow-vendor-change

# Packman Essentialリポジトリを追加した場合
sudo zypper dup --from Packman-Essentials --allow-vendor-change


次に、VLCをインストールする。

sudo zypper install --allow-vendor-change vlc vlc-codecs vlc-codec-gstreamer



cvlvコマンド

cvlcコマンドは、VLCメディアプレーヤーのコマンドラインインターフェースである。
このコマンドを使用することにより、グラフィカルユーザインターフェースを使用せずに、ターミナルからVLCの機能を利用することができる。

cvlcコマンドを実行することは、標準のVLCを-ldummyオプションを付加して実行することと同様である。
-ldummyオプションとは、VLCにインターフェイス無しで実行して、代わりに存在しないダミーインターフェイスを使用するものである。

音楽の再生

cvlc <ファイル名>.mp3


複数のファイルを連続再生

cvlc <ファイル1>.mp3 <ファイル2>.mp4 <ファイル3>.avi


プレイリストの再生

cvlc --playlist-enqueue <プレイリスト名>.m3u


ストリーミングの再生

cvlc http://ストリーミングURL


ボリューム調整

# ボリュームを1.5倍にする
cvlc --gain 1.5 <ファイル名>.mp3


再生速度の変更

cvlc --rate 1.5 <ファイル名>.mp3


特定の時間から再生

# 60秒から再生する
cvlc --start-time=60 <ファイル名>.mp4


再生時間の指定

# 0[秒]から2[分]まで再生する
cvlc --stop-time=120 <ファイル名>.mp4


ビデオのアスペクト比の変更

# アスペクト比を16:9に設定する
cvlc --aspect-ratio=16:9 <ファイル名>.mp4


サブタイトルの追加

cvlc <ファイル名>.mp4 --sub-file=<字幕ファイル>.srt


オーディオトラックの選択

cvlc --audio-track=2 <ファイル名>.mkv


リピート再生

cvlc --loop <ファイル名>.mp3


シャッフル再生

cvlc --random <ファイル1>.mp3 <ファイル2>.mp3 <ファイル3>.mp3


音声のみを抽出

cvlc <ファイル名>.mp4 \
     --sout="#transcode{acodec=mp3,ab=128}:std{access=file,mux=raw,dst=<出力ファイル名>.mp3}"


ビデオの変換

cvlc <ファイル名>.avi \
     --sout="#transcode{vcodec=h264,acodec=mp3,ab=128,channels=2,samplerate=44100}:std{access=file,mux=mp4,dst=<出力ファイル名>.mp4}"



TVの視聴

国内で利用できるIPTVサービスは多岐に渡る。
代表的な提供元のリストを以下に示す。

# IPTV-ORG (推奨)
https://github.com/iptv-org/iptv

# IPTV for JAPAN
https://github.com/take2560/takelab

# Free-TV / IPTV (JP PrimeHome)
https://github.com/Free-TV/IPTV.git 

# IPTV-JP
https://github.com/luongz/iptv-jp

# Japan-IPTV
https://github.com/ptntp/Japan-IPTV

# FREE EPG
https://epg.pw/test_channel_page.html


例えば、IPTVのGithubから、プレイリストをダウンロードする。

git clone https://github.com/Free-TV/IPTV.git
cd IPTV


VLCを起動して、playlistsディレクトリから視聴する国のプレイリストファイルを選択する。

# 韓国のTV
playlist_korea.m3u8

# 朝鮮共和国のTV
playlist_north_korea.m3u8

# フランスのTV
playlist_france.m3u8

# オランダのTV
playlist_netherlands.m3u8