]>
Commit | Line | Data |
---|---|---|
1 | use nihav_core::codecs::{RegisteredDecoders, RegisteredPacketisers}; | |
2 | use nihav_core::demuxers::{RegisteredDemuxers, RegisteredRawDemuxers}; | |
3 | ||
4 | use nihav_commonfmt::generic_register_all_decoders; | |
5 | use nihav_commonfmt::generic_register_all_demuxers; | |
6 | ||
7 | use nihav_duck::duck_register_all_decoders; | |
8 | ||
9 | use nihav_flash::flash_register_all_decoders; | |
10 | use nihav_flash::flash_register_all_demuxers; | |
11 | ||
12 | use nihav_game::game_register_all_decoders; | |
13 | use nihav_game::game_register_all_demuxers; | |
14 | ||
15 | use nihav_indeo::indeo_register_all_decoders; | |
16 | ||
17 | use nihav_llaudio::llaudio_register_all_decoders; | |
18 | use nihav_llaudio::llaudio_register_all_demuxers; | |
19 | ||
20 | use nihav_mpeg::mpeg_register_all_decoders; | |
21 | use nihav_mpeg::mpeg_register_all_packetisers; | |
22 | ||
23 | use nihav_ms::ms_register_all_decoders; | |
24 | ||
25 | use nihav_qt::qt_register_all_decoders; | |
26 | ||
27 | use nihav_rad::rad_register_all_decoders; | |
28 | use nihav_rad::rad_register_all_demuxers; | |
29 | ||
30 | use nihav_realmedia::realmedia_register_all_decoders; | |
31 | use nihav_realmedia::realmedia_register_all_demuxers; | |
32 | ||
33 | use nihav_vivo::vivo_register_all_decoders; | |
34 | use nihav_vivo::vivo_register_all_demuxers; | |
35 | ||
36 | fn register_all_decoders(rd: &mut RegisteredDecoders) { | |
37 | generic_register_all_decoders(rd); | |
38 | duck_register_all_decoders(rd); | |
39 | flash_register_all_decoders(rd); | |
40 | game_register_all_decoders(rd); | |
41 | indeo_register_all_decoders(rd); | |
42 | llaudio_register_all_decoders(rd); | |
43 | mpeg_register_all_decoders(rd); | |
44 | ms_register_all_decoders(rd); | |
45 | qt_register_all_decoders(rd); | |
46 | rad_register_all_decoders(rd); | |
47 | realmedia_register_all_decoders(rd); | |
48 | vivo_register_all_decoders(rd); | |
49 | } | |
50 | ||
51 | fn register_all_packetisers(rp: &mut RegisteredPacketisers) { | |
52 | mpeg_register_all_packetisers(rp); | |
53 | } | |
54 | ||
55 | fn register_all_demuxers(rd: &mut RegisteredDemuxers) { | |
56 | generic_register_all_demuxers(rd); | |
57 | flash_register_all_demuxers(rd); | |
58 | game_register_all_demuxers(rd); | |
59 | llaudio_register_all_demuxers(rd); | |
60 | rad_register_all_demuxers(rd); | |
61 | realmedia_register_all_demuxers(rd); | |
62 | vivo_register_all_demuxers(rd); | |
63 | } | |
64 | ||
65 | fn register_all_raw_demuxers(_rd: &mut RegisteredRawDemuxers) { | |
66 | //llaudio_register_all_raw_demuxers(rd); | |
67 | } | |
68 | ||
69 | ||
70 | pub struct FullRegister { | |
71 | pub dmx_reg: RegisteredDemuxers, | |
72 | pub rdmx_reg: RegisteredRawDemuxers, | |
73 | pub pkt_reg: RegisteredPacketisers, | |
74 | pub dec_reg: RegisteredDecoders, | |
75 | } | |
76 | ||
77 | impl FullRegister { | |
78 | pub fn new() -> Self { | |
79 | let mut dmx_reg = RegisteredDemuxers::new(); | |
80 | register_all_demuxers(&mut dmx_reg); | |
81 | let mut rdmx_reg = RegisteredRawDemuxers::new(); | |
82 | register_all_raw_demuxers(&mut rdmx_reg); | |
83 | let mut dec_reg = RegisteredDecoders::new(); | |
84 | register_all_decoders(&mut dec_reg); | |
85 | let mut pkt_reg = RegisteredPacketisers::new(); | |
86 | register_all_packetisers(&mut pkt_reg); | |
87 | Self { dmx_reg, rdmx_reg, pkt_reg, dec_reg } | |
88 | } | |
89 | } | |
90 |