Когда вы вызываете FFMPEG с входным файлом, он покажет вам все данные, относящиеся к каждому потоку:
ffmpeg -i yourfile.mp3
Существует отдельный исполняемый файл, обычно связанный с FFMPEG, хотя он делает то, что вам нужно, и это ffprobe
. Поэтому в системе Windows вы должны сделать что-то вроде этого, чтобы перенаправить стандартный вывод в файл:
ffprobe -i yourfile.mp3 -show_streams > file_stream_info.txt
В этом файле вы найдете что-то вроде этого:
[STREAM]
index=0
codec_name=mp3
codec_long_name=MP3 (MPEG audio layer 3)
codec_type=audio
codec_time_base=0/1
codec_tag_string=[0][0][0][0]
codec_tag=0x0000
sample_fmt=s16
sample_rate=44100
channels=2
bits_per_sample=0
id=N/A
r_frame_rate=0/0
avg_frame_rate=1225/32
time_base=1/14112000
start_time=0.000
duration=210.688
nb_frames=N/A
[/STREAM]
Все, что вам нужно сделать, это использовать любой язык сценариев, который вы используете (PHP?), Чтобы разбить его на пары ключ / значение (читать строки и запускать на них explode()
). Я также должен отметить, что в большинстве языков есть метод для чтения стандартного вывода из того, что вы выполняете, без записи файла, который будет гораздо более эффективным.