Я только начал делать приложение ubuntu с помощью PyGtk. Мой первый объект - открыть, конвертировать и сохранить видеофайл. Игнорируя фазу преобразования, я собираюсь внедрить функции open-save. Но в тот момент, когда я открываю видеофайл и сохраняю его, я получаю файл без видео с размером 11B. Я только что нашел это и нашел OpenCV для python. Но я не уверен, что это лучший способ сделать это. Я также думаю, что собираюсь использовать библиотеки ffmpeg, чтобы делать некоторые манипуляции с видеофайлами. Это то, что я хочу, или могут быть другие встроенные библиотеки?Как открыть и сохранить видеофайл в python?
Кстати, вот мой код, чтобы открыть и сохранить файл:
def on_openFile_clicked(self, widget):
filename=None
dialog = Gtk.FileChooserDialog("Please choose a file", self,
Gtk.FileChooserAction.OPEN,
(Gtk.STOCK_CANCEL, Gtk.ResponseType.CANCEL,
Gtk.STOCK_OPEN, Gtk.ResponseType.OK))
response = dialog.run()
self.add_filters(dialog)
if response == Gtk.ResponseType.OK:
filename = dialog.get_filename()
elif response == Gtk.ResponseType.CANCEL:
print 'Cancel Clicked'
dialog.destroy()
print "File Choosen: ", filename
def add_filters(self, dialog):
filter_py = Gtk.FileFilter()
filter_py.set_name("Video Files")
filter_py.add_mime_type("video/mp4")
filter_py.add_mime_type("video/x-flv")
dialog.add_filter(filter_py)
filter_any = Gtk.FileFilter()
filter_any.set_name("Any files")
filter_any.add_pattern("*")
dialog.add_filter(filter_any)
def on_saveFile_clicked(self, widget):
filename=None
dialog = Gtk.FileChooserDialog("Please choose a file", self,
Gtk.FileChooserAction.SAVE,
(Gtk.STOCK_CANCEL, Gtk.ResponseType.CANCEL,
Gtk.STOCK_SAVE, Gtk.ResponseType.OK))
response = dialog.run()
self.add_filters(dialog)
if response == Gtk.ResponseType.OK:
filename = dialog.get_filename()
elif response == Gtk.ResponseType.CANCEL:
print 'Cancel Clicked'
dialog.destroy()
if filename != None:
save_file=open(filename, 'w')
save_file.write("Sample Data")
save_file.close()
print "File Saved: ", filename
Как вы получаете 11 Кбайт данных из '.write (« Sample Data »)'? Это 11 байт, а не 11 килобайт. –
Вы правы. Я отредактировал его. – sheshkovsky