Opened 5 years ago
Closed 3 years ago
#8630 closed enhancement (duplicate)
Improve support for Bink videos.
Reported by: | Vitamina Cé! | Owned by: | |
---|---|---|---|
Priority: | wish | Component: | avcodec |
Version: | git-master | Keywords: | bink |
Cc: | Blocked By: | ||
Blocking: | Reproduced by developer: | yes | |
Analyzed by developer: | no |
Description
Summary: ffmpeg/libavcodec won't recognize a Bink video.
Full description: I am trying to use VLC or any other media player to watch the in-game documentary of "Bioshock Remastered". The documentary comes in Bink format. I figured out that the problem is that ffmpeg/libavcodec does not recognize the video stream, it does for the audio stream as binkaudio_dct
. Therefore, one can listen the audio stream, but that's it. I tried to convert the video, but obviously ffmpeg won't work (see output below). I hope you can do something to improve Bink decoding.
Extra: I have prepared a 10MiB sample, in case you are interested. It can successfully be reproduced using Bink Video Player for Linux. This software is however limited, you can't seek through the video and audio won't work properly. Good enough for testing, anyways.
Ouput for VLC
$ cvlc DC_1-Welcome.bik VLC media player 3.0.8 Vetinari (revision 3.0.8-0-gf350b6b5a7) [000055f0718d2a30] dummy interface: using the dummy interface module... [00007fc19c001150] avformat demux error: Unknown option "threads" [00007fc19cc09500] main demux error: option sub-original-fps does not exist [00007fc19cc94810] main demux error: option sub-original-fps does not exist [00007fc19cc1bd50] main demux error: option sub-original-fps does not exist [00007fc19cc93250] main demux error: option sub-original-fps does not exist [00007fc19e69c100] main demux error: option sub-original-fps does not exist [00007fc19feba310] main demux error: option sub-original-fps does not exist [00007fc19f2b0aa0] main demux error: option sub-original-fps does not exist [00007fc19feb9960] main decoder error: could not identify codec [00007fc19feb9960] main decoder error: Unidentified codec [00007fc19feb9960] main decoder error: VLC could not identify the audio or video codec
Ouput for FFmpeg
$ ffmpeg -v 9 -loglevel 99 -i DC_1-Welcome.bik ffmpeg version 4.2.2-1ubuntu1~18.04.york0 Copyright (c) 2000-2019 the FFmpeg developers built with gcc 7 (Ubuntu 7.5.0-3ubuntu1~18.04) configuration: --prefix=/usr --extra-version='1ubuntu1~18.04.york0' --toolchain=hardened --libdir=/usr/lib/x86_64-linux-gnu --incdir=/usr/include/x86_64-linux-gnu --arch=amd64 --enable-gpl --disable-stripping --enable-avresample --disable-filter=resample --enable-avisynth --enable-gnutls --enable-ladspa --enable-libaom --enable-libass --enable-libbluray --enable-libbs2b --enable-libcaca --enable-libcdio --enable-libcodec2 --enable-libflite --enable-libfontconfig --enable-libfreetype --enable-libfribidi --enable-libgme --enable-libgsm --enable-libjack --enable-libmp3lame --enable-libmysofa --enable-libopenjpeg --enable-libopenmpt --enable-libopus --enable-libpulse --enable-librsvg --enable-librubberband --enable-libshine --enable-libsnappy --enable-libsoxr --enable-libspeex --enable-libssh --enable-libtheora --enable-libtwolame --enable-libvidstab --enable-libvorbis --enable-libvpx --enable-libwavpack --enable-libwebp --enable-libx265 --enable-libxml2 --enable-libxvid --enable-libzmq --enable-libzvbi --enable-lv2 --enable-omx --enable-openal --enable-opencl --enable-opengl --enable-sdl2 --enable-libdc1394 --enable-libdrm --enable-libiec61883 --enable-nvenc --enable-chromaprint --enable-frei0r --enable-libx264 --enable-shared libavutil 56. 31.100 / 56. 31.100 libavcodec 58. 54.100 / 58. 54.100 libavformat 58. 29.100 / 58. 29.100 libavdevice 58. 8.100 / 58. 8.100 libavfilter 7. 57.100 / 7. 57.100 libavresample 4. 0. 0 / 4. 0. 0 libswscale 5. 5.100 / 5. 5.100 libswresample 3. 5.100 / 3. 5.100 libpostproc 55. 5.100 / 55. 5.100 Splitting the commandline. Reading option '-v' ... matched as option 'v' (set logging level) with argument '9'. Reading option '-loglevel' ... matched as option 'loglevel' (set logging level) with argument '99'. Reading option '-i' ... matched as input url with argument 'DC_1-Welcome.bik'. Finished splitting the commandline. Parsing a group of options: global . Applying option v (set logging level) with argument 9. Successfully parsed a group of options. Parsing a group of options: input url DC_1-Welcome.bik. Successfully parsed a group of options. Opening an input file: DC_1-Welcome.bik. [NULL @ 0x55e82c1d57c0] Opening 'DC_1-Welcome.bik' for reading [file @ 0x55e82c1d6240] Setting default whitelist 'file,crypto' Probing bink score:100 size:2048 [bink @ 0x55e82c1d57c0] Format bink probed with size=2048 and score=100 [bink @ 0x55e82c1d57c0] Bink 2 video is not implemented [bink @ 0x55e82c1d57c0] Before avformat_find_stream_info() pos: 70472 bytes read:98304 seeks:0 nb_streams:2 [bink @ 0x55e82c1d57c0] max_analyze_duration 5000000 reached at 5004170 microseconds st:0 [bink @ 0x55e82c1d57c0] stream 0: start_time: 0.000 duration: 734.028 [bink @ 0x55e82c1d57c0] stream 1: start_time: 0.000 duration: -192153584101141.156 [bink @ 0x55e82c1d57c0] format: start_time: 0.000 duration: 734.028 bitrate=3059 kb/s [bink @ 0x55e82c1d57c0] Could not find codec parameters for stream 0 (Video: none, 1 reference frame (KB2j / 0x6A32424B), none, 1920x1080 (0x0), 50/1199): unknown codec Consider increasing the value for the 'analyzeduration' and 'probesize' options [bink @ 0x55e82c1d57c0] After avformat_find_stream_info() pos: 2050692 bytes read:2050692 seeks:0 frames:241 Input #0, bink, from 'DC_1-Welcome.bik': Duration: 00:12:14.03, start: 0.000000, bitrate: 3059 kb/s Stream #0:0[0x0], 120, 50/1199: Video: none, 1 reference frame (KB2j / 0x6A32424B), none, 1920x1080 (0x0), 0/1, 23.98 fps, 23.98 tbr, 23.98 tbn, 23.98 tbc Stream #0:1[0x0], 121, 1/48000: Audio: binkaudio_dct, 48000 Hz, stereo, fltp Successfully opened the file. At least one output file must be specified
Attachments (1)
Change History (6)
by , 5 years ago
Attachment: | DC_1-Welcome_2.5MiB_sample.bik added |
---|
follow-ups: 2 4 comment:1 by , 5 years ago
I already wrote patch for this, but other developers are against applying it.
comment:2 by , 5 years ago
Status: | new → open |
---|
Replying to richardpl:
I already wrote patch for this, but other developers are against applying it.
Why?
comment:3 by , 5 years ago
Component: | undetermined → avcodec |
---|---|
Keywords: | bink added |
Priority: | minor → wish |
Reproduced by developer: | set |
Type: | defect → enhancement |
Version: | 4.2 → git-master |
comment:4 by , 4 years ago
Replying to richardpl:
I already wrote patch for this, but other developers are against applying it.
Then please , please just release it somewhere else. Can you contact me ASAP with the fix?
Video from "Bioshock Remastered" in Bink format (sample of 1st chapter of the in-game documentary).