LINUX.ORG.RU

Сообщения morpheus

 

Gstreamer cache

Итак, меня интересует буферизация в pygst. Приложение играет поток из сети, в нем есть возможность поиска по песне (seek). Этот seek получается слишком дерганным, не ровным. Seek производится по изменению слайдера в окне:


def UpdatePos(self):
		val = self.seekslider.GetValue()
		if self.player.get_state()[1] == gst.STATE_PLAYING or self.player.get_state()[1] == gst.STATE_PAUSED:
			try:
				self.player.seek_simple(gst.FORMAT_TIME,gst.SEEK_FLAG_FLUSH | gst.SEEK_FLAG_KEY_UNIT, val * gst.SECOND)
				self.seekslider.SetValue(val)
				pos_i = self.player.query_position(self.time_format,None)[0]
	 			dur_i =  self.player.query_duration(self.time_format,None)[0]	 		
				self.SetTimingText(pos_i,self.tpos)
				self.SetTimingText(dur_i-pos_i+1,self.tdur)
			except gst.QueryError:
				pass
Мне кажется, что это связано с размером буфера. Как его можно увеличить, если gstreamer инициализируется так:
 
	###PyGST (Gstreamer) init###
		self.player = gst.element_factory_make("playbin", "player")
		fakesink = gst.element_factory_make("fakesink", "fakesink")
		self.player.set_property("video-sink", fakesink)
   		bus = self.player.get_bus()
   		bus.add_signal_watch()
   		bus.connect("message", self.on_message)
		self.time_format = gst.Format(gst.FORMAT_TIME)

 , , ,

morpheus
()

#*@*!ый русский язык

В моем приложении необходимо использовать русский язык (у строк), но когда строка русская, то происходит следующая проблема (при попытке перевести ее в юникод:

Traceback (most recent call last):
  File "/home/ka2m/Python/svk-gui-beta/player.py", line 459, in Select
    self.SetMusicText()
  File "/home/ka2m/Python/svk-gui-beta/player.py", line 292, in SetMusicText
    atext = self.Shorter(atext)
  File "/home/ka2m/Python/svk-gui-beta/player.py", line 479, in Shorter
    utext = unicode(text)
UnicodeDecodeError: 'ascii' codec can't decode byte 0xe2 in position 8: ordinal not in range(128)
self.SetMusicText():
def SetMusicText(self):
			atext = "Artist: " +self.playlist[self.pos+1][1]
			ttext = "Title: "+self.playlist[self.pos+1][2]
			self.Shorter(atext)
			self.Shorter(ttext)
			self.artistname.SetLabel(atext)
			self.titlename.SetLabel(ttext)
playlist - это обычный текстовый файл вида:
 http://cs4537.vkontakte.ru/u44930545/audio/e6eeaa5bf0e4.mp3n:Pink Floydn:Comfortably Numbn:Pink Floyd - Comfortably Numb
Сбоящая функция:
	def Shorter(self,text): #function to check if length is exceeded and change it to abcdef...
	 	text = text.encode('UTF-8')
		
		if len(text) >= 24:
	 	 	p = text[0:22]
	 	 	p = p + u" ..."
	 	 	return p
	 	else: return text 
Прошу помочь. С чистой латинецей работает нормально, а вот с русским и всякими там трифорсами - нет. Как понятно из кода: Python+wxPython

 , ,

morpheus
()

Управление уровнем звука

Пишу свой VK-API-плеер на Python. Уже практически закончил, но осталось разобраться с управлением звука.

Как его прибавлять, я понял

self.player.set_property("volume",+3.0)

А как убавить? При вводе отрицательных значений - out of range. Вменяемой документации не нашел. Используется gstreamer, py-gst

 , ,

morpheus
()

Запуск функции параллеьно основонму процессу

Дело обстоит в питоне. Нужно запустить nonmodal script по сути. Запускается по нажатию кнопки. Графическая библиотека wxPython. Как это можно сделать? Так чтобы нажать на кнопку, но не перехватывать основное окно

 , ,

morpheus
()

Разыскивается библиотека

Требуется библиотека для проигрывания в голос музыки в некошерном mp3 с потока (с ВК). Требования:

  • Полная встраиваемость в Python
  • Управление: старт/стоп, пауза, изменение звука
  • Управление как по клавишам, так и по тыканию мышки (основное приложение на wxPython). Нужно так, чтобы могла отправляться команда вроде player.stop() и т.п. Вроде бы все. UPD:
  • Должно висеть в фоне, не перехватывать управление и не блокировать основное окно, как это делает mpg123.

    Нашел что-то годное, как mp3play, но оно под винду.

 , , ,

morpheus
()

Embedding Python in C++

Решил заняться сабжем, изучил включение по сайту. Использую их пример:

 #include <Python.h>

int main(int argc, char *argv[])
{
	  
    PyObject *pName, *pModule, *pDict, *pFunc, *pValue;

    if (argc < 3) 
    {
        printf("Usage: name python_source function_name\n");
        return 1;
    }

    // Initialize the Python Interpreter
    Py_Initialize();
  
    // Build the name object
    pName = PyString_FromString(argv[1]);
  
    // Load the module object
    pModule = PyImport_Import(pName);
  
    // pDict is a borrowed reference 
    pDict = PyModule_GetDict(pModule);
  
    // pFunc is also a borrowed reference 
    pFunc = PyDict_GetItemString(pDict, argv[2]);
  
    if (PyCallable_Check(pFunc)) 
    {
        PyObject_CallObject(pFunc, NULL);
    } else 
    {
        PyErr_Print();
    }

    // Clean up
    Py_DECREF(pModule);
    Py_DECREF(pName);

    // Finish the Python Interpreter
    Py_Finalize();

    return 0;
}

Компилирую командой:

 g++ testing.cpp -I/usr/include/python2.7 -lpython2.7 -otr

Получаю сегфолт. ddd на эту тему говорит:

 Program received signal SIGSEGV, Segmentation fault.
0xb7de901a in PyModule_GetDict () from /usr/lib/libpython2.7.so.1.0
(gdb) 
Ubuntu 12.04. Помогите с проблемой.

 , , ,

morpheus
()

В ubuntu 12.04 не показывается меню GRUB

Собсвтенно сабж. Никогда раньше не сталкивался: включаю компьютер, черный экран, а потом сразу gdm.

Хотел прикрутить systemd вместо init, вроде все прописал, а менюшки нет.

 , , ,

morpheus
()

Пульт для VLC

На какой платформе можно сделать такой пульт, который сможет оставнавливать, воспроизводить, переходить между видео в листе, а самое главное - управлять звуком для $SUBJ?

Как этот девайс сможет взаимодействовать с компьютером? Можно ли это сделать на основе ИК-порта?

Среди вариантов - Arduino, но может есть что-то еще?

 , , ,

morpheus
()

Проблемы с nvidia quadro 400

У меня два монитора. Asus T1 и какой-то HP. Оба поддерживают 1920x1080. На машине стоит 12.04 с проприетарными дровами. Один монитор подключается по Display port, а другой по VGA.

При помощи стандартной утилиты Gnome 3 виден толко один монитор, и тот определяется как laptop. Через nvidia-settings оба. Но в какой бы режим я не ставил их, оба роняют гном до fallback.

Что можно с этим сделать? Или это видеокарта не тянет оба на FullHD?

 , ,

morpheus
()

Перенос системы с одной машины на другую

Доброе утро. Возник такой вопрос, можно ли перенести уже установленную 12.04 с одной машины на другую так, чтобы она нормально запустилась. Перенос == перетыкание винтов.
Разницы между процессорами практически нет: Intel Pentium DualCore - на одном, и Core i5 на другом. Оба же x86_64?
По памяти: 2гб на одном и 4 на другом. Тут вопрос: если перенос возможен, то, чтобы можно было увидеть все 4 ГБ, то нужно пересобрать ядро с PAE?
Видео: встроенные видеокарты, но на втором есть NVIDIA Quadro 400. Как сейчас дела с картами этой фирмы в бубунте?
Сеть аналогичная, Ralink 3070 в виде D-link DWA-525 + ethernet.

Стоит ядро 3.2 (вроде бы, пишу с телефона) от убунты.

 , ,

morpheus
()

Читалка из eee-pc

Решил я тут приспособить свой старый 701-й под читалку. Планирую сделать среду читалки: файловый менеджер, открывающий определенные форматы, доступ к вебу и настройкам wi-fi. Планирую писать на питоне.

С этим связаны вопросы: 1) Python-библиотеки для работы с pdf, fb2, epub. Какие есть еще распространенные форматы электронных книг?
2) На чем лучше писать простой файловый менеджер (граф. библиотека): wxWidgets, PyGTK или Qt-реализация?
3) Можно ли всю эту штуку завернуть демоном с автологином, чтобы выглядело как реальная читалка: включил и работает?

 , , ,

morpheus
()

Восстановление файла

Добрый вечер. Не думал, что буду задавать такой вопрос на ЛОРе, но все же. Был питоновский файл с моим проектом. Я неудачно его заархиваровал, перепутав параметры, теперь вместо файла - абракадабра на эльфийском.

Так как тестировал на другом компе, то там тоже самое.

Имеем: 1) На одном Ubuntu 12.04 и ext4 раздел
2) На другом Debian 6 с ext4 в RAID0 массиве.

Как восстановить прошлую версию?

morpheus
()

Nokia C6. Перетерся шлейф

Собственно сабж. Есть все признаки этой проблемы: плохо работал динамик, камера, а в конце рухнул дисплей. У меня вопрос: как там все это сосуществует? Собственно клавиатурная часть и дисплей. Как они соединены? Понятно, что посредством шлейфа, но паяется ли он, или же можно руками скрепить?

 , , ,

morpheus
()

Внешний доступ к компьютеру (дом.ру)

Работает ли сабж? Сейчас кинули айпишник, а он не пингуется (packet loss: 100%). Они закрывают доступ на внешку или только ping-запросы? Планируется поднять небольшой VPS сервер для мобильной и удобной разработки на питоне

 

morpheus
()

Как сделать приложение, которое устанавливается по трем волшебным словам?

Собственно:

user@host:~$ cd /usr/src/myapp
user@host:/usr/src/myapp$/.configure&&make&&make install
Как это делается? Я написал приложени (питоновское, вернее даже скрипт), теперь хочу сделать его устанавливаемым. И чтобы был доступен стандартно в $PATH, то есть:
user@host:~$ myapp 
Hello World! 

Реквестирую инструкцию, в гугле то ли плохо искал, то ли не там.

 , , ,

morpheus
()

Как успешно собрать трактор?

Собственно сабж.

Как успешно собрать трактор в какую-нибудь более-менее закрытую страну как Ирландия? Что для этого нужно, кроме дикой воли и мозгов? Есть ли на ЛОРе такие успешные люди, а также есть ли мануалы по эмиграции?

Студент 1 курс. Учусь на компьютерной безопасности.

 

morpheus
()

Альтернатива WinAIK

Есть ли сабж в линуксах? Никогда не задумывался, пока не понял, что использую практически одно и то же на виртуалках, только с минимальной разницей под задачей. Появился комп, на который неплохо было бы установить линукс, но каждый раз писать одно и то же лень.

Или все это делается обычным sh-скриптом?

#!/bin/sh
apt-get update && apt-get upgrade && apt-get install --force-yes ....

 ,

morpheus
()

Zyxel Keentic 4G vs Keentic GIGA

Зашел сегодня в магазин, поискать чего хорошего посоветовали в моем прошлом треде про роутеры. Есть два описанных экземпляра, один ценою 2000 рублей, второй 3600. Сумма хоть и незначительная, но переплачивать не хочется.

Что лучше выбрать. Клиентов 5-6 обычно: компьютер, ноут, планшет, телефон, виртуалка. В основном все работает по беспроводному соединению. Есть ли резон покупать GIGA, или же хватит 4G (серверов, FTP у меня нет, максимум - тестовый сайтик под LAMP).

P.S. Еще вопрос: у меня уже стоит D-Link DIR-300. Можно ли его сделать репитером сигнала, усилителем или просто замутить мост с зухелем?

 , , ,

morpheus
()

Ошибка парсинга lxml

Пишу нормальную вариацию этого скрипта.

Начал писать (а не копировать) и получил следующую ошибку при парсинге списка с vkAPI:

Traceback (most recent call last):
  File "./vkscrob.py", line 58, in <module>
    doc	 = html.document_fromstring(html)	
  File "/usr/lib/python2.6/dist-packages/lxml/html/__init__.py", line 511, in document_fromstring
    value = etree.fromstring(html, parser, **kw)
  File "lxml.etree.pyx", line 2532, in lxml.etree.fromstring (src/lxml/lxml.etree.c:48634)
  File "parser.pxi", line 1542, in lxml.etree._parseMemoryDocument (src/lxml/lxml.etree.c:72207)
МalueError: can only parse strings
Причем, по адресу действительно строки, а не нечто иное. Сам код: http://pastebin.com/pjbaDqZj

 , , ,

morpheus
()

Очередной посоветуй-тред

Итак, требуется роутер в пределах 3000 рублей. Нужно:

  • возможность подключения 3g-модема
  • 1GBit WLAN (опционально, хотя бы 100 мбит держал)
  • Нормально работающий DHCP на нем
  • Прошивка с возможностями нормальной настройки сигнала, DNS, DHCP, DMZ, Firewall, проброса и прочего.

    А линукс тут при том, что в новой квартире займусь напейсанием приложений на Python под линуксы.

 , ,

morpheus
()

RSS подписка на новые темы