web-dev-qa-db-ja.com

OSX:VLCのCLIバージョンの使用

OSXでVLCのCLIバージョンを使用するにはどうすればよいですか?

OSXにVLCをインストールした後、通常のGUIプロセス、スポットライトなどで問題なく動作します。また、

open bla.avi -a vlc

ただし、シェルでvlcコマンドを発行すると機能しません。 which vlc Shellも何も返しません。

VLCのCLIバージョンは、トランスコーディング、ストリーミングなどに非常に便利です。そのため、VLCが機能していると便利です。

23
lang2

OS XはLaunch Servicesデータベースを使用してアプリケーションVLCを開くため、コマンドopen bla.avi -a vlcは機能します。これは、デフォルトではインストールされない、同じ名前のコマンドラインバイナリとは何の関係もありません。

検索するバイナリはVLC.appパッケージにあるため、ターミナルに入力できます。

/Applications/VLC.app/Contents/MacOS/VLC -I rc

これにより、インタラクティブなコマンドラインVLCが開きます。または、次のコマンドを実行して、上記の行をvlcのエイリアスとして登録します。

echo "alias vlc='/Applications/VLC.app/Contents/MacOS/VLC -I rc'" >> ~/.bash_profile

これを追加したら、ターミナルを再起動する必要があります。ここでvlcと入力すると、コマンドラインが表示されます。

インタラクティブなインターフェースが気に入らない場合、または他のオプションでVLCを使用する場合は、それに応じて~/.bash_profileを編集する必要があります。 open -e ~/.bash_profileまで。

23
slhck

OS Xアプリケーションは通常、アプリケーションバンドルの外部に実行可能プログラムをインストールしません。通常はコマンドラインから操作しないため、PATHのフォルダーには配置されません。


VLCを/Applicationsにインストールした場合、実際の実行可能ファイルは/Applications/VLC.app/Contents/MacOS/VLCです。

/Applications/VLC.app/Contents/MacOS/VLC -hはいくつかのヘルプを表示し、/Applications/VLC.app/Contents/MacOS/VLC --intf ncursesはncurses UIを起動します。

3
Daniel Beck

コマンドラインからvlcにアクセスするには、次のようにローカルシンボリックリンクを作成します。

mkdir ~/bin
ln -vs /Applications/VLC.app/Contents/MacOS/VLC ~/bin/vlc

このコマンドをすべてのユーザーが使用できるようにするには、代わりに/usr/local/binにリンクすることができます。

~/bin(または/usr/local/bin)が環境変数PATHに含まれていることを確認してください。つまり、~/.profileファイルに次のような内容が含まれていることを確認してください。

# set PATH so it includes user's private bin if it exists
if [ -d "$HOME/bin" ] ; then
    PATH="$HOME/bin:$PATH"
fi

上記のコードは、Linuxのデフォルトの動作です。

2
kenorb

ダミーインターフェイスを使用すると、コマンドラインでバッチ操作を実行できます。/usr/local/bin/vlcに保存されている次のようなシェルスクリプトを使用します。

    export VLC_PLUGIN_PATH=/Applications/VLC.app/Contents/MacOS/plugins
    /Applications/VLC.app/Contents/MacOS/VLC -I dummy "${@}"
1
larrycz

参考までに、および/またはヒント。

openコマンドで起動する--- [アプリの実際のパスを見つけるを実行する2つの方法があります。

VLCが/Applicationsではなく/Users/<user>/Applications~/Applications)などのディレクトリではなく別のディレクトリに配置されている場合に役立ちます。

AppleScript経由

シンプルですが、アプリを起動します。

$ osascript -e 'POSIX path of (path to application "VLC")'
/Applications/VLC.app/
$ 
$ osascript -e 'POSIX path of (path to application "GIMP")'
/Volumes/External_HDD/Applications/GIMP/GIMP_v2.8/GIMP.app/

Lsregisterコマンド経由

少し複雑ですが、アプリを起動しません。

$ # Path of `lsregister` command
$ #   /System/Library \
$ #     /Frameworks/CoreServices.framework/Versions/A \
$ #     /Frameworks/LaunchServices.framework/Versions/A/Support/
$ 
$ cd /System/Library/Frameworks/CoreServices.framework/Versions/A/Frameworks/LaunchServices.framework/Versions/A/Support/
$ 
$ ls
lsregister
$ 
$ # Sample usage
$ ./lsregister -dump | grep -o "/.*\Google Chrome.app" | head -1
/Applications/Google Chrome.app
$ 
$ # Find VLC
$ NAME_APP=VLC
$ ./lsregister -dump | grep -o "/.*${NAME_APP}.app" | grep -v -E "Caches|TimeMachine|Temporary|/Volumes/${NAME_APP}" | uniq
/Applications/VLC.app

テスト済み:macOS HighSierra(OSX 10.13.6)

$ bash --version
GNU bash, version 3.2.57(1)-release (x86_64-Apple-darwin17)
Copyright (C) 2007 Free Software Foundation, Inc.
1
KEINOS

まず、VLC Macアプリケーションパッケージで実際のバイナリ実行可能ファイルを見つける必要があります。 Finderを開き、Applicationsフォルダーに移動し、VLCアプリを右クリックして[Show Package Contents]をクリックします。これで、実際に何が入っているかを参照できます。

この場合、VLCバイナリはContents/MacOSフォルダーにファイルVLCとして配置されます。 Terminalを開き、正確なファイルパスを入力すると、VLCバイナリが実行されます:/Applications/VLC.app/Contents/MacOS/VLC。毎回このパス全体を使用したくない場合は、シンボリックリンクを作成し、これを指すようにBash PATHを編集できます。

CLIから直接バイナリを呼び出すことができるようになったので、通常のGUIポップアップが表示されないようにインターフェイスを選択することをお勧めします。利用可能なインターフェースの完全なリストは VLC Interfaces wiki page にあります。

意図した出力を生成するVLC CLI呼び出しのコマンドの作業セットが見つかったら、プログラム/バッチ処理でVLCを呼び出すときにdummyインターフェイスを使用することをお勧めします。 dummyインターフェースは基本的に、ほとんどの非対話型CLIプログラムと同様に、ターミナルでの出力にすぎません。

最終結果:/Applications/VLC.app/Contents/MacOS/VLC -I dummy [further parameters here]

-vvvパラメータを使用することをお勧めします。これにより、さまざまなコマンドをテストするときに役立つログ出力が得られます。

0
TheKarateKid