OLD | NEW |
1 /* | 1 /* |
2 * Provide registration of all codecs, parsers and bitstream filters for libavco
dec. | 2 * Provide registration of all codecs, parsers and bitstream filters for libavco
dec. |
3 * Copyright (c) 2002 Fabrice Bellard | 3 * Copyright (c) 2002 Fabrice Bellard |
4 * | 4 * |
5 * This file is part of FFmpeg. | 5 * This file is part of FFmpeg. |
6 * | 6 * |
7 * FFmpeg is free software; you can redistribute it and/or | 7 * FFmpeg is free software; you can redistribute it and/or |
8 * modify it under the terms of the GNU Lesser General Public | 8 * modify it under the terms of the GNU Lesser General Public |
9 * License as published by the Free Software Foundation; either | 9 * License as published by the Free Software Foundation; either |
10 * version 2.1 of the License, or (at your option) any later version. | 10 * version 2.1 of the License, or (at your option) any later version. |
(...skipping 27 matching lines...) Expand all Loading... |
38 if(CONFIG_##X##_DECODER) avcodec_register(&ff_##x##_decoder); } | 38 if(CONFIG_##X##_DECODER) avcodec_register(&ff_##x##_decoder); } |
39 #define REGISTER_ENCDEC(X,x) REGISTER_ENCODER(X,x); REGISTER_DECODER(X,x) | 39 #define REGISTER_ENCDEC(X,x) REGISTER_ENCODER(X,x); REGISTER_DECODER(X,x) |
40 | 40 |
41 #define REGISTER_PARSER(X,x) { \ | 41 #define REGISTER_PARSER(X,x) { \ |
42 extern AVCodecParser ff_##x##_parser; \ | 42 extern AVCodecParser ff_##x##_parser; \ |
43 if(CONFIG_##X##_PARSER) av_register_codec_parser(&ff_##x##_parser); } | 43 if(CONFIG_##X##_PARSER) av_register_codec_parser(&ff_##x##_parser); } |
44 #define REGISTER_BSF(X,x) { \ | 44 #define REGISTER_BSF(X,x) { \ |
45 extern AVBitStreamFilter ff_##x##_bsf; \ | 45 extern AVBitStreamFilter ff_##x##_bsf; \ |
46 if(CONFIG_##X##_BSF) av_register_bitstream_filter(&ff_##x##_bsf);
} | 46 if(CONFIG_##X##_BSF) av_register_bitstream_filter(&ff_##x##_bsf);
} |
47 | 47 |
48 #ifdef PTW32_STATIC_LIB | |
49 #include "pthread.h" | |
50 static void detach_ptw32(void) | |
51 { | |
52 pthread_win32_thread_detach_np(); | |
53 pthread_win32_process_detach_np(); | |
54 } | |
55 #endif | |
56 | |
57 void avcodec_register_all(void) | 48 void avcodec_register_all(void) |
58 { | 49 { |
59 static int initialized; | 50 static int initialized; |
60 | 51 |
61 if (initialized) | 52 if (initialized) |
62 return; | 53 return; |
63 initialized = 1; | 54 initialized = 1; |
64 | 55 |
65 #ifdef PTW32_STATIC_LIB | |
66 pthread_win32_process_attach_np(); | |
67 pthread_win32_thread_attach_np(); | |
68 atexit(detach_ptw32); | |
69 #endif | |
70 /* hardware accelerators */ | 56 /* hardware accelerators */ |
71 REGISTER_HWACCEL (H263_VAAPI, h263_vaapi); | 57 REGISTER_HWACCEL (H263_VAAPI, h263_vaapi); |
72 REGISTER_HWACCEL (H264_DXVA2, h264_dxva2); | 58 REGISTER_HWACCEL (H264_DXVA2, h264_dxva2); |
73 REGISTER_HWACCEL (H264_VAAPI, h264_vaapi); | 59 REGISTER_HWACCEL (H264_VAAPI, h264_vaapi); |
74 REGISTER_HWACCEL (H264_VDA, h264_vda); | 60 REGISTER_HWACCEL (H264_VDA, h264_vda); |
75 REGISTER_HWACCEL (MPEG1_VDPAU, mpeg1_vdpau); | 61 REGISTER_HWACCEL (MPEG1_VDPAU, mpeg1_vdpau); |
76 REGISTER_HWACCEL (MPEG2_DXVA2, mpeg2_dxva2); | 62 REGISTER_HWACCEL (MPEG2_DXVA2, mpeg2_dxva2); |
77 REGISTER_HWACCEL (MPEG2_VAAPI, mpeg2_vaapi); | 63 REGISTER_HWACCEL (MPEG2_VAAPI, mpeg2_vaapi); |
78 REGISTER_HWACCEL (MPEG2_VDPAU, mpeg2_vdpau); | 64 REGISTER_HWACCEL (MPEG2_VDPAU, mpeg2_vdpau); |
79 REGISTER_HWACCEL (MPEG4_VAAPI, mpeg4_vaapi); | 65 REGISTER_HWACCEL (MPEG4_VAAPI, mpeg4_vaapi); |
(...skipping 392 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
472 REGISTER_BSF (IMX_DUMP_HEADER, imx_dump_header); | 458 REGISTER_BSF (IMX_DUMP_HEADER, imx_dump_header); |
473 REGISTER_BSF (MJPEG2JPEG, mjpeg2jpeg); | 459 REGISTER_BSF (MJPEG2JPEG, mjpeg2jpeg); |
474 REGISTER_BSF (MJPEGA_DUMP_HEADER, mjpega_dump_header); | 460 REGISTER_BSF (MJPEGA_DUMP_HEADER, mjpega_dump_header); |
475 REGISTER_BSF (MP3_HEADER_COMPRESS, mp3_header_compress); | 461 REGISTER_BSF (MP3_HEADER_COMPRESS, mp3_header_compress); |
476 REGISTER_BSF (MP3_HEADER_DECOMPRESS, mp3_header_decompress); | 462 REGISTER_BSF (MP3_HEADER_DECOMPRESS, mp3_header_decompress); |
477 REGISTER_BSF (MOV2TEXTSUB, mov2textsub); | 463 REGISTER_BSF (MOV2TEXTSUB, mov2textsub); |
478 REGISTER_BSF (NOISE, noise); | 464 REGISTER_BSF (NOISE, noise); |
479 REGISTER_BSF (REMOVE_EXTRADATA, remove_extradata); | 465 REGISTER_BSF (REMOVE_EXTRADATA, remove_extradata); |
480 REGISTER_BSF (TEXT2MOVSUB, text2movsub); | 466 REGISTER_BSF (TEXT2MOVSUB, text2movsub); |
481 } | 467 } |
OLD | NEW |