我在網路上下載的wav的文件,可以讀到資訊。正確的是這樣:
php端我是使用的getID3 處理看音訊資訊!
array:15 [
"GETID3_VERSION" => "1.9.14-201703261440"
"filesize" => 18627884
"filepath" => "C:/Windows"
"filename" => "php20E6.tmp"
"filenamepath" => "C:/Windows/php20E6.tmp"
"avdataoffset" => 44
"avdataend" => 18627884
"fileformat" => "wav"
"audio" => array:12 [
"dataformat" => "wav"
"bitrate_mode" => "cbr"
"wformattag" => 1
"streams" => array:1 [
0 => array:10 [
"codec" => "Pulse Code Modulation (PCM)"
"channels" => 2
"sample_rate" => 44100
"bitrate" => 1411200
"bits_per_sample" => 16
"wformattag" => 1
"bitrate_mode" => "cbr"
"lossless" => true
"dataformat" => "wav"
"compression_ratio" => 1
]
]
"codec" => "Pulse Code Modulation (PCM)"
"channels" => 2
"sample_rate" => 44100
"bitrate" => 1411200
"bits_per_sample" => 16
"lossless" => true
"channelmode" => "stereo"
"compression_ratio" => 1
]
"encoding" => "UTF-8"
"mime_type" => "audio/x-wav"
"riff" => array:5 [
"raw" => array:1 [
"fmt " => array:6 [
"wFormatTag" => 1
"nChannels" => 2
"nSamplesPerSec" => 44100
"nAvgBytesPerSec" => 176400
"nBlockAlign" => 4
"wBitsPerSample" => 16
]
]
"audio" => array:1 [
0 => array:5 [
"codec" => "Pulse Code Modulation (PCM)"
"channels" => 2
"sample_rate" => 44100
"bitrate" => 1411200
"bits_per_sample" => 16
]
]
"header_size" => 18627876
"WAVE" => array:2 [
"fmt " => array:1 [
0 => array:3 [
"offset" => 12
"size" => 16
"data" => b"\x01\x00\x02\x00D¬\x00\x00\x10±\x02\x00\x04\x00\x10\x00"
]
]
"data" => array:1 [
0 => array:2 [
"offset" => 36
"size" => 18627840
]
]
]
"encoding" => "ISO-8859-1"
]
"playtime_seconds" => 105.6
"bitrate" => 1411200
"playtime_string" => "1:46"
]
讀取ios自錄的音訊的時候,就出現了 下列問題,我讀取不到音訊的時長。
array:7 [
"GETID3_VERSION" => "1.9.14-201703261440"
"filesize" => 115223
"filepath" => "C:/Windows"
"filename" => "phpAA25.tmp"
"filenamepath" => "C:/Windows/phpAA25.tmp"
"encoding" => "UTF-8"
"error" => array:1 [
0 => "unable to determine file format"
]
]
誰遇到過這種問題啊,求指導啊!
黄舟2017-05-16 13:06:06
iOS這個設備我不太清楚,如果getID3解決不了這個問題
建議使用 FFMPEG 的來讀取,前提是服務端安裝ffmpeg
$ffprobe = FFMpeg\FFProbe::create();
print_r ($ffprobe ->format('/path/to/wav')->all());