gstreamer_tag/
language_codes.rs1use crate::ffi;
4use glib::translate::*;
5
6#[doc(alias = "gst_tag_get_language_codes")]
7pub fn language_codes() -> glib::collections::StrV {
8 skip_assert_initialized!();
9
10 unsafe { glib::collections::StrV::from_glib_full(ffi::gst_tag_get_language_codes()) }
11}
12
13#[doc(alias = "gst_tag_get_language_name")]
14pub fn language_name<'a>(language_code: &str) -> Option<&'a glib::GStr> {
15 skip_assert_initialized!();
16
17 unsafe {
18 let ptr = language_code
19 .run_with_gstr(|language_code| ffi::gst_tag_get_language_name(language_code.as_ptr()));
20
21 if ptr.is_null() {
22 None
23 } else {
24 Some(glib::GStr::from_ptr(ptr))
25 }
26 }
27}
28
29#[doc(alias = "gst_tag_get_language_code_iso_639_1")]
30pub fn language_code_iso_639_1<'a>(language_code: &str) -> Option<&'a glib::GStr> {
31 skip_assert_initialized!();
32
33 unsafe {
34 let ptr = language_code.run_with_gstr(|language_code| {
35 ffi::gst_tag_get_language_code_iso_639_1(language_code.as_ptr())
36 });
37
38 if ptr.is_null() {
39 None
40 } else {
41 Some(glib::GStr::from_ptr(ptr))
42 }
43 }
44}
45
46#[doc(alias = "gst_tag_get_language_code_iso_639_2T")]
47pub fn language_code_iso_639_2t<'a>(language_code: &str) -> Option<&'a glib::GStr> {
48 skip_assert_initialized!();
49
50 unsafe {
51 let ptr = language_code.run_with_gstr(|language_code| {
52 ffi::gst_tag_get_language_code_iso_639_2T(language_code.as_ptr())
53 });
54
55 if ptr.is_null() {
56 None
57 } else {
58 Some(glib::GStr::from_ptr(ptr))
59 }
60 }
61}
62
63#[doc(alias = "gst_tag_get_language_code_iso_639_2B")]
64pub fn language_code_iso_639_2b<'a>(language_code: &str) -> Option<&'a glib::GStr> {
65 skip_assert_initialized!();
66
67 unsafe {
68 let ptr = language_code.run_with_gstr(|language_code| {
69 ffi::gst_tag_get_language_code_iso_639_2B(language_code.as_ptr())
70 });
71
72 if ptr.is_null() {
73 None
74 } else {
75 Some(glib::GStr::from_ptr(ptr))
76 }
77 }
78}
79
80#[doc(alias = "gst_tag_check_language_code")]
81pub fn check_language_code(language_code: &str) -> bool {
82 skip_assert_initialized!();
83
84 unsafe {
85 from_glib(language_code.run_with_gstr(|language_code| {
86 ffi::gst_tag_check_language_code(language_code.as_ptr())
87 }))
88 }
89}