当前时区为 UTC + 8 小时



发表新帖 回复这个主题  [ 4 篇帖子 ] 
作者 内容
1 楼 
 文章标题 : 会Gstreamer的大虾进来看看
帖子发表于 : 2009-07-18 13:43 
头像

注册: 2008-11-09 18:07
帖子: 580
地址: SCU
送出感谢: 0 次
接收感谢: 0 次
我用gstreamer作播放器,但是读取歌曲(歌曲信息中名称和艺术家的信息是正常编码,其他的可能是乱码)信息的时候有时显示乱码,有时又正常。如果是全部正常信息的歌曲输出正常。

读取歌曲代码:
代码:
static gboolean core_bus_call(GstBus *bus,GstMessage *msg,gpointer data)
{          
    switch (GST_MESSAGE_TYPE(msg))
    {
        case GST_MESSAGE_EOS:
        {
           g_print("End-of-stream\n");
           core_play_next(data);
            break;
        }
        case GST_MESSAGE_ERROR:
        {
            gchar *debug;
            GError *error;
              gst_message_parse_error(msg,&error,&debug);
            g_printerr("ERROR:%s\nDEBUG:%s\n",error->message,debug);
            g_error_free(error);
            g_free(debug);
            break;
        }
        case GST_MESSAGE_TAG:
        {
           GstTagList *tags;
           gchar *title=(gchar *)malloc(20);
           gchar *artist=(gchar *)malloc(20);
           gst_message_parse_tag(msg,&tags);
////////////////////////////////////////////////////////////   here   /////////////////////////////////////////////////////////////////
                  if(gst_tag_list_get_string(tags,GST_TAG_TITLE,&title)&& gst_tag_list_get_string(tags,GST_TAG_ARTIST,&artist))
           {
              puts(title);          //输出乱码
              puts(artist);         //输出乱码
               gui_update_metadata(title,artist);
            }
////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////
           gst_tag_list_free(tags);
           break;
        }
        default:
                 break;
       return TRUE;
   }
   return TRUE;
}


输出有时候错误显示 而且输出了四句,为什么会产生前面乱码的两句呢?:
引用:
yy@yy-laptop:~/document/documents/zqbuttonfghfgjhtgdj$ ./a
Mouse button release at (33.00, 32.00)
³ö°£¼°¼Ç(Exodus)
Âí¿ËÎ÷Ä·
出埃及记(Exodus)
马克西姆


(a:19734): Pango-WARNING **: Invalid UTF-8 string passed to pango_layout_set_text()


_________________
。。。。。。。。感觉好山寨。。。。。。。。。


页首
 用户资料  
 
2 楼 
 文章标题 : Re: 会Gstreamer的大虾进来看看
帖子发表于 : 2009-07-18 14:05 
头像

注册: 2007-10-23 12:54
帖子: 1687
送出感谢: 0 次
接收感谢: 12
乱码部分是用 Latin1 解码 gbk 时的显示,很多程序在识别不出字符串编码时就用 Latin1 解释,每个字节对应一个字符,虽然显示乱码不过没有丢失信息。


页首
 用户资料  
 
3 楼 
 文章标题 : Re: 会Gstreamer的大虾进来看看
帖子发表于 : 2009-07-18 14:08 
头像

注册: 2008-11-09 18:07
帖子: 580
地址: SCU
送出感谢: 0 次
接收感谢: 0 次
AutoXBC 写道:
乱码部分是用 Latin1 解码 gbk 时的显示,很多程序在识别不出字符串编码时就用 Latin1 解释,每个字节对应一个字符,虽然显示乱码不过没有丢失信息。

那为什么会输出四句呢?


_________________
。。。。。。。。感觉好山寨。。。。。。。。。


页首
 用户资料  
 
4 楼 
 文章标题 : Re: 会Gstreamer的大虾进来看看
帖子发表于 : 2009-07-18 14:19 
头像

注册: 2007-10-23 12:54
帖子: 1687
送出感谢: 0 次
接收感谢: 12
别的就不懂了。


页首
 用户资料  
 
显示帖子 :  排序  
发表新帖 回复这个主题  [ 4 篇帖子 ] 

当前时区为 UTC + 8 小时


在线用户

正在浏览此版面的用户:没有注册用户 和 3 位游客


不能 在这个版面发表主题
不能 在这个版面回复主题
不能 在这个版面编辑帖子
不能 在这个版面删除帖子
不能 在这个版面提交附件

前往 :  
本站点为公益性站点,用于推广开源自由软件,由 DiaHosting VPSBudgetVM VPS 提供服务。
我们认为:软件应可免费取得,软件工具在各种语言环境下皆可使用,且不会有任何功能上的差异;
人们应有定制和修改软件的自由,且方式不受限制,只要他们自认为合适。

Powered by phpBB © 2000, 2002, 2005, 2007 phpBB Group
简体中文语系由 王笑宇 翻译