Zane van Iperen
52d362c6e0
avformat/argo_{asf,brp}: use variable frame sizes when (de)muxing adpcm_argo
...
Signed-off-by: Zane van Iperen <zane@zanevaniperen.com >
2020-09-19 15:55:00 +10:00
Zane van Iperen
c79f07cc0c
avformat/argo_asf: initialise file header inline
...
Garbage was left-over in the ArgoASFFileHeader::name field if the url
was too short. This zero-initialises it.
Signed-off-by: Zane van Iperen <zane@zanevaniperen.com >
2020-09-16 13:26:06 +10:00
Zane van Iperen
121016f827
avformat/argo_asf: add ASF_MIN_BUFFER_SIZE #define
...
For future use by the argo_brp demuxer
Signed-off-by: Zane van Iperen <zane@zanevaniperen.com >
2020-09-14 14:24:01 +10:00
Zane van Iperen
442249ef28
avformat/argo_asf: split functionality into a header
...
For future use by the argo_brp demuxer.
Adds:
- void ff_argo_asf_parse_file_header(ArgoASFFileHeader *hdr, const uint8_t *buf);
- int ff_argo_asf_validate_file_header(AVFormatContext *s, const ArgoASFFileHeader *hdr);
- void ff_argo_asf_parse_chunk_header(ArgoASFChunkHeader *hdr, const uint8_t *buf);
- int ff_argo_asf_fill_stream(AVStream *st, const ArgoASFChunkHeader *ckhdr);
Signed-off-by: Zane van Iperen <zane@zanevaniperen.com >
2020-09-14 14:23:54 +10:00
Zane van Iperen
0476b6ee1e
avformat/argo_asf: bail if invalid tag
...
Signed-off-by: Zane van Iperen <zane@zanevaniperen.com >
2020-09-14 14:23:15 +10:00
Zane van Iperen
d2f7b39914
avformat/argo_asf: fix handling of v1.1 files
...
Version 1.1 (FX Fighter) files all have a sample rate of 44100
in the header, but only play back correctly at 22050.
Force the sample rate to 22050 when reading, and restrict it
when muxing.
2020-09-07 13:13:33 +10:00
Zane van Iperen
d2f42b9be1
avformat/argo_asf: strip file extension from name
...
Only when the user hasn't manually specified one.
Matches the original files more closely.
Signed-off-by: Zane van Iperen <zane@zanevaniperen.com >
2020-08-11 08:50:27 +10:00
Zane van Iperen
a3a4591868
avformat/argo_asf: add name option
...
Reviewed-by: Alexander Strasser <eclipse7@gmx.net >
Reviewed-by: Andreas Rheinhardt <andreas.rheinhardt@gmail.com >
Signed-off-by: Zane van Iperen <zane@zanevaniperen.com >
2020-08-11 08:50:27 +10:00
Zane van Iperen
1f9dd53d5d
avformat/argo_asf: add version_major and version_minor options
...
Reviewed-by: Alexander Strasser <eclipse7@gmx.net >
Reviewed-by: Andreas Rheinhardt <andreas.rheinhardt@gmail.com >
Signed-off-by: Zane van Iperen <zane@zanevaniperen.com >
2020-08-11 08:50:27 +10:00
Zane van Iperen
a3e9821787
avformat/argo_asf: don't check file version
...
It has no bearing on structure. Determined by looking at the ASF
files from several Argonaut games:
- FX Fighter,
- Croc,
- Croc 2,
- The Emperor's New Groove, and
- Disney's Aladdin in Nasira's Revenge
The only versions that appear are 1.1, 1.2, and 2.1, and their
structure is identical.
Reviewed-by: Alexander Strasser <eclipse7@gmx.net >
Signed-off-by: Zane van Iperen <zane@zanevaniperen.com >
2020-08-11 08:50:26 +10:00
Zane van Iperen
97aaa15089
avformat/argo_asf: add games to version list
...
Reviewed-by: Alexander Strasser <eclipse7@gmx.net >
Signed-off-by: Zane van Iperen <zane@zanevaniperen.com >
2020-08-11 08:50:19 +10:00
Zane van Iperen
0549daa71b
avformat: add argo_asf muxer
...
Signed-off-by: Zane van Iperen <zane@zanevaniperen.com >
Reviewed-by: Andreas Rheinhardt <andreas.rheinhardt@gmail.com >
2020-08-07 23:14:28 +10:00
Zane van Iperen
b0b87f28c3
avformat/argo_asf: check sample count in demuxer
...
Signed-off-by: Zane van Iperen <zane@zanevaniperen.com >
2020-08-07 23:04:15 +10:00
Zane van Iperen
dc3aa376dc
avformat: add demuxer for argonaut games' ASF format
...
Adds support for the custom ASF container used by some Argonaut Games'
games, such as 'Croc! Legend of the Gobbos', and 'Croc 2'.
Can also handle the sample files in:
https://samples.ffmpeg.org/game-formats/brender/part2.zip
Signed-off-by: Zane van Iperen <zane@zanevaniperen.com >
2020-01-26 10:24:00 +01:00