คำตอบนี้เป็นเพียงส่วนขยายของคำตอบ Spiffด้วยตัวอย่างจริง
ตัวอย่างเช่นที่นี่ฉันเลือกวิดีโอนี้เรียกใช้ First Docker Container ใน Azureจาก Channel9 MSDN มีสี่รูปแบบไฟล์ของวิดีโอนั้น ฉันทำอะไรไป? คำตอบ: ใช้curl --head
เพื่อแสดงเฉพาะส่วนหัวของคำขอ HTTP / GET นั้นซึ่งมีประเภทเนื้อหาและความยาวเนื้อหา จากนั้นดาวน์โหลดไฟล์เหล่านั้น ใช้ffmpeg -i
เพื่อแสดงข้อมูลการเข้ารหัสไฟล์วิดีโอที่ดาวน์โหลดมา (เฉพาะส่วนที่สำคัญมีให้ด้านล่าง) นี่คือสามของพวกเขา:
- MP4 คุณภาพต่ำ:
$> curl --head "https://sec.ch9.ms/ch9/7a84/8269395e-c022-4672-8b43-3cf1b5d57a84/jay-gordon-docker-in-azure.mp4"
Content-Length: 42,102,244
Content-Type: video/mp4
$> ffmpeg -i jay-gordon-docker-in-azure.mp4
Duration: 00:17:54.05, start: 0.000000, bitrate: 313 kb/s
Stream #0:0(eng): Video: h264 (Constrained Baseline) (avc1 / 0x31637661), yuv420p, 640x360, 210 kb/s, 29.97 fps, 29.97 tbr, 30k tbn, 59.94 tbc (default)
Metadata:
handler_name : ?Mainconcept Video Media Handler
Stream #0:1(eng): Audio: aac (LC) (mp4a / 0x6134706D), 44100 Hz, stereo, fltp, 96 kb/s (default)
Metadata:
handler_name : #Mainconcept MP4 Sound Media Handler
- MP4 คุณภาพระดับกลาง:
$> curl --head "https://sec.ch9.ms/ch9/7a84/8269395e-c022-4672-8b43-3cf1b5d57a84/jay-gordon-docker-in-azure_mid.mp4"
Content-Length: 129,621,802
Content-Type: video/mp4
$> ffmpeg -i jay-gordon-docker-in-azure_mid.mp4
Duration: 00:17:54.05, start: 0.000000, bitrate: 965 kb/s
Stream #0:0(eng): Video: h264 (High) (avc1 / 0x31637661), yuv420p, 1280x720, 828 kb/s, 29.97 fps, 29.97 tbr, 30k tbn, 59.94 tbc (default)
Metadata:
handler_name : ?Mainconcept Video Media Handler
Stream #0:1(eng): Audio: aac (LC) (mp4a / 0x6134706D), 44100 Hz, stereo, fltp, 128 kb/s (default)
Metadata:
handler_name : #Mainconcept MP4 Sound Media Handler
- MP4 คุณภาพสูง:
$> curl --head "https://sec.ch9.ms/ch9/7a84/8269395e-c022-4672-8b43-3cf1b5d57a84/jay-gordon-docker-in-azure_high.mp4"
Content-Length: 385,374,160
Content-Type: video/mp4
$> ffmpeg -i jay-gordon-docker-in-azure_high.mp4
Duration: 00:17:54.05, start: 0.000000, bitrate: 2870 kb/s
Stream #0:0(eng): Video: h264 (High) (avc1 / 0x31637661), yuv420p, 1920x1080, 2701 kb/s, 29.97 fps, 29.97 tbr, 30k tbn, 59.94 tbc (default)
Metadata:
handler_name : ?Mainconcept Video Media Handler
Stream #0:1(eng): Audio: aac (LC) (mp4a / 0x6134706D), 44100 Hz, stereo, fltp, 160 kb/s (default)
Metadata:
handler_name : #Mainconcept MP4 Sound Media Handler
เปรียบเทียบเอาต์พุตคำสั่งทั้งสามนี้ เมื่อคุณภาพเพิ่มขึ้นความยาวของเนื้อหาจึงเพิ่มบิตเรตของเสียงและวิดีโอ ดังนั้นจึงเป็นไปได้ที่จะคาดเดาคุณภาพวิดีโอจากcurl --head
คำสั่งความยาวเนื้อหาแต่ส่วนหัว HTTP ไม่ได้ให้การเข้ารหัสวิดีโอเต็มรูปแบบ หากต้องการทราบข้อมูลเพิ่มเติมเกี่ยวกับการเข้ารหัสวิดีโอคุณต้องดาวน์โหลดไฟล์ URL เท่านั้นไม่สามารถให้ข้อมูลเหล่านั้นได้