Які кодеки найбільш підходять для відтворення за допомогою Windows Media Player у Windows XP?


16

Мені потрібно кодувати коротке відео у форматі, який можна відтворити за допомогою медіаплеєра Windows на Windows XP без встановлення додаткових кодеків. Для процесу перекодування я використовую ffmpeg.

Я вже пробував msmpeg4v2кодек, але якість жахлива (порівняно з оригінальним відео ви бачите великі "блоки"), тому я шукаю інших кодеків, які працюють поза коробкою і мають принаймні "нормальну" якість.

Оскільки в коментарях вказувалося, що це може бути не кодек, а бітрейт, ось команда, яку я використав:

ffmpeg -i x.flv -vcodec msmpeg4v2 -acodec adpcm_ima_wav x.avi

Вихід:

Input #0, flv, from 'x.flv':
  Metadata:
    moovPosition    : 39337765
    avcprofile      : 100
    avclevel        : 30
    aacaot          : 2
    videoframerate  : 25
    audiochannels   : 2
  Duration: 00:06:19.52, start: 0.000000, bitrate: 836 kb/s
    Stream #0:0: Video: h264 (High), yuv420p, 702x396 [SAR 2596:3679 DAR 354:283], 25 tbr, 1k tbn, 50 tbc
    Stream #0:1: Audio: aac, 48000 Hz, stereo, s16
w:702 h:396 pixfmt:yuv420p tb:1/1000000 sar:2596/3679 sws_param:
Output #0, avi, to 'x.avi':
  Metadata:
    moovPosition    : 39337765
    avcprofile      : 100
    avclevel        : 30
    aacaot          : 2
    videoframerate  : 25
    audiochannels   : 2
    ISFT            : Lavf53.32.100
    Stream #0:0: Video: msmpeg4v2 (MP42 / 0x3234504D), yuv420p, 702x396 [SAR 2596:3679 DAR 354:283], q=2-31, 200 kb/s, 25 tbn, 25 tbc
    Stream #0:1: Audio: adpcm_ima_wav ([17][0][0][0] / 0x0011), 48000 Hz, stereo, s16, 384 kb/s
Stream mapping:
  Stream #0:0 -> #0:0 (h264 -> msmpeg4v2)
  Stream #0:1 -> #0:1 (aac -> adpcm_ima_wav)
Press [q] to stop, [?] for help
frame= 9485 fps=436 q=31.0 Lsize=   31197kB time=00:06:19.48 bitrate= 673.5kbits/s
video:12628kB audio:17913kB global headers:0kB muxing overhead 2.149820%

3
Можливо, проблема - ваш бітрейт, а не ваш кодек. Кращим кодеком для систем Windows є, швидше за все, якийсь WMV .
Der Hochstapler


Дивіться мою відповідь там за посиланням на офіційний FAQ. Але по суті, ви застрягли в Windows Media Video - який FFmpeg не видасть. Так що або те, що ви пробували. Як вже говорив @Oliver, спробуйте підвищити швидкість передачі бітів або якість. Я припускаю, що він просто використовує типовий.
slhck

Перевага кодека MPEG полягає не в розмірі, а в тому, що він не є контейнером, як AVI, а це файл на основі потоку, який можна записати через апаратний кодер, який використовується на DVD-носіях для автономних плеєрів, і його можна легко редагувати. Тож, щоб бути зрозумілим, те, про що ви запитуєте, - це формат фільму, який ви можете кодувати за допомогою FFMPEG, який створить вам зручний розмір, і буде працювати з Windows Media Player без додаткових завантажень. Правильно?
Bon Gart

Так. WMV теж добре. я отримую таку ж якість - тому, можливо, дійсно щось не так з бітрейтом.
ThiefMaster

Відповіді:


12

Оскільки ви нічого не вказуєте, ваш відеопотік налаштовано на використання q=2-31, 200 kb/s. Це призводить до 673.5kbitsсереднього показника, що не багато, принаймні, не для кодеків, що не стосуються h.264.

Спробуйте примусити

  • певний бітрейт, -b:v 1000Kнаприклад. З більш старими версіями FFmpeg можна користуватися лише -b.
  • фіксований рівень якості, -qscale 2наприклад. Тут значення може варіюватися від 1 до 31. Значення здорового значення qscaleзнаходяться в діапазоні від 2 до 5 або близько того. Просто спробуйте і подивіться, що досягає найкращого результату.

Кодеки, які дійсно підтримуються в Windows за замовчуванням , це :

На сьогоднішній день використовуються сотні аудіо та відео кодеків. Деякі були створені Microsoft, але переважна більшість кодеків були створені іншими компаніями, організаціями чи особами. За замовчуванням операційна система Windows і програвач включають ряд найпопулярніших кодеків, таких як Windows Media Audio, Windows Media Video та MP3.

Також див. Типи мультимедійних файлів, які підтримує Windows Media Player для отримання додаткової інформації.

За допомогою FFmpeg ви можете спробувати mpeg1video(MPEG-1) або mpeg2video(MPEG-2), або msmpeg4(MPEG-4 частина II), але я не впевнений, чи останній навіть підтримується повсюдно. Якщо ви хочете зіграти в безпеці, ви змушені використовувати MPEG-1 або MPEG-2.


так ... це був досить низький бітрейт для файлу mpeg.
Bon Gart

Хе. Треба сказати, що ми справді благословлені з h.264.
slhck

з урахуванням врахування, що ви дивитесь на 4k до 5k протягом 2 гарних годин на DVD (Ви, звичайно, можете піднятися вище, але це завжди залишає мені гарний простір на диску для включення AVI-файлу та зображень тощо)
Bon Gart,

7

У мене була схожа проблема з файлом .ac4 .ac4 / .2, який спочатку чудово грав у програмі Windows Media Player (Windows 7). Після того як я редагував у VirtualDub і зберігав у форматі .avi, а потім конвертував назад у aac / h264 .mp4 за допомогою за замовчуванням ffmpeg, він більше не відтворюватиметься в Windows Media Player.

Використовуючи MediaInfo для порівняння оригінальних та кінцевих файлів, я помітив, що використовувався інший профіль кодування та різні параметри кольорової піддиагностики (4: 2: 0, остаточне 4: 4: 4). Перекодирувавши його за допомогою ffmpeg за допомогою наступної опції, WMP змогла правильно відтворити файл:

ffmpeg  -i edited.avi -pix_fmt yuv420p fixed.mp4

1
Див. Trac.ffmpeg.org/wiki/Encode/H.264#Encodingfordumbplayers, де згадується використання -pix_fmt yuv420pта підтримка цієї ідеї.
Користувач

Я щойно перевірив це на Windows 10. Просто додавши, -pix_fmt yuv420pмені вдалося відкрити mp4 в додатках Microsoft (як вбудований програвач, так і Movie Maker).
Nux


0

Оскільки обидва кодеки вже підтримуються контейнером AVI, ви могли просто зробити

ffmpeg -i x.flv -vcodec copy -acodec copy x.avi

це припустимо, що ваш XP підтримує h.264, інакше я б пішов з файлом wmv, таким же квантовим механізмом, і дозволю ffmpeg заповнити кодеки. Це має надати майже однакову якість, як оригінал:

ffmpeg -i x.flv -sameq x.wmv

2
Я якось сумніваюся, звичайний XP підтримує h.264
ThiefMaster

2
-sameqне слід використовувати для перетворення форматів, які не поділяють аналогічну шкалу квантування. Цей параметр не означає "такої ж якості", що й документація, що використовується. Також H.264 в AVI не рекомендується (хоча H.264 без втрат [без b-кадрів] має бути нормальним).
llogan
Використовуючи наш веб-сайт, ви визнаєте, що прочитали та зрозуміли наші Політику щодо файлів cookie та Політику конфіденційності.
Licensed under cc by-sa 3.0 with attribution required.