「Ffmpeg」の版間の差分

提供:onayami
編集の要約なし
編集の要約なし
 
30行目: 30行目:


yt-dlp -F --progress ${1}  
yt-dlp -F --progress ${1}  
</syntaxhighlight>
<syntaxhighlight lang="python" line>
import sys
import subprocess
import subprocess
import shlex
args = sys.argv
# print(args[0])
# print(args[1])
# print(args[2])
import subprocess
youtubekey = input('youtube key >> ')
cmd = f"yt-dlp -F --progress \"https://www.youtube.com/watch?v={youtubekey}\""
cmd = f"echo \"https://www.youtube.com/watch?v={youtubekey}\""
cmd = f"https://www.youtube.com/watch?v={youtubekey}"
# 新しいプロセスを起動し、すぐに制御を戻す
# proc = subprocess.Popen(['ls', '-l'], stdout=subprocess.PIPE, stderr=subprocess.PIPE)
proc = subprocess.Popen(['yt-dlp', '-F', '--progress', cmd], stdout=subprocess.PIPE, stderr=subprocess.PIPE)
# 他の処理を並行して行う...
# プロセスの終了を待ち、出力とエラーを取得
stdout, stderr = proc.communicate()
# proc.wait() と proc.returncode で終了コードも確認可能
print(stdout.decode())
ID = str(input('ID >> '))
##########################################################################
command_list = ['yt-dlp', '-f', ID, '-N10', '--progress', cmd]
print(command_list)
# command_list = ['ls', '-a']
try:
    # stdoutとstderrをキャプチャする設定
    process = subprocess.Popen(
        command_list,
        stdout=subprocess.PIPE,
        stderr=subprocess.PIPE,
        text=True  # Python 3.7+ では、text=Trueで出力が文字列になる
    )
    # 外部コマンドが終了するのを待機し、出力とエラーを取得
    stdout, stderr = process.communicate(timeout=15)
    if process.returncode == 0:
        print("コマンドは正常に終了しました。")
        print("標準出力:\n", stdout)
    else:
        # コマンドがエラーコードを返した場合
        print(f"コマンドはエラーコード {process.returncode} で終了しました。")
        print("標準エラー出力:\n", stderr)
except FileNotFoundError:
    print(f"エラー: コマンド '{command_list[0]}' が見つかりません。パスを確認してください。")
except subprocess.TimeoutExpired:
    print("エラー: コマンドがタイムアウトしました。")
except Exception as e:
    print(f"予期せぬエラーが発生しました: {e}")
exit()
print(cmd)
# exit()
# print(youtubekey)
# subprocess.call([cmd])
subprocess.call(cmd)
exit()
# yt-dlp -f ${2} -N10 --progress "https://www.youtube.com/watch?v=${1}"




</syntaxhighlight>
</syntaxhighlight>

2025年9月28日 (日) 02:01時点における最新版


For FFmpeg with Constant Bitrate Encoding (CBR):

ffmpeg -i video.mp4 -vn \
       -acodec libmp3lame -ac 2 -ab 160k -ar 48000 \
        audio.mp3

or if you want to use Variable Bitrate Encoding (VBR):

ffmpeg -i video.mp4 -vn \
       -acodec libmp3lame -ac 2 -qscale:a 4 -ar 48000 \
        audio.mp3

The VBR example has a target bitrate of 165 Kbit/s with a bitrate range of 140...185.


python3 -m pip install -U yt-dlp

yt-dlp -F --progress "https://www.youtube.com/watch?v=xxxxxxxxx"

yt-dlp -f 636+251 -N10 --progress "https://www.youtube.com/watch?v=xxxxxxxxx"


yt-dlp -F --progress ${1}


import sys
import subprocess

import subprocess
import shlex

args = sys.argv


# print(args[0])
# print(args[1])
# print(args[2])

import subprocess

youtubekey = input('youtube key >> ')

cmd = f"yt-dlp -F --progress \"https://www.youtube.com/watch?v={youtubekey}\""
cmd = f"echo \"https://www.youtube.com/watch?v={youtubekey}\""

cmd = f"https://www.youtube.com/watch?v={youtubekey}"

# 新しいプロセスを起動し、すぐに制御を戻す
# proc = subprocess.Popen(['ls', '-l'], stdout=subprocess.PIPE, stderr=subprocess.PIPE)
proc = subprocess.Popen(['yt-dlp', '-F', '--progress', cmd], stdout=subprocess.PIPE, stderr=subprocess.PIPE)


# 他の処理を並行して行う...

# プロセスの終了を待ち、出力とエラーを取得
stdout, stderr = proc.communicate() 
# proc.wait() と proc.returncode で終了コードも確認可能

print(stdout.decode())


ID = str(input('ID >> '))





##########################################################################


command_list = ['yt-dlp', '-f', ID, '-N10', '--progress', cmd]
print(command_list)
# command_list = ['ls', '-a']

try:
    # stdoutとstderrをキャプチャする設定
    process = subprocess.Popen(
        command_list,
        stdout=subprocess.PIPE,
        stderr=subprocess.PIPE,
        text=True  # Python 3.7+ では、text=Trueで出力が文字列になる
    )

    # 外部コマンドが終了するのを待機し、出力とエラーを取得
    stdout, stderr = process.communicate(timeout=15) 

    if process.returncode == 0:
        print("コマンドは正常に終了しました。")
        print("標準出力:\n", stdout)
    else:
        # コマンドがエラーコードを返した場合
        print(f"コマンドはエラーコード {process.returncode} で終了しました。")
        print("標準エラー出力:\n", stderr)

except FileNotFoundError:
    print(f"エラー: コマンド '{command_list[0]}' が見つかりません。パスを確認してください。")
except subprocess.TimeoutExpired:
    print("エラー: コマンドがタイムアウトしました。")
except Exception as e:
    print(f"予期せぬエラーが発生しました: {e}")




exit()



print(cmd)

# exit()
# print(youtubekey)

# subprocess.call([cmd])
subprocess.call(cmd)

exit()

# yt-dlp -f ${2} -N10 --progress "https://www.youtube.com/watch?v=${1}"